Compare commits
7 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
04733e069f | ||
|
|
7b5b755e5b | ||
|
|
17449a21ea | ||
|
|
ec2ff03a5a | ||
|
|
2d9c0f4337 | ||
|
|
615015f76e | ||
|
|
e3374ce5b6 |
@@ -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)
|
||||
|
||||
@@ -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).
|
||||
|
||||
@@ -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
7
dist/index.js
vendored
@@ -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) {
|
||||
|
||||
4
package-lock.json
generated
4
package-lock.json
generated
@@ -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",
|
||||
|
||||
@@ -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",
|
||||
|
||||
@@ -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,
|
||||
|
||||
Reference in New Issue
Block a user