diff --git a/.circleci/config.yml b/.circleci/config.yml new file mode 100644 index 0000000..29c4332 --- /dev/null +++ b/.circleci/config.yml @@ -0,0 +1,72 @@ +version: 2 +jobs: + test: + docker: + - image: golang:1.10-stretch + environment: + GOROOT: "" + GOPATH: "/root/.go_project" + PATH: "/root/.go_project/bin:/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/go/bin" + IMPORT_PATH: "github.com/$CIRCLE_PROJECT_USERNAME/$CIRCLE_PROJECT_REPONAME" + steps: + - checkout + - run: + name: Install prerequired packges + command: | + apt update + apt install -y software-properties-common python3-software-properties + apt install -y librrd-dev golang-glide + mkdir -p $GOPATH/src/github.com/$CIRCLE_PROJECT_USERNAME + cd $GOPATH/src/github.com/$CIRCLE_PROJECT_USERNAME + ln -s /root/project $CIRCLE_PROJECT_REPONAME + cd $CIRCLE_PROJECT_REPONAME + glide i + - run: + name: Run tests + command: | + cd $GOPATH/src/github.com/$CIRCLE_PROJECT_USERNAME/$CIRCLE_PROJECT_REPONAME + go test + deploy: + docker: + - image: golang:1.10-stretch + environment: + GOROOT: "" + GOPATH: "/root/.go_project" + PATH: "/root/.go_project/bin:/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/go/bin" + IMPORT_PATH: "github.com/$CIRCLE_PROJECT_USERNAME/$CIRCLE_PROJECT_REPONAME" + steps: + - checkout + - run: + name: Install prerequired packges + command: | + apt update + apt install -y software-properties-common python3-software-properties + apt install -y librrd-dev golang-glide + mkdir -p $GOPATH/src/github.com/$CIRCLE_PROJECT_USERNAME + cd $GOPATH/src/github.com/$CIRCLE_PROJECT_USERNAME + ln -s /root/project $CIRCLE_PROJECT_REPONAME + cd $CIRCLE_PROJECT_REPONAME + glide i + - run: + name: Deploy + tag: /v[0-9]+(\.[0-9]+)+/ + command: | + cd $GOPATH/src/github.com/$CIRCLE_PROJECT_USERNAME/$CIRCLE_PROJECT_REPONAME + go get github.com/mitchellh/gox + go get github.com/tcnksm/ghr + gox -osarch "linux/amd64" -ldflags "-X main.Version=$BUILD_VERSION -X main.BuildDate=$BUILD_DATE" -output "dist/{{.Dir}}_{{.OS}}_{{.Arch}}" + gzip dist/* + ghr -t $GITHUB_TOKEN -u $CIRCLE_PROJECT_USERNAME -r $CIRCLE_PROJECT_REPONAME --replace $(git describe --tags) dist/ +workflows: + version: 2 + test_and_deploy: + jobs: + - test + - deploy: + requires: + - test + filters: + tags: + only: /v[0-9]+(\.[0-9]+)+/ + branches: + ignore: /.*/ diff --git a/circle.yml b/circle.yml deleted file mode 100644 index 2f555f7..0000000 --- a/circle.yml +++ /dev/null @@ -1,26 +0,0 @@ -machine: - environment: - GOROOT: "" - GOPATH: "${HOME}/.go_project" - PATH: "${GOPATH}/bin:${PATH}" - IMPORT_PATH: "github.com/$CIRCLE_PROJECT_USERNAME/$CIRCLE_PROJECT_REPONAME" - -dependencies: - pre: - - sudo add-apt-repository -y ppa:masterminds/glide - - sudo apt-get update - - sudo apt install -y librrd-dev - - sudo apt install -y glide - - mkdir -p ${GOPATH}/src/github.com/${CIRCLE_PROJECT_USERNAME} - - ln -s ${HOME}/${CIRCLE_PROJECT_REPONAME} ${BUILD_PATH} - - glide i - -deployment: - release: - tag: /v[0-9]+(\.[0-9]+)+/ - commands: - - go get github.com/mitchellh/gox - - go get github.com/tcnksm/ghr - - gox -osarch "linux/amd64" -ldflags "-X main.Version=$BUILD_VERSION -X main.BuildDate=$BUILD_DATE" -output "dist/{{.Dir}}_{{.OS}}_{{.Arch}}" - - gzip dist/* - - ghr -t $GITHUB_TOKEN -u $CIRCLE_PROJECT_USERNAME -r $CIRCLE_PROJECT_REPONAME --replace $(git describe --tags) dist/ diff --git a/glide.lock b/glide.lock index 79aaa9e..15bd5fe 100644 --- a/glide.lock +++ b/glide.lock @@ -1,8 +1,10 @@ -hash: 43017bc74b202d332d1654c8eddd004aeaff12e9dd381ef8fd50aa11b5d8a70b -updated: 2017-07-15T15:07:37.366934589+02:00 +hash: 314775c6285fc8852bae93aad9ecf09b49e1c6b83e0aebd9d8f7f99424864a95 +updated: 2018-04-01T15:32:17.178674+09:00 imports: - name: github.com/BurntSushi/toml version: bbd5bb678321a0d6e58f1099321dfa73391c1b6f +- name: github.com/gocarina/gocsv + version: a5c9099e2484f1551abb9433885e158610a25f4b - name: github.com/mattn/go-zglob version: 95345c4e1c0ebc9d16a3284177f09360f4d20fab subpackages: diff --git a/glide.yaml b/glide.yaml index 2228571..d75442c 100644 --- a/glide.yaml +++ b/glide.yaml @@ -3,3 +3,4 @@ import: - package: github.com/BurntSushi/toml version: ~0.2.0 - package: github.com/ziutek/rrd +- package: github.com/gocarina/gocsv