Add dev branch deployment support
All checks were successful
Build & Deploy OS League Tools / build-and-deploy (push) Successful in 36s
All checks were successful
Build & Deploy OS League Tools / build-and-deploy (push) Successful in 36s
This commit is contained in:
@@ -4,10 +4,10 @@ on:
|
|||||||
push:
|
push:
|
||||||
branches:
|
branches:
|
||||||
- main
|
- main
|
||||||
|
- dev
|
||||||
|
|
||||||
env:
|
env:
|
||||||
FRONTEND_HOST: psg-leagues-tools-frontend
|
FRONTEND_HOST: psg-leagues-tools-frontend
|
||||||
DEPLOY_PATH: /home/sonder/leagues-tools/os-league-tools-master
|
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
build-and-deploy:
|
build-and-deploy:
|
||||||
@@ -16,6 +16,18 @@ jobs:
|
|||||||
- name: Checkout code
|
- name: Checkout code
|
||||||
uses: actions/checkout@v3
|
uses: actions/checkout@v3
|
||||||
|
|
||||||
|
- name: Set environment variables
|
||||||
|
run: |
|
||||||
|
if [ "${{ github.ref_name }}" = "main" ]; then
|
||||||
|
echo "DEPLOY_PATH=/home/sonder/leagues-tools/os-league-tools-master" >> $GITHUB_ENV
|
||||||
|
echo "SERVICE_NAME=os-league-tools" >> $GITHUB_ENV
|
||||||
|
echo "ENVIRONMENT=production" >> $GITHUB_ENV
|
||||||
|
else
|
||||||
|
echo "DEPLOY_PATH=/home/sonder/leagues-tools-dev/os-league-tools-master" >> $GITHUB_ENV
|
||||||
|
echo "SERVICE_NAME=os-league-tools-dev" >> $GITHUB_ENV
|
||||||
|
echo "ENVIRONMENT=development" >> $GITHUB_ENV
|
||||||
|
fi
|
||||||
|
|
||||||
- name: Set up Node.js
|
- name: Set up Node.js
|
||||||
uses: actions/setup-node@v4
|
uses: actions/setup-node@v4
|
||||||
with:
|
with:
|
||||||
@@ -46,9 +58,12 @@ jobs:
|
|||||||
|
|
||||||
- name: Deploy to frontend server
|
- name: Deploy to frontend server
|
||||||
run: |
|
run: |
|
||||||
ssh sonder@${{ env.FRONTEND_HOST }} "sudo systemctl stop os-league-tools || true"
|
echo "Deploying ${{ env.ENVIRONMENT }} to ${{ env.DEPLOY_PATH }}"
|
||||||
|
ssh sonder@${{ env.FRONTEND_HOST }} "sudo systemctl stop ${{ env.SERVICE_NAME }} || true"
|
||||||
|
ssh sonder@${{ env.FRONTEND_HOST }} "mkdir -p ${{ env.DEPLOY_PATH }}"
|
||||||
ssh sonder@${{ env.FRONTEND_HOST }} "rm -rf ${{ env.DEPLOY_PATH }}/build"
|
ssh sonder@${{ env.FRONTEND_HOST }} "rm -rf ${{ env.DEPLOY_PATH }}/build"
|
||||||
scp os-league-tools-master/build.tar.gz sonder@${{ env.FRONTEND_HOST }}:/tmp/
|
scp os-league-tools-master/build.tar.gz sonder@${{ env.FRONTEND_HOST }}:/tmp/
|
||||||
ssh sonder@${{ env.FRONTEND_HOST }} "tar -xzf /tmp/build.tar.gz -C ${{ env.DEPLOY_PATH }}/"
|
ssh sonder@${{ env.FRONTEND_HOST }} "tar -xzf /tmp/build.tar.gz -C ${{ env.DEPLOY_PATH }}/"
|
||||||
ssh sonder@${{ env.FRONTEND_HOST }} "rm /tmp/build.tar.gz"
|
ssh sonder@${{ env.FRONTEND_HOST }} "rm /tmp/build.tar.gz"
|
||||||
ssh sonder@${{ env.FRONTEND_HOST }} "sudo systemctl start os-league-tools"
|
ssh sonder@${{ env.FRONTEND_HOST }} "sudo systemctl start ${{ env.SERVICE_NAME }}"
|
||||||
|
echo "Deployed ${{ env.ENVIRONMENT }} successfully!"
|
||||||
|
|||||||
5
.gitignore
vendored
5
.gitignore
vendored
@@ -55,3 +55,8 @@ os-league-tools-master//.vscode
|
|||||||
|
|
||||||
.claude/settings.local.json
|
.claude/settings.local.json
|
||||||
nul
|
nul
|
||||||
|
|
||||||
|
blake2tokenhasher-test/*.*
|
||||||
|
group-ironmen-master/*.*
|
||||||
|
group-ironmen-tracker-master/*.*
|
||||||
|
tasks-tracker-plugin-master/*.*
|
||||||
|
|||||||
33
os-league-tools-dev.service
Normal file
33
os-league-tools-dev.service
Normal file
@@ -0,0 +1,33 @@
|
|||||||
|
[Unit]
|
||||||
|
Description=OS League Tools - Dev Environment
|
||||||
|
After=network.target
|
||||||
|
Wants=network-online.target
|
||||||
|
|
||||||
|
[Service]
|
||||||
|
Type=simple
|
||||||
|
User=sonder
|
||||||
|
Group=sonder
|
||||||
|
WorkingDirectory=/home/sonder/leagues-tools-dev/os-league-tools-master
|
||||||
|
|
||||||
|
# Environment variables
|
||||||
|
Environment="NODE_ENV=production"
|
||||||
|
Environment="PORT=3001"
|
||||||
|
|
||||||
|
# Start the application (serves the pre-built static files)
|
||||||
|
ExecStart=/usr/bin/serve -s build -l tcp://0.0.0.0:3001
|
||||||
|
|
||||||
|
# Restart policy
|
||||||
|
Restart=on-failure
|
||||||
|
RestartSec=10s
|
||||||
|
|
||||||
|
# Logging
|
||||||
|
StandardOutput=journal
|
||||||
|
StandardError=journal
|
||||||
|
SyslogIdentifier=os-league-tools-dev
|
||||||
|
|
||||||
|
# Security hardening
|
||||||
|
NoNewPrivileges=true
|
||||||
|
PrivateTmp=true
|
||||||
|
|
||||||
|
[Install]
|
||||||
|
WantedBy=multi-user.target
|
||||||
@@ -16,7 +16,7 @@ Environment="PORT=3000"
|
|||||||
# Environment="REACT_APP_RELDO_URL=http://localhost:8080"
|
# Environment="REACT_APP_RELDO_URL=http://localhost:8080"
|
||||||
|
|
||||||
# Start the application (serves the pre-built static files)
|
# Start the application (serves the pre-built static files)
|
||||||
ExecStart=/usr/bin/serve -s build -l 3000
|
ExecStart=/usr/bin/serve -s build -l tcp://0.0.0.0:3000
|
||||||
|
|
||||||
# Restart policy
|
# Restart policy
|
||||||
Restart=on-failure
|
Restart=on-failure
|
||||||
|
|||||||
Reference in New Issue
Block a user