39 lines
1.1 KiB
YAML
39 lines
1.1 KiB
YAML
name: Configure Proxy Nginx
|
|
|
|
on:
|
|
workflow_dispatch:
|
|
workflow_call:
|
|
|
|
jobs:
|
|
setup-nginx:
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- name: 📦 Checkout source code
|
|
uses: actions/checkout@v4
|
|
|
|
- name: 🔐 Setup SSH
|
|
env:
|
|
SSH_KEY: ${{ secrets.PROXY_SSH_KEY }}
|
|
GLOBAL_PROXY_HOST: ${{ secrets.GLOBAL_PROXY_HOST }}
|
|
run: |
|
|
mkdir -p ~/.ssh
|
|
echo "$SSH_KEY" > ~/.ssh/id_rsa
|
|
chmod 600 ~/.ssh/id_rsa
|
|
ssh-keyscan -H "$GLOBAL_PROXY_HOST" >> ~/.ssh/known_hosts
|
|
|
|
- name: 🚀 Install Nginx and apply configuration
|
|
env:
|
|
GLOBAL_PROXY_HOST: ${{ secrets.GLOBAL_PROXY_HOST }}
|
|
run: |
|
|
scp workflows/global-homepage.onwalk.net root@"$GLOBAL_PROXY_HOST":/tmp/default
|
|
ssh root@"$GLOBAL_PROXY_HOST" <<'EOS'
|
|
set -e
|
|
apt-get update
|
|
DEBIAN_FRONTEND=noninteractive apt-get install -y nginx
|
|
mv /tmp/default /etc/nginx/sites-available/default
|
|
systemctl restart nginx
|
|
EOS
|
|
|
|
- name: ✅ Done
|
|
run: echo "Proxy server configured."
|