Skip to content

Commit 0dc9342

Browse files
committed
move summary inputs sanitization to state helper
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
1 parent 64a5bce commit 0dc9342

File tree

3 files changed

+25
-30
lines changed

3 files changed

+25
-30
lines changed

src/context.ts

Lines changed: 0 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -46,28 +46,6 @@ export async function getInputs(): Promise<Inputs> {
4646
};
4747
}
4848

49-
export function sanitizeInputs(inputs: Inputs) {
50-
const res = {};
51-
for (const key of Object.keys(inputs)) {
52-
if (key === 'github-token') {
53-
continue;
54-
}
55-
const value: string | string[] | boolean = inputs[key];
56-
if (typeof value === 'boolean' && value === false) {
57-
continue;
58-
} else if (Array.isArray(value) && value.length === 0) {
59-
continue;
60-
} else if (!value) {
61-
continue;
62-
}
63-
if (key === 'workdir' && value === '.') {
64-
continue;
65-
}
66-
res[key] = value;
67-
}
68-
return res;
69-
}
70-
7149
export async function getArgs(inputs: Inputs, definition: BakeDefinition, toolkit: Toolkit): Promise<Array<string>> {
7250
// prettier-ignore
7351
return [

src/main.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -26,8 +26,8 @@ actionsToolkit.run(
2626
const startedTime = new Date();
2727

2828
const inputs: context.Inputs = await context.getInputs();
29+
stateHelper.setSummaryInputs(inputs);
2930
core.debug(`inputs: ${JSON.stringify(inputs)}`);
30-
stateHelper.setInputs(inputs);
3131

3232
const toolkit = new Toolkit();
3333
const gitAuthToken = process.env.BUILDX_BAKE_GIT_AUTH_TOKEN ?? inputs['github-token'];
@@ -237,7 +237,7 @@ actionsToolkit.run(
237237
await GitHub.writeBuildSummary({
238238
exportRes: exportRes,
239239
uploadRes: uploadRes,
240-
inputs: stateHelper.inputs,
240+
inputs: stateHelper.summaryInputs,
241241
bakeDefinition: stateHelper.bakeDefinition
242242
});
243243
} catch (e) {

src/state-helper.ts

Lines changed: 23 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -2,22 +2,20 @@ import * as core from '@actions/core';
22

33
import {BakeDefinition} from '@docker/actions-toolkit/lib/types/buildx/bake';
44

5-
import {Inputs, sanitizeInputs} from './context';
5+
import {Inputs} from './context';
66

77
export const tmpDir = process.env['STATE_tmpDir'] || '';
8-
export const inputs = process.env['STATE_inputs'] ? JSON.parse(process.env['STATE_inputs']) : undefined;
8+
9+
export const summaryInputs = process.env['STATE_summaryInputs'] ? JSON.parse(process.env['STATE_summaryInputs']) : undefined;
910
export const bakeDefinition = process.env['STATE_bakeDefinition'] ? <BakeDefinition>JSON.parse(process.env['STATE_bakeDefinition']) : undefined;
11+
1012
export const buildRefs = process.env['STATE_buildRefs'] ? process.env['STATE_buildRefs'].split(',') : [];
1113
export const isSummarySupported = !!process.env['STATE_isSummarySupported'];
1214

1315
export function setTmpDir(tmpDir: string) {
1416
core.saveState('tmpDir', tmpDir);
1517
}
1618

17-
export function setInputs(inputs: Inputs) {
18-
core.saveState('inputs', JSON.stringify(sanitizeInputs(inputs)));
19-
}
20-
2119
export function setBakeDefinition(bakeDefinition: BakeDefinition) {
2220
core.saveState('bakeDefinition', JSON.stringify(bakeDefinition));
2321
}
@@ -29,3 +27,22 @@ export function setBuildRefs(buildRefs: Array<string>) {
2927
export function setSummarySupported() {
3028
core.saveState('isSummarySupported', 'true');
3129
}
30+
31+
export function setSummaryInputs(inputs: Inputs) {
32+
const res = {};
33+
for (const key of Object.keys(inputs)) {
34+
if (key === 'github-token') {
35+
continue;
36+
}
37+
const value: string | string[] | boolean = inputs[key];
38+
if (typeof value === 'boolean' && !value) {
39+
continue;
40+
} else if (Array.isArray(value) && value.length === 0) {
41+
continue;
42+
} else if (!value) {
43+
continue;
44+
}
45+
res[key] = value;
46+
}
47+
core.saveState('summaryInputs', JSON.stringify(res));
48+
}

0 commit comments

Comments
 (0)