Skip to content

Setup nginx from the configuration file #6

Setup nginx from the configuration file

Setup nginx from the configuration file #6

name: FINISHED and edited - 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
uses: falti/dotenv-action@v1.1.4
with:
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: Create temporary nginx config file
run: envsubst '$REPLACE_ME $ANOTHER_VAR' < ./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
#added sudo here
- name: Show nginx file
run: cat /etc/nginx/conf.d/default.conf
- name: Test NGINX Configuration
run: sudo nginx -t
- name: Restart NGINX
run: sudo systemctl reload nginx