github.com/devcamcar/cli@v0.0.0-20181107134215-706a05759d18/.circleci/config.yml (about)

     1  version: 2
     2  jobs:
     3    build:
     4      machine: true
     5      working_directory: ~/go/src/github.com/fnproject/cli
     6      environment: # apparently expansion doesn't work here yet: https://discuss.circleci.com/t/environment-variable-expansion-in-working-directory/11322
     7        - GOPATH=/home/circleci/go
     8        - GOVERSION=1.10
     9        - OS=linux
    10        - ARCH=amd64
    11      steps:
    12        - checkout
    13        # update Go
    14        - run: |
    15            go version
    16            go env GOROOT
    17            mkdir tmp
    18            cd tmp
    19            sudo rm -rf /usr/local/go
    20            wget https://storage.googleapis.com/golang/go$GOVERSION.$OS-$ARCH.tar.gz
    21            sudo tar -C /usr/local -xzf go$GOVERSION.$OS-$ARCH.tar.gz
    22            export PATH=$PATH:$HOME/go/bin
    23        - run: go version
    24        # update Docker
    25        - run: |
    26            docker version
    27            sudo service docker stop
    28            curl -fsSL https://get.docker.com/ | sudo sh
    29        - run: docker version
    30        - run:
    31            name: install dependencies
    32            command: |
    33              go get -u github.com/golang/dep/cmd/dep
    34              ${GOPATH}/bin/dep ensure --vendor-only
    35        - run:
    36            name: build and test
    37            command: make test
    38            no_output_timeout: 20m
    39        - run:
    40            name: test build macos
    41            command: go build -o fn_mac
    42            environment:
    43              GOOS: darwin
    44        - run:
    45            name: test build windows
    46            command: go build -o fn.exe
    47            environment:
    48              GOOS: windows
    49        - deploy:
    50            command: |
    51              if [[ "${CIRCLE_BRANCH}" == "master" && -z "${CIRCLE_PR_REPONAME}" ]]; then
    52                printenv DOCKER_PASS | docker login -u $DOCKER_USER --password-stdin
    53                git config --global user.email "ci@fnproject.com"
    54                git config --global user.name "CI"
    55                git branch --set-upstream-to=origin/${CIRCLE_BRANCH} ${CIRCLE_BRANCH}
    56                ./release.sh
    57              fi