From 21ef0e0838d5b45d9d7713feb2c94c9574bbdc69 Mon Sep 17 00:00:00 2001 From: Sven-Hendrik Haase Date: Fri, 23 Aug 2019 04:44:08 +0200 Subject: [PATCH 1/6] Fix README syntax --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 5244ca4..6e1806a 100644 --- a/README.md +++ b/README.md @@ -45,7 +45,7 @@ jobs: repo_token: ${{ secrets.GITHUB_TOKEN }} file: target/release/mything asset_name: mything - tag: {{ github.event.ref }} + tag: ${{ github.event.ref }} overwrite: true ``` From 44bfc8c7706bd16095375dae566c2eaf2a223732 Mon Sep 17 00:00:00 2001 From: Sven-Hendrik Haase Date: Fri, 23 Aug 2019 05:49:27 +0200 Subject: [PATCH 2/6] Fix grammar --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 6e1806a..f8e2c6b 100644 --- a/README.md +++ b/README.md @@ -11,7 +11,7 @@ You must provide: - `file`: A local file to be uploaded as the asset. - `asset_name`: The name the file gets as an asset on a release. - `tag`: The tag to uploaded into. If you want the current event's tag, use `${{ github.event.ref }}` -- `overwrite`: If an asset with name already exists, overwrite it. +- `overwrite`: If an asset with the same name already exists, overwrite it. ## Usage From a27f40706900eb4aa76cd6210d8a87e7b4048ecb Mon Sep 17 00:00:00 2001 From: Sven-Hendrik Haase Date: Fri, 23 Aug 2019 06:07:52 +0200 Subject: [PATCH 3/6] Add forgotten line to complex example --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index f8e2c6b..9883812 100644 --- a/README.md +++ b/README.md @@ -88,4 +88,5 @@ jobs: repo_token: ${{ secrets.GITHUB_TOKEN }} file: target/release/${{ matrix.artifact_name }} asset_name: ${{ matrix.asset_name }} + tag: ${{ github.event.ref }} ``` From 778bbb1861e7a6854a9f45af9d9fe951c26c76bb Mon Sep 17 00:00:00 2001 From: Sven-Hendrik Haase Date: Sat, 24 Aug 2019 01:47:34 +0200 Subject: [PATCH 4/6] Add badge --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 9883812..8ef9b9d 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,4 @@ -# Upload files to a GitHub release +# Upload files to a GitHub release ![GitHub Actions Workflow](https://github.com/svenstaro/upload-release-action/workflows/PR%20Checks/badge.svg) This action allows you to select which files to upload to the just-tagged release. It runs on all operating systems types offered by GitHub. From 8d9569a6a51ec9c196373c8a1418c6bbf9a0400e Mon Sep 17 00:00:00 2001 From: Sven-Hendrik Haase Date: Sat, 24 Aug 2019 03:30:21 +0200 Subject: [PATCH 5/6] Add badge link to workflow --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 8ef9b9d..9581207 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,4 @@ -# Upload files to a GitHub release ![GitHub Actions Workflow](https://github.com/svenstaro/upload-release-action/workflows/PR%20Checks/badge.svg) +# Upload files to a GitHub release [![GitHub Actions Workflow](https://github.com/svenstaro/upload-release-action/workflows/PR%20Checks/badge.svg)](https://github.com/svenstaro/upload-release-action/actions) This action allows you to select which files to upload to the just-tagged release. It runs on all operating systems types offered by GitHub. From 8eb6a035aa45ccdc53e8bfab1633795198fb08cf Mon Sep 17 00:00:00 2001 From: Sven-Hendrik Haase Date: Wed, 4 Sep 2019 13:46:44 +0200 Subject: [PATCH 6/6] Change the way we parse refs --- README.md | 6 +++--- lib/main.js | 13 +++++++------ src/main.ts | 2 +- 3 files changed, 11 insertions(+), 10 deletions(-) diff --git a/README.md b/README.md index 9581207..4cdd466 100644 --- a/README.md +++ b/README.md @@ -10,7 +10,7 @@ You must provide: - `repo_token`: Usually you'll want to set this to `${{ secrets.GITHUB_TOKEN }}` - `file`: A local file to be uploaded as the asset. - `asset_name`: The name the file gets as an asset on a release. -- `tag`: The tag to uploaded into. If you want the current event's tag, use `${{ github.event.ref }}` +- `tag`: The tag to uploaded into. If you want the current event's tag, use `${{ github.ref }}` - `overwrite`: If an asset with the same name already exists, overwrite it. ## Usage @@ -45,7 +45,7 @@ jobs: repo_token: ${{ secrets.GITHUB_TOKEN }} file: target/release/mything asset_name: mything - tag: ${{ github.event.ref }} + tag: ${{ github.ref }} overwrite: true ``` @@ -88,5 +88,5 @@ jobs: repo_token: ${{ secrets.GITHUB_TOKEN }} file: target/release/${{ matrix.artifact_name }} asset_name: ${{ matrix.asset_name }} - tag: ${{ github.event.ref }} + tag: ${{ github.ref }} ``` diff --git a/lib/main.js b/lib/main.js index cf42e0a..4f538e8 100644 --- a/lib/main.js +++ b/lib/main.js @@ -1,9 +1,10 @@ "use strict"; var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) { + function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } return new (P || (P = Promise))(function (resolve, reject) { function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } - function step(result) { result.done ? resolve(result.value) : new P(function (resolve) { resolve(result.value); }).then(fulfilled, rejected); } + function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); } step((generator = generator.apply(thisArg, _arguments || [])).next()); }); }; @@ -22,13 +23,13 @@ function get_release_by_tag(tag, octokit, context) { return __awaiter(this, void 0, void 0, function* () { try { core.debug(`Getting release by tag ${tag}.`); - return yield octokit.repos.getReleaseByTag(Object.assign({}, context.repo, { tag: tag })); + return yield octokit.repos.getReleaseByTag(Object.assign(Object.assign({}, context.repo), { tag: tag })); } catch (error) { // If this returns 404, we need to create the release first. if (error.status === 404) { core.debug(`Release for tag ${tag} doesn't exist yet so we'll create it now.`); - return yield octokit.repos.createRelease(Object.assign({}, context.repo, { tag_name: tag })); + return yield octokit.repos.createRelease(Object.assign(Object.assign({}, context.repo), { tag_name: tag })); } else { throw error; @@ -41,12 +42,12 @@ function upload_to_release(release, file, asset_name, tag, overwrite, octokit, c const file_size = fs.statSync(file).size; const file_bytes = fs.readFileSync(file); // Check for duplicates. - const assets = yield octokit.repos.listAssetsForRelease(Object.assign({}, context.repo, { release_id: release.data.id })); + const assets = yield octokit.repos.listAssetsForRelease(Object.assign(Object.assign({}, context.repo), { release_id: release.data.id })); const duplicate_asset = assets.data.find(a => a.name === asset_name); if (duplicate_asset !== undefined) { if (overwrite === "true") { core.debug(`An asset called ${asset_name} already exists in release ${tag} so we'll overwrite it.`); - yield octokit.repos.deleteReleaseAsset(Object.assign({}, context.repo, { asset_id: duplicate_asset.id })); + yield octokit.repos.deleteReleaseAsset(Object.assign(Object.assign({}, context.repo), { asset_id: duplicate_asset.id })); } else { core.setFailed(`An asset called ${asset_name} already exists.`); @@ -74,7 +75,7 @@ function run() { const token = core.getInput('repo_token', { required: true }); const file = core.getInput('file', { required: true }); const asset_name = core.getInput('asset_name', { required: true }); - const tag = core.getInput('tag', { required: true }); + const tag = core.getInput('tag', { required: true }).replace("refs/tags/", ""); const overwrite = core.getInput('overwrite'); if (!fs.existsSync(file)) { core.setFailed(`File ${file} wasn't found.`); diff --git a/src/main.ts b/src/main.ts index 89e6c88..359316e 100644 --- a/src/main.ts +++ b/src/main.ts @@ -65,7 +65,7 @@ async function run() { const token = core.getInput('repo_token', { required: true }); const file = core.getInput('file', { required: true }); const asset_name = core.getInput('asset_name', { required: true }); - const tag = core.getInput('tag', { required: true }); + const tag = core.getInput('tag', { required: true }).replace("refs/tags/", ""); const overwrite = core.getInput('overwrite'); if (!fs.existsSync(file)) {