mirror of
https://github.com/openclaw/openclaw.git
synced 2026-03-12 07:20:45 +00:00
fix: add stale workflow fallback run
This commit is contained in:
62
.github/workflows/stale.yml
vendored
62
.github/workflows/stale.yml
vendored
@@ -22,11 +22,13 @@ jobs:
|
|||||||
private-key: ${{ secrets.GH_APP_PRIVATE_KEY }}
|
private-key: ${{ secrets.GH_APP_PRIVATE_KEY }}
|
||||||
- uses: actions/create-github-app-token@d72941d797fd3113feb6b93fd0dec494b13a2547 # v1
|
- uses: actions/create-github-app-token@d72941d797fd3113feb6b93fd0dec494b13a2547 # v1
|
||||||
id: app-token-fallback
|
id: app-token-fallback
|
||||||
if: steps.app-token.outcome == 'failure'
|
continue-on-error: true
|
||||||
with:
|
with:
|
||||||
app-id: "2971289"
|
app-id: "2971289"
|
||||||
private-key: ${{ secrets.GH_APP_PRIVATE_KEY_FALLBACK }}
|
private-key: ${{ secrets.GH_APP_PRIVATE_KEY_FALLBACK }}
|
||||||
- name: Mark stale issues and pull requests
|
- name: Mark stale issues and pull requests (primary)
|
||||||
|
id: stale-primary
|
||||||
|
continue-on-error: true
|
||||||
uses: actions/stale@v9
|
uses: actions/stale@v9
|
||||||
with:
|
with:
|
||||||
repo-token: ${{ steps.app-token.outputs.token || steps.app-token-fallback.outputs.token }}
|
repo-token: ${{ steps.app-token.outputs.token || steps.app-token-fallback.outputs.token }}
|
||||||
@@ -57,6 +59,62 @@ jobs:
|
|||||||
Closing due to inactivity.
|
Closing due to inactivity.
|
||||||
If you believe this PR should be revived, post in #pr-thunderdome-dangerzone on Discord to talk to a maintainer.
|
If you believe this PR should be revived, post in #pr-thunderdome-dangerzone on Discord to talk to a maintainer.
|
||||||
That channel is the escape hatch for high-quality PRs that get auto-closed.
|
That channel is the escape hatch for high-quality PRs that get auto-closed.
|
||||||
|
- name: Check stale state cache
|
||||||
|
id: stale-state
|
||||||
|
if: always()
|
||||||
|
uses: actions/github-script@f28e40c7f34bde8b3046d885e986cb6290c5673b # v7
|
||||||
|
with:
|
||||||
|
github-token: ${{ steps.app-token-fallback.outputs.token || steps.app-token.outputs.token }}
|
||||||
|
script: |
|
||||||
|
const cacheKey = "_state";
|
||||||
|
const { owner, repo } = context.repo;
|
||||||
|
|
||||||
|
try {
|
||||||
|
const { data } = await github.rest.actions.getActionsCacheList({
|
||||||
|
owner,
|
||||||
|
repo,
|
||||||
|
key: cacheKey,
|
||||||
|
});
|
||||||
|
const caches = data.actions_caches ?? [];
|
||||||
|
const hasState = caches.some(cache => cache.key === cacheKey);
|
||||||
|
core.setOutput("has_state", hasState ? "true" : "false");
|
||||||
|
} catch (error) {
|
||||||
|
const message = error instanceof Error ? error.message : String(error);
|
||||||
|
core.warning(`Failed to check stale state cache: ${message}`);
|
||||||
|
core.setOutput("has_state", "false");
|
||||||
|
}
|
||||||
|
- name: Mark stale issues and pull requests (fallback)
|
||||||
|
if: (steps.stale-primary.outcome == 'failure' || steps.stale-state.outputs.has_state == 'true') && steps.app-token-fallback.outputs.token != ''
|
||||||
|
uses: actions/stale@v9
|
||||||
|
with:
|
||||||
|
repo-token: ${{ steps.app-token-fallback.outputs.token }}
|
||||||
|
days-before-issue-stale: 7
|
||||||
|
days-before-issue-close: 5
|
||||||
|
days-before-pr-stale: 5
|
||||||
|
days-before-pr-close: 3
|
||||||
|
stale-issue-label: stale
|
||||||
|
stale-pr-label: stale
|
||||||
|
exempt-issue-labels: enhancement,maintainer,pinned,security,no-stale
|
||||||
|
exempt-pr-labels: maintainer,no-stale
|
||||||
|
operations-per-run: 2000
|
||||||
|
ascending: true
|
||||||
|
exempt-all-assignees: true
|
||||||
|
remove-stale-when-updated: true
|
||||||
|
stale-issue-message: |
|
||||||
|
This issue has been automatically marked as stale due to inactivity.
|
||||||
|
Please add updates or it will be closed.
|
||||||
|
stale-pr-message: |
|
||||||
|
This pull request has been automatically marked as stale due to inactivity.
|
||||||
|
Please add updates or it will be closed.
|
||||||
|
close-issue-message: |
|
||||||
|
Closing due to inactivity.
|
||||||
|
If this is still an issue, please retry on the latest OpenClaw release and share updated details.
|
||||||
|
If you are absolutely sure it still happens on the latest release, open a new issue with fresh repro steps.
|
||||||
|
close-issue-reason: not_planned
|
||||||
|
close-pr-message: |
|
||||||
|
Closing due to inactivity.
|
||||||
|
If you believe this PR should be revived, post in #pr-thunderdome-dangerzone on Discord to talk to a maintainer.
|
||||||
|
That channel is the escape hatch for high-quality PRs that get auto-closed.
|
||||||
|
|
||||||
lock-closed-issues:
|
lock-closed-issues:
|
||||||
permissions:
|
permissions:
|
||||||
|
|||||||
Reference in New Issue
Block a user