Added pipeline to deploy via Ansible
This commit is contained in:
+64
-3
@@ -88,10 +88,71 @@ volumes:
|
|||||||
path: /var/lib/drone/cache/.gradle
|
path: /var/lib/drone/cache/.gradle
|
||||||
|
|
||||||
trigger:
|
trigger:
|
||||||
branches:
|
|
||||||
- main
|
|
||||||
event:
|
event:
|
||||||
include:
|
include:
|
||||||
- push
|
- tag
|
||||||
- custom
|
- custom
|
||||||
|
|
||||||
|
---
|
||||||
|
kind: pipeline
|
||||||
|
name: deploy image
|
||||||
|
type: docker
|
||||||
|
|
||||||
|
platform:
|
||||||
|
os: linux
|
||||||
|
arch: arm64
|
||||||
|
|
||||||
|
clone:
|
||||||
|
disable: true
|
||||||
|
|
||||||
|
steps:
|
||||||
|
- name: clone
|
||||||
|
image: alpine/git
|
||||||
|
environment:
|
||||||
|
SSH_KEY:
|
||||||
|
from_secret: ssh_key
|
||||||
|
commands:
|
||||||
|
- mkdir $HOME/.ssh
|
||||||
|
- echo "$SSH_KEY" > $HOME/.ssh/id_ed25519
|
||||||
|
- chmod 600 $HOME/.ssh/id_ed25519
|
||||||
|
- touch $HOME/.ssh/known_hosts
|
||||||
|
- chmod 600 $HOME/.ssh/known_hosts
|
||||||
|
- ssh-keyscan -H git.2martens.de > $HOME/.ssh/known_hosts 2>/dev/null
|
||||||
|
- git clone ssh://giteajim@git.2martens.de:22/2martens/cloud-configuration.git .
|
||||||
|
- git checkout main
|
||||||
|
- name: modify deployed image
|
||||||
|
image: alpine
|
||||||
|
commands:
|
||||||
|
- sed -i -r "s/(wahlrecht_image_version:).*/\1\ $IMAGE_VERSION/" inventories/host_vars/api-server/public.yaml
|
||||||
|
- name: save modified variable file
|
||||||
|
image: alpine/git
|
||||||
|
environment:
|
||||||
|
SSH_KEY:
|
||||||
|
from_secret: ssh_key
|
||||||
|
commands:
|
||||||
|
- mkdir $HOME/.ssh
|
||||||
|
- echo "$SSH_KEY" > $HOME/.ssh/id_ed25519
|
||||||
|
- chmod 600 $HOME/.ssh/id_ed25519
|
||||||
|
- touch $HOME/.ssh/known_hosts
|
||||||
|
- chmod 600 $HOME/.ssh/known_hosts
|
||||||
|
- ssh-keyscan -H git.2martens.de > $HOME/.ssh/known_hosts 2>/dev/null
|
||||||
|
- git add inventories/host_vars/api-server/public.yaml
|
||||||
|
- git commit -m "[Drone] Changed wahlrecht_image_version to $IMAGE_VERSION"
|
||||||
|
- git push origin main
|
||||||
|
- name: deploy image
|
||||||
|
image: plugins/ansible:3
|
||||||
|
settings:
|
||||||
|
playbook: ansible/deploy_spring.yaml
|
||||||
|
inventory: ansible/inventories/production
|
||||||
|
private_key:
|
||||||
|
from_secret: ssh_key
|
||||||
|
vault_password:
|
||||||
|
from_secret: vault_password
|
||||||
|
|
||||||
|
trigger:
|
||||||
|
target:
|
||||||
|
- production
|
||||||
|
event:
|
||||||
|
include:
|
||||||
|
- promote
|
||||||
|
- rollback
|
||||||
|
|||||||
Reference in New Issue
Block a user