allow creating draft releases without a tag (#95)

Co-authored-by: Doug Tangren <d.tangren@gmail.com>
This commit is contained in:
Daiki Mizukami 2021-07-25 23:10:03 +00:00 committed by softprops
parent 4204c40f52
commit 3c49988886
2 changed files with 10 additions and 3 deletions

View file

@ -1,5 +1,5 @@
import { GitHub } from "@actions/github";
import { Config, releaseBody } from "./util";
import { Config, isTag, releaseBody } from "./util";
import { lstatSync, readFileSync } from "fs";
import { getType } from "mime";
import { basename } from "path";
@ -154,7 +154,10 @@ export const release = async (
const [owner, repo] = config.github_repository.split("/");
const tag =
config.input_tag_name || config.github_ref.replace("refs/tags/", "");
config.input_tag_name ||
(isTag(config.github_ref)
? 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

View file

@ -7,7 +7,11 @@ import { env } from "process";
async function run() {
try {
const config = parseConfig(env);
if (!config.input_tag_name && !isTag(config.github_ref)) {
if (
!config.input_tag_name &&
!isTag(config.github_ref) &&
!config.input_draft
) {
throw new Error(`⚠️ GitHub Releases requires a tag`);
}
if (config.input_files) {