Skip to content

[both] Architecture guide: Config layers explained (Pangolin vs Traefik vs MM vs CrowdSec) #27

[both] Architecture guide: Config layers explained (Pangolin vs Traefik vs MM vs CrowdSec)

[both] Architecture guide: Config layers explained (Pangolin vs Traefik vs MM vs CrowdSec) #27

Workflow file for this run

name: Issue Triage
on:
issues:
types: [opened, labeled]
jobs:
add-to-project:
runs-on: ubuntu-latest
steps:
- uses: actions/add-to-project@v1.0.2
with:
project-url: https://github.com/users/strausmann/projects/1
github-token: ${{ secrets.GITHUB_TOKEN }}
auto-label:
if: github.event.action == 'opened'
runs-on: ubuntu-latest
permissions:
issues: write
steps:
- name: Auto-assign team label based on issue template
uses: actions/github-script@v7
with:
script: |
const issue = context.payload.issue;
const body = issue.body || '';
const labels = issue.labels.map(l => l.name);
// Auto-assign status:draft for new issues
if (!labels.some(l => l.startsWith('status:'))) {
await github.rest.issues.addLabels({
owner: context.repo.owner,
repo: context.repo.repo,
issue_number: issue.number,
labels: ['status:draft']
});
}