mirror of
https://github.com/containrrr/watchtower.git
synced 2025-12-16 15:10:12 +01:00
100 lines
No EOL
2.4 KiB
YAML
100 lines
No EOL
2.4 KiB
YAML
version: 2.1
|
|
|
|
executors:
|
|
go:
|
|
docker:
|
|
- image: circleci/golang:latest
|
|
working_directory: ~/repo
|
|
|
|
workflows:
|
|
version: 2
|
|
ci:
|
|
jobs:
|
|
- checkout
|
|
# - linting:
|
|
# requires:
|
|
# - checkout
|
|
# - testing:
|
|
# requires:
|
|
# - checkout
|
|
- publishing:
|
|
requires:
|
|
- checkout
|
|
# - testing
|
|
# - linting
|
|
# filters:
|
|
# branches:
|
|
# ignore: /.*/
|
|
# tags:
|
|
# only: /^v[0-9]+(\.[0-9]+)*$/
|
|
jobs:
|
|
checkout:
|
|
executor: go
|
|
steps:
|
|
- checkout
|
|
- persist_to_workspace:
|
|
paths:
|
|
- .
|
|
root: ~/repo
|
|
linting:
|
|
executor: go
|
|
steps:
|
|
- attach_workspace:
|
|
at: .
|
|
- run: go build .
|
|
- run: go get -u golang.org/x/lint/golint
|
|
- run: golint -set_exit_status ./...
|
|
testing:
|
|
executor: go
|
|
steps:
|
|
- attach_workspace:
|
|
at: .
|
|
- run: go build ./...
|
|
- run: go test ./...
|
|
publishing:
|
|
executor: go
|
|
steps:
|
|
- attach_workspace:
|
|
at: .
|
|
- setup_remote_docker:
|
|
docker_layer_caching: true
|
|
- run:
|
|
name: Install Goreleaser
|
|
command: |
|
|
cd .. && \
|
|
wget https://github.com/goreleaser/goreleaser/releases/download/v0.59.0/goreleaser_Linux_x86_64.tar.gz && \
|
|
tar -xvf goreleaser_Linux_x86_64.tar.gz && \
|
|
./goreleaser -v
|
|
- run:
|
|
name: Execute goreleaser
|
|
command: ../goreleaser --snapshot --skip-publish
|
|
|
|
|
|
# version: 2
|
|
# jobs:
|
|
# build:
|
|
# docker:
|
|
# - image: v2tec/gobuilder:0.5.0_go1.7.4-glide0.12.3-goreleaser0.59.0-docker17.05.0
|
|
# working_directory: /src
|
|
# steps:
|
|
# - checkout
|
|
# - setup_remote_docker:
|
|
# version: 17.05.0-ce
|
|
# - run: git fetch --tags
|
|
# - run: |
|
|
# docker login -u $DOCKER_USER -p $DOCKER_PASS
|
|
# IS_RELEASE=$(if [ "$CIRCLE_TAG" != "" ] ; then echo release; else echo ci; fi;)
|
|
# /build.sh $IS_RELEASE || exit 1
|
|
# chmod 755 /src/dockerfile/push_containers.sh
|
|
# if [ "$CIRCLE_TAG" != "" ] ; then /src/dockerfile/push_containers.sh $CIRCLE_TAG; fi;
|
|
|
|
# - store_artifacts:
|
|
# path: /src/dist/
|
|
# workflows:
|
|
# version: 2
|
|
# build-deploy:
|
|
# jobs:
|
|
# - build:
|
|
# filters:
|
|
# tags:
|
|
# only: /.*/ |