Skip to content

Commit 47de860

Browse files
authored
Feature: Deployment updates (#846)
1 parent f022412 commit 47de860

File tree

2 files changed

+27
-2
lines changed

2 files changed

+27
-2
lines changed

.github/workflows/deploy.yml

Lines changed: 25 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@ on:
55
branches:
66
- main
77
- develop
8+
- feature/vapor-env-updates
89
workflow_dispatch:
910
inputs:
1011
environment:
@@ -60,11 +61,14 @@ jobs:
6061
if [[ "${{ github.event_name }}" == "workflow_dispatch" ]]; then
6162
echo "VAPOR_ENV=${{ github.event.inputs.environment }}" >> "$GITHUB_ENV"
6263
echo "TEST_MODE=${{ github.event.inputs.test_mode }}" >> "$GITHUB_ENV"
64+
elif [[ "${{ github.ref_name }}" == "main" ]]; then
65+
echo "VAPOR_ENV=production" >> "$GITHUB_ENV"
66+
echo "TEST_MODE=false" >> "$GITHUB_ENV"
6367
elif [[ "${{ github.ref_name }}" == "develop" ]]; then
6468
echo "VAPOR_ENV=staging" >> "$GITHUB_ENV"
6569
echo "TEST_MODE=false" >> "$GITHUB_ENV"
6670
else
67-
echo "VAPOR_ENV=production" >> "$GITHUB_ENV"
71+
echo "VAPOR_ENV=staging" >> "$GITHUB_ENV"
6872
echo "TEST_MODE=false" >> "$GITHUB_ENV"
6973
fi
7074
@@ -73,6 +77,21 @@ jobs:
7377
echo "🚀 Deploying to Vapor environment: ${{ env.VAPOR_ENV }}"
7478
echo "🧪 Test mode: ${{ env.TEST_MODE }}"
7579
80+
- name: Configure AWS Credentials
81+
if: env.TEST_MODE != 'true'
82+
uses: aws-actions/configure-aws-credentials@v4
83+
with:
84+
aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }}
85+
aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY_ID }}
86+
aws-region: eu-west-1
87+
88+
- name: Download Encrypted Environment File from S3
89+
if: env.TEST_MODE != 'true'
90+
working-directory: ./backend
91+
run: |
92+
aws s3 cp s3://hi.events-env-secrets/.env.${{ env.VAPOR_ENV }}.encrypted .env.${{ env.VAPOR_ENV }}.encrypted
93+
echo "✅ Downloaded .env.${{ env.VAPOR_ENV }}.encrypted from S3"
94+
7695
- name: Validate Deployment Configuration
7796
working-directory: ./backend
7897
run: |
@@ -83,6 +102,7 @@ jobs:
83102
fi
84103
85104
- name: Deploy to Vapor
105+
if: env.TEST_MODE != 'true'
86106
working-directory: ./backend
87107
run: vapor deploy ${{ env.VAPOR_ENV }}
88108
env:
@@ -105,11 +125,14 @@ jobs:
105125
echo "DO_APP_ID=${{ secrets.DIGITALOCEAN_PRODUCTION_APP_ID }}" >> "$GITHUB_ENV"
106126
fi
107127
echo "TEST_MODE=${{ github.event.inputs.test_mode }}" >> "$GITHUB_ENV"
128+
elif [[ "${{ github.ref_name }}" == "main" ]]; then
129+
echo "DO_APP_ID=${{ secrets.DIGITALOCEAN_PRODUCTION_APP_ID }}" >> "$GITHUB_ENV"
130+
echo "TEST_MODE=false" >> "$GITHUB_ENV"
108131
elif [[ "${{ github.ref_name }}" == "develop" ]]; then
109132
echo "DO_APP_ID=${{ secrets.DIGITALOCEAN_STAGING_APP_ID }}" >> "$GITHUB_ENV"
110133
echo "TEST_MODE=false" >> "$GITHUB_ENV"
111134
else
112-
echo "DO_APP_ID=${{ secrets.DIGITALOCEAN_PRODUCTION_APP_ID }}" >> "$GITHUB_ENV"
135+
echo "DO_APP_ID=${{ secrets.DIGITALOCEAN_STAGING_APP_ID }}" >> "$GITHUB_ENV"
113136
echo "TEST_MODE=false" >> "$GITHUB_ENV"
114137
fi
115138

backend/.gitignore

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,8 @@
77
/vendor
88
.env
99
.env.backup
10+
.env.production.*
11+
.env.staging.*
1012
.env.production
1113
.env.staging
1214
.phpunit.result.cache

0 commit comments

Comments
 (0)