Commit Graph

138 Commits (754924c1fed65b4ed0de6a7b107ee94b4341e0be)

Author SHA1 Message Date
Alexander Garagatyi a7e9aeaadd Add improvements in docker machine creation code
Simplify and cleanup DockerInstanceProvider class.
Cleanup the code.

Signed-off-by: Alexander Garagatyi <agaragatyi@codenvy.com>
2016-07-12 10:29:37 +03:00
Igor Vinokur c6b3c7f6aa Fix bug when codenvy/ubuntu_jdk8 image is removed
When we creating machine not from recipe, but from local image,
the image will be removed after machine is created. So if user
creates a machine from codenvy/ubuntu_jdk8 image, the image will be
removed.
In the step of creating a snapshot from machine I have added a special
prefix to image repository to mark this image as snapshot.
In the step of creating machine (recovering from snapshot) I have
added two checks:
do not pull if image is a local snapshot;
remove source image only if the image is a snapshot from registry.
2016-07-11 13:05:47 +03:00
Roman Iuvshin 99c48dd484 CODENVY-733: add possibility to set JAVA_OPTS for dev machines (#1685) 2016-07-08 13:18:47 +03:00
Alexander Garagatyi 0e1d87785d Fix docker client on some systems (#1663)
Fix DockerConnector to avoid failing tests on some systems.
Use Future to prevent undefined order of thread execution.
Also change some exception message.
Also cleanup some tests.
Signed-off-by: Alexander Garagatyi <agaragatyi@codenvy.com>
2016-07-06 11:49:32 +03:00
Alexander Garagatyi e0888f697e Fix arrays hashcode evaluation (#1670)
Signed-off-by: Alexander Garagatyi <agaragatyi@codenvy.com>
2016-07-06 11:10:14 +03:00
Alexander Garagatyi e9dbf0f341 Fix docker system info model class. (#1662)
Signed-off-by: Alexander Garagatyi <agaragatyi@codenvy.com>
2016-07-06 10:20:48 +03:00
Yevhenii Voevodin d1aa2cfed7 User structural refactoring 2016-07-05 11:27:58 +03:00
Aleksandr Andrienko 17612193a0 CHE-1353: Add possibility to configure specific docker api version.
Add possibility to configure api version by che.properties. Set minimum default docker api version 1.20.

Signed-off-by: Aleksandr Andrienko <aandrienko@codenvy.com>
2016-07-05 11:08:45 +03:00
Alexander Garagatyi e36a13858e CHE-1365: code cleanup
Signed-off-by: Alexander Garagatyi <agaragatyi@codenvy.com>
2016-07-04 13:09:25 +03:00
Alexander Garagatyi a0820fb81d CHE-1365: add possibility to provide remote docker build context
Signed-off-by: Alexander Garagatyi <agaragatyi@codenvy.com>
2016-07-04 13:09:25 +03:00
Alexander Garagatyi d666fbda27 CHE-1365: remove deprecated methods from docker client
Signed-off-by: Alexander Garagatyi <agaragatyi@codenvy.com>
2016-07-04 13:09:25 +03:00
Alexander Garagatyi bacdc0a4fc CHE-1365: add docker networking API
Add networking API to docker client.
Change JSON serialization/deserialization in docker client to
fix incorrect naming policy work of JsonHelper.
Fix entrypoint field in ContainerConfig since it is array of
strings, not single string.
Signed-off-by: Alexander Garagatyi <agaragatyi@codenvy.com>
2016-07-04 13:09:25 +03:00
Mykola Morhun 7ee4e79db1 add missing license header
Signed-off-by: Mykola Morhun <mmorhun@codenvy.com>
2016-07-02 11:13:39 +03:00
Mykola Morhun 05aeec9045 CHE-277: Put logs of main process of machine to machine logs
Signed-off-by: Mykola Morhun <mmorhun@codenvy.com>
2016-07-02 10:31:44 +03:00
Alexander Garagatyi 8108d6a675 Fix integration test on latest ubuntu (#1623)
Signed-off-by: Alexander Garagatyi <agaragatyi@codenvy.com>
2016-07-01 12:33:46 +03:00
Mykola Morhun c3c5c24753 CODENVY-606: fix NPE in DockerInstanceStopDetector
Signed-off-by: Mykola Morhun <mmorhun@codenvy.com>
2016-07-01 11:30:12 +03:00
Mario Loriedo 39fa37f0d3 Improvements to set the right API endpoint URL (#1576)
Read env variable CHE_API_ENDPOINT if property machine.docker.che_api.endpoint is not set
Set Che host IP to eth0 default IP when docker0 is not found on linux
Fixing typos

Signed-off-by: Mario Loriedo <mloriedo@redhat.com>
2016-06-30 17:00:48 +03:00
Roman Iuvshin 6a23f97700 [maven-release-plugin] prepare for next development iteration 2016-06-28 16:00:40 +00:00
Roman Iuvshin 400648e1db [maven-release-plugin] prepare release 4.4.0 2016-06-28 16:00:37 +00:00
Anton Korneta 9c25cdef20 CHE-1276: Fix test by extracting statuc to the variable 2016-06-27 16:03:01 +03:00
Anton Korneta 0e1ada8c5f CHE-1276: Fix closing of the docker response stream 2016-06-27 15:19:03 +03:00
Anton Korneta ec461af679 CHE-1276: Add exception handler during creation machine from snapshot 2016-06-27 13:44:28 +03:00
Aleksandr Andrienko 0eb87b8fab Merge pull request #1544 from eclipse/CHE-1312
CHE-1312: Add ability to configure credentials for several docker private registries
2016-06-24 10:39:14 +03:00
Aleksandr Andrienko a7c492ea8d Impove code. 2016-06-23 16:15:05 +03:00
Mario Loriedo 14e6d4a8e3 Add HTTP Host header to support Docker v1.12 (#1550)
Signed-off-by: Mario Loriedo <mloriedo@redhat.com>
2016-06-23 10:09:40 +03:00
Aleksandr Andrienko c49c6713e1 CHE-1312: Add ability to configure credentials for several docker private registries 2016-06-22 12:34:25 +03:00
Mykola Morhun 1176f4192e CHE-1296: ​​Use docker auth config saved in user preferences to start machine from private image
Signed-off-by: Mykola Morhun <mmorhun@codenvy.com>
2016-06-21 17:10:42 +03:00
Roman Nikitenko 9eb51b41d9 CHE-1264. Don't include CR char in log message when LF char follow
Signed-off-by: Roman Nikitenko <rnikitenko@codenvy.com>
2016-06-21 10:37:18 +03:00
Eugene Ivantsov 3ba68b1d00 Add Z suffix to override ws agent conf on RHEL systems
Signed-off-by: Eugene Ivantsov <eivantsov@codenvy.com>
2016-06-21 09:47:14 +03:00
Mykola Morhun bfc64d50c8 Improve code which works with docker authentication
Signed-off-by: Mykola Morhun <mmorhun@codenvy.com>
2016-06-15 12:17:12 +03:00
Roman Iuvshin 5adff554bc [maven-release-plugin] prepare for next development iteration 2016-06-13 18:57:39 +00:00
Roman Iuvshin e9f5d4971e [maven-release-plugin] prepare release 4.3.0 2016-06-13 18:57:36 +00:00
Mykola Morhun 88aa82811b CHE-1245: Update docker client to use new format of X-Registry-Config header
Signed-off-by: Mykola Morhun <mmorhun@codenvy.com>
2016-06-12 14:46:11 +03:00
Sergii Leschenko 42690da407 CODENVY-480 Remove user's roles (#1336) 2016-06-10 17:32:02 +03:00
Igor Vinokur deac6b5536 CODENVY-608: Close output consumer on destroy machine 2016-06-10 11:34:01 +03:00
Roman Iuvshin d9c2e72565 Fix integer overflowing 2016-06-08 17:11:17 +03:00
Roman Iuvshin 477e71533f CODENVY-595: add possibility to adjust machine swap size 2016-06-08 12:03:55 +03:00
Roman Iuvshin e50cd7b209 CODENVY-610: add possibility to set no_proxy ENV var in machine
Signed-off-by: Roman Iuvshin <riuvshin@codenvy.com>
2016-06-06 22:56:32 +03:00
Alexander Garagatyi 21277eeb57 Fix docker image reference parsing by DockerImageIdentifierParser (#1420)
Parsing used to use reference definition from docker repo, but
fails in some very simple cases.
Rework parsing. Add comments. Add tests.

Signed-off-by: Alexander Garagatyi <agaragatyi@codenvy.com>
2016-06-06 10:52:02 +03:00
Roman Iuvshin 140b09a9a0 [maven-release-plugin] prepare for next development iteration 2016-06-04 19:52:26 +00:00
Roman Iuvshin fbd9f95748 [maven-release-plugin] prepare release 4.3.0-RC1 2016-06-04 19:52:23 +00:00
Anton Korneta 8d26c71935 CHE-1275: Add api endpoint property into each non dev machine environment 2016-06-02 16:54:23 +03:00
Florent BENOIT ae4c5521bf CODENVY-560 : Introduce new type for providing docker recipes and remove InstanceKey
#1 new docker recipe type

currently we have type:"dockerfile", location: "http://path-to-recipe"

now we could provide
type:"dockerfile", content: "FROM codenvy/foo\nENV FLORENT=TRUE\"

and
type:"image", location or content: "codenvy/foo"

#2 InstanceKey
Up to now, InstanceKey was used to perform snapshot recovery.
But machine source is a way to provide this information.
So remove InstanceKey and replace it by MachineSource (and DockerMachineSource instead of DockerInstanceKey)

InstanceProvider:
void removeInstanceSnapshot(InstanceKey instanceKey)
--> void removeInstanceSnapshot(MachineSource machineSource)

Instance:
InstanceKey saveToSnapshot(String owner)
--> MachineSource saveToSnapshot(String owner)

#3 InstanceProvider model
To avoid also that MachineManager "knows" the inner type, the recipe handling is moved to the instance provider implementation
And as the snapshot handling is with MachineSource (included in MachineConfig included in Machine), no need to give extra InstanceKey parameter

Replace two previous methods

Instance createInstance(Recipe recipe,
                            Machine machine,
                            LineConsumer creationLogsOutput)

 Instance createInstance(InstanceKey instanceKey,
                            Machine machine,
                            LineConsumer creationLogsOutput) throws NotFoundException, InvalidInstanceSnapshotException, MachineException;

by only one:
   createInstance(Machine machine,
                            LineConsumer creationLogsOutput)

Change-Id: Ia7ea97bc1a44059b4892f5db387f54f2e1709fa3
Signed-off-by: Florent BENOIT <fbenoit@codenvy.com>
2016-05-30 14:51:41 +02:00
Sergii Leschenko 862e971fac Move EnvironmentContext to che-core-api-core 2016-05-27 14:12:43 +03:00
Anton Korneta e868d80649 CHE-398: Add ability to create local machine snapshots without registry 2016-05-27 11:04:28 +03:00
Mykola Morhun d1362c6709 Remove wrong required parameters in DockerConnector methods params
Signed-off-by: Mykola Morhun <mmorhun@codenvy.com>
2016-05-26 15:49:37 +03:00
Aleksandr Andrienko b99c5e2ced Fix cleaning docker containers
Fix clean up unused docker containers with container name which contains node host with '-'

Signed-off-by: Aleksandr Andrienko <aandrienko@codenvy.com>
2016-05-24 22:22:19 +03:00
Alexander Garagatyi e900dab322 CODENVY-457: fix NPE when swarm doesn't detect container death (#1346)
Signed-off-by: Alexander Garagatyi <agaragatyi@codenvy.com>
2016-05-24 17:42:13 +03:00
Anton Korneta ea7d068fe7 Separation of components to allow overrides in codenvy 2016-05-20 13:53:43 +03:00
Alexander Garagatyi 75db032dd7 Allow override terminal run command (#1271)
Signed-off-by: Alexander Garagatyi <agaragatyi@codenvy.com>
2016-05-17 09:59:41 +03:00