A tool which builds container images using Ansible playbooks
Project description
ansible-bender
This tool bends containers using Ansible playbooks and turns them into container images. It has a pluggable builder selection — it is up to you to pick the tool which will be used to construct your container image. Right now the only supported builder is buildah. More to come in the future. Ansible-bender (ab) relies on Ansible connection plugins for performing builds.
tl;dr Ansible is the frontend, buildah is the backend.
The concept is described in following blog posts:
Looking for maintainers ❤
This project doesn't have an active maintainer right now that would watch issues daily.
If you are a user of ansible-bender and are familiar with Python, please consider becoming a maintainer.
Features
- You can build your container images with buildah as a backend.
- Ansible playbook is your build recipe.
- You are able to set various image metadata via CLI or as specific Ansible vars:
- working directory
- environment variables
- labels
- user
- default command
- exposed ports
- You can do volume mounts during build.
- Caching mechanism:
- Every task result is cached as a container image layer.
- You can turn this off with
--no-cache
. - You can disable caching from a certain point by adding a tag
no-cache
to a task.
- You can stop creating new image layers by adding tag
stop-layering
to a task. - If an image build fails, it's committed and named with a suffix
-[TIMESTAMP]-failed
(so you can take a look inside and resolve the issue). - The tool tries to find python interpreter inside the base image.
- You can push images you built to remote locations such as:
- a registry, a tarball, docker daemon, ...
- podman push is used to perform the push.
Documentation
You can read more about this project in the documentation:
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file ansible-bender-0.10.1.tar.gz
.
File metadata
- Download URL: ansible-bender-0.10.1.tar.gz
- Upload date:
- Size: 6.8 MB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.1 CPython/3.11.1
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 2b2786e870106e22e17123b8cd6fa900ee7a72f6fbefbf8bd57aaee909c95089 |
|
MD5 | fd97f524753aac37ac35d56071dd6640 |
|
BLAKE2b-256 | 19d521a2f32d2fcd76dd2064b697b5fc40ab4a2b3cd1cf3128e23be6fe09c776 |
File details
Details for the file ansible_bender-0.10.1-py2.py3-none-any.whl
.
File metadata
- Download URL: ansible_bender-0.10.1-py2.py3-none-any.whl
- Upload date:
- Size: 40.0 kB
- Tags: Python 2, Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.1 CPython/3.11.1
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 717fd6200ec079cab7c01d7c494d35d149b113ca2222928d572741ad0433b8b0 |
|
MD5 | 741e13123b5787d292a6c418bc8121b3 |
|
BLAKE2b-256 | bfb1af4d50bbe34a7e91823adc40bff918a6b331235ea68579a5b8e814ec6ce9 |