name: Deploy cloud-pc

on:
  workflow_dispatch:
    inputs:
      stack:
        description: "Stack to deploy (leave empty to reconcile all)"
        required: false
  push:
    paths:
      - ".gitea/workflows/deploy-cloud-pc.yml"
      - "cloud-pc/**"
      - "scripts/deploy.sh"
  schedule:
    - cron: "0 4 * * *"

jobs:
  deploy:
    runs-on: cloud-pc
    steps:
      - name: Sync repo
        run: |
          git config --global --replace-all safe.directory /opt/services
          git -C /opt/services pull origin main --ff-only
          chown -R 1000:100 /opt/services

      - name: Deploy stacks
        run: /opt/services/scripts/deploy.sh cloud-pc "${{ inputs.stack }}"
