Commit graph

43 commits

Author SHA1 Message Date
Ben Firshman
ca7151aeb1 Split tests into unit and integration 2014-04-25 22:58:21 +01:00
Aanand Prasad
6e932794f7 Fix regression when mounting volumes
Caused by
77fec67c60
2014-04-25 12:28:00 +01:00
Aanand Prasad
9e1dfcfb37 Update docker-py APIError imports 2014-04-23 18:20:33 +01:00
Aanand Prasad
80991f1521 Set "VolumesFrom" when starting containers
This is necessary when working with Docker 0.10.0 and up. Fortunately,
we can set it both when creating and starting, and retain compatibility
with 0.8.x and 0.9.x.

recreate_containers() is now responsible for starting containers, as
well as creating them. This greatly simplifies usage of the Service
class.
2014-04-23 15:46:26 +01:00
Kevin van Zonneveld
0f5a56b3c2 Add support for privileged containers #123
This is required for mounting external volumes and
addresses errors such as `mount.nfs: Operation not permitted`

Be gentle, I don't normally use Python :)
2014-03-13 14:31:05 +01:00
Aanand Prasad
13c7380113 Only fig run containers link back to the service they're part of
Fixes #107.
2014-03-06 18:59:24 +00:00
Aanand Prasad
2d98071e55 Support 'expose' config option, like docker's --expose
Exposes ports to linked services without publishing them to the world.
2014-03-04 18:06:52 +00:00
Aanand Prasad
6a3d1d06b5 Check NetworkSettings.Ports instead of HostConfig.PortBindings in tests
The latter appears to be unreliable.
2014-03-04 17:58:42 +00:00
Aanand Prasad
a00ec9d1f8 Fix: image-defined entrypoint not overridden by intermediate container
This was causing recreation to hang.
2014-03-03 18:06:06 +00:00
Mark Steve Samson
193558a4bc Add link names test 2014-03-03 08:54:47 +08:00
Mark Steve Samson
e38e866626 Fix links related test 2014-03-02 00:30:33 +08:00
Ben Firshman
b9c8e3e057 Fix scale not binding ports 2014-02-17 21:33:05 +00:00
Aanand Prasad
edf8f14ac0 Throw an error if you specify an unrecognised option in fig.yml
Closes #27.
2014-02-04 17:46:04 -08:00
Ben Firshman
e4e9f0bc19 Link services to themselves
E.g. `fig run db ...` will be able to access the db service.
2014-01-30 13:11:23 +00:00
Aanand Prasad
ee880ca7be Fix recreate_containers test 2014-01-29 13:57:28 +00:00
Ben Firshman
cbdeff99ee Fix broken test on Python 3 2014-01-28 13:45:47 +00:00
Ben Firshman
3e7e6e7656 Add link alias without project name
REDIS_1_PORT_6379_TCP_ADDR instead of
FIGTEST_REDIS_1_PORT_6379_TCP_ADDR.

Ref #37
2014-01-27 15:32:16 +00:00
Aanand Prasad
df9f66d437 Allow ports to be specified in '1234/tcp' format 2014-01-22 17:01:10 +00:00
Aanand Prasad
ae67d55bf2 Fix bug where too many '/tcp' suffixes were added to port config 2014-01-22 16:52:42 +00:00
Cameron Maske
62bba1684b Updated recreate_containers to attempt to base intermediate container's the previous container's image.
Added in additional functionality to reset any entrypoints for the intermediate container and pull/retry handling if the image does not exist.
Updated test coverage to check if an container is recreated with an entrypoint it is handled correctly.
2014-01-19 18:40:21 +00:00
Ben Firshman
56c6efdfce Add scale command
Closes #9
2014-01-16 18:09:46 +00:00
Aanand Prasad
ea4753c49a Use an anonymous intermediate container so that when recreating containers, suffixes always start from 1 2014-01-16 12:32:15 +00:00
Aanand Prasad
bdc6b47e1f service.recreate_containers() no longer removes the old containers
We need to keep them around until the new ones have been started.
2014-01-16 12:32:15 +00:00
Aanand Prasad
3669236aa1 Support volumes in config with an unspecified host path 2014-01-16 12:32:15 +00:00
Aanand Prasad
207e83ac2f Be sure to test that recreate_containers updates config 2014-01-16 12:32:15 +00:00
Ben Firshman
3c5e334d9d Add recreate_containers method to service 2014-01-16 12:32:15 +00:00
Ben Firshman
7a1fb3a8d2 Fix ordering of port mapping 2014-01-16 01:54:05 +00:00
Christopher Grebs
93b9b6fd9f First version with python3 support.
* Moved requirements*.txt files to proper spec definitions in setup.py
 * Added a new fig.compat module to store some compatibility code
2014-01-06 17:58:49 +00:00
Ben Firshman
853d8ad280 Namespace tests inside a project
So it doesn't delete all your containers for every test. Cool.
2014-01-02 15:27:51 +00:00
Aanand Prasad
0cafdc9c6c plum -> fig 2013-12-20 20:28:24 +00:00
Aanand Prasad
13a30c327a Container.name strips the leading slash 2013-12-20 19:33:41 +00:00
Aanand Prasad
8291d36eaf Fix stray test regression 2013-12-20 19:30:31 +00:00
Aanand Prasad
81093627fe Implement kill and rm 2013-12-20 18:30:59 +00:00
Aanand Prasad
a4710fa9e1 'plum up' is now the special magic
'start' and 'stop' are now analogous to their Docker namesakes.
2013-12-20 18:30:59 +00:00
Ben Firshman
507940535f Tag built images and use them when starting
A basic measure to get round the fact that adding isn't cached. Once
Docker supports cached adds, this is probably redundant.
2013-12-20 16:23:40 +00:00
Ben Firshman
326438b170 Pick correct numbers for one off containers 2013-12-20 12:55:45 +00:00
Ben Firshman
2f28265d10 Add support for differentiating one-off containers
This is a basic start, the API is pretty shonky.
2013-12-20 10:46:55 +00:00
Ben Firshman
c488710625 Add project option to services 2013-12-19 15:16:17 +00:00
Ben Firshman
6c551a200b Do not allow underscores in names 2013-12-19 14:47:43 +00:00
Ben Firshman
a5fc880d10 Refactor service to add a container object 2013-12-18 18:37:48 +00:00
Ben Firshman
5e1e4a71e0 Rename ServiceTest 2013-12-18 17:01:50 +00:00
Ben Firshman
87c46e281c Add support for specifying external port 2013-12-18 11:14:34 +00:00
Ben Firshman
772585109d Moved tests to root directory 2013-12-14 16:34:24 +00:00
Renamed from plum/tests/service_test.py (Browse further)