-
Notifications
You must be signed in to change notification settings - Fork 0
39 lines (34 loc) · 1.01 KB
/
deploy-prod.yaml
File metadata and controls
39 lines (34 loc) · 1.01 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
name: Deploy on prod
on:
workflow_dispatch:
env:
ENVIRONMENT: prod
REGION: eu-central-1
TEAM: Platform-Engineering
jobs:
release:
name: Deploy fabio on prod
runs-on: [self-hosted, prod]
steps:
- name: Checkout code
uses: actions/checkout@v3
- name: Pull SSH key for Ansible connection
run: |
cd ansible
aws s3 cp \
s3://red-devops-workout-recorder/post-provisioning/app_${{ env.ENVIRONMENT }}_key.pem \
app_${{ env.ENVIRONMENT }}_key.pem
chmod 600 app_${{ env.ENVIRONMENT }}_key.pem
- name: Ansible Playbook
run: |
cd ansible
ansible-playbook \
deploy.yaml \
-i ./inventories/${{ env.ENVIRONMENT }}/inventory_aws_ec2.yaml \
--private-key app_${{ env.ENVIRONMENT }}_key.pem
- name: Remove SSH key
if: always()
run: |
cd ansible
rm app_${{ env.ENVIRONMENT }}_key.pem -f
continue-on-error: true