Skip to content

fix(server-utils): Ensure all orchestrion instrumentation lazy registers #6531

fix(server-utils): Ensure all orchestrion instrumentation lazy registers

fix(server-utils): Ensure all orchestrion instrumentation lazy registers #6531

name: Warden
on:
pull_request:
types: [opened, synchronize, reopened]
jobs:
warden:
runs-on: ubuntu-latest
permissions:
contents: read
pull-requests: read
id-token: write
env:
WARDEN_OPENROUTER_API_KEY: ${{ secrets.WARDEN_OPENROUTER_API_KEY }}
WARDEN_MODEL: ${{ secrets.WARDEN_MODEL }}
WARDEN_SENTRY_DSN: ${{ secrets.WARDEN_SENTRY_DSN }}
steps:
- name: Check Warden credentials
env:
HAS_OPENROUTER_API_KEY: ${{ secrets.WARDEN_OPENROUTER_API_KEY != '' }}
IS_FORK: ${{ github.event.pull_request.head.repo.full_name != github.repository }}
IS_DEPENDABOT: ${{ github.actor == 'dependabot[bot]' }}
run: |
if [[ "$HAS_OPENROUTER_API_KEY" == "true" ]]; then
exit 0
fi
if [[ "$IS_FORK" == "true" ]]; then
MESSAGE="Warden cannot review this fork pull request because GitHub withholds repository secrets from fork workflows."
elif [[ "$IS_DEPENDABOT" == "true" ]]; then
MESSAGE="Warden cannot review this Dependabot pull request because WARDEN_OPENROUTER_API_KEY is unavailable. Add it to the organization Dependabot secrets."
else
MESSAGE="Warden cannot review this pull request because WARDEN_OPENROUTER_API_KEY is unavailable. Add it to the organization Actions secrets."
fi
echo "::error::$MESSAGE"
printf '## Warden unavailable\n\n%s\n' "$MESSAGE" >> "$GITHUB_STEP_SUMMARY"
exit 1
- name: Checkout Code
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
- name: Checkout Org GitHub Repo
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
with:
repository: ${{ github.repository_owner }}/.github
path: .warden-org
- name: Analyze
id: warden-analyze
uses: getsentry/warden@v0
with:
mode: analyze
base-config-path: .warden-org/warden.toml
- uses: actions/create-github-app-token@29824e69f54612133e76f7eaac726eef6c875baf # v2.2.1
id: app-token
if: ${{ always() && steps.warden-analyze.outputs.findings-file != '' }}
with:
app-id: ${{ secrets.WARDEN_APP_ID }}
private-key: ${{ secrets.WARDEN_PRIVATE_KEY }}
owner: ${{ github.repository_owner }} # access to all repos, cause this is triggered on org level
- name: Report
if: ${{ always() && steps.warden-analyze.outputs.findings-file != '' && steps.app-token.outcome == 'success' }}
uses: getsentry/warden@v0
with:
mode: report
findings-file: ${{ steps.warden-analyze.outputs.findings-file }}
github-token: ${{ steps.app-token.outputs.token }}
base-config-path: .warden-org/warden.toml
- name: Authenticate to Google Cloud
if: ${{ always() && steps.warden-analyze.outputs.findings-file != '' }}
continue-on-error: true
uses: google-github-actions/auth@7c6bc770dae815cd3e89ee6cdf493a5fab2cc093
with:
workload_identity_provider: projects/868781662168/locations/global/workloadIdentityPools/prod-github/providers/github-oidc-pool
service_account: gha-warden@sac-prod-sa.iam.gserviceaccount.com
- name: Rename findings file with timestamp
id: rename-findings
if: ${{ always() && steps.warden-analyze.outputs.findings-file != '' }}
env:
FINDINGS_FILE: ${{ steps.warden-analyze.outputs.findings-file }}
run: |
DEST="$RUNNER_TEMP/$(date -u +%Y-%m-%dT%H%M%SZ).json"
cp "$FINDINGS_FILE" "$DEST"
echo "path=$DEST" >> "$GITHUB_OUTPUT"
- name: Upload findings to GCS
continue-on-error: true
uses: google-github-actions/upload-cloud-storage@c0f6160ff80057923ff50e5e567695cea181ec23 # v2
if: ${{ always() && steps.rename-findings.outputs.path != '' }}
with:
path: ${{ steps.rename-findings.outputs.path }}
destination: warden-logs/${{ github.repository }}