Skip to content

Commit

Permalink
Milestone operation
Browse files Browse the repository at this point in the history
  • Loading branch information
TonyCTHsu committed Feb 6, 2025
1 parent dc1058b commit 6b45748
Showing 1 changed file with 85 additions and 0 deletions.
85 changes: 85 additions & 0 deletions .github/workflows/publish.yml
Original file line number Diff line number Diff line change
Expand Up @@ -148,6 +148,9 @@ jobs:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
GEM_VERSION: ${{ needs.verify-checks.outputs.version }}

outputs:
next_version: ${{ steps.next_version.outputs.next_version }}

permissions:
contents: write
pull-requests: write
Expand Down Expand Up @@ -180,6 +183,88 @@ jobs:
--base master \
--head version-bump-from-${{ github.job }}
milestone:
if: github.ref_name == 'master'
runs-on: ubuntu-24.04
needs:
- verify-checks
- rubygems-release
- bump-version-pull-request
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
GEM_VERSION: ${{ needs.verify-checks.outputs.version }}
NEXT_VERSION: ${{ needs.bump-version-pull-request.outputs.next_version }}
permissions:
issues: write
repository-projects: write
steps:
- name: list milestones
id: milestones
uses: actions/github-script@60a0d83039c74a4aee543508d2ffcb1c3799cdea # v7.0.1
with:
script: |
const milestones = await github.rest.issues.listMilestones({
owner: context.repo.owner,
repo: context.repo.repo,
state: 'open'
});
return milestones.data;
- name: Close milestone
uses: actions/github-script@60a0d83039c74a4aee543508d2ffcb1c3799cdea # v7.0.1
with:
script: |
const milestones = ${{steps.milestones.outputs.result}}
const milestone = milestones.data.find(
m => m.title === process.env.GEM_VERSION
);
if (!milestone) {
console.log(`No open milestone found with version ${process.env.GEM_VERSION} - skipping close operation`);
return;
}
// Close the milestone
try {
await github.rest.issues.updateMilestone({
owner: context.repo.owner,
repo: context.repo.repo,
milestone_number: milestone.number,
state: 'closed'
});
console.log(`Successfully closed milestone: ${process.env.GEM_VERSION}`);
} catch (error) {
core.setFailed(`Failed to close milestone: ${error.message}`);
}
- name: Create milestone
uses: actions/github-script@60a0d83039c74a4aee543508d2ffcb1c3799cdea # v7.0.1
with:
script: |
const milestones = ${{steps.milestones.outputs.result}}
const milestone = milestones.data.find(
m => m.title === process.env.NEXT_VERSION
);
if (milestone) {
console.log(`Milestone "${process.env.NEXT_VERSION}" already exists - skipping creation`);
return;
}
// Create new milestone
try {
await github.rest.issues.createMilestone({
owner: context.repo.owner,
repo: context.repo.repo,
title: process.env.NEXT_VERSION
});
console.log(`Successfully created milestone: ${process.env.NEXT_VERSION}`);
} catch (error) {
core.setFailed(`Failed to create milestone: ${error.message}`);
}
document-pull-request:
if: github.ref_name == 'master'
runs-on: ubuntu-24.04
Expand Down

0 comments on commit 6b45748

Please sign in to comment.