Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add tag_name option #39

Merged
merged 1 commit into from Jan 9, 2020
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
1 change: 1 addition & 0 deletions README.md
Expand Up @@ -180,6 +180,7 @@ The following are optional as `step.with` keys
| `prerelease`| Boolean | Indicator of whether or not is a prerelease |
| `files` | String | Newline-delimited globs of paths to assets to upload for release|
| `name` | String | Name of the release. defaults to tag name |
| `tag_name` | String | Name of a tag. defaults to github.GITHUB_REF |

💡When providing a `body` and `body_path` at the same time, `body_path` will be attempted first, then falling back on `body` if the path can not be read from.

Expand Down
12 changes: 8 additions & 4 deletions __tests__/util.test.ts
Expand Up @@ -35,7 +35,8 @@ describe("util", () => {
input_draft: false,
input_prerelease: false,
input_files: [],
input_name: undefined
input_name: undefined,
input_tag_name: undefined
})
);
});
Expand All @@ -51,7 +52,8 @@ describe("util", () => {
input_draft: false,
input_prerelease: false,
input_files: [],
input_name: undefined
input_name: undefined,
input_tag_name: undefined
})
);
});
Expand All @@ -67,7 +69,8 @@ describe("util", () => {
input_draft: false,
input_prerelease: false,
input_files: [],
input_name: undefined
input_name: undefined,
input_tag_name: undefined
})
);
});
Expand All @@ -83,7 +86,8 @@ describe("util", () => {
input_draft: false,
input_prerelease: false,
input_files: [],
input_name: undefined
input_name: undefined,
input_tag_name: undefined
});
});
});
Expand Down
3 changes: 3 additions & 0 deletions action.yml
Expand Up @@ -12,6 +12,9 @@ inputs:
name:
description: 'Gives the release a custom name. Defaults to tag name'
required: false
tag_name:
description: 'Gives a tag name. Defaults to github.GITHUB_REF'
required: false
draft:
description: 'Creates a draft release. Defaults to false'
required: false
Expand Down
2 changes: 1 addition & 1 deletion dist/index.js

Large diffs are not rendered by default.

3 changes: 2 additions & 1 deletion src/github.ts
Expand Up @@ -142,7 +142,8 @@ export const release = async (
releaser: Releaser
): Promise<Release> => {
const [owner, repo] = config.github_repository.split("/");
const tag = config.github_ref.replace("refs/tags/", "");
const tag =
config.input_tag_name || config.github_ref.replace("refs/tags/", "");
try {
// you can't get a an existing draft by tag
// so we must find one in the list of all releases
Expand Down
2 changes: 1 addition & 1 deletion src/main.ts
Expand Up @@ -7,7 +7,7 @@ import { env } from "process";
async function run() {
try {
const config = parseConfig(env);
if (!isTag(config.github_ref)) {
if (!config.input_tag_name && !isTag(config.github_ref)) {
throw new Error(`⚠️ GitHub Releases requires a tag`);
}
GitHub.plugin(require("@octokit/plugin-throttling"));
Expand Down
2 changes: 2 additions & 0 deletions src/util.ts
Expand Up @@ -7,6 +7,7 @@ export interface Config {
github_repository: string;
// user provided
input_name?: string;
input_tag_name?: string;
input_body?: string;
input_body_path?: string;
input_files?: string[];
Expand Down Expand Up @@ -41,6 +42,7 @@ export const parseConfig = (env: Env): Config => {
github_ref: env.GITHUB_REF || "",
github_repository: env.GITHUB_REPOSITORY || "",
input_name: env.INPUT_NAME,
input_tag_name: env.INPUT_TAG_NAME,
input_body: env.INPUT_BODY,
input_body_path: env.INPUT_BODY_PATH,
input_files: parseInputFiles(env.INPUT_FILES || ""),
Expand Down