add universal pipeline
This commit is contained in:
@@ -1,27 +1,8 @@
|
|||||||
image: docker:20.10.16
|
image: docker:20.10.16
|
||||||
|
|
||||||
variables:
|
variables:
|
||||||
# When using dind service, you must instruct Docker to talk with
|
|
||||||
# the daemon started inside of the service. The daemon is available
|
|
||||||
# with a network connection instead of the default
|
|
||||||
# /var/run/docker.sock socket.
|
|
||||||
DOCKER_HOST: tcp://docker:2376
|
DOCKER_HOST: tcp://docker:2376
|
||||||
#
|
|
||||||
# The 'docker' hostname is the alias of the service container as described at
|
|
||||||
# https://docs.gitlab.com/ee/ci/services/#accessing-the-services.
|
|
||||||
# If you're using GitLab Runner 12.7 or earlier with the Kubernetes executor and Kubernetes 1.6 or earlier,
|
|
||||||
# the variable must be set to tcp://localhost:2376 because of how the
|
|
||||||
# Kubernetes executor connects services to the job container
|
|
||||||
# DOCKER_HOST: tcp://localhost:2376
|
|
||||||
#
|
|
||||||
# Specify to Docker where to create the certificates. Docker
|
|
||||||
# creates them automatically on boot, and creates
|
|
||||||
# `/certs/client` to share between the service and job
|
|
||||||
# container, thanks to volume mount from config.toml
|
|
||||||
DOCKER_TLS_CERTDIR: "/certs"
|
DOCKER_TLS_CERTDIR: "/certs"
|
||||||
# These are usually specified by the entrypoint, however the
|
|
||||||
# Kubernetes executor doesn't run entrypoints
|
|
||||||
# https://gitlab.com/gitlab-org/gitlab-runner/-/issues/4125
|
|
||||||
DOCKER_TLS_VERIFY: 1
|
DOCKER_TLS_VERIFY: 1
|
||||||
DOCKER_CERT_PATH: "$DOCKER_TLS_CERTDIR/client"
|
DOCKER_CERT_PATH: "$DOCKER_TLS_CERTDIR/client"
|
||||||
|
|
||||||
@@ -40,9 +21,9 @@ build-job:
|
|||||||
- master
|
- master
|
||||||
script:
|
script:
|
||||||
- docker info
|
- docker info
|
||||||
- docker build -t docker-registry.dopcore.com/andrusyakka/astra-file-storage .
|
- docker build -t docker-registry.dopcore.com/$CI_PROJECT_PATH .
|
||||||
- echo "$DOCKER_PASSWORD" | docker login docker-registry.dopcore.com -u "$DOCKER_USER" --password-stdin
|
- echo "$CI_REGISTRY_PASSWORD" | docker login docker-registry.dopcore.com -u "$CI_REGISTRY_USER" --password-stdin
|
||||||
- docker push docker-registry.dopcore.com/andrusyakka/astra-file-storage
|
- docker push docker-registry.dopcore.com/$CI_PROJECT_PATH
|
||||||
|
|
||||||
deploy-job:
|
deploy-job:
|
||||||
stage: deploy
|
stage: deploy
|
||||||
@@ -52,6 +33,8 @@ deploy-job:
|
|||||||
only:
|
only:
|
||||||
- master
|
- master
|
||||||
script:
|
script:
|
||||||
|
- export $(xargs < deploy/.env)
|
||||||
|
- envsubst < deploy/values.template.yaml > deploy/values.yaml
|
||||||
- kubectl version
|
- kubectl version
|
||||||
- helm upgrade --install astra-file-storage deploy
|
- helm upgrade --install $CI_PROJECT_TITLE deploy
|
||||||
- kubectl rollout restart deploy/astra-file-storage
|
- kubectl rollout restart deploy/$CI_PROJECT_TITLE
|
||||||
|
|||||||
2
deploy/.env
Normal file
2
deploy/.env
Normal file
@@ -0,0 +1,2 @@
|
|||||||
|
SERVICE_REPLICAS=3
|
||||||
|
SERVICE_PORT=8080
|
||||||
16
deploy/values.template.yaml
Normal file
16
deploy/values.template.yaml
Normal file
@@ -0,0 +1,16 @@
|
|||||||
|
app:
|
||||||
|
fullName: ${CI_PROJECT_TITLE}
|
||||||
|
image: docker-registry.dopcore.com/${CI_PROJECT_PATH}
|
||||||
|
server:
|
||||||
|
port: ${SERVICE_PORT}
|
||||||
|
|
||||||
|
replicas: ${SERVICE_REPLICAS}
|
||||||
|
|
||||||
|
images:
|
||||||
|
pullSecret: regcred
|
||||||
|
|
||||||
|
ingress:
|
||||||
|
enabled: false
|
||||||
|
|
||||||
|
autoscaling:
|
||||||
|
enabled: false
|
||||||
Reference in New Issue
Block a user