in src/index.ts [218:266]
bucketName: replaceAll(bucketName, REGION_PLACEHOLDER, region),
objectKey,
region,
assumeRoleArn: this.fileAssetPublishingRoleArn,
};
}
} else {
destinations[this.manifestEnvName] = {
bucketName,
objectKey,
region: resolvedOr(this.stack.region, trim(head(this.fileAssetRegionSet))),
assumeRoleArn: this.fileAssetPublishingRoleArn,
};
}
// Add to manifest
this.files[asset.sourceHash] = {
source: {
path: asset.fileName,
packaging: asset.packaging,
},
destinations,
};
const { region, urlSuffix } = stackLocationOrInstrinsics(this.stack);
const httpUrl = cfnify(`https://s3.${region}.${urlSuffix}/${bucketName}/${objectKey}`);
const s3ObjectUrl = cfnify(`s3://${bucketName}/${objectKey}`);
// Return CFN expression
return {
bucketName: cfnify(bucketName),
objectKey,
httpUrl,
s3ObjectUrl,
};
}
public addDockerImageAsset(asset: DockerImageAssetSource): DockerImageAssetLocation {
assertNotNull(this.stack, ERR_MSG_CALL_BIND_FIRST);
assertNotNull(this.repositoryName, 'The repositoryName is null');
validateDockerImageAssetSource(asset);
const imageTag = this.imageAssetTagPrefix + asset.sourceHash;
const destinations: { [id: string]: cxschema.DockerImageDestination } = {};
if (this.imageAssetRegionSet?.length) {
for (const region of this.imageAssetRegionSet.map(r => r.trim())) {
if (!region) { continue; }
destinations[region] = {