You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Enable reuse of OciCopySpec similar to org.gradle.api.file.CopySpec
Added OciExtension.copySpec() and OciExtension.copySpec(Action<in OciCopySpec>) factory methods
Added OciCopySpec.with(OciCopySpec)
New features for layer creation in OciLayerTask:
Enable configuration of digest algorithm via digestAlgorithm property of type OciDigestAlgorithm with options SHA_256 (default) and SHA_512
Enable configuration of layer compression via compression property of type OciLayerCompression with options NONE and GZIP (default)
Added mediaType provider of type String derived from compression
Added extension property of type String with convention derived from compression (tar for NONE, tgz for GZIP)
Replaced digestFile with digest provider of type OciDigest
Replaced diffIdFile with diffId provider of type OciDigest
Added size provider of type Long
Enable access to the org.gradle.api.artifacts.Configuration that belongs to an image definition via OciImageDefinition.configuration
Enable use of providers for capabilities via OciImageDefinition.Capabilities.add(Provider<String>)
✨ Improvements
More robust detection of component and layer files in resolved OCI image dependencies
Allows different layer artifacts with the same digest
Allows different variants to reference the same layer artifact
Added normalization of some platform variants to support images produced with containerd normalization (related issue: docker-library/official-images#16859):
The default variant for the architecture arm64 is v8, so for example linux/arm64 is the same as linux/arm64/v8
The default variant for the architecture arm is v7, so for example linux/arm is the same as linux/arm/v7
The destination directory of an OciCopySpec is only created if there are source files
Simplified build output of layers
Removed one subfolder level: oci/images/$imageDefName/$layerName => oci/images/$imageDefName
Replaced .diffId and .digest files with a single .properties file
Improved naming of layers downloaded from a registry
Include the layer digest (truncated) into the filename instead of a counter so the name is not dependent on the order of layers
Include file extension derived from the media type
Transformation of image from a registry to an OCI component is now also deterministic in the edge case of duplicate platforms in the image index
Renamed OciLayerTask.tarFile to file
Renamed OciComponentTask.componentFile to file
Renamed OciDigestAlgorithm.ociPrefix to id
Renamed OciDigestAlgorithm.algorithmName to standardName
🐞 Bug fixes
The default capability for image definitions with a name other than main is now added to the Gradle configuration and not only to the OCI component