Files
LabWise/.onedev-buildspec.yml

51 lines
1.3 KiB
YAML
Raw Normal View History

2026-04-05 06:19:22 +00:00
version: 46
jobs:
- name: Deploy
steps:
- type: CommandStep
name: Deploy
runInContainer: true
image: ubuntu:latest
interpreter:
type: DefaultInterpreter
commands: |
# 1. Install SSH client in this temporary CI container
apt-get update && apt-get install -y openssh-client
# 2. Setup the SSH key from OneDev secrets
mkdir -p ~/.ssh
echo "@secret:DEPLOY_SSH_KEY@" > ~/.ssh/id_rsa
chmod 600 ~/.ssh/id_rsa
echo "StrictHostKeyChecking no" > ~/.ssh/config
# 3. SSH into the host machine to execute the deployment
# Replace YOUR_HOST_LAN_IP with your machine's actual IP address (e.g. 192.168.1.50)
ssh adipu@@172.17.0.1 << 'EOF'
set -e
echo "==> Navigating to project directory..."
cd ~/LabWise
echo "==> Pulling latest code..."
git pull origin main
echo "==> Running Test Build..."
docker compose build
echo "==> Build successful! Deploying new containers..."
docker compose up -d
echo "==> Deployment Complete!"
EOF
useTTY: true
condition: SUCCESSFUL
optional: false
triggers:
- type: BranchUpdateTrigger
branches: main
userMatch: anyone
projects: LabWise
retryCondition: never
maxRetries: 3
retryDelay: 30
timeout: 14400