Setup nginx from the configuration file #2
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| 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: Load environment variables | |
| uses: falti/dotenv-action@v1.1.4 | |
| with: | |
| export-variables: true | |
| keys-case: bypass | |
| - name: Check environment variables | |
| run: env | |
| - name: Create temporary nginx config file | |
| run: | | |
| # Define the list of variables to replace | |
| VARIABLES_TO_REPLACE="DEV_PORT_PREFIX STAG_PORT_PREFIX PROD_PORT_PREFIX BACKEND_POSTFIX FRONTEND_POSTFIX GATEWAY_POSTFIX" | |
| # Use envsubst to replace only the specified variables | |
| envsubst "$VARIABLES_TO_REPLACE" < ./nginx_template.txt > temp_default.conf | |
| - name: Copy temporary file to correct place | |
| run: sudo cp temp_default.conf /etc/nginx/conf.d/default.conf | |
| - name: Show nginx file | |
| run: cat /etc/nginx/conf.d/default.conf | |
| - name: Reload NGINX | |
| run: sudo nginx -s reload |