-
Notifications
You must be signed in to change notification settings - Fork 1
64 lines (53 loc) · 2.14 KB
/
setup-env.yml
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
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
name: Setup Configuration
on:
workflow_call:
inputs:
ENVIRONMENT:
required: true
type: string
jobs:
setup_env:
runs-on: ubuntu-latest
environment:
name: ${{ inputs.ENVIRONMENT }}
steps:
- name: Checkout Repository
uses: actions/checkout@v4
- name: Copy files to server
uses: appleboy/scp-action@master
with:
host: ${{ secrets.SSH_HOST }}
username: ${{ secrets.SSH_USERNAME }}
password: ${{ secrets.SSH_PASSWORD }}
source: "docker-compose.server.yml, docker"
target: "/srv/trassenscout-${{ inputs.ENVIRONMENT }}"
overwrite: true
- name: Replace environment variables
uses: appleboy/ssh-action@master
with:
host: ${{ secrets.SSH_HOST }}
username: ${{ secrets.SSH_USERNAME }}
password: ${{ secrets.SSH_PASSWORD }}
script: |
cd /srv/trassenscout-${{ inputs.ENVIRONMENT }}
rm docker-compose.yml
mv docker-compose.server.yml docker-compose.yml
echo "Updating `.env`"
rm -f .env
cat <<EOF > .env
NEXT_PUBLIC_APP_ENV='${{ inputs.ENVIRONMENT }}'
NEXT_PUBLIC_APP_ORIGIN='${{ vars.APP_ORIGIN }}'
APP_DOMAIN='${{ vars.APP_DOMAIN }}'
MAILJET_APIKEY_PUBLIC='${{ secrets.MAILJET_APIKEY_PUBLIC }}'
MAILJET_APIKEY_PRIVATE='${{ secrets.MAILJET_APIKEY_PRIVATE }}'
POSTGRES_DB='${{ vars.POSTGRES_DB }}'
POSTGRES_USER='${{ secrets.POSTGRES_USER }}'
POSTGRES_PASSWORD='${{ secrets.POSTGRES_PASSWORD }}'
DATABASE_URL='postgres://${{ secrets.POSTGRES_USER }}:${{ secrets.POSTGRES_PASSWORD }}@${{ vars.POSTGRES_HOST }}/${{ vars.POSTGRES_DB }}'
SESSION_SECRET_KEY='${{ secrets.SESSION_SECRET_KEY }}'
ADMIN_EMAIL='${{ vars.ADMIN_EMAIL }}'
S3_UPLOAD_KEY='${{ secrets.S3_UPLOAD_KEY }}'
S3_UPLOAD_SECRET='${{ secrets.S3_UPLOAD_SECRET }}'
S3_UPLOAD_ROOTFOLDER='upload-${{ inputs.ENVIRONMENT }}'
TS_API_KEY='${{ secrets.TS_API_KEY }}'
EOF