You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
157 lines
3.0 KiB
YAML
157 lines
3.0 KiB
YAML
kind: pipeline
|
|
type: docker
|
|
name: default
|
|
trigger:
|
|
branch:
|
|
- traefik
|
|
- master
|
|
|
|
steps:
|
|
- name: debug-secrets
|
|
image: alpine
|
|
environment:
|
|
VAULT_API_URL:
|
|
from_secret: VAULT_API_URL
|
|
commands:
|
|
- 'echo "VAULT_API_URL $${VAULT_API_URL}"'
|
|
when:
|
|
event:
|
|
- push
|
|
- tag
|
|
|
|
# Make the image available for next step
|
|
- name: publish
|
|
image: plugins/docker
|
|
settings:
|
|
build_args:
|
|
- VITE_LOGGER_LOG=1
|
|
- VITE_LOGGER_DEBUG=1
|
|
- VITE_APPLICATION_NAME=Calendar
|
|
- VITE_APPLICATION_HANDLE=calendar-react
|
|
- VITE_DEFAULT_LANG=en
|
|
- VITE_APP_VERSION=0.1.0
|
|
dockerfile: Dockerfile
|
|
context: .
|
|
registry: registry.sn48.zivili.ch
|
|
repo: registry.sn48.zivili.ch/meow/calendar-react
|
|
tags:
|
|
- "amd64-0.1.0"
|
|
- "latest"
|
|
username:
|
|
from_secret: PORTUS_USER
|
|
password:
|
|
from_secret: PORTUS_PASSWORD
|
|
debug: true
|
|
launch_debug: true
|
|
# make sure to replace image with same tag
|
|
force_tag: true
|
|
when:
|
|
event:
|
|
- push
|
|
- tag
|
|
|
|
## BEGIN - GENERIC DEPLOY CONIFG
|
|
|
|
- name: deploy
|
|
image: registry.sn48.zivili.ch/meow/drone-deploy:amd64-1.0.0
|
|
pull: never
|
|
settings:
|
|
ssh_port:
|
|
from_secret: SSH_PORT
|
|
# this is required for the moment to generate the .docker/config.json
|
|
# drone is failing to do it on its own at the moment
|
|
dockerconfigjson:
|
|
from_secret: dockerconfigjson
|
|
# use portus or directly docker logins
|
|
portus_user:
|
|
from_secret: PORTUS_USER
|
|
portus_password:
|
|
from_secret: PORTUS_PASSWORD
|
|
# used by deploy to login to deploy server
|
|
ssh_host:
|
|
from_secret: SSH_HOST
|
|
ssh_user:
|
|
from_secret: SSH_USER
|
|
ssh_key:
|
|
from_secret: SSH_KEY
|
|
ssh_fingerprint:
|
|
from_secret: SSH_FINGERPRINT
|
|
# used by the deploy script to gather all project's .env values from vault
|
|
drone_agent1_token:
|
|
from_secret: DRONE_AGENT1_TOKEN
|
|
# used by deploy script to know where to gather secrets from
|
|
vault_api_url:
|
|
from_secret: VAULT_API_URL
|
|
|
|
---
|
|
kind: secret
|
|
name: SSH_HOST
|
|
get:
|
|
path: kv/data/__drone-admin-secrets
|
|
name: SSH_HOST
|
|
|
|
---
|
|
kind: secret
|
|
name: SSH_USER
|
|
get:
|
|
path: kv/data/__drone-admin-secrets
|
|
name: SSH_USER
|
|
|
|
---
|
|
kind: secret
|
|
name: SSH_KEY
|
|
get:
|
|
path: kv/data/__drone-admin-secrets
|
|
name: SSH_KEY
|
|
|
|
---
|
|
kind: secret
|
|
name: DRONE_AGENT1_TOKEN
|
|
get:
|
|
path: kv/data/__drone-admin-secrets
|
|
name: DRONE_AGENT1_TOKEN
|
|
|
|
---
|
|
kind: secret
|
|
name: VAULT_API_URL
|
|
get:
|
|
path: kv/data/__drone-admin-secrets
|
|
name: VAULT_API_URL
|
|
|
|
---
|
|
kind: secret
|
|
name: PORTUS_USER
|
|
get:
|
|
path: kv/data/__drone-admin-secrets
|
|
name: PORTUS_USER
|
|
|
|
---
|
|
kind: secret
|
|
name: PORTUS_PASSWORD
|
|
get:
|
|
path: kv/data/__drone-admin-secrets
|
|
name: PORTUS_PASSWORD
|
|
|
|
---
|
|
kind: secret
|
|
name: dockerconfigjson
|
|
get:
|
|
path: kv/data/__drone-admin-secrets
|
|
name: dockerconfigjson
|
|
|
|
image_pull_secrets:
|
|
from_secret: dockerconfigjson
|
|
|
|
---
|
|
kind: secret
|
|
name: SSH_PORT
|
|
get:
|
|
path: kv/data/__drone-admin-secrets
|
|
name: SSH_PORT
|
|
|
|
---
|
|
kind: secret
|
|
name: SSH_FINGERPRINT
|
|
get:
|
|
path: kv/data/__drone-admin-secrets
|
|
name: SSH_FINGERPRINT |