diff --git a/.github/workflows/update_primary_nginx.yml b/.github/workflows/update_primary_nginx.yml index e1fd109..c875e48 100644 --- a/.github/workflows/update_primary_nginx.yml +++ b/.github/workflows/update_primary_nginx.yml @@ -1,4 +1,4 @@ -name: UNFINISHED - setup nginx from the configuration file +name: UNFINISHED - Setup Nginx from the Configuration File on: workflow_dispatch: @@ -6,10 +6,11 @@ on: jobs: deploy: runs-on: self-hosted - + steps: - name: Checkout repository uses: actions/checkout@v3 + - name: Dotenv Action uses: falti/dotenv-action@v1.1.4 with: @@ -19,25 +20,22 @@ jobs: - 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 + # Create temporary Nginx config file - name: Create temporary nginx config file run: | - export $(grep -v '^#' .env | xargs) # Load environment variables - envsubst "$(printf '${%s} ' $(env | cut -d= -f1))" < ./nginx_template.txt > temp_default.conf - # Maybe look at https://www.baeldung.com/linux/envsubst-command to get an idea + # Load environment variables from .env (already done by Dotenv Action) + echo "Substituting environment variables into nginx template" + envsubst '${PORT_PREFIX} ${GROUP_ID} ${DEV_POSTFIX}' < ./nginx_template.txt > temp_default.conf + - name: Check environment variables for Nginx run: | echo "PORT_PREFIX=${PORT_PREFIX}" echo "GROUP_ID=${GROUP_ID}" echo "DEV_POSTFIX=${DEV_POSTFIX}" - - - # - name: Create temporary nginx config file - - - name: Copy temporary file to correct place run: cp -L temp_default.conf /etc/nginx/conf.d/default.conf - name: Show nginx file run: cat /etc/nginx/conf.d/default.conf +