mirror of
https://github.com/kamranahmedse/developer-roadmap.git
synced 2025-01-17 14:18:17 +01:00
40 lines
1.3 KiB
YAML
40 lines
1.3 KiB
YAML
name: Label Issue
|
|
|
|
on:
|
|
issues:
|
|
types: [ opened, edited ]
|
|
|
|
jobs:
|
|
label-topic-change-issue:
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- name: Add Labels To Issue
|
|
uses: actions/github-script@v7
|
|
with:
|
|
github-token: ${{ secrets.GITHUB_TOKEN }}
|
|
script: |
|
|
const issue = context.payload.issue;
|
|
const roadmapUrl = issue.body.match(/https?:\/\/roadmap.sh\/[^ ]+/);
|
|
|
|
// if the issue is labeled as a topic-change, add the roadmap slug as a label
|
|
if (issue.labels.some(label => label.name === 'topic-change')) {
|
|
if (roadmapUrl) {
|
|
const roadmapSlug = new URL(roadmapUrl[0]).pathname.replace(/\//, '');
|
|
github.rest.issues.addLabels({
|
|
owner: context.repo.owner,
|
|
repo: context.repo.repo,
|
|
issue_number: issue.number,
|
|
labels: [roadmapSlug]
|
|
});
|
|
}
|
|
|
|
// Close the issue if it has no roadmap URL
|
|
if (!roadmapUrl) {
|
|
github.rest.issues.update({
|
|
owner: context.repo.owner,
|
|
repo: context.repo.repo,
|
|
issue_number: issue.number,
|
|
state: 'closed'
|
|
});
|
|
}
|
|
} |