mirror of
https://github.com/electron/electron.git
synced 2026-02-19 03:14:51 -05:00
* build: generate artifact attestions for released assets (#48239) * build: generate artifact attestions for released assets * chore: address review feedback --------- Co-authored-by: John Kleinschmidt <kleinschmidtorama@gmail.com> (cherry picked from commitdec7f937ae) * build: fixup attestation for release assets (#49732) * build: fixup attestation for release assets * Generate artifact attestation for generated artifacts * set id-token for attestation * Add artifact-metadata permission for attestation * add permissions for testing attestations * Revert "add permissions for testing attestations" This reverts commit0284bed175. * Revert "set id-token for attestation" This reverts commit69a1b13a18. * Revert "Generate artifact attestation for generated artifacts" This reverts commitee0536eceb. (cherry picked from commit0852893910) * chore: update publish workflow --------- Co-authored-by: Samuel Attard <sam@electronjs.org>
33 lines
1.0 KiB
JavaScript
33 lines
1.0 KiB
JavaScript
const yaml = require('yaml');
|
|
|
|
const fs = require('node:fs');
|
|
const path = require('node:path');
|
|
|
|
const PREFIX = '# AUTOGENERATED FILE - DO NOT EDIT MANUALLY\n# ONLY EDIT .github/workflows/pipeline-segment-electron-build.yml\n\n';
|
|
|
|
const base = path.resolve(__dirname, '../.github/workflows/pipeline-segment-electron-build.yml');
|
|
const target = path.resolve(__dirname, '../.github/workflows/pipeline-segment-electron-publish.yml');
|
|
|
|
const baseContents = fs.readFileSync(base, 'utf-8');
|
|
|
|
const parsedBase = yaml.parse(baseContents);
|
|
parsedBase.jobs.build.permissions = {
|
|
'artifact-metadata': 'write',
|
|
attestations: 'write',
|
|
contents: 'read',
|
|
'id-token': 'write'
|
|
};
|
|
|
|
if (process.argv.includes('--check')) {
|
|
if (fs.readFileSync(target, 'utf-8') !== PREFIX + yaml.stringify(parsedBase)) {
|
|
console.error(`${target} is out of date`);
|
|
console.error('Please run "copy-pipeline-segment-publish.js" to update it');
|
|
process.exit(1);
|
|
}
|
|
} else {
|
|
fs.writeFileSync(
|
|
target,
|
|
PREFIX + yaml.stringify(parsedBase)
|
|
);
|
|
}
|