Skip to content

Commit

Permalink
update readme and small fixes
Browse files Browse the repository at this point in the history
  • Loading branch information
gcampbell-msft committed Sep 11, 2023
1 parent 8e82786 commit 8d86414
Show file tree
Hide file tree
Showing 7 changed files with 18 additions and 19 deletions.
2 changes: 1 addition & 1 deletion .github/workflows/closeOnRelease.yml
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Close issues marked 'fixed-pending-release' upon a release.
uses: gcampbell-msft/[email protected].6
uses: gcampbell-msft/[email protected].7
with:
token: ${{ secrets.GITHUB_TOKEN }}
label: ${{ inputs.label }}
Expand Down
15 changes: 7 additions & 8 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,13 +1,13 @@
# A GitHub Action that closes issues marked for closing upon a new release
# A GitHub Action that closes issues marked as fixed upon a new release

This GitHub Action adds a comment to all pull requests that were included in a GitHub release. The comment includes a link to the release, along with a celebratory emoji :tada:
This GitHub Action closes issues that were marked as fixed upon a new GitHub release :tada:

## Usage

To use this action, you will need to provide your [personal access token](https://docs.github.com/en/authentication/keeping-your-account-and-data-secure/creating-a-personal-access-token) with `public_repo` permission.

```yaml
name: Close issues marked for closing upon a release.
name: Close issues marked as fixed upon a release.
on:
release:
types: [published]
Expand All @@ -25,16 +25,15 @@ jobs:
```
Note that this action is triggered by the `release.published` event, which occurs when a new release is published in your repository.
Additionally, if there are cases where you want to use this manually, you should `workflow_dispatch` and you should likely set `isExternalLaunch` to `"true"`.
Additionally, if there are cases where you want to use this manually, you should use `workflow_dispatch` and you should likely set `isExternalLaunch` to `"true"`.

## Assumptions

There are a couple of assumptions that this GitHub Actions makes.

1. The only releases that you want to use for this action, to close issues based on, are official releases.
1. You use `fixed-pending-release` to label issues that are fixed pending an official release.
1. The most recent release that you published is the release that fixes all issues marked `fixed-pending-release`.
1. This assumption is not made when `isExternalRelease` is `"true"`
1. The most recent release that you published is the release that fixes all issues marked as fixed upon a new release.
1. This assumption is not made when `isExternalRelease` is `"true"`.

## Inputs

Expand All @@ -43,7 +42,7 @@ This action has the following inputs:
- `token` (optional): Your GitHub access token. You can use `${{ secrets.ACCESS_TOKEN }}` to access the value you set as actions repository secret. Default value will be `${{ github.token }}`.
- `label` (option): The label that specifies issues that should be closed upon release.
- `message` (optional): The message to be included in the comment. This is passed to the action as a lodash template string.
Available variables, when `isExternalRelease` is `true` include: `releaseName`, `releaseTag`, `releaseUrl`.
Available variables, when `isExternalRelease` is `true`, include: `releaseName`, `releaseTag`, `releaseUrl`.
- `isExternalRelease` (optional): Boolean indicating whether the release is external to GitHub. If it is, no GitHub release will be used and thus the above variables aren't available.

## License
Expand Down
6 changes: 3 additions & 3 deletions dist/index.js
Original file line number Diff line number Diff line change
Expand Up @@ -27023,6 +27023,7 @@ async function run() {

// Get the message template from the user input
const externalReleaseDefault = ":tada: This issue has now been fixed and is available in the latest release! :tada:";
const nonExternalReleaseDefault = ":tada: This issue has now been fixed and is available in [${releaseTag}](${releaseUrl}) :tada:";

const issuesClosed = [];
let failedIssues = 0;
Expand All @@ -27036,7 +27037,6 @@ async function run() {
await new Promise((resolve) => setTimeout(resolve, 250));

let message = "";
const messageTemplate = providedMessage || externalReleaseDefault;
const isExternalReleaseInput = core.getInput("isExternalRelease", { required: false });
const isExternalRelease = isExternalReleaseInput === "false" ? false : isExternalReleaseInput === "true" ? true : undefined;

Expand All @@ -27055,14 +27055,14 @@ async function run() {
throw new Error("There is no release available");
}

message = template(messageTemplate)({
message = template(providedMessage || nonExternalReleaseDefault)({
releaseName: release.name,
releaseTag: release.tag_name,
releaseUrl: release.html_url
});
} else {
// in an external release, we simply pass the message through.
message = messageTemplate
message = providedMessage || externalReleaseDefault;
}

try {
Expand Down
2 changes: 1 addition & 1 deletion dist/index.js.map

Large diffs are not rendered by default.

6 changes: 3 additions & 3 deletions index.js
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,7 @@ async function run() {

// Get the message template from the user input
const externalReleaseDefault = ":tada: This issue has now been fixed and is available in the latest release! :tada:";
const nonExternalReleaseDefault = ":tada: This issue has now been fixed and is available in [${releaseTag}](${releaseUrl}) :tada:";

const issuesClosed = [];
let failedIssues = 0;
Expand All @@ -31,7 +32,6 @@ async function run() {
await new Promise((resolve) => setTimeout(resolve, 250));

let message = "";
const messageTemplate = providedMessage || externalReleaseDefault;
const isExternalReleaseInput = core.getInput("isExternalRelease", { required: false });
const isExternalRelease = isExternalReleaseInput === "false" ? false : isExternalReleaseInput === "true" ? true : undefined;

Expand All @@ -50,14 +50,14 @@ async function run() {
throw new Error("There is no release available");
}

message = template(messageTemplate)({
message = template(providedMessage || nonExternalReleaseDefault)({
releaseName: release.name,
releaseTag: release.tag_name,
releaseUrl: release.html_url
});
} else {
// in an external release, we simply pass the message through.
message = messageTemplate
message = providedMessage || externalReleaseDefault;
}

try {
Expand Down
4 changes: 2 additions & 2 deletions package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "close-issues-on-release",
"version": "0.0.6",
"version": "0.0.7",
"description": "Upon release, close issues marked 'fixed-pending-release'",
"main": "index.js",
"scripts": {
Expand Down

0 comments on commit 8d86414

Please sign in to comment.