github.com/goreleaser/nfpm/v2@v2.44.0/.github/workflows/milestone.yml (about) 1 # shamelessly copied from https://github.com/sigstore/cosign/blob/main/.github/workflows/milestone.yaml 2 name: milestone 3 4 on: 5 pull_request_target: 6 types: [closed] 7 branches: 8 - main 9 10 permissions: 11 contents: read 12 issues: write 13 pull-requests: write 14 15 jobs: 16 milestone: 17 runs-on: ubuntu-latest 18 steps: 19 - uses: actions/github-script@ed597411d8f924073f98dfc5c65a23a2325f34cd # v8.0.0 20 with: 21 script: | 22 if (!context.payload.pull_request.merged) { 23 console.log('PR was not merged, skipping.'); 24 return; 25 } 26 27 if (!!context.payload.pull_request.milestone) { 28 console.log('PR has existing milestone, skipping.'); 29 return; 30 } 31 32 milestones = await github.rest.issues.listMilestones({ 33 owner: context.repo.owner, 34 repo: context.repo.repo, 35 state: 'open', 36 sort: 'due_on', 37 direction: 'asc' 38 }) 39 if (milestones.data.length === 0) { 40 console.log('There are no milestones, skipping.'); 41 return; 42 } 43 44 await github.rest.issues.update({ 45 owner: context.repo.owner, 46 repo: context.repo.repo, 47 issue_number: context.payload.pull_request.number, 48 milestone: milestones.data[0].number 49 });