Commit Graph

63 Commits

Author SHA1 Message Date
Daniel Nephin c3968a439f Refactor config loading to move version check into ConfigFile.
Adds the cached_property package.

Signed-off-by: Daniel Nephin <dnephin@docker.com>
2016-01-14 11:45:15 -05:00
Mazz Mosley fe760a7b62 Include additional classifiers
I've included Python 2/3 as they are not parent classifiers but
sibling classifiers. They denote that this project will work with
*some* versions of python and by having them, they'll show up for
people searching for python 2 or 3 projects.

According to the internet :)

Signed-off-by: Mazz Mosley <mazz@houseofmnowster.com>
2015-10-26 17:08:45 +00:00
Nicolas Delaby 37921b40dd Add trove classifier to declare supported python versions.
Signed-off-by: Nicolas Delaby <nicolas.delaby@lock8.me>
2015-10-19 10:52:39 +02:00
Daniel Nephin 7c6e7e0dce Update docker-py to 1.5.0
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2015-10-14 11:18:21 -04:00
Aanand Prasad d1dd06a7e2 Update docker-py to 1.4.0
Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2015-09-11 15:42:20 -07:00
Daniel Nephin 0484e22a84 Add enum34 and use it to create a ConvergenceStrategy enum.
Signed-off-by: Daniel Nephin <dnephin@gmail.com>
2015-09-04 10:45:53 -04:00
Daniel Nephin 9d7ad796a3 bump requests to 2.7 to fix the ResponseNotReady() error, and add a missing default for tox posargs
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2015-09-03 14:11:44 -04:00
Daniel Nephin c1ed1efde8 Use py.test as the test runner
Signed-off-by: Daniel Nephin <dnephin@gmail.com>
2015-09-01 16:27:44 -04:00
Daniel Nephin 2943ac6812 Cleanup requirements.txt so we don't have to maintain separate copies for py2 and py3.
Signed-off-by: Daniel Nephin <dnephin@gmail.com>
2015-08-25 10:46:08 -04:00
funkyfuture 9aa61e596e Run tests against Python 2.6, 2.7, 3.3, 3.4 and PyPy2
In particular it includes:
- some extension of CONTRIBUTING.md
- one fix for Python 2.6 in tests/integration/cli_test.py
- one fix for Python 3.3 in tests/integration/service_test.py
- removal of unused imports

Make stream_output Python 3-compatible

Signed-off-by: Frank Sachsenheim <funkyfuture@riseup.net>
2015-08-25 10:41:09 -04:00
Daniel Nephin 809443d6d0 Support python 3
Signed-off-by: Daniel Nephin <dnephin@gmail.com>
2015-08-25 10:37:29 -04:00
Daniel Nephin 59d4f304ee Run pre-commit on all files
Signed-off-by: Daniel Nephin <dnephin@gmail.com>
2015-08-24 17:04:50 -04:00
Mazz Mosley da36ee7cbc Perform schema validation
Define a schema that we can pass to jsonschema to validate against the
config a user has supplied. This will help catch a wide variety of common
errors that occur.

If the config does not pass schema validation then it raises an exception
and prints out human readable reasons.

Signed-off-by: Mazz Mosley <mazz@houseofmnowster.com>
2015-08-07 12:06:34 +01:00
Aanand Prasad f4dac02947 Update docker-py to 1.3.1
Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2015-07-23 10:56:21 +01:00
Christoph Witzany 04b7490ef2 Fix required version of websockets-client
Signed-off-by: Christoph Witzany <christoph@web.crofting.com>
2015-07-21 11:59:32 +02:00
Aanand Prasad 4ba9d9dac2 Make parallel tasks interruptible with Ctrl-C
The concurrent.futures backport doesn't play well with
KeyboardInterrupt, so I'm using Thread and Queue instead.

Since thread pooling would likely be a pain to implement, I've just
removed `COMPOSE_MAX_WORKERS` for now. We'll implement it later if we
decide we need it.

Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2015-07-20 14:13:25 +01:00
Aanand Prasad 35aef1aee0 Merge pull request #1687 from mnowster/1651-parallelise-stopping-containers
1651 parallelise stopping containers
2015-07-15 16:29:54 +01:00
Mazz Mosley a68ca199a2 Execute container commands in parallel
Commands able to use this parallelisation are `stop`, `kill` and `rm`.

We're using a backported function from python 3, to allow us to make
the most of a pool of threads without having to write the low level
code for managing this ourselves.

A default value for number of threads is a low enough number so it
shouldn't cause performance problems but if someone knows the
capability of their system and wants to increase it, they can via
an environment variable DEFAULT_MAX_WORKERS

Signed-off-by: Mazz Mosley <mazz@houseofmnowster.com>
2015-07-15 11:02:50 +01:00
Aanand Prasad fdc34a187e Use docker-py 1.3.0
Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2015-07-14 16:17:12 +01:00
Aanand Prasad ac56ef3d65 Update docker-py to 1.2.3 final
Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2015-06-18 11:11:51 -07:00
Aanand Prasad 4e108e377e Update setup.py with new docker-py minimum
Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2015-06-15 10:18:15 -07:00
Aanand Prasad ce880af821 Update dockerpty to 0.3.4
Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2015-06-08 17:01:03 -04:00
Aanand Prasad 9bbf1a33d1 Update dockerpty to 0.3.3
Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2015-05-14 20:03:50 +01:00
Aanand Prasad 1dccd58209 Update docker-py to 1.2.2
Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2015-05-12 18:51:45 +01:00
Aanand Prasad 2e6bc078fb Implement 'labels' option
Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2015-04-29 16:45:18 +01:00
Kyle Walker d17c4d27fa Support alternate Dockerfile name.
Signed-off-by: Kyle James Walker <KyleJamesWalker@gmail.com>
2015-04-24 08:30:36 -07:00
akoskaaa f9ea5ecf40 [pep8] make test files and config files pep8 valid
Signed-off-by: akoskaaa <akos.hochrein@prezi.com>
2015-03-25 20:20:38 -07:00
Aanand Prasad 1c14fc06da Update docker-py and requests version ranges
Leave the pinned versions in requirements.txt alone, as there's an
incompatibility between PyInstaller and requests 2.5.2 and 2.5.3, and by
extension with docker-py 1.1.0.

Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2015-03-23 15:04:18 -07:00
Aanand Prasad f4ef2c09d6 Revert "Remove restriction for requests version, update docker-py requirement"
This reverts commit 81a32a266f.

Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2015-03-23 15:04:15 -07:00
Rotem Yaari 81a32a266f Remove restriction for requests version, update docker-py requirement 2015-03-13 14:39:11 +02:00
Aanand Prasad 8610adcaf3 Merge pull request #997 from abesto/use-latest-docker-py
Use docker-py 1.0.0
2015-03-02 14:15:18 +00:00
Zoltan Nagy 8f38b28816 Use docker-py 1.0.0
Signed-off-by: Zoltan Nagy <abesto@abesto.net>
2015-03-02 13:11:02 +01:00
Aanand Prasad cf6b09e94b Fix requests version range
It was more permissive than docker-py's, resulting in an incompatible
version (2.5.x) being installed.

Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2015-02-25 17:34:22 +00:00
Daniel Nephin 0bc4a28dcc Use latest docker-py.
Signed-off-by: Daniel Nephin <dnephin@gmail.com>
2015-01-25 15:33:15 -05:00
Aanand Prasad 620e29b63f Rename binary to docker-compose and config file to docker-compose.yml
Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2015-01-20 21:00:23 +00:00
Aanand Prasad 2af7693e64 WIP: rename Fig to Compose
Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2015-01-20 21:00:23 +00:00
Ben Firshman 788741025e Upgrade to docker-py 0.6.0
Force using remote API version 1.14 so Fig is still compatible with
Docker 1.2.

Signed-off-by: Ben Firshman <ben@firshman.co.uk>
2014-12-09 10:57:45 -08:00
Ben Firshman 38a3ee8d63 Use upstream dockerpty 0.3.2
This reverts commit 60411e9f05.

Closes #556

Signed-off-by: Ben Firshman <ben@firshman.co.uk>

Conflicts:
	requirements.txt
	setup.py
2014-11-04 10:23:42 +00:00
Aanand Prasad 67d4b7c587 Merge pull request #574 from bfirsh/update-tagline
Update tagline to match website
2014-10-22 12:46:16 +01:00
Ben Firshman 75b3dcf5fd Update tagline to match website
Signed-off-by: Ben Firshman <ben@firshman.co.uk>
2014-10-22 12:41:01 +01:00
Aanand Prasad 7a943739cb Fix docker-py requirement in setup.py
I updated requirements.txt but forgot about setup.py, so the version on
pypi is broken for people who already have docker-py 0.5.0 installed.

Closes #547.

Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2014-10-17 11:17:58 +01:00
Aanand Prasad 60411e9f05 Vendor dockerpty at c8b493553477c9a57d163c71c97b2102f44a6ce7
Include TLS fixes and relative imports:

c8b4935534

Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2014-10-16 16:24:39 +01:00
Jason Bernardino Alonso c270e9d622 Require docker-py 0.5 or later for insecure_registry kwarg
Signed-off-by: Jason Bernardino Alonso <jalonso@luminoso.com>
2014-09-26 16:36:42 -04:00
Ben Firshman b0159e5100 Upgrade to docker-py 0.5.0
Signed-off-by: Ben Firshman <ben@firshman.co.uk>
2014-09-08 09:23:01 -07:00
Daniel Nephin 7fd37c89b9 Remove fig.packages replace with real deps.
Signed-off-by: Daniel Nephin <dnephin@gmail.com>
2014-09-05 11:44:49 -07:00
Alex Brandt 3965db9dff Exclude tests package from installation.
Installing the top-level tests package is asking for conflicts with
other python packages and isn't required to run fig.  This simply lets
find_packages know to ignore tests and any sub-packages.
2014-08-11 09:00:16 -05:00
Daniel Nephin c0450f7df0 Resolves #366, non-pinned versions in setup.py:install_requires
Signed-off-by: Daniel Nephin <dnephin@gmail.com>
2014-07-29 17:13:22 -07:00
Ben Firshman 99064d17dd Docker, Inc.
Signed-off-by: Ben Firshman <ben@firshman.co.uk>
2014-07-24 10:24:17 -07:00
Ben Firshman 59c976510c Update URL in readme and setup.py
Signed-off-by: Ben Firshman <ben@firshman.co.uk>
2014-07-21 16:22:03 -07:00
Ben Firshman 3a2c9c1016 Switch to Apache License 2.0
Signed-off-by: Ben Firshman <ben@firshman.co.uk>
2014-05-28 10:59:21 +01:00