Compare commits

...

11 Commits

Author SHA1 Message Date
Sven-Hendrik Haase
84f3aed823
Merge pull request #125 from svenstaro/dependabot/npm_and_yarn/braces-3.0.3
Bump braces from 3.0.2 to 3.0.3
2024-07-07 03:16:11 +02:00
dependabot[bot]
f9770cdf31
Bump braces from 3.0.2 to 3.0.3
Bumps [braces](https://github.com/micromatch/braces) from 3.0.2 to 3.0.3.
- [Changelog](https://github.com/micromatch/braces/blob/master/CHANGELOG.md)
- [Commits](https://github.com/micromatch/braces/compare/3.0.2...3.0.3)

---
updated-dependencies:
- dependency-name: braces
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-06-16 09:58:52 +00:00
Sven-Hendrik Haase
1b2bf5c959
Merge pull request #123 from svenstaro/dependabot/npm_and_yarn/undici-5.28.4
Bump undici from 5.28.3 to 5.28.4
2024-04-05 03:13:44 +02:00
dependabot[bot]
265508bc9f
Bump undici from 5.28.3 to 5.28.4
Bumps [undici](https://github.com/nodejs/undici) from 5.28.3 to 5.28.4.
- [Release notes](https://github.com/nodejs/undici/releases)
- [Commits](https://github.com/nodejs/undici/compare/v5.28.3...v5.28.4)

---
updated-dependencies:
- dependency-name: undici
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-04-04 17:24:09 +00:00
Sven-Hendrik Haase
04733e069f
This is 2.9.0 2024-02-21 22:43:46 +01:00
Sven-Hendrik Haase
7b5b755e5b
Add CHANGELOG entry for #112 2024-02-21 22:40:15 +01:00
Sven-Hendrik Haase
17449a21ea
Add draft release support (fixes #19) 2024-02-21 22:38:32 +01:00
Sven-Hendrik Haase
ec2ff03a5a
Amend CHANGELOG 2024-02-21 22:32:30 +01:00
ShonP40
2d9c0f4337
Updated the readme 2023-09-04 13:19:28 +03:00
ShonP40
615015f76e
Forgot to add draft support here 2023-09-04 12:49:56 +03:00
ShonP40
e3374ce5b6
Ability to create draft releases 2023-09-04 10:06:26 +03:00
7 changed files with 28 additions and 16 deletions

View File

@ -1,7 +1,11 @@
# Changelog
## [2.9.0] - 2024-02-22
- Allow seeting a release as draft [#112](https://github.com/svenstaro/upload-release-action/pull/112) (thanks @ShonP40)
## [2.8.0] - 2024-02-21
- Bump all deps
- Update to node 20
## [2.7.0] - 2023-07-28
- Allow setting an explicit target_commitish [#46](https://github.com/svenstaro/upload-release-action/pull/46) (thanks @Spikatrix)

View File

@ -18,6 +18,7 @@ Optional Arguments
- `file_glob`: If set to true, the `file` argument can be a glob pattern (`asset_name` is ignored in this case) (Default: `false`)
- `overwrite`: If an asset with the same name already exists, overwrite it (Default: `false`).
- `promote`: If a prerelease already exists, promote it to a release (Default: `false`).
- `draft`: Sets the release as a draft instead of publishing it, allowing you to make any edits needed before releasing (Default: `false`).
- `prerelease`: Mark the release as a pre-release (Default: `false`).
- `make_latest`: Mark the release as the latest release for the repository (Default: `true`).
- `release_name`: Explicitly set a release name. (Defaults: implicitly same as `tag` via GitHub API).

View File

@ -24,6 +24,8 @@ inputs:
description: 'Promote a prerelease to release. Defaults to "false".'
file_glob:
description: 'If true the file can be a glob pattern, asset_name is ignored if this is true.'
draft:
description: 'Mark the release as a draft. Defaults to "false".'
prerelease:
description: 'Mark the release as a pre-release. Defaults to "false".'
make_latest:

7
dist/index.js vendored
View File

@ -52,7 +52,7 @@ const updateRelease = 'PATCH /repos/{owner}/{repo}/releases/{release_id}';
const repoAssets = 'GET /repos/{owner}/{repo}/releases/{release_id}/assets';
const uploadAssets = 'POST {origin}/repos/{owner}/{repo}/releases/{release_id}/assets{?name,label}';
const deleteAssets = 'DELETE /repos/{owner}/{repo}/releases/assets/{asset_id}';
function get_release_by_tag(tag, prerelease, make_latest, release_name, body, octokit, overwrite, promote, target_commit) {
function get_release_by_tag(tag, draft, prerelease, make_latest, release_name, body, octokit, overwrite, promote, target_commit) {
return __awaiter(this, void 0, void 0, function* () {
let release;
try {
@ -74,7 +74,7 @@ function get_release_by_tag(tag, prerelease, make_latest, release_name, body, oc
}
}
}
return yield octokit.request(createRelease, Object.assign(Object.assign({}, repo()), { tag_name: tag, prerelease: prerelease, make_latest: make_latest ? 'true' : 'false', name: release_name, body: body, target_commitish: target_commit }));
return yield octokit.request(createRelease, Object.assign(Object.assign({}, repo()), { tag_name: tag, draft: draft, prerelease: prerelease, make_latest: make_latest ? 'true' : 'false', name: release_name, body: body, target_commitish: target_commit }));
}
else {
throw error;
@ -176,6 +176,7 @@ function run() {
const file_glob = core.getInput('file_glob') == 'true' ? true : false;
const overwrite = core.getInput('overwrite') == 'true' ? true : false;
const promote = core.getInput('promote') == 'true' ? true : false;
const draft = core.getInput('draft') == 'true' ? true : false;
const prerelease = core.getInput('prerelease') == 'true' ? true : false;
const make_latest = core.getInput('make_latest') != 'false' ? true : false;
const release_name = core.getInput('release_name');
@ -186,7 +187,7 @@ function run() {
.replace(/%0D/gi, '\r')
.replace(/%25/g, '%');
const octokit = github.getOctokit(token);
const release = yield get_release_by_tag(tag, prerelease, make_latest, release_name, body, octokit, overwrite, promote, target_commit);
const release = yield get_release_by_tag(tag, draft, prerelease, make_latest, release_name, body, octokit, overwrite, promote, target_commit);
if (file_glob) {
const files = glob.sync(file);
if (files.length > 0) {

24
package-lock.json generated
View File

@ -1,12 +1,12 @@
{
"name": "upload-release-action",
"version": "2.8.0",
"version": "2.9.0",
"lockfileVersion": 3,
"requires": true,
"packages": {
"": {
"name": "upload-release-action",
"version": "2.8.0",
"version": "2.9.0",
"license": "MIT",
"dependencies": {
"@actions/core": "^1.10.1",
@ -2386,12 +2386,12 @@
}
},
"node_modules/braces": {
"version": "3.0.2",
"resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz",
"integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==",
"version": "3.0.3",
"resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz",
"integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==",
"dev": true,
"dependencies": {
"fill-range": "^7.0.1"
"fill-range": "^7.1.1"
},
"engines": {
"node": ">=8"
@ -4023,9 +4023,9 @@
}
},
"node_modules/fill-range": {
"version": "7.0.1",
"resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz",
"integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==",
"version": "7.1.1",
"resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz",
"integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==",
"dev": true,
"dependencies": {
"to-regex-range": "^5.0.1"
@ -7432,9 +7432,9 @@
}
},
"node_modules/undici": {
"version": "5.28.3",
"resolved": "https://registry.npmjs.org/undici/-/undici-5.28.3.tgz",
"integrity": "sha512-3ItfzbrhDlINjaP0duwnNsKpDQk3acHI3gVJ1z4fmwMK31k5G9OVIAMLSIaP6w4FaGkaAkN6zaQO9LUvZ1t7VA==",
"version": "5.28.4",
"resolved": "https://registry.npmjs.org/undici/-/undici-5.28.4.tgz",
"integrity": "sha512-72RFADWFqKmUb2hmmvNODKL3p9hcB6Gt2DOQMis1SEBaV6a4MH8soBvzg+95CYhCKPFedut2JY9bMfrDl9D23g==",
"dependencies": {
"@fastify/busboy": "^2.0.0"
},

View File

@ -1,6 +1,6 @@
{
"name": "upload-release-action",
"version": "2.8.0",
"version": "2.9.0",
"private": true,
"description": "Upload files to a GitHub release",
"main": "lib/main.js",

View File

@ -28,6 +28,7 @@ type UpdateReleaseParams = Endpoints[typeof updateRelease]['parameters']
async function get_release_by_tag(
tag: string,
draft: boolean,
prerelease: boolean,
make_latest: boolean,
release_name: string,
@ -68,6 +69,7 @@ async function get_release_by_tag(
return await octokit.request(createRelease, {
...repo(),
tag_name: tag,
draft: draft,
prerelease: prerelease,
make_latest: make_latest ? 'true' : 'false',
name: release_name,
@ -209,6 +211,7 @@ async function run(): Promise<void> {
const file_glob = core.getInput('file_glob') == 'true' ? true : false
const overwrite = core.getInput('overwrite') == 'true' ? true : false
const promote = core.getInput('promote') == 'true' ? true : false
const draft = core.getInput('draft') == 'true' ? true : false
const prerelease = core.getInput('prerelease') == 'true' ? true : false
const make_latest = core.getInput('make_latest') != 'false' ? true : false
const release_name = core.getInput('release_name')
@ -222,6 +225,7 @@ async function run(): Promise<void> {
const octokit = github.getOctokit(token)
const release = await get_release_by_tag(
tag,
draft,
prerelease,
make_latest,
release_name,