Merge pull request 'Added up-down workflow for easier lifecycle management' (#12) from add-up-down into main
Remote Deployment Pipeline / Prepare Context (push) Successful in 2s
Remote Deployment Pipeline / Deploy (Dev/Preview) (push) Skipped
Remote Deployment Pipeline / Cleanup Preview (push) Skipped
Remote Deployment Pipeline / Deploy (Pre-Prod) (push) Successful in 2m55s
Remote Deployment Pipeline / Stop Pre-Prod (push) Successful in 8s

Reviewed-on: #12
This commit was merged in pull request #12.
This commit is contained in:
2026-09-16 17:39:15 +02:00
+50
View File
@@ -0,0 +1,50 @@
name: Add up down workflow
on:
workflow_dispatch:
inputs:
action:
description: 'Action to perform (up or down)'
required: true
default: 'up'
type: choice
options:
- up
- down
env:
REMOTE_PREPROD_PATH: /var/app/nextcloud/preprod
# --- SECRETS ---
SSH_HOST: ${{ secrets.SSH_HOST }}
SSH_USER: ${{ secrets.SSH_USER }}
SSH_PRIVATE_KEY: ${{ secrets.SSH_PRIVATE_KEY }}
SSH_PORT: ${{ secrets.SSH_PORT || 22 }}
jobs:
# ------------------------------------------------------------------
# STAGE 3.5: DEPLOY PRE-PROD
# ------------------------------------------------------------------
up_down_preprod:
name: Up/Down (Pre-Prod)
runs-on: ubuntu-latest
# if: github.ref == 'refs/heads/main'
steps:
- name: Up/Down Remote Environment
uses: appleboy/ssh-action@0ff4204d59e8e51228ff73bce53f80d53301dee2 # v1.2.5
with:
host: ${{ env.SSH_HOST }}
username: ${{ env.SSH_USER }}
key: ${{ env.SSH_PRIVATE_KEY }}
port: ${{ env.SSH_PORT }}
script: |
set -e
cd ${{ env.REMOTE_PREPROD_PATH }}
if [ "${{ github.event.inputs.action }}" = "up" ]; then
docker compose -f docker-compose.yml up -d --build --remove-orphans --wait
elif [ "${{ github.event.inputs.action }}" = "down" ]; then
docker compose -f docker-compose.yml down || true
else
echo "Invalid action: ${{ github.event.inputs.action }}. Use 'up' or 'down'."
exit 1
fi