Commit Graph

594 Commits

Author SHA1 Message Date
Alexandre Beslic d21748699d Merge pull request #1565 from jimmyxian/fresh-image-when-commit
fresh image when receive commit event
2016-01-13 12:01:09 -08:00
Victor Vieux 985974854c Merge pull request #1630 from jimenez/driver_join
Adding observe async for driver abort/errors
2016-01-13 11:47:10 -08:00
Isabel Jimenez 9bfc28c291 Adding obeserve async for driver abort/errors
Signed-off-by: Isabel Jimenez <contact@isabeljimenez.com>
2016-01-13 04:46:45 -05:00
Alexandre Beslic 254e095f77 Merge pull request #1601 from vieux/docker_discovery
use docker/docker/pkg/discovery and update godeps
2016-01-12 17:06:51 -08:00
Victor Vieux 18b6435839 Merge pull request #1621 from jimenez/scheduler_driver
Restructuring mesos scheduler driver outside of Cluster
2016-01-12 17:02:35 -08:00
Isabel Jimenez 443d49167a Restructuring mesos scheduler driver outside of Cluster
Signed-off-by: Isabel Jimenez <contact@isabeljimenez.com>
2016-01-12 19:24:50 -05:00
Alexandre Beslic e1213384bc Merge pull request #1578 from aluzzardi/rescheduling
[experimental] Simple container rescheduling on node failure
2016-01-12 15:00:27 -08:00
Victor Vieux 14bf4e08b3 add -experimental to enable rescheduling
Signed-off-by: Victor Vieux <vieux@docker.com>
2016-01-12 01:35:39 -08:00
Victor Vieux 31ad0e047f update godeps
Signed-off-by: Victor Vieux <vieux@docker.com>
2016-01-12 00:38:09 -08:00
Victor Vieux fc1e7bbca2 use docker/docker/pkg/discovery
Signed-off-by: Victor Vieux <vieux@docker.com>
2016-01-12 00:38:06 -08:00
Victor Vieux a2018c177c improve eventHandlers locking
Signed-off-by: Victor Vieux <vieux@docker.com>
2016-01-11 17:23:48 -08:00
Dong Chen 8f384b1d40 Address review comments.
Signed-off-by: Dong Chen <dongluo.chen@docker.com>
2016-01-11 16:08:51 -08:00
Victor Vieux 78008f4d4a add doc
fix tests and keep swarm id
remove duplicate on node reconnect
explicit failure

Signed-off-by: Victor Vieux <vieux@docker.com>
2016-01-11 15:59:44 -08:00
Andrea Luzzardi 13f60212f5 Add support for container rescheduling on node failure.
Add rescheduling integration tests.

Signed-off-by: Andrea Luzzardi <aluzzardi@gmail.com>
2016-01-11 15:59:44 -08:00
Andrea Luzzardi 56941d02a8 cluster: Support multiple event handlers.
Signed-off-by: Andrea Luzzardi <aluzzardi@gmail.com>
2016-01-11 15:59:44 -08:00
Dong Chen cf664141b6 Scheduler prefers nodes without connection failures.
Signed-off-by: Dong Chen <dongluo.chen@docker.com>
2016-01-11 11:42:58 -08:00
Xian Chaobo 1fef59f738 fresh image when receive commit event
Signed-off-by: Xian Chaobo <xianchaobo@huawei.com>
2016-01-08 17:25:30 +08:00
Alexandre Beslic 8b173fd382 Merge pull request #1569 from dongluochen/nodeManagement
Improve node management.
2016-01-07 16:14:36 -08:00
Dong Chen 7e266f18ed Name constants.
Signed-off-by: Dong Chen <dongluo.chen@docker.com>
2016-01-07 15:55:12 -08:00
Xian Chaobo 3aa302d706 Merge pull request #1587 from vieux/do_not_save_image_aff
do not save image affinity on reschedule
2016-01-07 09:42:16 +08:00
Dongluo Chen b4a6ad2e56 Merge pull request #1585 from jimenez/klaus-jimenez-offer-refuse
Klaus jimenez offer refuse
2016-01-06 13:20:02 -08:00
Isabel Jimenez 5a529d4c4a Adding help for new flag offer_refuse_seconds and renaming
Signed-off-by: Isabel Jimenez <contact@isabeljimenez.com>
2016-01-06 15:50:30 -05:00
Dong Chen 58a0e1719d Update failureCount scenario and test cases.
Signed-off-by: Dong Chen <dongluo.chen@docker.com>
2016-01-06 10:33:51 -08:00
Dong Chen 9a1584d508 Update integration test. Reduce pending node validation sleep interval. Each pending node has its own validation interval according to failure count. So reducing sleep interval is not increasing validation frequency for unreachable nodes.
Signed-off-by: Dong Chen <dongluo.chen@docker.com>
2016-01-05 15:56:55 -08:00
Dong Chen 52a7616d99 Add integration test for state machine.
Signed-off-by: Dong Chen <dongluo.chen@docker.com>
2016-01-05 14:59:30 -08:00
Victor Vieux 2449a352ef add unit test
Signed-off-by: Victor Vieux <vieux@docker.com>
2016-01-05 10:31:47 -08:00
Victor Vieux 5daaecdaa1 do not save image affinity on reschedule
Signed-off-by: Victor Vieux <vieux@docker.com>
2016-01-05 10:29:45 -08:00
Klaus Ma cf78e799fd address review comments
Signed-off-by: Klaus Ma <klaus.ma@outlook.com>
2016-01-05 13:18:51 -05:00
Klaus Ma b68537cc20 correct code style & build error
Signed-off-by: Klaus Ma <klaus.ma@outlook.com>
2016-01-05 12:47:42 -05:00
Klaus Ma a23ce43337 Add MESOS_OFFER_REFUSE_SECONDS environment configuration
Signed-off-by: Klaus Ma <klaus.ma@outlook.com>
2016-01-05 12:47:42 -05:00
Victor Vieux 97f3767618 fix soft affinity reschedule
Signed-off-by: Victor Vieux <vieux@docker.com>
2016-01-05 04:58:36 -08:00
Dong Chen 995866d76c Improve node management.
1. Introduce pending state. Pending nodes need validation before moving to healthy state. Resolve issues of duplicate ID and dead node drop issues.
2. Expose error and last update time in docker info.
3. Use connect success/failure to drive state transition between healthy and unhealthy.

Signed-off-by: Dong Chen <dongluo.chen@docker.com>
2015-12-30 13:25:43 -08:00
Victor Vieux a2380a6c71 update godeps
Signed-off-by: Victor Vieux <vieux@docker.com>
2015-12-22 00:20:04 -08:00
Victor Vieux be0fce961f update code
Signed-off-by: Victor Vieux <vieux@docker.com>
2015-12-22 00:20:04 -08:00
Isabel Jimenez de0e67f571 Merge pull request #1554 from ezrasilvera/mesosFixLock
Change the scheduler lock in Mesos cluster
2015-12-18 10:20:29 -08:00
Ezra Silvera 219f7192d6 Change the scheduler lock in Mesos cluster
Signed-off-by: Ezra Silvera <ezra@il.ibm.com>
2015-12-17 18:20:57 +02:00
Dong Chen 02553d0727 Cover connection failure error reported by dockerclient and by proxy cases.
Signed-off-by: Dong Chen <dongluo.chen@docker.com>
2015-12-15 19:20:29 -08:00
Dong Chen 9bc6c35321 Use engine connection error to fail engine fast.
Signed-off-by: Dong Chen <dongluo.chen@docker.com>
2015-12-15 19:13:03 -08:00
Dong Chen ec3b00c484 Reorganize engine failure detection procedure. Change engine option 'RefreshRetry' to 'FailureRetry'.
Signed-off-by: Dong Chen <dongluo.chen@docker.com>
2015-12-15 19:13:03 -08:00
Dong Chen 4d24256c19 Use failureCount as a secondary health indicator.
Signed-off-by: Dong Chen <dongluo.chen@docker.com>
2015-12-15 19:13:03 -08:00
Victor Vieux cdd42a5c6b display all the containers that are part of a global network on inspect
update godeps

Signed-off-by: Victor Vieux <victorvieux@gmail.com>
2015-12-15 17:48:35 -08:00
Victor Vieux ed987b8d85 Merge pull request #1542 from jimenez/slave_to_agent
Name changing slave to agent
2015-12-14 13:57:31 -08:00
Isabel Jimenez 18cccc521c renaming files + change on tests
Signed-off-by: Isabel Jimenez <contact@isabeljimenez.com>
2015-12-14 16:20:38 -05:00
Victor Vieux 81bf5bc067 Merge pull request #1538 from vitan/patch-1
Typo
2015-12-14 13:18:26 -08:00
Isabel Jimenez 60c15834da changing slave to agent
Signed-off-by: Isabel Jimenez <contact@isabeljimenez.com>
2015-12-14 14:46:56 -05:00
Zhou Weitao 72db0bbc04 Typo
Signed-off-by: Weitao Zhou <wtzhou@dataman-inc.com>
2015-12-14 09:55:10 +08:00
Daniel Hiltgen dde577d154 Add token pass-thru for Authconfig
This augments the CreateContainer call to detect the AuthConfig header
and use any supplied auth for pull operations.  This will allow pulling
of protected image on to specific node during the create operation.

CLI usage example using username/password:

    # Calculate the header
    REPO_USER=yourusername
    read -s PASSWORD
    HEADER=$(echo "{\"username\":\"${REPO_USER}\",\"password\":\"${PASSWORD}\"}"|base64 -w 0 )
    unset PASSWORD
    echo HEADER=$HEADER

    # Then add the following to your ~/.docker/config.json
    "HttpHeaders": {
        "X-Registry-Auth": "<HEADER string from above>"
    }

    # Now run a private image against swarm:
    docker run --rm -it yourprivateimage:latest

CLI usage example using registry tokens: (Required engine 1.10 with new auth token support)

    REPO=yourrepo/yourimage
    REPO_USER=yourusername
    read -s PASSWORD
    AUTH_URL=https://auth.docker.io/token
    TOKEN=$(curl -s -u "${REPO_USER}:${PASSWORD}" "${AUTH_URL}?scope=repository:${REPO}:pull&service=registry.docker.io" |
        jq -r ".token")
    HEADER=$(echo "{\"registrytoken\":\"${TOKEN}\"}"|base64 -w 0 )
    echo HEADER=$HEADER

    # Update the docker config as above, but the token will expire quickly...

Signed-off-by: Daniel Hiltgen <daniel.hiltgen@docker.com>
2015-12-11 18:36:55 -08:00
Victor Vieux 67a4d559db Merge pull request #1449 from jimenez/mesos_user_abnormal_error
Improving error output for bad swarm mesos user
2015-12-07 13:43:34 -08:00
Alexandre Beslic f21efa4337 Increase default TTL and heartbeat value
Increases the default ttl and heartbeat value for discovery.
Because the node will still be listed for a long period on
`docker info`, there is now a Status to know if a node is
in the healthy or unhealthy state.

Signed-off-by: Alexandre Beslic <abronan@docker.com>
2015-12-04 17:11:33 -08:00
Victor Vieux de6383c4dd Merge pull request #1448 from jimenez/timeout_default
Changing offers timeout default to prevent other frameworks starvation
2015-11-30 14:35:09 -08:00
Victor Vieux b7ca0e7844 Merge pull request #1450 from jimenez/glog_enable
Enabling glog for mesos
2015-11-30 13:40:06 -08:00
Victor Vieux 24fc1b6909 Merge pull request #1451 from aluzzardi/parallel-affinity-fix
Set labels for pending containers
2015-11-25 15:19:58 -08:00
Alexandre Beslic e82752cace Merge pull request #1363 from dongluochen/refreshConfiguration
add engine options for refresh interval
2015-11-25 14:30:16 -08:00
Andrea Luzzardi 9310a385af Set labels for pending containers.
Fixes docker/compose#2447

Signed-off-by: Andrea Luzzardi <aluzzardi@gmail.com>
2015-11-25 06:56:57 -08:00
Isabel Jimenez 185a46481a Enabling glog for mesos
Signed-off-by: Isabel Jimenez <contact@isabeljimenez.com>
2015-11-25 04:40:03 -05:00
Isabel Jimenez e71bda76f8 Improving error output for bad swarm mesos user
Signed-off-by: Isabel Jimenez <contact@isabeljimenez.com>
2015-11-25 04:24:08 -05:00
Isabel Jimenez 484edd33cd Changing offers timeout default to prevent other frameworks starvation
Signed-off-by: Isabel Jimenez <contact@isabeljimenez.com>
2015-11-25 04:01:30 -05:00
Dong Chen a150a0d521 Add cli test for engine refresh options
Signed-off-by: Dong Chen <dongluo.chen@docker.com>
2015-11-18 13:45:39 -08:00
Xian Chaobo bea12ab8ab add support do with image digest
Signed-off-by: Xian Chaobo <xianchaobo@huawei.com>
2015-11-11 12:11:08 +08:00
Victor Vieux 3b6d9b6820 monitor events just after the info
Signed-off-by: Victor Vieux <vieux@docker.com>
2015-11-02 17:04:01 -08:00
Victor Vieux 3f29299afd refresh volumes after creating a container
Signed-off-by: Victor Vieux <vieux@docker.com>
2015-11-02 16:31:57 -08:00
Victor Vieux 0fa9b97f4e refresh images after a rmi
Signed-off-by: Victor Vieux <vieux@docker.com>
2015-11-02 16:20:24 -08:00
Dong Chen 51d92d4b69 fix time duration in EngineOpts
Signed-off-by: Dong Chen <dongluo.chen@docker.com>
2015-11-02 16:13:50 -08:00
Victor Vieux d2c5446ea0 Merge pull request #1340 from jimmyxian/volume-driver
Move VolumeDriver to HostConfig
2015-10-28 15:28:53 -07:00
Dong Chen c9f3471dba add engine options for refresh interval
Signed-off-by: Dong Chen <dongluo.chen@docker.com>
2015-10-28 12:56:48 -07:00
Xian Chaobo 588c29c3cc move VolumeDriver to HostConfig
Signed-off-by: Xian Chaobo <xianchaobo@huawei.com>
2015-10-28 10:58:24 +08:00
Daniel Nephin e001980b5c Add filter by image name support to /images/json
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2015-10-27 11:00:37 -04:00
Alexandre Beslic da1f854462 Merge pull request #1310 from pwnall/image_affinity
Swarm filters support in image building
2015-10-23 14:54:33 -07:00
Alexandre Beslic a7a82bd1ae Merge pull request #1330 from vieux/fix_mesos_timeout_issue
fix issue with timeouts in mesos
2015-10-23 14:13:14 -07:00
Victor Costan e32b3211ae Swarm filters support in image building.
When building an image (POST /build), swarm will extract filters from
buildargs. This is similar to how container creation (POST
/containers/create) extracts filters from environment variables.

Signed-off-by: Victor Costan <costan@gmail.com>
2015-10-23 14:24:42 -04:00
Victor Vieux 21d6fc5378 fix panic when createContainer returns nil,nil
Signed-off-by: Victor Vieux <vieux@docker.com>
2015-10-18 21:22:59 -07:00
Roman Iuvshin 40a22e5a13 Fix log info message
Signed-off-by: Roman Iuvshin <riuvshin@codenvy.com>
2015-10-23 17:22:53 +03:00
Victor Vieux 10d232fe66 fix issue with timeouts in mesos
Signed-off-by: Victor Vieux <vieux@docker.com>
2015-10-18 14:39:16 -07:00
Victor Vieux a2a8596238 improve error message in mesos
Signed-off-by: Victor Vieux <vieux@docker.com>
2015-10-18 10:41:02 -07:00
Alexandre Beslic 975eaa9e73 Merge pull request #1320 from dnephin/support_filter_networks
Support filtering networks by id or name
2015-10-21 17:45:56 -07:00
Daniel Nephin a7550e9e70 Support filtering networks by id or name.
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2015-10-21 14:23:26 -04:00
Alexandre Beslic 93e78ce641 Merge pull request #1314 from aluzzardi/fix-nullptr-pendingcontainer
Fix nullptr panic in pending containers.
2015-10-20 12:14:06 -07:00
Andrea Luzzardi 0399a3c60b Fix nullptr panic in pending containers.
Fixes #1289

Signed-off-by: Andrea Luzzardi <aluzzardi@gmail.com>
2015-10-19 13:38:06 -07:00
Victor Vieux f9807f561c fix golint
Signed-off-by: Victor Vieux <vieux@docker.com>
2015-10-17 01:32:44 -07:00
Victor Vieux 4e1ae773e2 improve docker network ls and rm
Signed-off-by: Victor Vieux <victorvieux@gmail.com>
2015-10-19 15:42:56 -07:00
Victor Vieux e9c486b046 refresh networks on whole cluster after create and rm
Signed-off-by: Victor Vieux <victorvieux@gmail.com>
2015-10-19 15:42:56 -07:00
Victor Vieux 384c29163a Merge pull request #1299 from dnephin/use_parse_repo_tags
Use ParseRepositoryTag() from engine
2015-10-15 16:43:11 -07:00
Victor Vieux bef2892cee Merge pull request #1271 from jimmyxian/fix-reschedule-with-soft-affinity
Do not try retry with soft-image-affinity when have node constraint
2015-10-15 13:52:29 -07:00
Daniel Nephin 910fec887d Use ParseRepositoryTags from engine.
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2015-10-15 12:30:07 -04:00
Victor Vieux 6d6927d1de fix merge issue
Signed-off-by: Victor Vieux <vieux@docker.com>
2015-10-13 01:24:10 -07:00
Alexandre Beslic 1e30ce215f Merge pull request #1262 from vieux/libnetwork
add 'docker network' support
2015-10-13 11:09:27 -07:00
Xian Chaobo 3fc52aa81d Merge pull request #1276 from aluzzardi/strategy-rankandsort
scheduler: Return a list of candidates rather than a single node.
2015-10-13 09:31:16 +08:00
Jia Mi 660299f749 Engine should refresh the container on container rename event
Signed-off-by: Jia Mi <winters.mi@gmail.com>
2015-10-10 15:17:48 +08:00
Andrea Luzzardi b2b32d979d scheduler now returns the list of ranked nodes rather than the top node.
Signed-off-by: Andrea Luzzardi <aluzzardi@gmail.com>
2015-10-09 15:32:37 -07:00
Victor Vieux 267d7e6701 Merge pull request #1261 from aluzzardi/parallel-scheduling
Parallel scheduling
2015-10-09 12:57:42 -07:00
Andrea Luzzardi 7c0539c650 cluster: Fix name setting of pending containers.
Signed-off-by: Andrea Luzzardi <aluzzardi@gmail.com>
2015-10-09 12:54:57 -07:00
Andrea Luzzardi 24394612f5 cluster: Don't lock the scheduler when removing a container.
Signed-off-by: Andrea Luzzardi <aluzzardi@gmail.com>
2015-10-09 12:54:56 -07:00
Andrea Luzzardi 91279c8256 cluster: Check name uniqueness among pending containers.
Signed-off-by: Andrea Luzzardi <aluzzardi@gmail.com>
2015-10-09 12:54:56 -07:00
Andrea Luzzardi c64ae5168a Parallel scheduling support for Swarm driver.
Signed-off-by: Andrea Luzzardi <aluzzardi@gmail.com>
2015-10-09 12:54:53 -07:00
Victor Vieux 3a79038d48 Merge pull request #1268 from aluzzardi/refresh-loop-cleanup
engine cleanup: Don't mess with the global random.
2015-10-09 12:52:39 -07:00
Andrea Luzzardi cb2ceea702 engine: Added a concurrent safe refresh delayer.
Signed-off-by: Andrea Luzzardi <aluzzardi@gmail.com>
2015-10-09 11:32:03 -07:00
Victor Vieux 78ecf8497c Add network rm
Signed-off-by: Victor Vieux <vieux@docker.com>
2015-10-08 22:36:13 -07:00
Victor Vieux b007cae8b2 Add docker network create
Signed-off-by: Victor Vieux <vieux@docker.com>
2015-10-08 22:35:07 -07:00
Victor Vieux 8559fb0fc6 remove cluster.Network(IDOrName)
Signed-off-by: Victor Vieux <vieux@docker.com>
2015-10-08 22:35:07 -07:00
Victor Vieux 12c2d46dd5 prepend engine name on network name
Signed-off-by: Victor Vieux <victorvieux@gmail.com>
2015-10-08 22:35:07 -07:00
Victor Vieux e634df03a7 add 'docker network ls' support
add 'docker network inspect' suport

Signed-off-by: Victor Vieux <vieux@docker.com>
2015-10-08 22:35:07 -07:00
Xian Chaobo 315ddfeb4d do not try retry with soft-image-affinity when have node constraint
Signed-off-by: Xian Chaobo <xianchaobo@huawei.com>
2015-10-08 05:06:39 -04:00
Andrea Luzzardi f1782fed90 engine cleanup: Don't mess with the global random.
Signed-off-by: Andrea Luzzardi <aluzzardi@gmail.com>
2015-10-07 17:27:41 -07:00
Victor Vieux f5925f5a1c Fix container matching
Signed-off-by: Victor Vieux <vieux@docker.com>
2015-10-07 14:18:35 -07:00
Andrea Luzzardi 13483451da engine: More robust refresh loop.
- Random heartbeat (between 30 and 60 seconds).
- Requires 3 failures before marking a node as dead.

Signed-off-by: Andrea Luzzardi <aluzzardi@gmail.com>
2015-10-06 19:39:39 -07:00
Daniel Nephin 8abf7d32e9 Support filtering images by labels
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2015-10-02 15:45:52 -04:00
Victor Vieux e52e14b499 Merge pull request #1242 from klaus1982/master
correct mesos parameters
2015-09-29 14:26:20 -07:00
Klaus Ma 63e86289cf correct mesos parameters
Signed-off-by: Klaus Ma <klaus.ma@outlook.com>
2015-09-29 13:56:41 +08:00
Daniel Nephin 605e528274 Improve the mesos addr error message
Signed-off-by: Daniel Nephin <dnephin@gmail.com>
2015-09-24 19:43:02 -04:00
Alexandre Beslic a792519978 Merge pull request #1208 from vieux/volume_create_delete
docker volume create & docker volume delete
2015-09-23 10:45:44 -07:00
Victor Vieux 53357d88fd Merge pull request #1213 from jimmyxian/fix-import-load-return-code
Fix import/load return code
2015-09-21 17:13:07 -07:00
Victor Vieux 79d1ee4861 add volume create
Signed-off-by: Victor Vieux <vieux@docker.com>
2015-09-18 03:23:22 -07:00
Victor Vieux 440a379860 docker volume rm
Signed-off-by: Victor Vieux <vieux@docker.com>
2015-09-18 03:22:57 -07:00
Xian Chaobo 9afb7d324b fix connect event
Signed-off-by: Xian Chaobo <xianchaobo@huawei.com>
2015-09-17 05:18:42 -04:00
Xian Chaobo 5cc6e3f30c fix import/load return code
Signed-off-by: Xian Chaobo <xianchaobo@huawei.com>
2015-09-15 10:00:49 -04:00
Xian Chaobo a10a39c462 fix pull return code
Signed-off-by: Xian Chaobo <xianchaobo@huawei.com>
2015-09-10 04:10:28 -04:00
moxiegirl c36dd9c1df Merge pull request #1184 from ahmetalpbalkan/mesos-docs
docs: Clarify mesos driver, also line-wrapping
2015-09-09 17:12:24 -07:00
Ahmet Alp Balkan a7d8d2fcbf docs: Clarify mesos driver, also line-wrapping
Signed-off-by: Ahmet Alp Balkan <ahmetalpbalkan@gmail.com>
2015-09-09 09:54:58 -07:00
Victor Vieux 77c96908f0 add support for docker volume ls & inspect
Signed-off-by: Victor Vieux <vieux@docker.com>
2015-09-05 07:56:22 -07:00
Victor Vieux d571b7e39e Revert "prevent double starts with mesos"
This reverts commit 9a93dcf46b.

Signed-off-by: Victor Vieux <vieux@docker.com>
2015-09-02 20:33:49 -07:00
Chanwit Kaewkasi 987dc06365 Merge pull request #1168 from abronan/fix_refresh
Fix panic on Container/Image refresh after Engine removal
2015-09-03 13:16:40 +07:00
Chanwit Kaewkasi 4cdbe875b8 Merge pull request #1155 from vieux/fix_mesos_logs
prevent double logs with mesos
2015-09-03 13:10:52 +07:00
Alexandre Beslic a7303ecc5e Fix panic on various calls when assigning Engine client to nil
Signed-off-by: Alexandre Beslic <abronan@docker.com>
2015-09-02 09:41:51 -07:00
Victor Vieux 2fb43773cf Merge pull request #1180 from abronan/clean_state
Cleanup state folder with local file persistence
2015-09-01 17:04:28 -07:00
Victor Vieux 42bb1f3f5b Merge pull request #1159 from jimmyxian/fix-tag-images
fix tag image
2015-09-01 11:25:48 -07:00
Victor Vieux 9a93dcf46b prevent double starts with mesos
Signed-off-by: Victor Vieux <vieux@docker.com>
2015-08-31 22:52:43 -07:00
Xian Chaobo 29df83a349 fix tag image
Signed-off-by: Xian Chaobo <xianchaobo@huawei.com>
2015-08-31 07:17:30 -04:00
Alexandre Beslic 6c1c83f7a3 Cleanup state folder with local file persistence (not used anymore)
Signed-off-by: Alexandre Beslic <abronan@docker.com>
2015-08-30 17:15:52 -07:00
Xian Chaobo 12e956e681 add support force remove images
Signed-off-by: Xian Chaobo <xianchaobo@huawei.com>
2015-08-19 23:09:02 -04:00
Xian Chaobo 98178f3c41 Merge pull request #1152 from vieux/enable_better_refresh_mesos_0.23
enable better refresh with mesos 0.23
2015-08-15 15:50:41 +08:00
Victor Vieux 58482a13d2 enable better refresh with mesos 0.23
Signed-off-by: Victor Vieux <vieux@docker.com>
2015-08-14 17:11:19 -07:00
Victor Vieux cc7b9b2176 add container name in mesos task label
Signed-off-by: Victor Vieux <vieux@docker.com>
2015-08-14 13:48:49 -07:00
Xian Chaobo d4daee4f27 add support images -a
Signed-off-by: Xian Chaobo <xianchaobo@huawei.com>
2015-08-12 07:39:11 -04:00
Victor Vieux d5c41a38c1 update tests
Signed-off-by: Victor Vieux <vieux@docker.com>
2015-08-10 23:09:52 -07:00
Victor Vieux 2a70ff3e1f display only containers created by swarm in mesos
Signed-off-by: Victor Vieux <vieux@docker.com>
2015-08-10 22:51:39 -07:00
Andrea Luzzardi b32f0da81d Merge pull request #1127 from chanwit/natural-sort
Natural sorting for Engine names
2015-08-07 17:36:08 -07:00
Veres Lajos 0d94d7a11a typofix - https://github.com/vlajos/misspell_fixer
Signed-off-by: Veres Lajos <vlajos@gmail.com>
2015-08-07 23:06:16 +01:00
Chanwit Kaewkasi 974a482d16 implemented naturalsorter for engine
Signed-off-by: Chanwit Kaewkasi <chanwit@gmail.com>
2015-08-06 11:35:49 -04:00
James Wang Yong Qiao 88bbdff2e0 Fix the spell error.
Signed-off-by: James Wang Yong Qiao <jamesyongqiao@gmail.com>
2015-08-05 02:44:31 -04:00
Andrea Luzzardi 3bb4373f9f Merge pull request #1111 from vieux/no_json_manual
do not generate JSON by hand
2015-08-04 15:30:30 -07:00
Victor Vieux 2606db4486 Merge pull request #1085 from jimmyxian/improve-build
Improve build
2015-08-04 11:44:17 -07:00
Xian Chaobo a3cf5b9e9c improve build
Signed-off-by: Xian Chaobo <xianchaobo@huawei.com>
2015-08-04 02:45:06 -04:00
mariusz 2605d398b6 Updated the identifier as requested by @aluzzardi
Signed-off-by: Mariusz Borsa <mborsa@polyverse.io>
Tickle Jenkins
2015-07-31 16:32:12 -07:00
mariusz e1daa7c47b Error from Engine when refresh doesn't pickup new container
Fix for https://github.com/docker/swarm/issues/1081
    Signed-off-by: Mariusz Borsa <mborsa@polyverse.io>
2015-07-31 11:21:24 -07:00
mariusz 9dc65ca480 Avoid nil pointer dereference in (*Cluster).createContainer
Swarm.Create car return nil,nil when refresh fails
due to network hiccup

Signed-off-by: Mariusz Borsa <mborsa@polyverse.io>
2015-07-31 11:21:24 -07:00
Victor Vieux 7ec33a81b5 do not generate JSON by hand
Signed-off-by: Victor Vieux <vieux@docker.com>
2015-07-30 18:10:13 -07:00
Alex Chan a27c2e2d43 Fix a pair of typos in the docs
Signed-off-by: Alex Chan <alex.chan@metaswitch.com>
2015-07-29 13:53:13 +01:00
Victor Vieux 39309f7a62 rename n to e
Signed-off-by: Victor Vieux <victorvieux@gmail.com>
2015-07-16 11:55:33 -07:00
Victor Vieux 542620d60d support docker run -p <port> in mesos (random)
Signed-off-by: Victor Vieux <victorvieux@gmail.com>
2015-07-16 11:24:45 -07:00
Victor Vieux 248370469f add hostname support
Signed-off-by: Victor Vieux <vieux@docker.com>
2015-07-14 15:25:38 -07:00
Victor Vieux b3385caa4e add env support in mesos
Signed-off-by: Victor Vieux <vieux@docker.com>
2015-07-14 14:47:47 -07:00
Victor Vieux ef2d11899a Merge pull request #1058 from vieux/add_events
add events to mesos and a few tests
2015-07-14 14:40:24 -07:00
Victor Vieux f00e6aa967 add events to mesos and a few tests
Signed-off-by: Victor Vieux <vieux@docker.com>
2015-07-14 14:20:17 -07:00
Alexandre Beslic 1a5881ec49 Merge pull request #971 from jimmyxian/reschedule-with-image
Reschedule with soft image affinity
2015-07-13 09:11:18 -07:00
Victor Vieux 49d475228e use docker_port from offer is present
Signed-off-by: Victor Vieux <victorvieux@gmail.com>
2015-07-07 13:37:33 -07:00
Victor Vieux b18b5bf9f7 add mesos tests back
Signed-off-by: Victor Vieux <vieux@docker.com>
2015-07-07 13:27:40 -07:00
Victor Vieux 28c62b1fcf Merge pull request #1017 from vieux/hostname_mesos
override hostname in mesos
2015-07-09 14:14:55 -07:00
Peeyush Gupta fa0cc6d1df Fixing spelling of again
Signed-off-by: Peeyush Gupta <gpeeyush@linux.vnet.ibm.com>
2015-07-07 11:09:39 +05:30
Xian Chaobo 0037c31a95 fix func name and use extracExprs
Signed-off-by: Xian Chaobo <xianchaobo@huawei.com>
2015-07-07 11:30:26 +08:00
Victor Vieux edb72d0744 always override hostname in mesos
Signed-off-by: Victor Vieux <victorvieux@gmail.com>
2015-07-06 17:35:53 -07:00
Ahmet Alp Balkan 6113e89004 Use os.Unsetenv in options_test
Signed-off-by: Ahmet Alp Balkan <ahmetalpbalkan@gmail.com>
2015-07-01 20:25:52 -07:00
Victor Vieux 895d820774 Merge pull request #964 from jimenez/task_timeout_flag
making task timeout configurable
2015-07-01 16:51:33 -07:00
Isabel Jimenez 305050025c making task timeout configurable
Signed-off-by: Isabel Jimenez <contact.isabeljimenez@gmail.com>
2015-07-01 18:58:17 -04:00
ealang 15fc8d8210 Prevent panic if a container is removed during a refresh
If InspectContainer fails, Engine.containers gets set to nil.

Log cause of updateContainer failure.

Signed-off-by: Eric Lang <ealang@gmail.com>
2015-06-29 22:04:15 -05:00
Isabel Jimenez d86ab642fb adding implementation for TotalMemory and TotalCpus
Signed-off-by: Isabel Jimenez <contact.isabeljimenez@gmail.com>
2015-06-15 21:05:27 -04:00
Xian Chaobo 05ba86d329 golint and add integration test
Signed-off-by: Xian Chaobo <xianchaobo@huawei.com>
2015-06-16 08:46:17 +08:00
Xian Chaobo 8cd667e996 add unit test for AddSoftImageAffinity
Signed-off-by: Xian Chaobo <xianchaobo@huawei.com>
2015-06-16 07:52:53 +08:00
Xian Chaobo 8c7c0b248b reschedule with soft image affinity
Signed-off-by: Xian Chaobo <xianchaobo@huawei.com>
2015-06-16 07:52:00 +08:00
Andrea Luzzardi 82fc920e90 Engine: fix panic in disconnect with events.
Replaces #937

Signed-off-by: Andrea Luzzardi <aluzzardi@gmail.com>
2015-06-12 18:51:05 -07:00
Victor Vieux 53e88f3712 Merge pull request #933 from vieux/support_1.6.x+
Support 1.6.0+
2015-06-12 15:58:52 -07:00
Victor Vieux 1afc1be2d1 support only 1.6.0+
update test/regression/run.sh
uddate doc
update tests

Signed-off-by: Victor Vieux <victorvieux@gmail.com>
2015-06-12 13:27:15 -07:00
Victor Vieux bc418df194 Merge pull request #936 from vieux/getting_started_mesos
add very simple getting started for mesos
2015-06-12 13:07:11 -07:00
Victor Vieux 3f0c3bc1c7 add getting started mesos
Signed-off-by: Victor Vieux <victorvieux@gmail.com>
2015-06-12 11:49:41 -07:00
Victor Vieux 4f688db989 disconnect on duplicate
Signed-off-by: Victor Vieux <victorvieux@gmail.com>
2015-06-11 15:09:37 -07:00
Victor Vieux c44151ff4a pretty print mesos offers
Signed-off-by: Victor Vieux <victorvieux@gmail.com>
2015-06-09 17:30:14 -07:00
Victor Vieux 12dac7560a fix lock in cluster.go
Signed-off-by: Victor Vieux <victorvieux@gmail.com>
2015-06-09 12:18:38 -07:00
Victor Vieux 3a1df50ed5 improve locks in queue.go
Signed-off-by: Victor Vieux <victorvieux@gmail.com>
2015-06-09 11:43:21 -07:00
Andrea Luzzardi 47dbb5a30d Merge pull request #902 from vieux/improve_docker_info
Improve docker info against 1.7
2015-06-05 15:52:13 -07:00
Marco Mancini 9e27ae9140 Fix reserved cpus computation
Added test as Vieux suggested/Fixed CpuShare computation

Signed-off-by: Marco Mancini <marcomancini72@gmail.com>
Signed-off-by: Victor Vieux <victorvieux@gmail.com>
2015-06-04 18:59:15 -07:00
Victor Vieux c1020da636 nits
Signed-off-by: Victor Vieux <victorvieux@gmail.com>
2015-06-04 18:25:51 -07:00
Victor Vieux 4f9c9f5867 use dockerclient structs
Signed-off-by: Victor Vieux <victorvieux@gmail.com>
2015-06-04 18:25:51 -07:00
Victor Vieux 2bf6c1a529 improve docker infi with 1.7
Signed-off-by: Victor Vieux <victorvieux@gmail.com>
2015-06-04 18:25:51 -07:00
Victor Vieux 15a8b73ab6 fix cpus
Signed-off-by: Victor Vieux <victorvieux@gmail.com>
2015-06-04 17:26:32 -07:00
Victor Vieux 4212b69c96 use inspect sent by mesos 0.23
Signed-off-by: Victor Vieux <victorvieux@gmail.com>
2015-06-04 14:42:37 -07:00
Victor Vieux e8445ed8ce fix panic is disconnect
Signed-off-by: Victor Vieux <victorvieux@gmail.com>
2015-06-04 11:27:17 -07:00
Victor Vieux 83f97f73e8 Merge pull request #886 from vieux/add_resources_test
fix resources in docker 1.7
2015-06-02 16:15:12 -07:00
Victor Vieux 7604d1cc30 add test
Signed-off-by: Victor Vieux <victorvieux@gmail.com>
2015-06-02 16:03:37 -07:00
Victor Vieux e8e9d553a2 handle compat
Signed-off-by: Victor Vieux <victorvieux@gmail.com>
2015-06-02 15:39:12 -07:00
Andrea Luzzardi e0188d8b66 Merge pull request #873 from jimmyxian/add-load-unit-test
Add load unit test
2015-06-01 15:43:08 -07:00
Andrea Luzzardi 0e32d052cf Merge pull request #878 from chanwit/private-reg-tag
fix matching image name with private repo
2015-06-01 15:35:45 -07:00
Chanwit Kaewkasi 7725b572c2 refactor parsing to a function
Signed-off-by: Chanwit Kaewkasi <chanwit@gmail.com>
2015-06-01 00:43:52 +07:00
Chanwit Kaewkasi 2701342a0c fix matching image name with private repo
Signed-off-by: Chanwit Kaewkasi <chanwit@gmail.com>
2015-05-31 21:01:00 +07:00
Xian Chaobo 78957d527b add load unit test
Signed-off-by: Xian Chaobo <xianchaobo@huawei.com>
2015-05-29 22:44:27 -04:00
Xian Chaobo def00ea0a0 fix load
Signed-off-by: Xian Chaobo <xianchaobo@huawei.com>
2015-05-29 22:35:27 -04:00
Victor Vieux ec784bd100 add initial version of mesos/cluster_test.go
Signed-off-by: Victor Vieux <victorvieux@gmail.com>
2015-05-29 15:07:04 -07:00
Xian Chaobo 684b2802d7 add import in mesos
Signed-off-by: Xian Chaobo <xianchaobo@huawei.com>
2015-05-27 22:12:56 +08:00
Xian Chaobo d7001cac97 fix import unit test
Signed-off-by: Xian Chaobo <xianchaobo@huawei.com>
2015-05-27 22:11:05 +08:00
Xian 8da3de3cc4 add import unit test
Signed-off-by: Xian <xianchaobo@huawei.com>
2015-05-27 22:11:05 +08:00
Xian Chaobo 1f20358b5d add support import
Signed-off-by: Xian Chaobo <xianchaobo@huawei.com>
2015-05-27 22:11:03 +08:00
Victor Vieux 284ba144ed remove deadlock in mesos
Signed-off-by: Victor Vieux <victorvieux@gmail.com>
2015-05-26 19:34:54 -07:00
Andrea Luzzardi 0fb33f61d5 update testify
Signed-off-by: Andrea Luzzardi <aluzzardi@gmail.com>
2015-05-26 19:01:09 -07:00
Isabel Jimenez db7d918c0a Addressing review comments
Signed-off-by: Isabel Jimenez <contact.isabeljimenez@gmail.com>
2015-05-26 19:45:10 -04:00
Victor Vieux 300932b2d5 add slave_test.go, add tast_test.go
add basic network mode support

Signed-off-by: Victor Vieux <victorvieux@gmail.com>
Signed-off-by: Isabel Jimenez <contact.isabeljimenez@gmail.com>
Signed-off-by: Timothy Chen <tnachen@gmail.com>
2015-05-26 16:22:34 -04:00
Isabel Jimenez 19c14fde2e Adding integration tests, decline offers after 'SWARM_MESOS_OFFER_TIMEOUT', Tracking tasks and managing offers, refactoring list of slaves, queue create requests before processing them
Signed-off-by: Isabel Jimenez <contact.isabeljimenez@gmail.com>
Signed-off-by: Victor Vieux <vieux@docker.com>
2015-05-26 16:21:54 -04:00
Timothy Chen 20a5a7e588 Support port and address for Mesos.
Signed-off-by: Timothy Chen <tnachen@gmail.com>
Signed-off-by: Victor Vieux <vieux@docker.com>
Signed-off-by: Isabel Jimenez <contact.isabeljimenez@gmail.com>
2015-05-26 16:19:08 -04:00
Isabel Jimenez 18235bee97 cluster mesos with engine
Signed-off-by: Timothy Chen <tnachen@gmail.com>
Signed-off-by: Isabel Jimenez <contact.isabeljimenez@gmail.com>
Signed-off-by: Victor Vieux <vieux@docker.com>
2015-05-26 16:18:33 -04:00
Victor Vieux 9db6bce98b Merge pull request #823 from vieux/containers
create containers.go
2015-05-26 13:05:26 -07:00
Victor Vieux b5094bde55 create Containers type
Signed-off-by: Victor Vieux <victorvieux@gmail.com>
2015-05-26 12:01:48 -07:00
Victor Vieux 0b24992d7c Merge pull request #815 from jimmyxian/rmi_by_name
Fix image match
2015-05-26 10:43:59 -07:00
Andrea Luzzardi b4efc08dfc api: Integrate leader election.
Signed-off-by: Andrea Luzzardi <aluzzardi@gmail.com>
2015-05-22 21:23:34 -07:00
Andrea Luzzardi a3950e7f65 Merge pull request #796 from jimmyxian/refresh-container
Add Refresh container
2015-05-21 18:30:47 -07:00
Victor Vieux f7a49591a0 add getter/setter for namespaced labels
Signed-off-by: Victor Vieux <victorvieux@gmail.com>
2015-05-21 16:21:50 -07:00
Victor Vieux b3222a8f11 rename Destroy ro RemoveContainer for consistency
Signed-off-by: Victor Vieux <victorvieux@gmail.com>
2015-05-20 12:53:02 -07:00
Xian Chaobo e6ce59794e merge two image match func
Signed-off-by: Xian Chaobo <xianchaobo@huawei.com>
2015-05-19 21:39:10 -04:00
Alexandre Beslic 4537b9f2ba Remove unused code
Signed-off-by: Alexandre Beslic <abronan@docker.com>
2015-05-19 12:57:43 -07:00
Alexandre Beslic f81de46ab4 Fix Consul and etcd with latest changes, use etcd v2.0.11 for integration tests, remove call to SyncCluster for now (breaks the integration tests)
Signed-off-by: Alexandre Beslic <abronan@docker.com>
2015-05-19 10:25:31 -07:00
Alexandre Beslic d5915b2a09 Merge pull request #811 from aluzzardi/node-removal
Handle Node Removal from Discovery correctly
2015-05-19 10:11:10 -07:00
Xian Chaobo 064e91cd23 fix image match and fix docker save
Signed-off-by: Xian Chaobo <xianchaobo@huawei.com>
2015-05-19 05:21:14 -04:00
Isabel Jimenez 8001455ecf adding ip as an option for flags
Signed-off-by: Isabel Jimenez <contact.isabeljimenez@gmail.com>
2015-05-18 20:34:57 -04:00
Isabel Jimenez 19d51f4a1a adding environment variable option when treating flags
Signed-off-by: Isabel Jimenez <contact.isabeljimenez@gmail.com>
2015-05-18 20:16:21 -04:00
Andrea Luzzardi d7b8734e97 cluster: Handle node removal
Signed-off-by: Andrea Luzzardi <aluzzardi@gmail.com>
2015-05-18 13:55:13 -07:00
Andrea Luzzardi 7c0dba5de6 engine: Support for disconnection
Signed-off-by: Andrea Luzzardi <aluzzardi@gmail.com>
2015-05-18 13:55:13 -07:00
Andrea Luzzardi 3d6f833f6f fix --heartbeat flag.
Signed-off-by: Andrea Luzzardi <aluzzardi@gmail.com>
2015-05-18 13:38:15 -07:00
Andrea Luzzardi 0c72bcaf40 discovery cleanup: heartbeat is a time.Duration.
- Use a time.Duration instead of a uint64 for hb
- Flags can accept durations: --heartbeat 25s

Signed-off-by: Andrea Luzzardi <aluzzardi@gmail.com>
2015-05-18 13:38:14 -07:00
Andrea Luzzardi f33c03af93 discovery: Push watch errors to a channel
Signed-off-by: Andrea Luzzardi <aluzzardi@gmail.com>
2015-05-18 13:38:14 -07:00
Andrea Luzzardi 97984881c3 discovery: New channel based API.
- Watch() issues updates by channel rather than by callback
- Fetch() is gone
- Watch() can be stopped at any time by closing the stop channel
- Watch() is now resilient to errors and will try over and over

Signed-off-by: Andrea Luzzardi <aluzzardi@gmail.com>
2015-05-18 13:38:13 -07:00
Victor Vieux 4b03d7fa0c handle collision
Signed-off-by: Victor Vieux <victorvieux@gmail.com>
2015-05-18 13:35:33 -07:00
Victor Vieux faf26a62f4 fix container matching algorithm
Signed-off-by: Victor Vieux <victorvieux@gmail.com>
2015-05-15 17:57:40 -07:00
Victor Vieux 1f5d66d1f1 fix match
Signed-off-by: Victor Vieux <victorvieux@gmail.com>
2015-05-15 16:28:39 -07:00
Xian Chaobo 4af3e30f64 Fix:#748 add refresh container
Signed-off-by: Xian Chaobo <xianchaobo@huawei.com>
2015-05-15 04:46:02 -04:00
Victor Vieux 2cb0395acf remove images by name or ID, not always ID
Signed-off-by: Victor Vieux <victorvieux@gmail.com>
2015-05-14 15:22:06 -07:00
Andrea Luzzardi ece52698d6 Merge pull request #783 from vieux/fix_image_match
fix image.Match to take only repo or repo:tag
2015-05-13 19:05:30 -07:00
Victor Vieux f9b457f152 fix image.Match
Signed-off-by: Victor Vieux <victorvieux@gmail.com>
2015-05-13 17:36:08 -07:00
Victor Vieux 69bdf1a87b fix heartbeat default value
Signed-off-by: Victor Vieux <victorvieux@gmail.com>
2015-05-13 16:50:01 -07:00
Victor Vieux 59cd11b946 change swarm.heartbeat to swarm.discovery.heartbeat
Signed-off-by: Victor Vieux <victorvieux@gmail.com>
2015-05-13 15:48:07 -07:00
Victor Vieux 5db3a9cd0e remove options struct, yay!
Signed-off-by: Victor Vieux <victorvieux@gmail.com>
2015-05-13 15:36:30 -07:00
Victor Vieux c29404e272 add --cluster-driver and --cluster-opt
Signed-off-by: Victor Vieux <victorvieux@gmail.com>
2015-05-12 17:49:00 -07:00
Andrea Luzzardi b6a7c3d7f5 swarm ID: Remove backward compatibility.
Signed-off-by: Andrea Luzzardi <aluzzardi@gmail.com>
2015-05-11 16:56:08 -07:00
Andrea Luzzardi 5c801d2c6a swarm id: Handle compatibility.
Containers created with Swarm<0.3.0 or directly on the host without
going through Swarm don't have a Swarm ID. We are going to fake it by
using the Container ID.

Signed-off-by: Andrea Luzzardi <aluzzardi@gmail.com>
2015-05-11 16:56:08 -07:00
Andrea Luzzardi abfe5e6f4c Add support for Swarm IDs.
- Every container that gets created through Swarm gets a Swarm ID
  assigned (as a label).
- All API operations (start, stop, ...) can be performed by using either
  the container ID or the swarm ID.

Signed-off-by: Andrea Luzzardi <aluzzardi@gmail.com>
2015-05-11 16:56:07 -07:00
Andrea Luzzardi 054702fedc container config: Add Swarm ID helpers.
Signed-off-by: Andrea Luzzardi <aluzzardi@gmail.com>
2015-05-11 16:56:07 -07:00
Andrea Luzzardi 0bd4b1faca Merge pull request #732 from vieux/fix_name_unique
fix name checks in create and rename
2015-05-07 16:24:16 -07:00
Victor Vieux a74d00d1c5 fix name checks
Signed-off-by: Victor Vieux <victorvieux@gmail.com>
2015-05-07 15:50:34 -07:00
Andrea Luzzardi 5ee115fcd5 container: Use state strings from dockerclient instead of embedding
them.

Signed-off-by: Andrea Luzzardi <aluzzardi@gmail.com>
2015-05-07 15:42:26 -07:00
Andrea Luzzardi 8a00a5ff10 engine: Force full refresh when container changes state.
Signed-off-by: Andrea Luzzardi <aluzzardi@gmail.com>
2015-05-06 23:38:32 -07:00
Andrea Luzzardi 4cf0a32e4d container: Add Status() and StateString() formatters.
Signed-off-by: Andrea Luzzardi <aluzzardi@gmail.com>
2015-05-06 23:38:32 -07:00
Andrea Luzzardi 7865004ec9 Merge pull request #725 from aluzzardi/discovery-integration-cleanup
Discovery integration cleanup
2015-05-06 10:50:11 -07:00
Andrea Luzzardi 9124f3a0c7 cluster: Improved discovery duplication error messaging.
Signed-off-by: Andrea Luzzardi <aluzzardi@gmail.com>
2015-05-05 19:13:57 -07:00
Andrea Luzzardi 1d2e073813 Embed ContainerConfig into Container.
The cluster configuration is now embedded into the container. It's
guaranteed to be correct (as in, generated by BuildContainerConfig) at
all times.

Signed-off-by: Andrea Luzzardi <aluzzardi@gmail.com>
2015-04-30 18:15:22 -07:00
Andrea Luzzardi cd3a0f03fc container config builder: Make all modifications on a copy, never alter original.
Signed-off-by: Andrea Luzzardi <aluzzardi@gmail.com>
2015-04-30 18:06:26 -07:00