github.com/tri-adam/singularity@v3.1.1+incompatible/.circleci/config.yml (about) 1 version: 2.0 2 3 defaults: &defaults 4 working_directory: /go/src/github.com/sylabs/singularity 5 6 jobs: 7 get_source: 8 <<: *defaults 9 docker: 10 - image: sylabsio/golang:1.11-stretch 11 steps: 12 - checkout 13 - persist_to_workspace: 14 root: /go 15 paths: 16 - src/github.com/sylabs/singularity 17 18 go1.10-stretch: 19 <<: *defaults 20 docker: 21 - image: sylabsio/golang:1.10-stretch 22 steps: 23 - attach_workspace: 24 at: /go 25 - run: 26 name: Build Singularity 27 command: |- 28 ./mconfig -p /usr/local 29 make -j$(nproc) -C ./builddir all 30 31 go1.11-stretch: 32 <<: *defaults 33 docker: 34 - image: sylabsio/golang:1.11-stretch 35 steps: 36 - attach_workspace: 37 at: /go 38 - run: 39 name: Build Singularity 40 command: |- 41 ./mconfig -p /usr/local 42 make -j$(nproc) -C ./builddir all 43 - run: 44 name: Check code 45 command: |- 46 go get -u golang.org/x/lint/golint 47 make -j$(nproc) -C ./builddir check 48 49 go1.11-alpine: 50 <<: *defaults 51 docker: 52 - image: sylabsio/golang:1.11-alpine 53 steps: 54 - attach_workspace: 55 at: /go 56 - run: 57 name: Build Singularity 58 command: |- 59 ./mconfig -p /usr/local 60 make -j$(nproc) -C ./builddir all 61 go get -u golang.org/x/lint/golint 62 make -j$(nproc) -C ./builddir check 63 - run: 64 name: Check code 65 command: |- 66 go get -u golang.org/x/lint/golint 67 make -j$(nproc) -C ./builddir check 68 69 singularity_test: 70 machine: true 71 steps: 72 - attach_workspace: 73 at: ~/go 74 - run: 75 name: Setup environment 76 command: |- 77 echo 'export GOPATH=$HOME/go' >> $BASH_ENV 78 echo 'export GOROOT=/usr/local/go' >> $BASH_ENV 79 echo 'export GOBIN=$HOME/go/bin' >> $BASH_ENV 80 echo 'export GOCACHE=off' >> $BASH_ENV 81 echo 'export PATH=$GOPATH/bin:$GOBIN:$GOROOT/bin:/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin' >> $BASH_ENV 82 - run: 83 name: Update Go to 1.11 84 working_directory: /tmp 85 command: |- 86 wget https://dl.google.com/go/go1.11.linux-amd64.tar.gz 87 sudo rm -rf /usr/local/go 88 sudo tar -C /usr/local -xzf go1.11.linux-amd64.tar.gz 89 sudo chown -R circleci:circleci ~/go 90 - run: 91 name: Fetch deps 92 working_directory: /tmp 93 command: |- 94 mkdir -p ${GOBIN} 95 curl https://raw.githubusercontent.com/golang/dep/master/install.sh | sh 96 sudo apt-get update -y && sudo apt-get install -y build-essential libssl-dev uuid-dev libgpgme11-dev squashfs-tools libseccomp-dev 97 - run: 98 name: Build & install singularity 99 command: |- 100 cd $HOME/go/src/github.com/sylabs/singularity 101 ./mconfig -p /usr/local 102 make -j$(nproc) -C ./builddir all 103 sudo make -C ./builddir install 104 - run: 105 name: Test singularity 106 command: |- 107 cd $HOME/go/src/github.com/sylabs/singularity 108 make -C ./builddir test 109 110 workflows: 111 version: 2 112 test-compile: 113 jobs: 114 - get_source 115 - go1.10-stretch: 116 requires: 117 - get_source 118 - go1.11-stretch: 119 requires: 120 - get_source 121 - go1.11-alpine: 122 requires: 123 - get_source 124 - singularity_test: 125 requires: 126 - get_source