diff options
| author | bjorn3 <17426603+bjorn3@users.noreply.github.com> | 2023-03-25 14:46:58 +0000 |
|---|---|---|
| committer | bjorn3 <17426603+bjorn3@users.noreply.github.com> | 2023-03-25 16:24:15 +0000 |
| commit | aab1526164f56f3543eb7569836eb75e9ca86379 (patch) | |
| tree | 9857b04332603ca5e1a75bdbffd11399e748b03b | |
| parent | cc570ae05c2ce6fc5d890953344394f65d102f93 (diff) | |
| download | rust-aab1526164f56f3543eb7569836eb75e9ca86379.tar.gz rust-aab1526164f56f3543eb7569836eb75e9ca86379.zip | |
Recreate the release every time
To ensure people who watch the repo for release notifications actually get a notification.
| -rw-r--r-- | .github/actions/github-release/main.js | 36 |
1 files changed, 17 insertions, 19 deletions
diff --git a/.github/actions/github-release/main.js b/.github/actions/github-release/main.js index 5f756aed3ee..6fcfca34ea7 100644 --- a/.github/actions/github-release/main.js +++ b/.github/actions/github-release/main.js @@ -83,30 +83,28 @@ async function runOnce() { } } - // Try to load the release for this tag, and if it doesn't exist then make a - // new one. We might race with other builders on creation, though, so if the - // creation fails try again to get the release by the tag. - let release = null; + // Delete a previous release try { core.info(`fetching release`); - release = await octokit.rest.repos.getReleaseByTag({ owner, repo, tag: name }); + let release = await octokit.rest.repos.getReleaseByTag({ owner, repo, tag: name }); + console.log("found release: ", JSON.stringify(release.data, null, 2)); + await octokit.rest.repos.deleteRelease({ + owner, + repo, + release_id: release.data.id, + }); + console.log("deleted release"); } catch (e) { console.log("ERROR: ", JSON.stringify(e, null, 2)); - core.info(`creating a release`); - try { - release = await octokit.rest.repos.createRelease({ - owner, - repo, - tag_name: name, - prerelease: name === 'dev', - }); - } catch (e) { - console.log("ERROR: ", JSON.stringify(e, null, 2)); - core.info(`fetching one more time`); - release = await octokit.rest.repos.getReleaseByTag({ owner, repo, tag: name }); - } } - console.log("found release: ", JSON.stringify(release.data, null, 2)); + + console.log("creating a release"); + let release = await octokit.rest.repos.createRelease({ + owner, + repo, + tag_name: name, + prerelease: name === 'dev', + }); // Delete all assets from a previous run for (const asset of release.data.assets) { |
