on: workflow_dispatch: inputs: app: description: 'App to deploy' required: true type: choice options: [gitea, runner] jobs: deploy: runs-on: ubuntu-latest env: FLY_API_TOKEN: ${{ secrets.FLY_API_TOKEN }} GITEA_APP_NAME: ${{ secrets.FLY_APP_NAME }} RUNNER_APP_NAME: ${{ secrets.RUNNER_APP_NAME }} steps: - uses: actions/checkout@v4 - uses: superfly/flyctl-actions/setup-flyctl@master - if: github.event.inputs.app == 'gitea' run: flyctl apps create $GITEA_APP_NAME --org personal || true; flyctl volumes create gitea_data --size 1 -a $GITEA_APP_NAME || true; flyctl secrets set GITEA__server__DOMAIN=$GITEA_APP_NAME.fly.dev GITEA__server__ROOT_URL=https://$GITEA_APP_NAME.fly.dev -a $GITEA_APP_NAME; flyctl deploy --remote-only -a $GITEA_APP_NAME -c fly.toml - if: github.event.inputs.app == 'runner' run: flyctl apps create $RUNNER_APP_NAME --org personal || true; flyctl volumes create runner_data --size 1 -a $RUNNER_APP_NAME || true; flyctl secrets set GITEA_INSTANCE_URL=https://$GITEA_APP_NAME.fly.dev GITEA_RUNNER_REGISTRATION_TOKEN='${{ secrets.GITEA_RUNNER_REGISTRATION_TOKEN }}' -a $RUNNER_APP_NAME; flyctl deploy --remote-only -a $RUNNER_APP_NAME -c runner/fly.toml