fix up ghcr client tests and remove config from action package layers

This commit is contained in:
Conor Sloan
2024-08-23 10:56:04 +01:00
parent e53d6ca2a2
commit e308348d01
7 changed files with 482 additions and 547 deletions
Generated Vendored
+8 -5
View File
@@ -106682,7 +106682,9 @@ async function uploadOCIImageManifest(token, registry, repository, manifest, blo
else {
core.info(`Uploading manifest ${manifestSHA} to ${repository}.`);
}
const layerUploads = manifest.layers.map(async (layer) => {
// We must also upload the config layer
const layersToUpload = manifest.layers.concat(manifest.config);
const layerUploads = layersToUpload.map(async (layer) => {
const blob = blobs.get(layer.digest);
if (!blob) {
throw new Error(`Blob for layer ${layer.digest} not found`);
@@ -107022,6 +107024,7 @@ exports.createSigstoreAttestationManifest = createSigstoreAttestationManifest;
exports.createReferrerTagManifest = createReferrerTagManifest;
exports.sha256Digest = sha256Digest;
exports.sizeInBytes = sizeInBytes;
exports.createEmptyConfigLayer = createEmptyConfigLayer;
const crypto = __importStar(__nccwpck_require__(6113));
exports.imageIndexMediaType = 'application/vnd.oci.image.index.v1+json';
exports.imageManifestMediaType = 'application/vnd.oci.image.manifest.v1+json';
@@ -107037,7 +107040,7 @@ exports.emptyConfigSize = 2;
exports.emptyConfigSha = 'sha256:44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a';
// Given a name and archive metadata, creates a manifest in the format expected by GHCR for an Actions Package.
function createActionPackageManifest(tarFile, zipFile, repository, repoId, ownerId, sourceCommit, version, created = new Date()) {
const configLayer = createConfigLayer();
const configLayer = createEmptyConfigLayer();
const sanitizedRepo = sanitizeRepository(repository);
const tarLayer = createTarLayer(tarFile, sanitizedRepo, version);
const zipLayer = createZipLayer(zipFile, sanitizedRepo, version);
@@ -107046,7 +107049,7 @@ function createActionPackageManifest(tarFile, zipFile, repository, repoId, owner
mediaType: exports.imageManifestMediaType,
artifactType: exports.actionsPackageMediaType,
config: configLayer,
layers: [configLayer, tarLayer, zipLayer],
layers: [tarLayer, zipLayer],
annotations: {
'org.opencontainers.image.created': created.toISOString(),
'action.tar.gz.digest': tarFile.sha256,
@@ -107061,7 +107064,7 @@ function createActionPackageManifest(tarFile, zipFile, repository, repoId, owner
return manifest;
}
function createSigstoreAttestationManifest(bundleSize, bundleDigest, subjectSize, subjectDigest, created = new Date()) {
const configLayer = createConfigLayer();
const configLayer = createEmptyConfigLayer();
const sigstoreAttestationLayer = {
mediaType: exports.sigstoreBundleMediaType,
size: bundleSize,
@@ -107127,7 +107130,7 @@ function sizeInBytes(manifest) {
const data = JSON.stringify(manifest);
return Buffer.byteLength(data, 'utf8');
}
function createConfigLayer() {
function createEmptyConfigLayer() {
const configLayer = {
mediaType: exports.ociEmptyMediaType,
size: exports.emptyConfigSize,