Ansible Bender Versions Save

ansible-playbook + buildah = a sweet container image

0.10.1

1 year ago
  • 0.10.1 is a fixup release: twine refused an upload due to incorrect URL (fix: 216ff3f101494daf1bdaf4f427fe17fa108e100d)

0.10.0 release notes

Features

  • File operations are now also cached (examples: "file", "copy", "synchronize", "unarchive", and "template"), by @kjohnson0451, #246
  • Use AnsibleVarsParser class to process ansible variables, by @quietjoy, #287
    • It allows ansible_bender variables to be specified across group and host var files.
  • Enable passing extra args to podman run and ansible run, by @ArmaanT, #278
  • import_playbook statements are now supported, by @themkat, #268
  • Python interpreter locations are now cached for each base image, by @themkat, #267

Fixes

  • SELinux checks are now dropped since they are no longer relevant, by @quietjoy, #285
  • Vagrant development environment now works again, by @quietjoy, #286
  • Qualified image names are now used to reference images instead of short-names, by @tpo, #263

0.9.0

3 years ago

0.9.0

Features

Fixes

0.8.1

4 years ago

0.8.1

Fixes

  • clean command now works properly.
  • If bender can't create a container, a useful error message is now being printed.

Features

  • Warn when you request a change to UID while running in rootless mode (user namespaces are tricky).
  • If an image build failed, bender tagged the image with a -failed suffix so it could be inspected further. Now bender also prepends timestamp so one image is not being overwritten over and over.

Minor

  • Improvements to documentation in README and --help output.

0.8.0

4 years ago

0.8.0

Thank you to all the contributors! You are awesome!

And special thanks to @kmehant, our Red Hat Open Source Contest 2019 student.

Features

  • You can now pass extra arguments to buildah from call when bender creates new build container. This can be done from CLI using --extra-buildah-from-args option of build command or in the playbook: vars → ansible-bender → buildah_from_extra_args. Thanks to @jordemort #140
  • One can print bender's version using -V/--version options.
  • The final image build by bender can now be squashed — all layers merged into one. This can be done with the --squash option or in the playbook: vars → ansible-bender → squash. @jordemort #154
  • Entrypoints now can be set! Aside from default container commands. Similar drill: --entrypoint or vars → ansible-bender → target_image → entrypoint, thanks you, @slopedog #155
  • Build times in list-builds are now more readable, enjoy! Thanks to @kmehant #161
  • Bender can now locate platform-python of RHEL 8 and CentOS 8, thanks to @hhenkel #171
  • When running bender in debug mode (--debug), ansible stdout callback plugin is set to debug (ANSIBLE_STDOUT_CALLBACK=debug). @kmehant #175
  • Ansible executes a playbook in the buildah container using buildah run command. Before bender gets to that point, it tries to create a no-op container (buildah from --name $container $base_image && buildah run $container true) first to verify that the container runtime is correctly set up. @kmehant #174
  • We have two new subcommands:
    • init — create a template playbook in the current working directory so you can get on-board bender's train more easily. @kmehant #184
    • clean — clean images from database which are no longer present on disk @kmehant #180

Bug fixes

  • Buildah 1.7.3 introduced a backwards-incompatible change to commit command which required changes in bender's code. Bender is now able to work with both: buildah < 1.7.3 and >= 1.7.3. CentOS 8.0 and RHEL 8.0 have buildah < 1.7.3.
  • Bender is using file locking when using its database (~/.cache/ab/db.json), the locks are now atomic thanks to @kmehant #176
  • When you set bender-specific variables in your playbook (vars → ansible-bender) and there is a typo in any of the variables or the variable is not recognized, bender exits and informs you about this problem — we have implemented this to prevent typos in the configuration so that you would not be able to build invalid images. @kmehant #189
  • Bender no longer prints output from buildah pull as errors. @kmehant #195

Minor

  • Contribution guide is now placed in the upstream repo.
  • You can now invoke ansible-bender directly from the upstream git repo using the common python way:
    $ python3 -m ansible_bender --help
    
    @kmehant #160
  • Bender is now using Packit project for continuous integration.

0.7.0

4 years ago

0.7.0

Changes

  • Intermediate image layers are no longer tagged with a name. This was required by buildah, which is no longer the case since the 1.8 release. You can have the old behavior by adding verbose_layer_names: true to the root of the configuration.

Bug fixes

  • list-builds should no longer error out after an upgrade.
  • Bender incorrectly printed output of buildah inspect $base_image which cluttered the output a lot - that's no longer the case.

0.6.1

4 years ago

0.6.1

Bug fixes

  • Make bender work with ansible 2.8.

Minor

  • Test bender in vagrant VMs against ansible 2.7 and 2.8.

0.6.0

5 years ago

0.6.0

Features

  • You can specify a user to be used during the build process (--build-user). (Thanks to @11mariom #122)

Bug fixes

  • Bender is able to correctly process multiple build volumes. (Thanks to @11mariom #118)

0.5.3

5 years ago

0.5.3

Thank you for contributions from @jamescassell and @alexgarel!

Bug fixes

  • Bender now correctly picks up all cached layers and does not display an error message: Error: could not get runtime: error creating runtime static files directory /var/lib/containers/storage/libpod: mkdir /var/lib/containers/storage/libpod: permission denied. This was coming from podman so we switched to buildah to perform checks for presence of layers.
  • A name of a working container now contains month digits instead of minutes as one would expect. (How come that no one noticed?)

Minor

  • README now contains a bit of documentation for limitations of rootless mode.

0.5.2

5 years ago

0.5.2

Bug fixes

Minor

  • Document how to make Ansible roles available during a build if they are on a custom path.

0.5.1

5 years ago

0.5.1

Bug fixes

  • When pushing a build using the push command, bender now picks the correct image with metadata, instead of the last layer.
  • Variables are now expanded recursively. This means that when you define a variable in vars section, you can use it in other variables.

Minor

  • Documentation updates.