From bc8c5e2810d6dbd0fb1c57ad4e9d797145144fec Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Philipp=20B=C3=B6hm?= Date: Sat, 20 Feb 2021 16:42:04 +0100 Subject: [PATCH] CircleCi project setup (#32) Add .circleci/config.yml --- .circleci/config.yml | 56 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 56 insertions(+) create mode 100644 .circleci/config.yml diff --git a/.circleci/config.yml b/.circleci/config.yml new file mode 100644 index 0000000..781df2a --- /dev/null +++ b/.circleci/config.yml @@ -0,0 +1,56 @@ +version: 2.1 +orbs: + docker: circleci/docker@1.5.0 +jobs: + test: + docker: + - image: circleci/golang:1.16 + working_directory: /go/src/github.com/pboehm/ddns + steps: + - checkout + - run: go get -v -t -d ./... + - run: go test -v ./... + + docker-build: + executor: docker/docker + steps: + - setup_remote_docker + - checkout + - docker/build: + image: pboehm/ddns + dockerfile: docker/ddns/Dockerfile + + docker-build-and-push: + executor: docker/docker + steps: + - setup_remote_docker + - checkout + - docker/check + - docker/build: + image: pboehm/ddns + dockerfile: docker/ddns/Dockerfile + - docker/push: + image: pboehm/ddns + tag: $CIRCLE_SHA1,latest + +workflows: + commit: + jobs: + - test: + filters: # required since `docker-XXXX` have tag filters AND require `test` + tags: + only: /.*/ + + - docker-build: + requires: + - test + filters: + branches: + ignore: master + + - docker-build-and-push: + requires: + - test + filters: + branches: + only: master \ No newline at end of file