feat: pass tokenless value as branch override

instead of only passing the tokenless branch value as an environment
variable we want to pass it as the branch value to the CLI
This commit is contained in:
joseph-sentry 2024-07-15 13:32:07 -04:00
parent abe5d5a96b
commit c56aae1c00
No known key found for this signature in database
4 changed files with 25 additions and 18 deletions

14
dist/index.js vendored
View file

@ -32351,11 +32351,12 @@ const isPullRequestFromFork = () => {
return (baseLabel.split(':')[0] !== headLabel.split(':')[0]); return (baseLabel.split(':')[0] !== headLabel.split(':')[0]);
}; };
const getToken = () => buildExec_awaiter(void 0, void 0, void 0, function* () { const getToken = () => buildExec_awaiter(void 0, void 0, void 0, function* () {
var _a;
let token = core.getInput('token'); let token = core.getInput('token');
if (!token && isPullRequestFromFork()) { if (!token && isPullRequestFromFork()) {
core.info('==> Fork detected, tokenless uploading used'); core.info('==> Fork detected, tokenless uploading used');
process.env['TOKENLESS'] = context.payload.pull_request.head.label; process.env['TOKENLESS'] = context.payload.pull_request.head.label;
return Promise.resolve(''); return [false, (_a = context.payload.pull_request) === null || _a === void 0 ? void 0 : _a.head.label];
} }
let url = core.getInput('url'); let url = core.getInput('url');
const useOIDC = isTrue(core.getInput('use_oidc')); const useOIDC = isTrue(core.getInput('use_oidc'));
@ -32365,22 +32366,25 @@ const getToken = () => buildExec_awaiter(void 0, void 0, void 0, function* () {
} }
try { try {
token = yield core.getIDToken(url); token = yield core.getIDToken(url);
return token; return [true, token];
} }
catch (err) { catch (err) {
setFailure(`Codecov: Failed to get OIDC token with url: ${url}. ${err.message}`, true); setFailure(`Codecov: Failed to get OIDC token with url: ${url}. ${err.message}`, true);
} }
} }
return token; return [true, token];
}); });
const buildCommitExec = () => buildExec_awaiter(void 0, void 0, void 0, function* () { const buildCommitExec = () => buildExec_awaiter(void 0, void 0, void 0, function* () {
const commitParent = core.getInput('commit_parent'); const commitParent = core.getInput('commit_parent');
const gitService = getGitService(); const gitService = getGitService();
const overrideBranch = core.getInput('override_branch'); let overrideBranch = core.getInput('override_branch');
const overrideCommit = core.getInput('override_commit'); const overrideCommit = core.getInput('override_commit');
const overridePr = core.getInput('override_pr'); const overridePr = core.getInput('override_pr');
const slug = core.getInput('slug'); const slug = core.getInput('slug');
const token = yield getToken(); const [tokenAvailable, token] = yield getToken();
if (!tokenAvailable) {
overrideBranch = token;
}
const failCi = isTrue(core.getInput('fail_ci_if_error')); const failCi = isTrue(core.getInput('fail_ci_if_error'));
const workingDir = core.getInput('working-directory'); const workingDir = core.getInput('working-directory');
const commitCommand = 'create-commit'; const commitCommand = 'create-commit';

2
dist/index.js.map vendored

File diff suppressed because one or more lines are too long

View file

@ -213,7 +213,7 @@ test('report args using context', async () => {
for (const env of Object.keys(envs)) { for (const env of Object.keys(envs)) {
process.env['INPUT_' + env.toUpperCase()] = envs[env]; process.env['INPUT_' + env.toUpperCase()] = envs[env];
} }
const expectedArgs : string[] = [ const expectedArgs: string[] = [
'--git-service', '--git-service',
'github', 'github',
]; ];
@ -271,7 +271,7 @@ test('commit args', async () => {
}); });
test('commit args using context', async () => { test('commit args using context', async () => {
const expectedArgs :string[] = [ const expectedArgs: string[] = [
'--git-service', '--git-service',
'github', 'github',
]; ];
@ -289,7 +289,7 @@ test('commit args using context', async () => {
}); });
test('commit args using github server url', async () => { test('commit args using github server url', async () => {
const expectedArgs :string[] = [ const expectedArgs: string[] = [
'--git-service', '--git-service',
'github_enterprise', 'github_enterprise',
]; ];

View file

@ -45,12 +45,12 @@ const isPullRequestFromFork = (): boolean => {
return (baseLabel.split(':')[0] !== headLabel.split(':')[0]); return (baseLabel.split(':')[0] !== headLabel.split(':')[0]);
}; };
const getToken = async (): Promise<string> => { const getToken = async (): Promise<[boolean, string]> => {
let token = core.getInput('token'); let token = core.getInput('token');
if (!token && isPullRequestFromFork()) { if (!token && isPullRequestFromFork()) {
core.info('==> Fork detected, tokenless uploading used'); core.info('==> Fork detected, tokenless uploading used');
process.env['TOKENLESS'] = context.payload.pull_request.head.label; process.env['TOKENLESS'] = context.payload.pull_request.head.label;
return Promise.resolve(''); return [false, context.payload.pull_request?.head.label];
} }
let url = core.getInput('url'); let url = core.getInput('url');
const useOIDC = isTrue(core.getInput('use_oidc')); const useOIDC = isTrue(core.getInput('use_oidc'));
@ -60,7 +60,7 @@ const getToken = async (): Promise<string> => {
} }
try { try {
token = await core.getIDToken(url); token = await core.getIDToken(url);
return token; return [true, token];
} catch (err) { } catch (err) {
setFailure( setFailure(
`Codecov: Failed to get OIDC token with url: ${url}. ${err.message}`, `Codecov: Failed to get OIDC token with url: ${url}. ${err.message}`,
@ -68,7 +68,7 @@ const getToken = async (): Promise<string> => {
); );
} }
} }
return token; return [true, token];
}; };
const buildCommitExec = async (): Promise<{ const buildCommitExec = async (): Promise<{
@ -78,18 +78,21 @@ const buildCommitExec = async (): Promise<{
}> => { }> => {
const commitParent = core.getInput('commit_parent'); const commitParent = core.getInput('commit_parent');
const gitService = getGitService(); const gitService = getGitService();
const overrideBranch = core.getInput('override_branch'); let overrideBranch = core.getInput('override_branch');
const overrideCommit = core.getInput('override_commit'); const overrideCommit = core.getInput('override_commit');
const overridePr = core.getInput('override_pr'); const overridePr = core.getInput('override_pr');
const slug = core.getInput('slug'); const slug = core.getInput('slug');
const token = await getToken(); const [tokenAvailable, token] = await getToken();
if (!tokenAvailable) {
overrideBranch = token;
}
const failCi = isTrue(core.getInput('fail_ci_if_error')); const failCi = isTrue(core.getInput('fail_ci_if_error'));
const workingDir = core.getInput('working-directory'); const workingDir = core.getInput('working-directory');
const commitCommand = 'create-commit'; const commitCommand = 'create-commit';
const commitExecArgs = []; const commitExecArgs = [];
const commitOptions:any = {}; const commitOptions: any = {};
commitOptions.env = Object.assign(process.env, { commitOptions.env = Object.assign(process.env, {
GITHUB_ACTION: process.env.GITHUB_ACTION, GITHUB_ACTION: process.env.GITHUB_ACTION,
GITHUB_RUN_ID: process.env.GITHUB_RUN_ID, GITHUB_RUN_ID: process.env.GITHUB_RUN_ID,
@ -178,7 +181,7 @@ const buildReportExec = async (): Promise<{
const reportCommand = 'create-report'; const reportCommand = 'create-report';
const reportExecArgs = []; const reportExecArgs = [];
const reportOptions:any = {}; const reportOptions: any = {};
reportOptions.env = Object.assign(process.env, { reportOptions.env = Object.assign(process.env, {
GITHUB_ACTION: process.env.GITHUB_ACTION, GITHUB_ACTION: process.env.GITHUB_ACTION,
GITHUB_RUN_ID: process.env.GITHUB_RUN_ID, GITHUB_RUN_ID: process.env.GITHUB_RUN_ID,
@ -268,7 +271,7 @@ const buildUploadExec = async (): Promise<{
const uploadExecArgs = []; const uploadExecArgs = [];
const uploadCommand = 'do-upload'; const uploadCommand = 'do-upload';
const uploadOptions:any = {}; const uploadOptions: any = {};
uploadOptions.env = Object.assign(process.env, { uploadOptions.env = Object.assign(process.env, {
GITHUB_ACTION: process.env.GITHUB_ACTION, GITHUB_ACTION: process.env.GITHUB_ACTION,
GITHUB_RUN_ID: process.env.GITHUB_RUN_ID, GITHUB_RUN_ID: process.env.GITHUB_RUN_ID,