bambuddy/.github/workflows/issue-closed.yml
maziggy c51a9772cb ci: bump actions to Node-24-compatible majors
GitHub forces Node-20 actions to run on Node 24 starting 2026-06-02 and
  removes Node 20 from the runner on 2026-09-16. Bumping each action to
  its first Node-24 major now gets us ahead of both deadlines and silences
  the deprecation warnings already firing in every CI run.

  Bumps (across ci.yml, security.yml, codeql.yml, auto-label-area.yml,
  issue-closed.yml, stale.yml):
  - actions/checkout         v4 -> v6
  - actions/setup-python     v5 -> v6
  - actions/setup-node       v4 -> v6
  - actions/cache            v4 -> v5
  - actions/upload-artifact  v4 -> v7
  - actions/github-script    v7 -> v9
  - actions/stale            v9 -> v10
  - docker/setup-buildx      v3 -> v4
  - docker/build-push        v5 -> v7

  Verified each major's breaking-change notes against our usage:
  - setup-node v6 limits auto-cache to npm only; we already pass
    cache: 'npm' explicitly, so nothing changes.
  - github-script v9 drops require('@actions/github'); none of our
    scripts use it (only require('fs') and the injected github/context
    globals).
  - setup-buildx v4 removes deprecated inputs; we call it with no
    inputs.
  - build-push v6 enables build summaries by default; informational,
    can disable via DOCKER_BUILD_SUMMARY=false env if it gets noisy.

  codeql-action stays on v4 (already runs on Node 24). Trivy and
  github-repo-stats are Docker actions and aren't affected by the
  Node-20 deprecation.
2026-05-26 12:45:33 +02:00

37 lines
1 KiB
YAML

name: Clean up closed issues
on:
issues:
types: [closed]
permissions:
issues: write
jobs:
remove-labels:
runs-on: ubuntu-latest
steps:
- name: Remove feedback label
uses: actions/github-script@v9
with:
script: |
const issue = context.payload.issue;
const hasLabel = issue.labels.some(l => l.name === 'feedback');
if (hasLabel) {
try {
await github.rest.issues.removeLabel({
owner: context.repo.owner,
repo: context.repo.repo,
issue_number: issue.number,
name: 'feedback'
});
console.log(`Removed 'feedback' label from issue #${issue.number}`);
} catch (error) {
if (error.status === 404) {
console.log(`Label 'feedback' already removed from issue #${issue.number}`);
} else {
throw error;
}
}
}