Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Mechanism to configure Che with configs from different sources #2175

Merged
merged 4 commits into from
Sep 6, 2016
Merged

Mechanism to configure Che with configs from different sources #2175

merged 4 commits into from
Sep 6, 2016

Conversation

andrew00x
Copy link

What does this PR do?

#2014

What issues does this PR fix or reference?

#2014

Previous Behavior

Not possible to override configured properties with system properties or environment variables with "che." and "CHE_" prefixes correspondingly.
Not possible to have aliases for properties. Need update sources after change name of property.
See issue #2014

New Behavior

Any configuration property might be overridden with system property of environment variable "che." and "CHE_" prefixes correspondingly.
Aliases for configuration properties might be used. Do not need update source after change name of property, just add alias in file che_aliases.properties in following format:
new.name=old.name, other.old.name

Tests written?

Yes

Docs requirements?

API changes

@codenvy-ci
Copy link

@codenvy-ci
Copy link

@TylerJewell
Copy link

TylerJewell commented Aug 20, 2016

@andrew00x - this is amazing. How are you doing these days?

I had to look at this issue a few times to my amazement. Super happy to see that it was this simple to implement for #2014.

@vparfonov - I think there are changes in branch CHE-2116 that need to be removed if we accept these items. I had hard coded CHE_EXTRA_VOLUME_MOUNT environment variable.

@TylerJewell
Copy link

@vparfonov @skabashnyuk - I would like to go ahead and create a default che_aliases.properties with the values set to the definition of this issue. #2015.

Where should this file be located? Do we want to place it in the same location that we have our current default che.properties in the WEB-INF/ directory?

@TylerJewell
Copy link

There are a few changes that is like to see:
1: please let's have the file just be named "alias" and have it reside in the same directory where the properties are at.
2. Can you populate a default alias file with the new values proposed in the issue you liked to?
3. In situations where the property starts with "che." Can avoid the situation where the environment variable has a double "CHE_"?

@skabashnyuk
Copy link
Contributor

skabashnyuk commented Aug 22, 2016

  1. I think we can rename it but "alias.properties" is more descriptive and tells that this files is related to configuration aliases. @gazarenkov @andrew00x wdyt? It will be in web-inf/classes directory
  2. I think it can be a part of next issue or pr.
  3. I think we can't because in the stage of loading we don't know all possible binding. Maybe we should consider to rename this properties? I don't like idea when in some cases we remove "CHE_" but in other we don't

@TylerJewell
Copy link

  1. -1. It is not a properties file. Just alias and have it be in the same directory as the default properties file.
  2. I will prepare this if others do not. It should be five minutes of work. So let's not push off something that is done faster than it takes to write this message.
  3. Then let's just have the variable match the property exactly and I will make sure all of the properties start with che.

@gazarenkov
Copy link
Contributor

  1. Not that critical but I more like kinda alias/alias.properties since having extension is more clear to user. And this is a properties (name=value) file

@TylerJewell
Copy link

So would that be:

  1. Any /alias sub-directory from current location where properties loaded.
  2. Load all *.properties in that /alias sub-directory to be used as alias combinations

?

@gazarenkov
Copy link
Contributor

can be like this IMO

WEB-INF/alias/*.properties

@TylerJewell
Copy link

That would mean that alias.properties can only exist in one location, which is in our source code.

What we do now, is that users can set a CHE_CONF_DIR environment variable which provides a location where users can have .properties files that override the defaults.

https://eclipse-che.readme.io/docs/usage-docker#environment-variables

We should preserve the use of that variable and allow end users to provide alias overrides if they want. So the default would be based upon what we do now:

WEB-INF\classes\codenvy\*.properties
WEB-INF\classes\codenvy\alias\alias.properties

And if a user provides CHE_CONF_DIR then their directory has:

.\*.properties
.\alias\*.properties

@gazarenkov
Copy link
Contributor

Yes, I know that (I invented this behaviour ) ) and we can create same for aliases but in our opinion it is overkill. I do not think we should encourage user to do that, IMO it is exceptional workaround.
But if you insist we can do that to speed up a discussion.

@TylerJewell
Copy link

I am ok to leave it as one time only. But please let's get this merged ASAP. We have many other issues dependent upon this. Andrew - just put it as a single file in web-INF. Also can you setup a default alias with the new names?

@skabashnyuk
Copy link
Contributor

Do you have a content for aliases file?

@TylerJewell
Copy link

Yes. In this issue, I have created new names for existing entries. There was one section where I hoped to have an array syntax but we can ignore that since we do not support that with properties I believe.

#2015

@skabashnyuk
Copy link
Contributor

I can't see a file with aliases in this issue. It have to be in format
new.name=old.name, other.old.name

@TylerJewell
Copy link

The file needs to be formatted but the data is there. Each entry has the new name as uncommented property and the existing names right below it in a comment.

@skabashnyuk
Copy link
Contributor

Right now I'm working on implementation of #2175 (comment)
It's almost done, I need some time to write unit tests. Then I will take a look on aliases. But it's a huge file, it may take some time.

@skabashnyuk
Copy link
Contributor

I've decided to postpone implementation of #2175 (comment) code looks overcomplicated and over-engineered.

@TylerJewell
Copy link

@skabashnyuk - I think gennady just said to have single alias.properties file in \WEB-INF directory only. So what is complicated here?

@skabashnyuk
Copy link
Contributor

skabashnyuk commented Aug 23, 2016

The issues (not a big one but it can be challenging) we need individual files for each assembly. One for che, one for artik one for codenvy. It can't be reused if we put it in \web-INF

@TylerJewell
Copy link

Hummm... I thought we ignored *.properties for Codevny and that the puppet system was used instead? For ARTIK, it is a custom assembly, so you wouldn't that custom assembly just overwrite the WEB-INF\alias.properties file?

@skabashnyuk
Copy link
Contributor

So the issue is: if you want to reuse new property names across different assemblies aliases files have to be duplicated. Are you going to use new names only for Che?

@skabashnyuk
Copy link
Contributor

I've tested che with current state of @andrew00x PR and it's working ok. I'm proposing to merge it as is. And add aliases as part of #2015

@TylerJewell
Copy link

Yeah, ok - to keep them separate. To be clear, where is the alias file located, and what is its name? With the long discussion, it's unclear where and what this file should be now. I can prepare one and submit PR for #2015.

@skabashnyuk
Copy link
Contributor

WEB-INF/classes/che_aliases.properties

@TylerJewell
Copy link

ok to merge

@mkuznyetsov
Copy link
Contributor

Cannot start wsagent, multiple bindings of "api.endpoint":

Tomcat logs:

2016-08-23 15:39:55,081[ost-startStop-1]  [ERROR] [o.a.c.c.C.[.[.[/wsagent] 4818]       - Exception sending context initialized event to listener instance of class org.eclipse.che.inject.CheBootstrap
com.google.inject.CreationException: Unable to create injector, see the following errors:

1) A binding to java.lang.String annotated with @com.google.inject.name.Named(value=api.endpoint) was already configured at com.codenvy.ext.java.server.MachineModule.configure(MachineModule.java:110).
  at org.eclipse.che.inject.CheBootstrap$AbstractConfigurationModule.bindProperty(CheBootstrap.java:373) (via modules: com.google.inject.util.Modules$OverrideModule -> org.eclipse.che.inject.CheBootstrap$CheEnvironmentVariablesConfigurationModule)

1 error
    at com.google.inject.internal.Errors.throwCreationExceptionIfErrorsExist(Errors.java:470) ~[guice-4.1.0.jar:na]
    at com.google.inject.internal.InternalInjectorCreator.initializeStatically(InternalInjectorCreator.java:155) ~[guice-4.1.0.jar:na]
    at com.google.inject.internal.InternalInjectorCreator.build(InternalInjectorCreator.java:107) ~[guice-4.1.0.jar:na]
    at com.google.inject.Guice.createInjector(Guice.java:99) ~[guice-4.1.0.jar:na]
    at org.everrest.guice.servlet.EverrestGuiceContextListener.getInjector(EverrestGuiceContextListener.java:140) ~[everrest-integration-guice-1.13.1.jar:na]
    at com.google.inject.servlet.GuiceServletContextListener.contextInitialized(GuiceServletContextListener.java:47) ~[guice-servlet-4.1.0.jar:na]
    at org.everrest.guice.servlet.EverrestGuiceContextListener.contextInitialized(EverrestGuiceContextListener.java:85) ~[everrest-integration-guice-1.13.1.jar:na]
    at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4812) [catalina.jar:8.0.32]
    at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5255) [catalina.jar:8.0.32]
    at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:147) [catalina.jar:8.0.32]
    at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:725) [catalina.jar:8.0.32]
    at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:701) [catalina.jar:8.0.32]
    at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:717) [catalina.jar:8.0.32]
    at org.apache.catalina.startup.HostConfig.deployWAR(HostConfig.java:939) [catalina.jar:8.0.32]
    at org.apache.catalina.startup.HostConfig$DeployWar.run(HostConfig.java:1812) [catalina.jar:8.0.32]
    at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) [na:1.8.0_45]
    at java.util.concurrent.FutureTask.run(FutureTask.java:266) [na:1.8.0_45]
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) [na:1.8.0_45]
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) [na:1.8.0_45]
    at java.lang.Thread.run(Thread.java:745) [na:1.8.0_45]
2016-08-23 15:39:55,130[ost-startStop-1]  [ERROR] [o.a.c.c.C.[.[.[/wsagent] 4818]       - Exception sending context initialized event to listener instance of class org.eclipse.che.everrest.ServerContainerInitializeListener
java.lang.NullPointerException: null
    at com.google.common.base.Preconditions.checkNotNull(Preconditions.java:210) ~[guava-18.0.jar:na]
    at org.everrest.core.impl.RequestDispatcher.<init>(RequestDispatcher.java:84) ~[everrest-core-1.13.1.jar:na]
    at org.eclipse.che.everrest.ServerContainerInitializeListener.getEverrestProcessor(ServerContainerInitializeListener.java:165) ~[che-core-api-core-4.7.0-RC2-SNAPSHOT.jar:4.7.0-RC2-SNAPSHOT]
    at org.eclipse.che.everrest.ServerContainerInitializeListener.createWsServerEndpointConfig(ServerContainerInitializeListener.java:123) ~[che-core-api-core-4.7.0-RC2-SNAPSHOT.jar:4.7.0-RC2-SNAPSHOT]
    at org.eclipse.che.everrest.ServerContainerInitializeListener.contextInitialized(ServerContainerInitializeListener.java:91) ~[che-core-api-core-4.7.0-RC2-SNAPSHOT.jar:4.7.0-RC2-SNAPSHOT]
    at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4812) [catalina.jar:8.0.32]
    at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5255) [catalina.jar:8.0.32]
    at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:147) [catalina.jar:8.0.32]
    at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:725) [catalina.jar:8.0.32]
    at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:701) [catalina.jar:8.0.32]
    at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:717) [catalina.jar:8.0.32]
    at org.apache.catalina.startup.HostConfig.deployWAR(HostConfig.java:939) [catalina.jar:8.0.32]
    at org.apache.catalina.startup.HostConfig$DeployWar.run(HostConfig.java:1812) [catalina.jar:8.0.32]
    at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) [na:1.8.0_45]
    at java.util.concurrent.FutureTask.run(FutureTask.java:266) [na:1.8.0_45]
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) [na:1.8.0_45]
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) [na:1.8.0_45]
    at java.lang.Thread.run(Thread.java:745) [na:1.8.0_45]

List of environment variables in container:

TOMCAT_HOME=/home/user/tomcat8
HOSTNAME=409ad44c92e2
CHE_WORKSPACE_ID=workspacea8zdtavwjtniz1y8
TERM=xterm
CHE_LOCAL_CONF_DIR=/mnt/che/conf
JAVA_OPTS=-Xms256m -Xmx2048m -Djava.security.egd=file:/dev/./urandom
LS_COLORS=rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:mi=00:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arc=01;31:*.arj=01;31:*.taz=01;31:*.lha=01;31:*.lz4=01;31:*.lzh=01;31:*.lzma=01;31:*.tlz=01;31:*.txz=01;31:*.tzo=01;31:*.t7z=01;31:*.zip=01;31:*.z=01;31:*.Z=01;31:*.dz=01;31:*.gz=01;31:*.lrz=01;31:*.lz=01;31:*.lzo=01;31:*.xz=01;31:*.bz2=01;31:*.bz=01;31:*.tbz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.war=01;31:*.ear=01;31:*.sar=01;31:*.rar=01;31:*.alz=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.cab=01;31:*.jpg=01;35:*.jpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.webm=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.cgm=01;35:*.emf=01;35:*.ogv=01;35:*.ogx=01;35:*.aac=00;36:*.au=00;36:*.flac=00;36:*.m4a=00;36:*.mid=00;36:*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:*.wav=00;36:*.oga=00;36:*.opus=00;36:*.spx=00;36:*.xspf=00;36:
JAVA_VERSION_PREFIX=1.8.0_45
MAVEN_VERSION=3.3.9
PATH=/opt/jdk1.8.0_45/bin:/home/user/apache-maven-3.3.9/bin:/opt/jdk1.8.0_45/bin:/home/user/apache-maven-3.3.9/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
PWD=/projects
JAVA_HOME=/opt/jdk1.8.0_45
LANG=en_US.UTF-8
JAVA_VERSION=8u45
USER_TOKEN=dummy_token
SHLVL=1
HOME=/home/user
M2_HOME=/home/user/apache-maven-3.3.9
CHE_PROJECTS_ROOT=/projects
LESSOPEN=| /usr/bin/lesspipe %s
CHE_API_ENDPOINT=http://che-host:8080/wsmaster/api
LESSCLOSE=/usr/bin/lesspipe %s %s
_=/usr/bin/printenv

@andrew00x
Copy link
Author

According to steaktrace property is configured in MachineModule

A binding to java.lang.String annotated with
@com.google.inject.name.Named(value=api.endpoint) was already
configured at com.codenvy.ext.java.server.MachineModule.configure(MachineModule.java:110).

I guess this one:
https://github.com/codenvy/codenvy/blob/67a0774d7c62ddc95e28f49208b2123653787daf/assembly/onpremises-ide-packaging-war-ext-server/src/main/java/com/codenvy/ext/java/server/MachineModule.java

This is not expected, configuration might be overridden only it is
configured by properties in che configuration directory or in user
configuration directory.
So need to remove configuration property from module or remove environment
variable CHE_API_ENDPOINT.

On Tue, Aug 23, 2016 at 6:01 PM, Michail Kuznetsov <notifications@github.com

wrote:

Cannot start wsagent, multiple bindings of "api.endpoint":

Tomcat logs:

2016-08-23 15:39:55,081[ost-startStop-1] [ERROR] [o.a.c.c.C.[.[.[/wsagent] 4818] - Exception sending context initialized event to listener instance of class org.eclipse.che.inject.CheBootstrap
com.google.inject.CreationException: Unable to create injector, see the following errors:

  1. A binding to java.lang.String annotated with @com.google.inject.name.Named(value=api.endpoint) was already configured at com.codenvy.ext.java.server.MachineModule.configure(MachineModule.java:110).
    at org.eclipse.che.inject.CheBootstrap$AbstractConfigurationModule.bindProperty(CheBootstrap.java:373) (via modules: com.google.inject.util.Modules$OverrideModule -> org.eclipse.che.inject.CheBootstrap$CheEnvironmentVariablesConfigurationModule)

1 error
at com.google.inject.internal.Errors.throwCreationExceptionIfErrorsExist(Errors.java:470) ~[guice-4.1.0.jar:na]
at com.google.inject.internal.InternalInjectorCreator.initializeStatically(InternalInjectorCreator.java:155) ~[guice-4.1.0.jar:na]
at com.google.inject.internal.InternalInjectorCreator.build(InternalInjectorCreator.java:107) ~[guice-4.1.0.jar:na]
at com.google.inject.Guice.createInjector(Guice.java:99) ~[guice-4.1.0.jar:na]
at org.everrest.guice.servlet.EverrestGuiceContextListener.getInjector(EverrestGuiceContextListener.java:140) ~[everrest-integration-guice-1.13.1.jar:na]
at com.google.inject.servlet.GuiceServletContextListener.contextInitialized(GuiceServletContextListener.java:47) ~[guice-servlet-4.1.0.jar:na]
at org.everrest.guice.servlet.EverrestGuiceContextListener.contextInitialized(EverrestGuiceContextListener.java:85) ~[everrest-integration-guice-1.13.1.jar:na]
at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4812) [catalina.jar:8.0.32]
at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5255) [catalina.jar:8.0.32]
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:147) [catalina.jar:8.0.32]
at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:725) [catalina.jar:8.0.32]
at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:701) [catalina.jar:8.0.32]
at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:717) [catalina.jar:8.0.32]
at org.apache.catalina.startup.HostConfig.deployWAR(HostConfig.java:939) [catalina.jar:8.0.32]
at org.apache.catalina.startup.HostConfig$DeployWar.run(HostConfig.java:1812) [catalina.jar:8.0.32]
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) [na:1.8.0_45]
at java.util.concurrent.FutureTask.run(FutureTask.java:266) [na:1.8.0_45]
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) [na:1.8.0_45]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) [na:1.8.0_45]
at java.lang.Thread.run(Thread.java:745) [na:1.8.0_45]
2016-08-23 15:39:55,130[ost-startStop-1] [ERROR] [o.a.c.c.C.[.[.[/wsagent] 4818] - Exception sending context initialized event to listener instance of class org.eclipse.che.everrest.ServerContainerInitializeListener
java.lang.NullPointerException: null
at com.google.common.base.Preconditions.checkNotNull(Preconditions.java:210) ~[guava-18.0.jar:na]
at org.everrest.core.impl.RequestDispatcher.(RequestDispatcher.java:84) ~[everrest-core-1.13.1.jar:na]
at org.eclipse.che.everrest.ServerContainerInitializeListener.getEverrestProcessor(ServerContainerInitializeListener.java:165) ~[che-core-api-core-4.7.0-RC2-SNAPSHOT.jar:4.7.0-RC2-SNAPSHOT]
at org.eclipse.che.everrest.ServerContainerInitializeListener.createWsServerEndpointConfig(ServerContainerInitializeListener.java:123) ~[che-core-api-core-4.7.0-RC2-SNAPSHOT.jar:4.7.0-RC2-SNAPSHOT]
at org.eclipse.che.everrest.ServerContainerInitializeListener.contextInitialized(ServerContainerInitializeListener.java:91) ~[che-core-api-core-4.7.0-RC2-SNAPSHOT.jar:4.7.0-RC2-SNAPSHOT]
at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4812) [catalina.jar:8.0.32]
at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5255) [catalina.jar:8.0.32]
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:147) [catalina.jar:8.0.32]
at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:725) [catalina.jar:8.0.32]
at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:701) [catalina.jar:8.0.32]
at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:717) [catalina.jar:8.0.32]
at org.apache.catalina.startup.HostConfig.deployWAR(HostConfig.java:939) [catalina.jar:8.0.32]
at org.apache.catalina.startup.HostConfig$DeployWar.run(HostConfig.java:1812) [catalina.jar:8.0.32]
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) [na:1.8.0_45]
at java.util.concurrent.FutureTask.run(FutureTask.java:266) [na:1.8.0_45]
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) [na:1.8.0_45]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) [na:1.8.0_45]
at java.lang.Thread.run(Thread.java:745) [na:1.8.0_45]

List of environment variables in container:

TOMCAT_HOME=/home/user/tomcat8
HOSTNAME=409ad44c92e2
CHE_WORKSPACE_ID=workspacea8zdtavwjtniz1y8
TERM=xterm
CHE_LOCAL_CONF_DIR=/mnt/che/conf
JAVA_OPTS=-Xms256m -Xmx2048m -Djava.security.egd=file:/dev/./urandom
LS_COLORS=rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:mi=00:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:.tar=01;31:.tgz=01;31:.arc=01;31:.arj=01;31:.taz=01;31:.lha=01;31:.lz4=01;31:.lzh=01;31:.lzma=01;31:.tlz=01;31:.txz=01;31:.tzo=01;31:.t7z=01;31:.zip=01;31:.z=01;31:.Z=01;31:.dz=01;31:.gz=01;31:.lrz=01;31:.lz=01;31:.lzo=01;31:.xz=01;31:.bz2=01;31:.bz=01;31:.tbz=01;31:.tbz2=01;31:.tz=01;31:.deb=01;31:.rpm=01;31:.jar=01;31:.war=01;31:.ear=01;31:.sar=01;31:.rar=01;31:.alz=01;31:.ace=01;31:.zoo=01;31:.cpio=01;31:.7z=01;31:.rz=01;31:.cab=01;31:.jpg=01;35:.jpeg=01;35:.gif=01;35:.bmp=01;35:.pbm=01;35:.pgm=01;35:.ppm=01;35:.tga=01;35:.xbm=01;35:.xpm=01;35:.tif=01;35:.tiff=01;35:.png=01;35:.svg=01;35:.svgz=01;35:.mng=01;35:.pcx=01;35:.mov=01;35:.mpg=01;35:.mpeg=01;35:.m2v=01;35:.mkv=01;35:.webm=01;35:.ogm=01;35:.mp4=01;35:.m4v=01;35:.mp4v=01;35:.vob=01;35:.qt=01;35:.nuv=01;35:.wmv=01;35:.asf=01;35:.rm=01;35:.rmvb=01;35:.flc=01;35:.avi=01;35:.fli=01;35:.flv=01;35:.gl=01;35:.dl=01;35:.xcf=01;35:.xwd=01;35:.yuv=01;35:.cgm=01;35:.emf=01;35:.ogv=01;35:.ogx=01;35:.aac=00;36:.au=00;36:.flac=00;36:.m4a=00;36:.mid=00;36:.midi=00;36:.mka=00;36:.mp3=00;36:.mpc=00;36:.ogg=00;36:.ra=00;36:.wav=00;36:.oga=00;36:.opus=00;36:.spx=00;36:.xspf=00;36:
JAVA_VERSION_PREFIX=1.8.0_45
MAVEN_VERSION=3.3.9
PATH=/opt/jdk1.8.0_45/bin:/home/user/apache-maven-3.3.9/bin:/opt/jdk1.8.0_45/bin:/home/user/apache-maven-3.3.9/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
PWD=/projects
JAVA_HOME=/opt/jdk1.8.0_45
LANG=en_US.UTF-8
JAVA_VERSION=8u45
USER_TOKEN=dummy_token
SHLVL=1
HOME=/home/user
M2_HOME=/home/user/apache-maven-3.3.9
CHE_PROJECTS_ROOT=/projects
LESSOPEN=| /usr/bin/lesspipe %s
CHE_API_ENDPOINT=http://che-host:8080/wsmaster/api
LESSCLOSE=/usr/bin/lesspipe http://che-host:8080/wsmaster/apiLESSCLOSE=/usr/bin/lesspipe %s %s
_=/usr/bin/printenv


You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
#2175 (comment), or mute
the thread
https://github.com/notifications/unsubscribe-auth/AAp2ILcNSi-sUvWLGlffSQRlMXPnKtPCks5qixlegaJpZM4JpA5o
.

@TylerJewell
Copy link

@skabashnyuk @gazarenkov - I think this is for you to decide?

@TylerJewell
Copy link

@andrew00x - can we st status on a fix? We cannot release some new features without this.

@skabashnyuk
Copy link
Contributor

skabashnyuk commented Aug 26, 2016

@TylerJewell We are not able to start dev machines, We need some changes in our code. Right now we have no time for that so we postpone this issue. We will come back to it as soon as we will have some free time.

@TylerJewell
Copy link

This was needed before we launch Che in Che. So pmease assign to someone for this current or beginning of next sprint.

@codenvy-ci
Copy link

Build # 231 - FAILED

Please check console output at https://ci.codenvycorp.com/job/che-pullrequests-build/231/ to view the results.

@skabashnyuk
Copy link
Contributor

Che machines has been started successfully

@codenvy-ci
Copy link

Build # 245 - FAILED

Please check console output at https://ci.codenvycorp.com/job/che-pullrequests-build/245/ to view the results.

@skabashnyuk
Copy link
Contributor

Waiting #1818 to merge.

@bmicklea bmicklea mentioned this pull request Aug 30, 2016
57 tasks
@skabashnyuk skabashnyuk merged commit ddfef84 into eclipse-che:master Sep 6, 2016
@bmicklea bmicklea added this to the 5.0.0-M1 milestone Sep 13, 2016
JPinkney pushed a commit to JPinkney/che that referenced this pull request Aug 17, 2017
…se-che#2175)

* helper class for set and restore system properties

* override configuration properties from system properties with "che." prefix of environment variables with "CHE_" prefix

* fix bug report warnings, typo and avoid unneeded compilations of Pattern

* Removed ApiEndpointProvider to avoid duplication with environment binding
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

7 participants