Merge pull request #92 from ggreif/patch-2

Use the `@file` mechanism of octokit-5
This commit is contained in:
Sven-Hendrik Haase 2023-01-31 11:51:05 +01:00 committed by GitHub
commit 9927d3f5ec
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 2 additions and 27 deletions

13
dist/index.js vendored
View File

@ -39,7 +39,6 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
}); });
}; };
Object.defineProperty(exports, "__esModule", ({ value: true })); Object.defineProperty(exports, "__esModule", ({ value: true }));
const fs = __importStar(__nccwpck_require__(7147));
const core = __importStar(__nccwpck_require__(2186)); const core = __importStar(__nccwpck_require__(2186));
const github = __importStar(__nccwpck_require__(5438)); const github = __importStar(__nccwpck_require__(5438));
const path = __importStar(__nccwpck_require__(1017)); const path = __importStar(__nccwpck_require__(1017));
@ -69,13 +68,6 @@ function get_release_by_tag(tag, prerelease, release_name, body, octokit) {
} }
function upload_to_release(release, file, asset_name, tag, overwrite, octokit) { function upload_to_release(release, file, asset_name, tag, overwrite, octokit) {
return __awaiter(this, void 0, void 0, function* () { return __awaiter(this, void 0, void 0, function* () {
const stat = fs.statSync(file);
if (!stat.isFile()) {
core.debug(`Skipping ${file}, since its not a file`);
return;
}
const file_size = stat.size;
const file_bytes = fs.readFileSync(file).toString('binary');
// Check for duplicates. // Check for duplicates.
const assets = yield octokit.paginate(repoAssets, Object.assign(Object.assign({}, repo()), { release_id: release.data.id })); const assets = yield octokit.paginate(repoAssets, Object.assign(Object.assign({}, repo()), { release_id: release.data.id }));
const duplicate_asset = assets.find(a => a.name === asset_name); const duplicate_asset = assets.find(a => a.name === asset_name);
@ -93,10 +85,7 @@ function upload_to_release(release, file, asset_name, tag, overwrite, octokit) {
core.debug(`No pre-existing asset called ${asset_name} found in release ${tag}. All good.`); core.debug(`No pre-existing asset called ${asset_name} found in release ${tag}. All good.`);
} }
core.debug(`Uploading ${file} to ${asset_name} in release ${tag}.`); core.debug(`Uploading ${file} to ${asset_name} in release ${tag}.`);
const uploaded_asset = yield octokit.request(uploadAssets, Object.assign(Object.assign({}, repo()), { release_id: release.data.id, url: release.data.upload_url, name: asset_name, data: file_bytes, headers: { const uploaded_asset = yield octokit.request(uploadAssets, Object.assign(Object.assign({}, repo()), { release_id: release.data.id, name: asset_name, data: '@' + file }));
'content-type': 'binary/octet-stream',
'content-length': file_size
} }));
return uploaded_asset.data.browser_download_url; return uploaded_asset.data.browser_download_url;
}); });
} }

View File

@ -1,4 +1,3 @@
import * as fs from 'fs'
import {Octokit} from '@octokit/core' import {Octokit} from '@octokit/core'
import {Endpoints} from '@octokit/types' import {Endpoints} from '@octokit/types'
import * as core from '@actions/core' import * as core from '@actions/core'
@ -60,14 +59,6 @@ async function upload_to_release(
overwrite: boolean, overwrite: boolean,
octokit: ReturnType<(typeof github)['getOctokit']> octokit: ReturnType<(typeof github)['getOctokit']>
): Promise<undefined | string> { ): Promise<undefined | string> {
const stat = fs.statSync(file)
if (!stat.isFile()) {
core.debug(`Skipping ${file}, since its not a file`)
return
}
const file_size = stat.size
const file_bytes = fs.readFileSync(file).toString('binary')
// Check for duplicates. // Check for duplicates.
const assets: RepoAssetsResp = await octokit.paginate(repoAssets, { const assets: RepoAssetsResp = await octokit.paginate(repoAssets, {
...repo(), ...repo(),
@ -97,13 +88,8 @@ async function upload_to_release(
const uploaded_asset: UploadAssetResp = await octokit.request(uploadAssets, { const uploaded_asset: UploadAssetResp = await octokit.request(uploadAssets, {
...repo(), ...repo(),
release_id: release.data.id, release_id: release.data.id,
url: release.data.upload_url,
name: asset_name, name: asset_name,
data: file_bytes, data: '@' + file
headers: {
'content-type': 'binary/octet-stream',
'content-length': file_size
}
}) })
return uploaded_asset.data.browser_download_url return uploaded_asset.data.browser_download_url
} }