Skip to content

Commit

Permalink
Update update_primary_nginx.yml
Browse files Browse the repository at this point in the history
  • Loading branch information
jifollan authored and GitHub Enterprise committed Mar 20, 2025
1 parent a7b5964 commit e8db299
Showing 1 changed file with 28 additions and 11 deletions.
39 changes: 28 additions & 11 deletions .github/workflows/update_primary_nginx.yml
Original file line number Diff line number Diff line change
@@ -1,31 +1,48 @@
name: UNFINISHED - setup nginx from the configuration file
name: Setup nginx from the configuration file

on:
workflow_dispatch:

jobs:
deploy:
runs-on: self-hosted

steps:
- name: Checkout repository
uses: actions/checkout@v3
- name: Dotenv Action

- name: Load environment variables
uses: falti/dotenv-action@v1.1.4
with:
env-file: .env
export-variables: true
keys-case: bypass

- name: Check environment variables
run: env

#Doesn't work properly, envsubst replaces all instances of $variable and ${variable}, but we want to keep e.g., $host as nginx variables
#- name: Create temporary nginx config file
# run: envsubst < ./nginx_template.txt > temp_default.conf
# Maybe look at https://www.baeldung.com/linux/envsubst-command to get an idea

- name: Copy temporary file to correct place
run: cp temp_default.conf /etc/nginx/conf.d/default.conf
- name: Replace environment variables in nginx config
run: |
# Use sed to selectively replace only the variables defined in .env
sed -e "s/\$GROUP_ID/$GROUP_ID/g" \
-e "s/\$DOMAIN/$DOMAIN/g" \
-e "s/\$URL_PREFIX/$URL_PREFIX/g" \
-e "s/\$PORT_PREFIX/$PORT_PREFIX/g" \
-e "s/\$DEV_POSTFIX/$DEV_POSTFIX/g" \
-e "s/\$STAG_POSTFIX/$STAG_POSTFIX/g" \
-e "s/\$PROD_POSTFIX/$PROD_POSTFIX/g" \
-e "s/\$BACKEND_POSTFIX/$BACKEND_POSTFIX/g" \
-e "s/\$FRONTEND_POSTFIX/$FRONTEND_POSTFIX/g" \
-e "s/\$GATEWAY_POSTFIX/$GATEWAY_POSTFIX/g" \
./nginx_securefit.conf > temp_nginx.conf
- name: Copy nginx config to correct place
run: |
sudo cp temp_nginx.conf /etc/nginx/conf.d/nginx_securefit.conf
sudo chmod 644 /etc/nginx/conf.d/nginx_securefit.conf # Ensure correct permissions
- name: Restart nginx
run: sudo systemctl reload nginx

- name: Show nginx file
run: cat /etc/nginx/conf.d/default.conf
run: cat /etc/nginx/conf.d/nginx_securefit.conf

0 comments on commit e8db299

Please sign in to comment.