File tree Expand file tree Collapse file tree 2 files changed +111
-0
lines changed Expand file tree Collapse file tree 2 files changed +111
-0
lines changed Original file line number Diff line number Diff line change 1+ version : 2
2+ jobs :
3+ shellcheck :
4+ docker :
5+ - image : nlknguyen/alpine-shellcheck:v0.4.6
6+ steps :
7+ - checkout
8+ - run :
9+ name : Check Docker Hub Hooks
10+ command : |
11+ find hooks -type f | wc -l
12+ find hooks -type f | xargs shellcheck -e SC2086 --external-sources
13+ - run :
14+ name : Check Scripts
15+ command : |
16+ find . -type f -name '*.sh' | wc -l
17+ find . -type f -name '*.sh' | xargs shellcheck -e SC2086 -e SC1090 --external-sources
18+ build :
19+ docker :
20+ - image : circleci/golang:1.11.5
21+ steps :
22+ - checkout
23+ - setup_remote_docker :
24+ docker_layer_caching : true
25+ - run :
26+ name : Create docker image
27+ command : make build
28+
29+ build-deploy :
30+ docker :
31+ - image : circleci/golang:1.11.5
32+ steps :
33+ - checkout
34+ - setup_remote_docker :
35+ docker_layer_caching : true
36+ - run :
37+ name : Create docker image
38+ command : make build
39+ - run :
40+ name : Logg into Docker registry
41+ command : docker login -u $docker_release_user -p $docker_release_password
42+ - run :
43+ name : Publish docker image
44+ command : make push
45+
46+ release :
47+ docker :
48+ - image : circleci/golang:1.11.5
49+ steps :
50+ - checkout
51+ - setup_remote_docker :
52+ docker_layer_caching : true
53+ - run :
54+ name : Login to public Docker HUB
55+ command : |
56+ docker login -u $docker_release_user -p $docker_release_password
57+ make release
58+
59+ workflows :
60+ version : 2
61+ verify :
62+ jobs :
63+ - shellcheck
64+ - build
65+ deploy :
66+ jobs :
67+ - build-deploy :
68+ requires :
69+ - shellcheck
70+ filters :
71+ branches :
72+ only :
73+ - master
74+ release :
75+ jobs :
76+ - release :
77+ filters :
78+ tags :
79+ only : /^([0-9]\d*)\.([0-9]\d*)\.([0-9]\d*).*$/
80+ branches :
81+ ignore : /.*/
Original file line number Diff line number Diff line change 1+ DOCKER_RELEASE_REG =solidnerd
2+ DOCKER_IMAGE =bookstack
3+
4+
5+ DOCKER_INTERNAL_TAG := $(shell git rev-parse --short HEAD)
6+ DOCKER_RELEASE_TAG := $(shell git describe)
7+ BUILD_DATE := $(shell date -u +"% Y-% m-% dT% H:% M:% SZ")
8+ VCS_URL := https://github.com/solidnerd/docker-bookstack
9+
10+ .PHONY : build push pull release
11+
12+ build :
13+ docker image build . \
14+ -t $(DOCKER_RELEASE_REG ) /$(DOCKER_IMAGE ) :$(DOCKER_INTERNAL_TAG ) \
15+ --build-arg VCS_REF=$(DOCKER_INTERNAL_TAG ) \
16+ --build-arg BUILD_DATE=$(BUILD_DATE ) \
17+ --build-arg VCS_URL=$(VCS_URL )
18+
19+ push :
20+ docker push $(DOCKER_RELEASE_REG ) /$(DOCKER_IMAGE ) :$(DOCKER_INTERNAL_TAG )
21+
22+ pull :
23+ docker pull $(DOCKER_RELEASE_REG ) /$(DOCKER_IMAGE ) :$(DOCKER_INTERNAL_TAG )
24+
25+ release :
26+ docker tag $(DOCKER_RELEASE_REG ) /$(DOCKER_IMAGE ) :$(DOCKER_INTERNAL_TAG ) $(DOCKER_RELEASE_REG ) /$(DOCKER_IMAGE ) :$(DOCKER_RELEASE_TAG )
27+ docker tag $(DOCKER_RELEASE_REG ) /$(DOCKER_IMAGE ) :$(DOCKER_INTERNAL_TAG ) $(DOCKER_RELEASE_REG ) /$(DOCKER_IMAGE ) :latest
28+
29+ docker push $(DOCKER_RELEASE_REG)/$(DOCKER_IMAGE):$(DOCKER_RELEASE_TAG)
30+ docker push $(DOCKER_RELEASE_REG)/$(DOCKER_IMAGE):latest
You can’t perform that action at this time.
0 commit comments