- Docker image now have method
run_via_api()
- We have introduced OpenShift
origin
and Kubernetesk8s
backends. - Support for three k8s primitives -
Pod
,Service
,Deployment
- CentOS CI, thanks to @jpopelka
- Docker backend now has
push()
andlogin()
methods - Origin backend has
oc_new_app()
method - Automatic updates of dependencies using kebechet bot, thanks to @fridex
- Codacy hook, thanks to @lachmanfrantisek
- Examples for origin and k8s backends
- Use Popen in run_cmd and pipe outputs to logger, thanks to @SkullTech
- We have changed behavior of
.get_metadata
method. It now returns an instance ofMetadata
class. Method.inspect
is meant to return raw data of the selected backend.
- Introduction of a new class to hold container and image metadata. In coming weeks, we'll be working on integrating this class into the library. Our main intent is to make the Metadata class generic across all backends.
- conu now has an API to access image layers (#207)
- We've added Contribution guide, thanks to Rado Pitonak (#208).
- Provide docker container filesystem using
docker export
instead ofatomic mount
— conu no longer requires atomic. This also means that root privileges are no longer required. - Don't depend on
enum34
for python 3, thanks to Rado Pitonak (#214)
- Introduced fixtures and helper functions to simplify container testing.
- Support was added for another backend - nspawn.
- It is possible to decide cleanup policy when initializing backend.
- Methods for listing containers and images were added to both supported backends.
- Image mounting is possible also without superuser privileges.
- To represent and work with docker volumes, there is a new class
Volume
. run_via_binary
accepts commands in form of list of strings to make running images more intuitively.- It is possible to build image from Dockerfile using
DockerImage.build()
. - There is a new method to check GPG signatures of RPMs in images.
- Documentation is updated, there is also asciinema demo in README.md.
Please note, that our API is still not marked stable yet.
-
We have changed how
logs()
method works. It now returns iterator always. On top of it, we have implemented more convenience methods to return logs as bytes and unicode. -
Backend class can (and should) be used as a context manager. This was done for the sake of creating a temporary directory meant for the backend instance. The context manager ensures the temporary directory will be removed.
- We added support for docker-py version 1 so it can work in CentOS.
- conu will check whether required binaries are present and if not,
CommandDoesNotExistException
will be raised. - Our documentation was improved and contains now more examples and the python interface should be explained in more detail.
- When creating docker containers, conu now utilizes option
--cidfile
. execute()
method can be blocking and non-blocking.- Backend provides a new methos
cleanup_containers()
to cleanup containers created during the session.
- Initial release.