Releases: SgtSilvio/gradle-oci
Releases · SgtSilvio/gradle-oci
0.7.0
0.6.0
🌟 Features
- Set classifier of artifacts (
OciComponent
andOciLayer
) when publishing OCI image variants - Added
classifier
property toOciLayer
andOciComponentTask
- Added
destinationDirectory
property toOciComponentTask
- Renamed
outputDirectory
property todestinationDirectory
inOciLayerTask
✨ Improvements
- Improved repository proxies for OCI registries
- Better component and layer file names and urls
- Use Ivy instead of Maven repository as proxy
- Rename layer extension from
tar.gz
totgz
- Improve camel and kebab casing of names
0.5.0
0.4.0
🌟 Features
- Added
OciRegistry.credentials()
that automatically uses the registry name as the credentials identity - Allow mapping of
OciRegistry.url
by default- Via a Gradle property with the url as key
- Example:
https\://registry-1.docker.io=<my-docker-hub-mirror>
in~/.gradle.properties
- Added
OciRegistry.finalUrl
that exposes the mappedurl
- Allow to specify digests as a version
- Example:
add("library:eclipse-temurin:sha256!56be7e97bc4d2fffafdda7e8198741fd96513bc12f05d6da9f18c2577a1d5649")
- If the version is a digest, it will be automatically verified
- Example:
✨ Improvements
- Removed usage of
afterEvaluate
- Support
-
in digests (theoretically allowed to be used, although not currently)
ℹ️ Miscellaneous
- Updated dependencies
0.3.0
✨ Improvements
- Compatibility with Gradle 8.5
- Refactored
oci.imageDependencies
- Refactored image dependency tagging
- Before vs now:
add("library:eclipse-temurin:20.0.1_9-jre-jammy", tag("library/eclipse-temurin:20"))
add("library:eclipse-temurin:20.0.1_9-jre-jammy").tag("20")
- Before vs now:
add("library:eclipse-temurin:20.0.1_9-jre-jammy", tag("eclipse-temurin:20"))
add("library:eclipse-temurin:20.0.1_9-jre-jammy").name("eclipse-temurin").tag("20")
- No internal API or additional tasks (
OciTagComponentTask
) required
- Before vs now:
- Removed
OciImageDependenciesContainer
- Before vs now:
oci.imageDependencies.register("images") { default("library:eclipse-temurin:20.0.1_9-jre-jammy") }
oci.imageDependencies.register("images") { add("library:eclipse-temurin:20.0.1_9-jre-jammy") }
- Before vs now:
oci.imageDependencies.register("images") { scope("v2")("library:eclipse-temurin:20.0.1_9-jre-jammy") }
oci.imageDependencies.register("imagesV2") { add("library:eclipse-temurin:20.0.1_9-jre-jammy") }
- Before vs now:
oci.imageDependencies.forTest(tasks.test) { default("library:eclipse-temurin:20.0.1_9-jre-jammy") }
oci.imageDependencies.forTest(tasks.test) { add("library:eclipse-temurin:20.0.1_9-jre-jammy") }
- Before vs now:
oci.imageDependencies.forTest(tasks.test) { scope("v2")("library:eclipse-temurin:20.0.1_9-jre-jammy") }
oci.imageDependencies.forTest(tasks.test, "v2") { add("library:eclipse-temurin:20.0.1_9-jre-jammy") }
- Before vs now:
- Refactored image dependency tagging
- Added
OciPushTask.Registry
- Moved
OciPushTask.registryUrl
toOciPushTask.registry.url
- Moved
OciPushTask.credentials
toOciPushTask.registry.credentials
- Added
OciPushTask.registry { }
- Added
OciPushTask.registry.from(OciRegistry)
- Moved
ℹ️ Miscellaneous
- Updated dependencies
0.2.0
✨ Improvements
- Updated netty to incorporate the fix "Prevent classloader leak via JNI"
- Split
OciImageDefinition.imageReference
intoimageName
andimageTag
- Compatibility with Gradle 8.4 (adapt to change of
ProjectDependencyPublicationResolver.resolve
internal api)
ℹ️ Miscellaneous
- Updated dependencies
- Rename build output directory
oci/registry
tooci/registries