You've already forked git-docker
							
							
		
			All checks were successful
		
		
	
	continuous-integration/drone/push Build is passing
				
			
		
			
				
	
	
		
			45 lines
		
	
	
		
			1.7 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			45 lines
		
	
	
		
			1.7 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
| #!/bin/bash
 | |
| 
 | |
| set -e
 | |
| 
 | |
| GIT_FETCH_ARGS=""
 | |
| GIT_CHECKOUT_ARGS=""
 | |
| 
 | |
| if [[ -n "${PLUGIN_DEPTH}" ]]; then
 | |
|   GIT_FETCH_ARGS="${GIT_FETCH_ARGS} --depth=${PLUGIN_DEPTH}"
 | |
| fi
 | |
| 
 | |
| if [ ! -d .git ]; then
 | |
|   git init
 | |
|   git remote add origin "${DRONE_REMOTE_URL}"
 | |
| fi
 | |
| 
 | |
| # the branch may be empty for certain event types,
 | |
| # such as github deployment events. If the branch
 | |
| # is empty we checkout the sha directly. Note that
 | |
| # we intentially omit depth flags to avoid failed
 | |
| # clones due to lack of history.
 | |
| if [[ -z "${DRONE_COMMIT_BRANCH}" ]] && [[ -n "${DRONE_COMMIT_SHA}" ]]; then
 | |
|   GIT_CHECKOUT_ARGS="${GIT_CHECKOUT_ARGS} --quiet --force ${DRONE_COMMIT_SHA}"
 | |
|   GIT_FETCH_ARGS="${GIT_FETCH_ARGS} origin"
 | |
| fi
 | |
| 
 | |
| # the commit sha may be empty for builds that are
 | |
| # manually triggered in Harness CI Enterprise. If
 | |
| # the commit is empty we clone the branch.
 | |
| if [[ -n "${DRONE_COMMIT_BRANCH}" ]] && [[ -z "${DRONE_COMMIT_SHA}" ]]; then
 | |
|   GIT_CHECKOUT_ARGS="${GIT_CHECKOUT_ARGS} -b ${DRONE_COMMIT_BRANCH} refs/remotes/origin/${DRONE_COMMIT_BRANCH}"
 | |
|   GIT_FETCH_ARGS="${GIT_FETCH_ARGS} origin +refs/heads/${DRONE_COMMIT_BRANCH}:refs/remotes/origin/${DRONE_COMMIT_BRANCH}"
 | |
| fi
 | |
| 
 | |
| # if the commit sha and branch name not empty, fetch the branch even if a
 | |
| # fast-forward is not possible. Checkout the specified commit sha which must be
 | |
| # part of the branch.
 | |
| if [[ -n "${DRONE_COMMIT_BRANCH}" ]] && [[ -n "${DRONE_COMMIT_SHA}" ]]; then
 | |
|   GIT_CHECKOUT_ARGS="${GIT_CHECKOUT_ARGS} ${DRONE_COMMIT_SHA} -b refs/remotes/origin/${DRONE_COMMIT_BRANCH}"
 | |
|   GIT_FETCH_ARGS="${GIT_FETCH_ARGS} origin +refs/heads/${DRONE_COMMIT_BRANCH}:refs/remotes/origin/${DRONE_COMMIT_BRANCH}"
 | |
| fi
 | |
| 
 | |
| git fetch ${GIT_FETCH_ARGS}
 | |
| git checkout ${GIT_CHECKOUT_ARGS}
 |