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              });