diff --git a/.circleci/config.yml b/.circleci/config.yml index 341db4c..d7caf4f 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -3,9 +3,18 @@ jobs: build: docker: - image: circleci/golang:1 + working_directory: /go/src/github.com/MEDIGO/laika steps: - - setup_remote_docker - checkout + - run: go get -u -v -t github.com/Masterminds/glide + - run: glide install -v + - run: touch .env + - run: pwd + - run: ls + - run: make install + - run: make build + - run: make report + - setup_remote_docker: + docker_layer_caching: true - run: make image - run: make publish - - run: make clean diff --git a/Makefile b/Makefile index 82c8ac3..33c65ef 100644 --- a/Makefile +++ b/Makefile @@ -1,4 +1,4 @@ -all: install lint test build report +all: install build report publish clean .PHONY: all build: diff --git a/circle.yml b/circle.yml deleted file mode 100644 index 1b46317..0000000 --- a/circle.yml +++ /dev/null @@ -1,32 +0,0 @@ -machine: - services: - - docker - node: - version: 8.9.4 - environment: - PROJECT_GOPATH: "${HOME}/.go_project" - PROJECT_PARENT_PATH: "${PROJECT_GOPATH}/src/github.com/MEDIGO" - PROJECT_PATH: "${PROJECT_PARENT_PATH}/laika" - GOPATH: "${HOME}/.go_workspace:/usr/local/go_workspace:${PROJECT_GOPATH}" - LAIKA_TEST_MYSQL_HOST: localhost - LAIKA_TEST_MYSQL_USERNAME: ubuntu - LAIKA_TEST_MYSQL_DBNAME: circle_test - -dependencies: - pre: - - go get github.com/Masterminds/glide - - go get github.com/jteeuwen/go-bindata/... - - yarn global add webpack - override: - - mkdir -p "${PROJECT_PARENT_PATH}" - - rsync -avC "${HOME}/laika/" "${PROJECT_PATH}" - -test: - override: - - cd "${PROJECT_PATH}" && make - -deployment: - hub: - branch: master - commands: - - cd "${PROJECT_PATH}" && make image publish diff --git a/scripts/build.sh b/scripts/build.sh index d571956..e7a720b 100755 --- a/scripts/build.sh +++ b/scripts/build.sh @@ -5,4 +5,4 @@ set -o nounset set -o pipefail GOOS=linux GOARCH=amd64 CGO_ENABLED=0 go build -o bin/laika . -(cd dashboard && yarn run build) +(cd dashboard && npm run build) diff --git a/scripts/ci-publish.sh b/scripts/ci-publish.sh new file mode 100644 index 0000000..b8a3432 --- /dev/null +++ b/scripts/ci-publish.sh @@ -0,0 +1,16 @@ +#!/bin/bash + +set -o errexit +set -o nounset +set -o pipefail + +if [[ -z ${CIRCLE_SHA1:-} ]]; then + COMMIT=$(git rev-parse HEAD) +else + COMMIT=${CIRCLE_SHA1} +fi + +docker tag quay.io/medigo/laika:latest quay.io/medigo/laika:${COMMIT} +docker login -e ${DOCKER_EMAIL} -u ${DOCKER_USER} -p ${DOCKER_PASS} +docker push quay.io/medigo/laika:latest +docker push quay.io/medigo/laika:${COMMIT} diff --git a/scripts/install.sh b/scripts/install.sh index 4865345..863eb45 100755 --- a/scripts/install.sh +++ b/scripts/install.sh @@ -9,4 +9,4 @@ if ! which glide > /dev/null 2>&1 ; then fi glide install -(cd dashboard && yarn install) +(cd dashboard && sudo apt install curl && curl -sL https://deb.nodesource.com/setup_6.x | sudo bash - && sudo apt-get install -y nodejs && sudo apt-get install -y npm && sudo npm install) diff --git a/scripts/publish.sh b/scripts/publish.sh index 379c51c..f451cee 100755 --- a/scripts/publish.sh +++ b/scripts/publish.sh @@ -11,6 +11,6 @@ else fi docker tag medigo/laika:latest medigo/laika:${COMMIT} -docker login -e ${DOCKER_EMAIL} -u ${DOCKER_USER} -p ${DOCKER_PASS} +docker login -u ${DOCKER_USER} -p ${DOCKER_PASS} docker push medigo/laika:latest docker push medigo/laika:${COMMIT}