finclip-app-manager/vendor/gitlab.finogeeks.club/finclip-backend/rmconf/.gitlab-ci.yml

84 lines
1.6 KiB
YAML

stages:
#- unit_tests
- build
#- test
- docker
#- deploy
variables:
GOPROXY: https://mirrors.aliyun.com/goproxy/
SERVICE_NAME: "rmconf"
before_script:
- export GOPATH=${CI_PROJECT_DIR}/.go
- pwd
.go-cache:
variables:
GOPATH: $CI_PROJECT_DIR/.go
before_script:
- mkdir -p .go
cache:
paths:
- .go/pkg/mod/
#unit_tests:
# stage: unit_tests
# image: docker.finogeeks.club/mop-infra/golang:1.15-alpine
# extends: .go-cache
# script:
# - go test -v
.build: &build_definition
stage: build
image: docker.finogeeks.club/mop-infra/golang:1.15-alpine
extends: .go-cache
script:
- go build -race -ldflags "-extldflags '-static'" -v -mod=vendor -o ${SERVICE_NAME}
snapshot:
<<: *build_definition
# only:
# - master
artifacts:
paths:
- ${SERVICE_NAME}
expire_in: 2 days
release:
<<: *build_definition
only:
- tags
artifacts:
paths:
- ${SERVICE_NAME}
.docker: &docker_definition
stage: docker
image: docker.finogeeks.club/mop/kaniko-executor:debug
script:
- mkdir -p /kaniko/.docker
- echo "${DOCKER_AUTH_CONFIG}" > /kaniko/.docker/config.json
- /kaniko/executor --context $CI_PROJECT_DIR --dockerfile $CI_PROJECT_DIR/Dockerfile --destination docker.finogeeks.club/mop/${SERVICE_NAME}:$CI_COMMIT_TAG
docker:snapshot:
<<: *docker_definition
dependencies:
- snapshot
# only:
# - ${CI_COMMIT_BRANCH}
docker:release:
<<: *docker_definition
dependencies:
- release
only:
- tags
#deploy:
# image: docker.finogeeks.club/mop-infra/alpine:latest
# stage: deploy
# script:
# - echo ${GOPROXY}