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:
|
||||
branches:
|
||||
- main
|
||||
- dev
|
||||
|
||||
env:
|
||||
FRONTEND_HOST: psg-leagues-tools-frontend
|
||||
DEPLOY_PATH: /home/sonder/leagues-tools/os-league-tools-master
|
||||
|
||||
jobs:
|
||||
build-and-deploy:
|
||||
@@ -16,6 +16,18 @@ jobs:
|
||||
- name: Checkout code
|
||||
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
|
||||
uses: actions/setup-node@v4
|
||||
with:
|
||||
@@ -46,9 +58,12 @@ jobs:
|
||||
|
||||
- name: Deploy to frontend server
|
||||
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"
|
||||
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 }} "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
|
||||
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"
|
||||
|
||||
# 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=on-failure
|
||||
|
||||
Reference in New Issue
Block a user