Ben Firshman
eb69225444
Merge pull request #209 from orchardup/better-invalid-service-name-error
...
Better error message when service names are invalid
2014-06-20 12:32:07 +01:00
Aanand Prasad
cafe68a92d
Better error message when service names are invalid
2014-06-20 12:10:18 +01:00
j0hnsmith
6b8044e92c
add net param support
...
Signed-off-by: Peter Flood <info@whywouldwe.com>
2014-06-19 11:57:55 +01:00
Aanand Prasad
cfcabce593
Extract stream_output to module
2014-06-18 14:51:12 +01:00
Ben Firshman
7a9228ad75
Remove intermediate build containers
...
Docker does this by default now.
2014-05-08 15:40:53 +01:00
Aanand Prasad
3abce4259f
Fix regression in handling of build errors
2014-04-30 11:53:23 +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
Aanand Prasad
f8ee52ca2a
Fix build output
...
docker-py now streams us the raw JSON events, so we have to replicate
the Docker client's progress logic.
On the bright side, we now have well-behaved progress bars when pulling
an image during `fig build` (no more ski slopes) and `fig up` (no more
silence).
2014-04-15 10:41:06 +01:00
Shane Jonas
d9782b2dd1
fix issue with utf8 encoding in logger stdout
2014-04-11 11:21:20 -07:00
Ben Firshman
aecaf665f1
Merge pull request #164 from orchardup/friendlier-build-error
...
Friendlier build error
2014-03-28 23:05:46 +00:00
sebastianneubauer
352ad7a38c
Scaling down removes containers
...
Squashed version of #162 .
Closes #121 .
2014-03-26 18:28:10 +00:00
Maurits van Mastrigt
710cd38591
Fix UnicodeEncodeErrors in output of 'build', 'run' and 'up'
...
Squashed version of #125 .
Closes #112 .
2014-03-25 13:32:03 +00:00
Aanand Prasad
168b1909ae
Friendlier build error
...
Hide the backtrace and show a comprehensible message.
Closes #160 .
2014-03-25 12:20:05 +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
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
c709251f21
Add custom link names ( Closes #72 )
2014-03-02 00:17:19 +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
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
Ben Firshman
7e2d86c510
Use Container.create to recreate containers
...
self.create_container might do unexpected things.
2014-01-20 16:10:54 +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
Aanand Prasad
c6e19e34f7
Fix external port config
...
When exposing a port externally, it seems Docker only actually exposes it
if you specify the *internal* port as `xxxx/tcp`. So add that on if it's
not there.
2014-01-17 18:01:27 +00:00
Ben Firshman
56c6efdfce
Add scale command
...
Closes #9
2014-01-16 18:09:46 +00:00
Aanand Prasad
21528f08d4
Vendor docker-py
...
From 9dc03c5737
2014-01-16 13:30:01 +00:00
Aanand Prasad
8c583d1bb2
Quieter log output when recreating
...
Moved log stuff to Service, which I think makes more sense anyway.
Maybe.
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
3956d85a8c
Refactor recreate_containers() in preparation for smart name-preserving logic
2014-01-16 12:32:15 +00:00
Aanand Prasad
8a0071d9c1
Reduce stop() timeout when recreating containers
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
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
9bec059cc7
e.explanation a 'str' object
2014-01-06 17:58:50 +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
a39db86651
Add "fig build" command
2014-01-02 15:28:33 +00:00
Aanand Prasad
0cafdc9c6c
plum -> fig
2013-12-20 20:28:24 +00:00