github.com/zaolin/u-root@v0.0.0-20200428085104-64aaafd46c6d/.cirrus.yml (about) 1 freebsd_instance: 2 image_family: freebsd-13-0-snap 3 4 task_template: ®ULAR_TASK_TEMPLATE 5 provision_script: 6 - pkg install -y go dep git 7 # see https://cirrus-ci.org/guide/tips-and-tricks/#custom-clone-command 8 # for Golang, we need to have a src/gitrepo.host/owner/project structure 9 clone_script: | 10 export GIT_URL="https://x-access-token:${CIRRUS_REPO_CLONE_TOKEN}@github.com/${CIRRUS_REPO_FULL_NAME}.git" 11 export CIRRUS_WORKING_DIR=$CIRRUS_WORKING_DIR/src/github.com/${CIRRUS_REPO_FULL_NAME} 12 mkdir -p $CIRRUS_WORKING_DIR 13 cd $CIRRUS_WORKING_DIR 14 if [ -z "$CIRRUS_PR" ]; then 15 echo "regular build $CIRRUS_CHANGE_IN_REPO" 16 git clone --recursive --branch=$CIRRUS_BRANCH $GIT_URL $CIRRUS_WORKING_DIR 17 git reset --hard $CIRRUS_CHANGE_IN_REPO 18 else 19 echo "PR build $CIRRUS_PR $CIRRUS_CHANGE_IN_REPO" 20 git clone --recursive $GIT_URL $CIRRUS_WORKING_DIR 21 git fetch origin pull/$CIRRUS_PR/head:pull/$CIRRUS_PR 22 git reset --hard $CIRRUS_CHANGE_IN_REPO 23 fi 24 25 test_task: 26 << : *REGULAR_TASK_TEMPLATE 27 script: | 28 export GOPATH=$CIRRUS_WORKING_DIR 29 export CIRRUS_WORKING_DIR=$CIRRUS_WORKING_DIR/src/github.com/${CIRRUS_REPO_FULL_NAME} 30 cd $CIRRUS_WORKING_DIR 31 dep version 32 dep status 33 dep ensure -vendor-only 34 git status 35 if [ -n "$(git status --porcelain vendor)" ]; then 36 echo '`vendor/` is out-of-date: run `dep ensure -vendor-only` and then' 37 echo 'check in the changes. If `dep ensure` results in no changes, make' 38 echo 'sure you are using the latest release of dep.' 39 git status --porcelain vendor 40 exit 1 41 fi 42 43 build_task: 44 << : *REGULAR_TASK_TEMPLATE 45 depends_on: 46 - test 47 prepare_script: | 48 export GOPATH=$CIRRUS_WORKING_DIR 49 export CIRRUS_WORKING_DIR=$CIRRUS_WORKING_DIR/src/github.com/${CIRRUS_REPO_FULL_NAME} 50 cd $CIRRUS_WORKING_DIR 51 dep ensure 52 script: | 53 export GOPATH=$CIRRUS_WORKING_DIR 54 export CIRRUS_WORKING_DIR=$CIRRUS_WORKING_DIR/src/github.com/${CIRRUS_REPO_FULL_NAME} 55 cd $CIRRUS_WORKING_DIR 56 go build