name: Heavy Governance Lane on: workflow_dispatch: schedule: - cron: '17 4 * * 1-5' jobs: heavy-governance: if: ${{ github.event_name != 'schedule' || vars.TENANTATLAS_ENABLE_HEAVY_GOVERNANCE_SCHEDULE == '1' }} runs-on: ubuntu-latest env: SAIL_TTY: 'false' steps: - name: Checkout repository uses: actions/checkout@v4 - name: Set up PHP uses: shivammathur/setup-php@v2 with: php-version: '8.4' coverage: none tools: composer:v2 - name: Install platform dependencies run: | cd apps/platform if [[ ! -f .env ]]; then cp .env.example .env fi composer install --no-interaction --prefer-dist --optimize-autoloader - name: Boot Sail run: | cd apps/platform ./vendor/bin/sail up -d ./vendor/bin/sail artisan key:generate --force --no-interaction - name: Resolve Heavy Governance context id: context run: | if [[ "${{ github.event_name }}" == "schedule" ]]; then echo "workflow_id=heavy-governance-scheduled" >> "$GITHUB_OUTPUT" echo "trigger_class=scheduled" >> "$GITHUB_OUTPUT" else echo "workflow_id=heavy-governance-manual" >> "$GITHUB_OUTPUT" echo "trigger_class=manual" >> "$GITHUB_OUTPUT" fi - name: Run Heavy Governance lane run: ./scripts/platform-test-lane heavy-governance --workflow-id=${{ steps.context.outputs.workflow_id }} --trigger-class=${{ steps.context.outputs.trigger_class }} - name: Refresh Heavy Governance report if: always() run: ./scripts/platform-test-report heavy-governance --workflow-id=${{ steps.context.outputs.workflow_id }} --trigger-class=${{ steps.context.outputs.trigger_class }} - name: Stage Heavy Governance artifacts if: always() run: ./scripts/platform-test-artifacts heavy-governance .gitea-artifacts/heavy-governance --workflow-id=${{ steps.context.outputs.workflow_id }} --trigger-class=${{ steps.context.outputs.trigger_class }} - name: Upload Heavy Governance artifacts if: always() uses: actions/upload-artifact@v4 with: name: heavy-governance-artifacts path: .gitea-artifacts/heavy-governance if-no-files-found: error - name: Stop Sail if: always() run: | cd apps/platform ./vendor/bin/sail stop