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
Ben Firshman
2b245bdf9e
Update to docker-py 0.3.1
...
From 7f55a101f8
This now requires Docker 0.9 or greater.
2014-04-15 10:41:06 +01:00
sebastianneubauer
352ad7a38c
Scaling down removes containers
...
Squashed version of #162 .
Closes #121 .
2014-03-26 18:28:10 +00: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
Ben Firshman
044c348faf
Add test for fig rm
2014-03-04 11:00:09 +00:00
Ben Firshman
465c7d569c
Improve CLI test names
2014-03-04 11:00:09 +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
Ben Firshman
3e7360c2c6
Improve error when service is not a dict
...
Fixes #127
2014-03-03 16:21:42 +00:00
Ben Firshman
bf47aa97b4
Fix tests importing six
2014-03-03 12:25:38 +00:00
Aanand Prasad
c07e96cf2b
Merge pull request #120 from marksteve/link-name
...
Add custom link names (Closes #72 )
2014-03-03 11:22:57 +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
Aanand Prasad
9d1383ba26
Alternate fig file can be specified with -f
2014-03-01 11:29:23 +00:00
Ben Firshman
b9c8e3e057
Fix scale not binding ports
2014-02-17 21:33:05 +00:00
Ben Firshman
5d4210ceb3
Fix tests when there is an image with int tag
2014-02-17 21:32:48 +00:00
Barnaby Gray
6431d52a2e
Implement topological sort using Cormen/Tarjan algorithm to handle a->b->c dependencies and detect a->b->c->a cycles.
2014-02-12 09:09:55 +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
62607f4f04
Merge pull request #67 from orchardup/link-services-to-themselves
...
Link services to themselves
2014-01-31 02:46:52 -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
Cameron Maske
ae7573b9b8
Fix for #48 .
...
Rework of how services are sorted based on dependencies using a topological sort.
Includes error handling to detect circular/self imports (should raise a DependecyError).
Added in logging to the CLI to log out any DependencyErrors.
Removed the compact module as it is no longer used.
2014-01-29 18:38:25 +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
8b75f7c7d3
Merge pull request #58 from mrchrisadams/load_yaml_as_well_as_yml
...
Support loading in Figfiles with .yaml extension
2014-01-28 03:35:25 -08:00
Chris Adams
1d18d747a5
Support loading in Figfiles with .yaml extension
...
Add basic boilerplate text - feel free to change
2014-01-28 00:43:23 +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
Ben Firshman
ddf6819a75
Only pull ubuntu:latest in tests
...
Might stop Travis running out of disk space.
2014-01-26 20:37:40 +00:00
Ben Firshman
ee49e7055b
Pull ubuntu image for CLI tests
2014-01-26 20:29:05 +00:00
Ben Firshman
ea93c01dfb
Remove intermediate containers in recreate test
2014-01-26 19:48:10 +00:00
Ben Firshman
cf18a3141f
Remove images created by tests
2014-01-26 19:37:35 +00:00
Aanand Prasad
e8472be6d5
Fig bug in split_buffer where input was being discarded
...
Also, write some tests for it.
2014-01-22 17:44:04 +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
Ben Firshman
7abc4fbf3a
Improve ps CLI test
2014-01-20 16:50:41 +00:00
Ben Firshman
855a9c623c
Remove containers after running CLI tests
2014-01-20 16:47:58 +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
Ben Firshman
8ed86ed551
Add number to container
2014-01-16 18:05:59 +00:00
Aanand Prasad
21528f08d4
Vendor docker-py
...
From 9dc03c5737
2014-01-16 13:30:01 +00:00
Aanand Prasad
ee0c4bf690
Fix test regression
2014-01-16 12:32:16 +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
f5f9357736
Remove project.create_containers(), revamp project.recreate_containers()
...
`recreate_containers` now returns two lists of old+new containers, along
with their services.
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