Skip to content

Releases: pulumi/pulumi-docker

v4.1.0

23 Mar 19:35
238e4f4
Compare
Choose a tag to compare

Changelog

Breaking Changes:

  • Resource docker:index/registryImage:RegistryImage missing input build
  • Resource docker:index/registryImage:RegistryImage missing output build
  • Resource docker:index/remoteImage:RemoteImage missing input pullTrigger
  • Resource docker:index/remoteImage:RemoteImage missing output pullTrigger
  • Resource docker:index/remoteImage:RemoteImage missing output latest
  • Resource docker:index/remoteImage:RemoteImage missing output output
  • Resource docker:index/container:Container missing input networkAliases
  • Resource docker:index/container:Container missing input links
  • Resource docker:index/container:Container missing input networks
  • Resource docker:index/container:Container missing output networks
  • Resource docker:index/container:Container missing output ipPrefixLength
  • Resource docker:index/container:Container missing output networkAliases
  • Resource docker:index/container:Container missing output gateway
  • Resource docker:index/container:Container missing output links
  • Resource docker:index/container:Container missing output ipAddress
  • Type docker:index/RegistryImageBuildUlimit:RegistryImageBuildUlimit missing
  • Type docker:index/RegistryImageBuildAuthConfig:RegistryImageBuildAuthConfig missing
  • Type docker:index/RemoteImageBuild:RemoteImageBuild missing property path
  • Type docker:index/RegistryImageBuild:RegistryImageBuild missing
  • Type docker:index/ServiceTaskSpec:ServiceTaskSpec missing property networks

v4.0.1

20 Mar 22:06
fde2cb9
Compare
Choose a tag to compare

Breaking Changes

If a user provides a Dockerfile, the path specified must be absolute, or relative to the Pulumi context, not the Docker build context.
The dockerfile field remains optional, and if left blank, we assume traditional location of Dockerfile within the Docker build context.
Read specific details on the pull request

Changelog

  • 993e8a3 Add Dockerfile to build context if passed from outside the build context (#542)
  • d4c24c6 Add token mapping strategy
  • c6847aa Always assume Linux for host OS (#543)
  • 930d965 Docs target should not depend on provider target (#546)
  • aff750b Makefile: fix checks failing due to upstream uninit
  • 2bc208c Makefile: generate docs using latest provider schema
  • 1e0e8ac Restore Image.repoDigest output (#530)
  • 0b1df21 add token mapping
  • 75281ca add token mapping
  • fde2cb9 check for images property if cacheFrom is present (#555)
  • 1c5a64d examples: Add multi stage build caching test
  • 91b79ab image: Fix Windows usage of Image resource
  • e8d2547 image: Fix context hash of symlinks in subdirs
  • 0829eef image: Fix failing to pull from other registries
  • f396f03 image: Fix multi-stage build caching
  • 783a801 image: add tests, ensure path hashes are os-agnostic
  • 84618d7 image: fix outputs defined as optional (#552)
  • 0b2969f provider: Fix conn issues on Windows
  • 1d5ddc2 provider: fork upstream, patch to docker v23.0.1
  • 86b7486 upgrade to tfbridge v3.42.1 & fix lint (#525)

v4.0.0

08 Mar 19:44
9da6e61
Compare
Choose a tag to compare

What's Changed

The Docker Image resource is now a full Pulumi Custom Resource.
It uses the docker-go client library instead of invoking the Docker CLI.

As a result there are updates to the behavior of the Image resource and supporting types, as well as some minor name changes.

docker.Image: New Features and Bug Fixes

  • Support for Java and YAML
  • Default support for Buildkit
  • Build and push logs are streamed to the Pulumi build output
  • Images no longer are built during preview, reducing preview time significantly
  • Image will not be rebuilt if build context has not changed
  • Image has access to local cache layers, improving build time
  • Improved error handling for build failures
  • Working examples for major cloud registries

Migrating to v4

Because the Image resource does not contain any backend state, migrating to this version does not need any resource imports or stack updates. For most use cases, it should be as straightforward as updating your pulumi-docker version and adjusting your code to reflect the updated types.

UPDATE via #563

Because the new Image resource represents a change in how it is associated with a provider, a one-time manual stack update using pulumi state delete may be required.

The steps are as follows:

  1. pulumi stack --show-urns
  2. pulumi state delete <any Image URN> <--- this is safe to do, as Images have no cloud state
  3. upgrade to 4.x.x
  4. pulumi up

This version of the provider defaults to building images with Buildkit. If you would like to keep the classic Docker builder, set new field Build.BuilderVersion to BuilderV1 to continue using the classic Docker builder.

Inputs

  • LocalImageName: Deprecated. Use ImageName in conjunction with SkipPush:true.
  • Build: Updated. No longer a required input; defaults to using current directory as build context. No longer accepts a string for a custom build context. Use Build.Context instead.
    • Build.Platform: New. Specify a target platform for the image build. Note that this field supports a single value currently, not a list of target platforms.
    • Build.CacheFrom: Updated. No longer accepts a boolean. Specify images in Build.CacheFrom.Images. To fully leverage using a registry cache, images must be built with a cache manifest by passing "BUILDKIT_INLINE_CACHE": "1" to `Build.Args
      },
      • Build.CacheFrom.Images: New. Replaces Build.CacheFrom.Stages. Defines a list of images to use as build cache.
      • Build.CacheFrom.Stages: Deprecated. Replaced by Build.CacheFrom.Images.
      • Build.BuilderVersion: New. Defaults to BuilderBuildKit. Set to BuilderV1 to continue using the classic Docker builder.
  • ExtraOptions: Deprecated. This was a way to pass arbitrary CLI flags to the Docker CLI.
    These are being implemented as top-level fields; currently available are:
    • Build.Platform
    • Build.Target
    • Build.CacheFrom
  • Env: Deprecated. This field’s use case was mainly for passing DOCKER_BUILDKIT=1 to the CLI invocation of docker build. Use Build.BuilderVersion instead. You do not need to specify Build.BuilderVersion if you are running in Buildkit mode, which is the default.
  • ImageName: Updated. Must be of fully qualified repository format, i.e. registry.domain.abc/repositoryname/image. The tag will be inferred as :latest unless otherwise specified. Docker.io will no longer be automatically inferred.

Outputs

  • Id: Deprecated. Use ImageName for a unique identifier.
  • Digest: Deprecated as of an older version of pulumi-docker v3; this version removes it entirely.

Language specific type name changes

C Sharp
Docker.ImageRegistry → Docker.Inputs.RegistryArgs
Docker.DockerBuild → Docker.Inputs.DockerBuildArgs

Go
docker.ImageRegistry → docker.Registry

Python
DockerBuild → DockerBuildArgs
ImageRegistry → RegistryArgs

Changelog

New Contributors

Full Changelog: v3.6.1...v4.0.0

v4.0.0-alpha.4

07 Mar 22:06
1bd61e4
Compare
Choose a tag to compare
v4.0.0-alpha.4 Pre-release
Pre-release

What's Changed

Full Changelog: v4.0.0-alpha.3...v4.0.0-alpha.4

v4.0.0-alpha.3

09 Feb 01:22
e5f913e
Compare
Choose a tag to compare
v4.0.0-alpha.3 Pre-release
Pre-release

What's Changed

New Contributors

  • @aq17 made their first contribution in #476

Full Changelog: v4.0.0-alpha.2...v4.0.0-alpha.3

v4.0.0-alpha.2

28 Jan 01:03
1bd4f68
Compare
Choose a tag to compare
v4.0.0-alpha.2 Pre-release
Pre-release

What's Changed

Full Changelog: v4.0.0-alpha.1...v4.0.0-alpha.2

v4.0.0-alpha.1

21 Jan 01:35
4dca334
Compare
Choose a tag to compare
v4.0.0-alpha.1 Pre-release
Pre-release

What's Changed

Full Changelog: v4.0.0-alpha.0...v4.0.0-alpha.1

Docker Image Preview

06 Dec 16:27
2482870
Compare
Choose a tag to compare
Docker Image Preview Pre-release
Pre-release

This is a preview of the Docker Image resource as a fully schematized Pulumi resource. This aims to address a number of issues with this provider.

Please read What Changed for information and discussion on this preview.

This release is mostly comprised of the changes made in #413. Please see master for further updates as well.

v3.6.1

18 Nov 23:07
11c6d30
Compare
Choose a tag to compare

Changelog

v3.6.0

14 Nov 22:26
7c1a1af
Compare
Choose a tag to compare

Changelog

  • 8e0b505 Upgrade to v 2.23.0 of the Docker Terraform Provider
  • 4144f43 Disable Flaky Tests
  • 749be12 use skipf instead