Skip to content

Releases: GoogleContainerTools/jib

jib-gradle-plugin v2.1.0

25 Feb 20:20
Compare
Choose a tag to compare

jib-gradle-plugin

Major Changes

  • Additionally reads credentials from ~/.docker/.dockerconfigjson and legacy Docker config (~/.docker/.dockercfg). Also searches for $HOME/.docker/* (in addition to current System.get("user.home")/.docker/*). This may help retrieve credentials, for example, on Kubernetes.
  • New skaffold configuration options that modify how jib's build config is presented to skaffold. See changelog for more details.
  • Fixed authentication failure with error server did not return 'WWW-Authenticate: Bearer' header in certain cases (for example, on OpenShift).
  • Fixed an issue where using local Docker images (by docker://...) on Windows caused an error.
  • Fixed build failures with Skaffold when the Gradle Java Platform plugin is applied.
  • For Spring Boot projects using containerizingMode = 'packaged', Jib now overrides archiveClassifier of the jar task only when safe and necessary.
  • Fixed an issue where user-configured task dependencies for the Jib task is overwritten and thus ineffective.

See CHANGELOG.md for more details.

jib-core v0.13.1

25 Feb 21:59
Compare
Choose a tag to compare

jib-core

Major Changes

  • Fixed authentication failure with error server did not return 'WWW-Authenticate: Bearer' header in certain cases (for example, on OpenShift).
  • Fixed an issue where using local Docker images (by docker://...) on Windows caused an error.

See CHANGELOG.md for more details.

jib-maven-plugin v2.0.0

28 Jan 21:13
Compare
Choose a tag to compare

jib-maven-plugin

Major Changes

  • HTTP redirection URLs are no longer sanitized in order to work around an issue with certain registries that do not conform to HTTP standards. This resolves an issue with using Red Hat OpenShift and Quay registries.
  • Now automatically refreshes Docker registry authentication tokens when expired, fixing the issue that long-running builds may fail with "401 unauthorized."
  • Now <containerizingMode>packaged works as intended with Spring Boot projects that generate a fat JAR.
  • Removed deprecated <extraDirectory> configuration in favor of <extraDirectories>.
  • Removed deprecated <container><useCurrentTimestamp> configuration in favor of <container><creationTime> with USE_CURRENT_TIMESTAMP.
  • The default base image cache location has been changed on MacOS and Windows.
    • MacOS ($XDG_CACHE_HOME defined): from $XDG_CACHE_HOME/google-cloud-tools-java/jib/ to $XDG_CACHE_HOME/Google/Jib/
    • MacOS ($XDG_CACHE_HOME not defined): from $HOME/Library/Application Support/google-cloud-tools-java/jib/ to $HOME/Library/Caches/Google/Jib/
    • Windows ($XDG_CACHE_HOME defined): from $XDG_CACHE_HOME\google-cloud-tools-java\jib\ to $XDG_CACHE_HOME\Google\Jib\Cache\
    • Windows ($XDG_CACHE_HOME not defined): from %LOCALAPPDATA%\google-cloud-tools-java\jib\ to %LOCALAPPDATA%\Google\Jib\Cache\
    • Initial builds will be slower until the cache is repopulated, unless you manually move the cache from the old location to the new location
  • Added json output file for image metadata after a build is complete. Writes to target/jib-image.json by default, configurable with <outputPaths><imageJson>.
  • Fixed <extraDirectories><permissions> being ignored if <paths> are not explicitly defined.
  • jib:buildTar with <container><format>OCI now builds a correctly formatted OCI archive.
  • Now <containerizingMode>packaged correctly identifies the packaged JAR generated at a non-default location when configured with the Maven Jar Plugin's <classifier> and <outputDirectory>.
  • When giving registry credentials in settings.xml, specifying port in <server><id> is no longer required.
  • Fixed an issue where configuring the <warName> property of the Maven WAR plugin fails the build.

See CHANGELOG.md for more details.

jib-gradle-plugin v2.0.0

28 Jan 21:21
Compare
Choose a tag to compare

jib-gradle-plugin

Major Changes

  • Requires Gradle 5.1 or newer (up from 4.9).
  • HTTP redirection URLs are no longer sanitized in order to work around an issue with certain registries that do not conform to HTTP standards. This resolves an issue with using Red Hat OpenShift and Quay registries.
  • Now automatically refreshes Docker registry authentication tokens when expired, fixing the issue that long-running builds may fail with "401 unauthorized."
  • Now jib.containerizingMode='packaged' works as intended with Spring Boot projects that generate a fat JAR.
  • Removed jibDockerBuild.dockerClient in favor of jib.dockerClient.
  • Removed deprecated jib.extraDirectory configuration in favor of jib.extraDirectories.
  • Removed deprecated jib.container.useCurrentTimestamp configuration in favor of jib.container.creationTime with USE_CURRENT_TIMESTAMP.
  • The default base image cache location has been changed on MacOS and Windows.
    • MacOS ($XDG_CACHE_HOME defined): from $XDG_CACHE_HOME/google-cloud-tools-java/jib/ to $XDG_CACHE_HOME/Google/Jib/
    • MacOS ($XDG_CACHE_HOME not defined): from $HOME/Library/Application Support/google-cloud-tools-java/jib/ to $HOME/Library/Caches/Google/Jib/
    • Windows ($XDG_CACHE_HOME defined): from $XDG_CACHE_HOME\google-cloud-tools-java\jib\ to $XDG_CACHE_HOME\Google\Jib\Cache\
    • Windows ($XDG_CACHE_HOME not defined): from %LOCALAPPDATA%\google-cloud-tools-java\jib\ to %LOCALAPPDATA%\Google\Jib\Cache\
    • Initial builds will be slower until the cache is repopulated, unless you manually move the cache from the old location to the new location
  • Added json output file for image metadata after a build is complete. Writes to build/jib-image.json by default, configurable with jib.outputPaths.imageJson.
  • jibBuildTar with jib.container.format='OCI' now builds a correctly formatted OCI archive.

See CHANGELOG.md for more details.

jib-core v0.13.0

29 Jan 17:47
Compare
Choose a tag to compare

jib-core

Major Changes

  • New method: JibContainerBuilder#describeContainer which returns new class: JibContainerDescription, containing a selection of information used for the Jib build.
  • Each local base image layer is pushed immediately after being compressed, rather than waiting for all layers to finish compressing before starting to push.
  • HTTP redirection URLs are no longer sanitized in order to work around an issue with certain registries that do not conform to HTTP standards. This resolves an issue with using Red Hat OpenShift and Quay registries.
  • Containerizer.DEFAULT_BASE_CACHE_DIRECTORY has been changed on MacOS and Windows.
    • MacOS ($XDG_CACHE_HOME defined): from $XDG_CACHE_HOME/google-cloud-tools-java/jib/ to $XDG_CACHE_HOME/Google/Jib/
    • MacOS ($XDG_CACHE_HOME not defined): from $HOME/Library/Application Support/google-cloud-tools-java/jib/ to $HOME/Library/Caches/Google/Jib/
    • Windows ($XDG_CACHE_HOME defined): from $XDG_CACHE_HOME\google-cloud-tools-java\jib\ to $XDG_CACHE_HOME\Google\Jib\Cache\
    • Windows ($XDG_CACHE_HOME not defined): from %LOCALAPPDATA%\google-cloud-tools-java\jib\ to %LOCALAPPDATA%\Google\Jib\Cache\
  • Containerizer#setAllowInsecureRegistries(boolean) and the sendCredentialsOverHttp system property are now effective for authentication service server connections.
  • Fixed inefficient communications when interacting with insecure registries and servers (when Containerizer#setAllowInsecureRegistries(boolean) is set).
  • Building a tarball with OCI format now builds a correctly formatted OCI archive.
  • Now automatically refreshes Docker registry authentication tokens when expired, fixing the issue that long-running builds may fail with "401 unauthorized."

See CHANGELOG.md for more details.

jib-maven-plugin v1.8.0

15 Nov 18:25
Compare
Choose a tag to compare

jib-maven-plugin

Major Changes

  • <allowInsecureRegistries> and the sendCredentialsOverHttp system property are now effective for authentication service server connections.
  • Fixed reporting wrong module name when skaffold init is run on multi-module projects.
  • Optimized building to a registry with local base images.
  • Fixed inefficient communications when interacting with insecure registries and servers (when <allowInsecureRegistries> is set).

See CHANGELOG.md for more details.

jib-gradle-plugin v1.8.0

15 Nov 18:25
Compare
Choose a tag to compare

jib-gradle-plugin

Major Changes

  • Requires Gradle 4.9 or newer (up from 4.6).
  • allowInsecureRegistries and the sendCredentialsOverHttp system property are now effective for authentication service server connections.
  • Fixed reporting parent build file when skaffold init is run on multi-module projects.
  • Optimized building to a registry with local base images.
  • Now correctly uses the war task if it is enabled and the bootWar task is disabled for Spring WAR projects.
  • Fixed inefficient communications when interacting with insecure registries and servers (when allowInsecureRegistries is set).

See CHANGELOG.md for more details.

jib-maven-plugin v1.7.0

15 Nov 18:19
Compare
Choose a tag to compare

jib-maven-plugin

Major Changes

  • Main class inference support for Java 13/14.
  • The base image manifest is no longer pulled from the registry if a digest is provided and the manifest is already cached.
  • <outputPaths> object for configuration output file locations
    • <outputPaths><tar> configures output path of jib:buildTar (target/jib-image.tar by default)
    • <outputPaths><digest> configures the output path of the image digest (target/jib-image.digest by default)
    • <outputPaths><imageId> configures output path of the image id (target/jib-image.id by default)
  • Fixed additional tags being ignored when building to a tarball.
  • Local base image layers are now processed in parallel, speeding up builds using large local base images.
  • Docker daemon base images are now cached more effectively, speeding up builds using docker:// base images.
  • Fixed an issue for WAR projects where Jib used an intermediate exploded WAR directory instead of exploding the final WAR file.
  • Fixed tar:// base image failing if tar does not contain explicit directory entries.
  • Fixed temporary directory cleanup during builds using local base images.

See CHANGELOG.md for more details.

jib-gradle-plugin v1.7.0

18 Oct 14:47
Compare
Choose a tag to compare

jib-gradle-plugin

Major Changes

  • Main class inference support for Java 13/14.
  • The base image manifest is no longer pulled from the registry if a digest is provided and the manifest is already cached.
  • jib.outputPaths object for configuration output file locations
    • jib.outputPaths.tar configures output path of jibBuildTar (build/jib-image.tar by default)
    • jib.outputPaths.digest configures the output path of the image digest (build/jib-image.digest by default)
    • jib.outputPaths.imageId configures output path of the image id (build/jib-image.id by default)
  • Fixed additional tags being ignored when building to a tarball.
  • Local base image layers are now processed in parallel, speeding up builds using large local base images.
  • Docker daemon base images are now cached more effectively, speeding up builds using docker:// base images.
  • Fixed tar:// base image failing if tar does not contain explicit directory entries.
  • Fixed temporary directory cleanup during builds using local base images.

See CHANGELOG.md for more details.

jib-core v0.12.0

18 Oct 14:57
Compare
Choose a tag to compare

jib-core

Major Changes

  • Main class inference support for Java 13/14.
  • The base image manifest is no longer pulled from the registry if a digest is provided and the manifest is already cached.
  • Fixed additional tags being ignored when building to a tarball.
  • Local base image layers are now processed in parallel, speeding up builds using large local base images.
  • Docker daemon base images are now cached more effectively, speeding up builds using DockerDaemonImage base images.
  • Fixed TarImage base image failing if tar does not contain explicit directory entries.
  • Fixed temporary directory cleanup during builds using local base images.
  • Now ignores jib.alwaysCacheBaseImage system property. Use Containerizer#setAlwaysCacheBaseImage(boolean) instead.
  • Containerizer#setAlwaysCacheBaseImage(boolean) controls the optimization to skip downloading base image layers that exist in a target registry.

See CHANGELOG.md for more details.