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.

147 lines
2.8 KiB
YAML

kind: pipeline
type: docker
name: default
trigger:
branch:
- master
steps:
- name: debug-secrets
image: alpine
environment:
VAULT_API_URL:
from_secret: VAULT_API_URL
commands:
- 'echo "Docker Registry URL: $${VAULT_API_URL}"'
when:
event:
- push
- tag
# Make the image available for next step
- name: cron
image: plugins/docker
settings:
dockerfile: docker/wp-cron/Dockerfile
context: .
registry: registry.sn48.zivili.ch
repo: registry.sn48.zivili.ch/meow/wp-cron
tags:
- "amd64-1.0.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
- 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