49 lines
955 B
YAML
49 lines
955 B
YAML
kind: pipeline
|
|
type: docker
|
|
name: default
|
|
|
|
platform:
|
|
os: linux
|
|
arch: amd64
|
|
|
|
steps:
|
|
- name: build
|
|
image: golang:1.17-alpine
|
|
pull: if-not-exists
|
|
environment:
|
|
CGO_ENABLED: 0
|
|
GOOS: linux
|
|
GOARCH: amd64
|
|
commands:
|
|
- env
|
|
- go build -tags timetzdata -v -o app cmd/apiserver/main.go
|
|
|
|
- name: publish
|
|
image: plugins/docker
|
|
pull: if-not-exists
|
|
settings:
|
|
repo: esinio/kimbon:apiserver
|
|
username:
|
|
from_secret: docker_username
|
|
password:
|
|
from_secret: docker_password
|
|
|
|
- name: deploy
|
|
image: docker/compose:1.29.2
|
|
pull: if-not-exists
|
|
volumes:
|
|
- name: docker_sock
|
|
path: /var/run/docker.sock
|
|
commands:
|
|
- docker-compose up --detach --verbose --force-recreate --file ./docker-compose.yml
|
|
when:
|
|
event:
|
|
- promote
|
|
target:
|
|
- production
|
|
|
|
volumes:
|
|
- name: docker-sock
|
|
host:
|
|
path: /var/run/docker.sock
|