From 8ac14fa4b44950253136977cceef1e45a56b4664 Mon Sep 17 00:00:00 2001 From: Knut Ahlers Date: Mon, 10 Oct 2016 16:57:48 +0200 Subject: [PATCH] Add CI --- .repo-runner.yaml | 10 ++++++++++ Makefile | 20 ++++++++++++++++++++ publish.sh | 26 ++++++++++++++++++++++++++ 3 files changed, 56 insertions(+) create mode 100644 .repo-runner.yaml create mode 100644 Makefile create mode 100644 publish.sh diff --git a/.repo-runner.yaml b/.repo-runner.yaml new file mode 100644 index 0000000..dac28e3 --- /dev/null +++ b/.repo-runner.yaml @@ -0,0 +1,10 @@ +--- + +image: "quay.io/luzifer/repo-runner-image" +checkout_dir: /go/src/github.com/Luzifer/dbx-sync + +commands: + - make ci + +environment: + CGO_ENABLED: 0 diff --git a/Makefile b/Makefile new file mode 100644 index 0000000..88e5eee --- /dev/null +++ b/Makefile @@ -0,0 +1,20 @@ +VERSION := $(shell git describe --tags --exact-match) + +ci: publish + +qa: + go get gopkg.in/alecthomas/gometalinter.v1 + gometalinter.v1 --vendored-linters --install + gometalinter.v1 \ + -D gotype -D errcheck -D gas -D gocyclo \ + --sort path --sort line --deadline 1m --cyclo-over 15 \ + . + +ifneq ($(strip $(VERSION)),) +publish: + VERSION=$(VERSION) sh -e publish.sh +else +publish: + true +endif + diff --git a/publish.sh b/publish.sh new file mode 100644 index 0000000..e945535 --- /dev/null +++ b/publish.sh @@ -0,0 +1,26 @@ +#!/bin/sh -e + +REPO="dbx-sync" +ARCHS="linux/386 linux/amd64 linux/arm darwin/amd64 darwin/386" + +if [ -z "${VERSION}" ]; then + echo "Please set \$VERSION environment variable" + exit 1 +fi + +if [ -z "${GITHUB_TOKEN}" ]; then + echo "PLease set \$GITHUB_TOKEN environment variable" + exit 1 +fi + +set -x + +go get github.com/aktau/github-release +go get github.com/mitchellh/gox + +github-release release --user Luzifer --repo ${REPO} --tag ${VERSION} --name ${VERSION} || true + +gox -ldflags="-X main.version=${VERSION}" -osarch="${ARCHS}" +for file in ${REPO}_*; do + github-release upload --user Luzifer --repo ${REPO} --tag ${VERSION} --name ${file} --file ${file} +done