[go: up one dir, main page]

Skip to content

Commit

Permalink
fix: Invalid name for request
Browse files Browse the repository at this point in the history
  • Loading branch information
jaywcjlove committed Jul 28, 2024
1 parent b72d3df commit a088d66
Show file tree
Hide file tree
Showing 3 changed files with 20 additions and 26 deletions.
18 changes: 6 additions & 12 deletions dist/index.js
Original file line number Diff line number Diff line change
Expand Up @@ -44975,26 +44975,20 @@ currentTag=tag||tagName.replace("refs/tags/","");octokit=(0,github.getOctokit)(m
// Octokit Documentation: https://octokit.github.io/rest.js/#octokit-routes-repos-create-release
_context.next=8;return octokit.rest.repos.getReleaseByTag({owner:owner,repo:repo,tag:currentTag});case 8:getReleaseResponse=_context.sent;return _context.abrupt("return",getReleaseResponse.data);case 10:case"end":return _context.stop();}},_callee);}));return _getReleaseURL.apply(this,arguments);}function getAssetName(assetPath){try{return JSON.parse(assetPath);}catch(error){if(assetPath){return assetPath;}}return undefined;}// Function to upload the file
function uploadFile(_x2,_x3,_x4,_x5){return _uploadFile.apply(this,arguments);}// Function to upload the file
function _uploadFile(){_uploadFile=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee2(owner,repo,releaseId,filePath){var myToken,octokit,fileContent,fileStat,fileName,headers,response;return _regeneratorRuntime().wrap(function _callee2$(_context2){while(1)switch(_context2.prev=_context2.next){case 0:myToken=getInput('token');octokit=getOctokit(myToken);fileContent=fs.readFileSync(filePath);// Read file content as Buffer
fileStat=fs.statSync(filePath);fileName=path.basename(filePath);headers={'content-type':'application/octet-stream','content-length':fileStat.size};_context2.next=8;return octokit.rest.repos.uploadReleaseAsset({owner:owner,repo:repo,release_id:releaseId,headers:headers,name:fileName,data:fileContent.toString()// Use file content directly
});case 8:response=_context2.sent;return _context2.abrupt("return",response);case 10:case"end":return _context2.stop();}},_callee2);}));return _uploadFile.apply(this,arguments);}function requestUploadFile(_x6,_x7){return _requestUploadFile.apply(this,arguments);}function _requestUploadFile(){_requestUploadFile=(0,asyncToGenerator/* default */.A)(/*#__PURE__*/(0,regeneratorRuntime/* default */.A)().mark(function _callee3(releaseId,filePath){var myToken,octokit,fileStream,fileName,fileStat,headers,_context$repo2,owner,repo,response;return (0,regeneratorRuntime/* default */.A)().wrap(function _callee3$(_context3){while(1)switch(_context3.prev=_context3.next){case 0:myToken=(0,core.getInput)('token');octokit=(0,github.getOctokit)(myToken);// const fileStream = fs.createReadStream(filePath);
function _uploadFile(){_uploadFile=(0,asyncToGenerator/* default */.A)(/*#__PURE__*/(0,regeneratorRuntime/* default */.A)().mark(function _callee2(owner,repo,releaseId,filePath){var myToken,octokit,fileContent,fileStream,fileStat,fileName,headers,response;return (0,regeneratorRuntime/* default */.A)().wrap(function _callee2$(_context2){while(1)switch(_context2.prev=_context2.next){case 0:myToken=(0,core.getInput)('token');octokit=(0,github.getOctokit)(myToken);fileContent=external_fs_default().readFileSync(filePath);// Read file content as Buffer
fileStream=external_fs_default().createReadStream(filePath);fileStat=external_fs_default().statSync(filePath);fileName=external_path_default().basename(filePath);headers={'content-type':'application/octet-stream','content-length':fileStat.size,'X-GitHub-Api-Version':'2022-11-28'};_context2.next=9;return octokit.rest.repos.uploadReleaseAsset({owner:owner,repo:repo,release_id:releaseId,headers:headers,name:fileName,//data: fileContent.toString() // Use file content directly
data:fileStream});case 9:response=_context2.sent;return _context2.abrupt("return",response);case 11:case"end":return _context2.stop();}},_callee2);}));return _uploadFile.apply(this,arguments);}function requestUploadFile(_x6,_x7){return _requestUploadFile.apply(this,arguments);}function _requestUploadFile(){_requestUploadFile=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee3(releaseId,filePath){var myToken,octokit,fileStream,fileName,fileStat,headers,_context$repo2,owner,repo,response;return _regeneratorRuntime().wrap(function _callee3$(_context3){while(1)switch(_context3.prev=_context3.next){case 0:myToken=getInput('token');octokit=getOctokit(myToken);// const fileStream = fs.createReadStream(filePath);
// const fileName = path.basename(filePath);
// const form = new FormData();
// form.append('file', fileStream, {
// filename: fileName,
// contentType: 'application/octet-stream'
// });
fileStream=external_fs_default().createReadStream(filePath);fileName=external_path_default().basename(filePath);fileStat=external_fs_default().statSync(filePath);headers={'content-type':'application/octet-stream','content-length':fileStat.size,'X-GitHub-Api-Version':'2022-11-28'};_context$repo2=github.context.repo,owner=_context$repo2.owner,repo=_context$repo2.repo;_context3.next=9;return octokit.request('POST /repos/{owner}/{repo}/releases/{release_id}/assets{?name,label}',{owner:owner,repo:repo,release_id:releaseId,name:fileName,headers:headers,data:fileStream});case 9:response=_context3.sent;return _context3.abrupt("return",response);case 11:case"end":return _context3.stop();}},_callee3);}));return _requestUploadFile.apply(this,arguments);}
fileStream=fs.createReadStream(filePath);fileName=path.basename(filePath);fileStat=fs.statSync(filePath);headers={'content-type':'application/octet-stream','content-length':fileStat.size,'X-GitHub-Api-Version':'2022-11-28'};_context$repo2=context.repo,owner=_context$repo2.owner,repo=_context$repo2.repo;_context3.next=9;return octokit.request('POST /repos/{owner}/{repo}/releases/{release_id}/assets{?name,label}',{owner:owner,repo:repo,release_id:releaseId,name:fileName,headers:headers,data:fileStream});case 9:response=_context3.sent;return _context3.abrupt("return",response);case 11:case"end":return _context3.stop();}},_callee3);}));return _requestUploadFile.apply(this,arguments);}
;// CONCATENATED MODULE: ./src/index.ts
;(0,asyncToGenerator/* default */.A)(/*#__PURE__*/(0,regeneratorRuntime/* default */.A)().mark(function _callee(){var assetPath,tagName,files,release,downloadURLs,i,assetFile,requestUploadResponse;return (0,regeneratorRuntime/* default */.A)().wrap(function _callee$(_context){while(1)switch(_context.prev=_context.next){case 0:/**
;(0,asyncToGenerator/* default */.A)(/*#__PURE__*/(0,regeneratorRuntime/* default */.A)().mark(function _callee(){var assetPath,tagName,files,release,downloadURLs,i,assetFile,response;return (0,regeneratorRuntime/* default */.A)().wrap(function _callee$(_context){while(1)switch(_context.prev=_context.next){case 0:/**
* Get the path to the file to upload
*/assetPath=getAssetName((0,core.getInput)('asset-path',{required:true}));tagName=(0,core.getInput)('tag')||undefined;_context.prev=2;if(!(!assetPath||assetPath.length===0)){_context.next=5;break;}throw new Error('asset-path must contain a JSON array of quoted paths');case 5:_context.next=7;return glob(assetPath,{});case 7:files=_context.sent;if(!(files.length===0)){_context.next=10;break;}throw new Error('No files found');case 10:_context.next=12;return getReleaseURL(tagName);case 12:release=_context.sent;// release.upload_url
downloadURLs=[];i=0;case 15:if(!(i<files.length)){_context.next=25;break;}assetFile=files[i];(0,core.info)("Uploading asset(".concat(github.context.repo.owner,"/").concat(github.context.repo.repo,"): ").concat(assetFile));_context.next=20;return requestUploadFile(release.id,assetFile);case 20:requestUploadResponse=_context.sent;(0,core.info)("requestUploadResponse: ".concat(JSON.stringify(requestUploadResponse)));// const response = await uploadFile(context.repo.owner, context.repo.repo, release.id, assetFile);
// downloadURLs.push(response.data.browser_download_url)
// if (response.status < 200 || response.status > 299) {
// new Error(`Asset upload failed "${assetPath}. Response:" ${response}`)
// }
case 22:i++;_context.next=15;break;case 25:_context.next=30;break;case 27:_context.prev=27;_context.t0=_context["catch"](2);(0,core.setFailed)(_context.t0);case 30:case"end":return _context.stop();}},_callee,null,[[2,27]]);}))();
*/assetPath=getAssetName((0,core.getInput)('asset-path',{required:true}));tagName=(0,core.getInput)('tag')||undefined;_context.prev=2;if(!(!assetPath||assetPath.length===0)){_context.next=5;break;}throw new Error('asset-path must contain a JSON array of quoted paths');case 5:_context.next=7;return glob(assetPath,{});case 7:files=_context.sent;if(!(files.length===0)){_context.next=10;break;}throw new Error('No files found');case 10:_context.next=12;return getReleaseURL(tagName);case 12:release=_context.sent;downloadURLs=[];i=0;case 15:if(!(i<files.length)){_context.next=26;break;}assetFile=files[i];(0,core.info)("Uploading asset(".concat(github.context.repo.owner,"/").concat(github.context.repo.repo,"): ").concat(assetFile));_context.next=20;return uploadFile(github.context.repo.owner,github.context.repo.repo,release.id,assetFile);case 20:response=_context.sent;downloadURLs.push(response.data.browser_download_url);if(response.status<200||response.status>299){new Error("Asset upload failed \"".concat(assetPath,". Response:\" ").concat(response));}case 23:i++;_context.next=15;break;case 26:(0,core.setOutput)('browser_download_urls',JSON.stringify(downloadURLs));_context.next=32;break;case 29:_context.prev=29;_context.t0=_context["catch"](2);(0,core.setFailed)(_context.t0);case 32:case"end":return _context.stop();}},_callee,null,[[2,29]]);}))();
})();

module.exports = __webpack_exports__;
Expand Down
19 changes: 8 additions & 11 deletions src/index.ts
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
import { context } from '@actions/github';
import { getInput, setFailed, info } from '@actions/core';
import { getInput, setFailed, setOutput, info } from '@actions/core';
import { glob } from 'glob';
import { getAssetName, getReleaseURL, requestUploadFile } from './utils';
import { getAssetName, getReleaseURL, uploadFile, requestUploadFile } from './utils';

;(async () => {
/**
Expand All @@ -18,21 +18,18 @@ import { getAssetName, getReleaseURL, requestUploadFile } from './utils';
throw new Error('No files found');
}
const release = await getReleaseURL(tagName)
// release.upload_url
const downloadURLs = []
for(let i = 0; i < files.length; i++) {
const assetFile = files[i];
info(`Uploading asset(${context.repo.owner}/${context.repo.repo}): ${assetFile}`);

const requestUploadResponse = await requestUploadFile(release.id, assetFile);
info(`requestUploadResponse: ${JSON.stringify(requestUploadResponse)}`);
// const response = await uploadFile(context.repo.owner, context.repo.repo, release.id, assetFile);
// downloadURLs.push(response.data.browser_download_url)
// if (response.status < 200 || response.status > 299) {
// new Error(`Asset upload failed "${assetPath}. Response:" ${response}`)
// }
const response = await uploadFile(context.repo.owner, context.repo.repo, release.id, assetFile);
downloadURLs.push(response.data.browser_download_url)
if (response.status < 200 || response.status > 299) {
new Error(`Asset upload failed "${assetPath}. Response:" ${response}`)
}
}
// setOutput('browser_download_urls', JSON.stringify(downloadURLs));
setOutput('browser_download_urls', JSON.stringify(downloadURLs));
} catch (error) {
setFailed(error as Error);
}
Expand Down
9 changes: 6 additions & 3 deletions src/utils.ts
Original file line number Diff line number Diff line change
Expand Up @@ -47,12 +47,14 @@ export async function uploadFile(owner: string, repo: string, releaseId: number,
const octokit = getOctokit(myToken);

const fileContent = fs.readFileSync(filePath); // Read file content as Buffer
const fileStream = fs.createReadStream(filePath);
const fileStat = fs.statSync(filePath);
const fileName = path.basename(filePath);

const headers = {
const headers = {
'content-type': 'application/octet-stream',
'content-length': fileStat.size
'content-length': fileStat.size,
'X-GitHub-Api-Version': '2022-11-28'
};

const response = await octokit.rest.repos.uploadReleaseAsset({
Expand All @@ -61,7 +63,8 @@ export async function uploadFile(owner: string, repo: string, releaseId: number,
release_id: releaseId,
headers,
name: fileName,
data: fileContent.toString() // Use file content directly
//data: fileContent.toString() // Use file content directly
data: fileStream as unknown as string
});

return response;
Expand Down

0 comments on commit a088d66

Please sign in to comment.