Skip to content

v3.6.0

Compare
Choose a tag to compare
@aeneasr aeneasr released this 10 Apr 10:24
· 169 commits to v3 since this release
1deddef
feat: add basic network management (#188)

Related #163 

This PR adds three things (in order from smaller to bigger):
* Getting a container descriptor inside container. This is useful when tests already running inside container with mounted docker socket for container management.
* Execution commands inside running container. This is useful "in general".  I.e. we have project with test case that simulates RabbitMQ restarts using `rabbitmqctl stop_app` and `rabbitmqctl start_app`. Also it's used in new tests.
* Basic network management. Docker networks can be created and deleted using `Pool`, containers can be connected to network using `BuildAndRunWithOptions` and `RunWithOptions`, already running containers can be connected to network using `ConnectToNetwork`.

Currrently it's working pretty good but requires too much boilerplate with `docker` package for network management and commands execution.

Also it helps in cases metioned in #163 when you need to run some end-to-end or integration tests with multiple linked containers.