Commit Graph

759 Commits (4e3e7c3cb5fabfa9f5bd150f54b6eba1d2cd2f29)

Author SHA1 Message Date
Lukas Krejci 4e3e7c3cb5 Support `refspec` in the devfile to specify what should be checked out
after a clone.

Signed-off-by: Lukas Krejci <lkrejci@redhat.com>
2019-04-01 09:58:05 +02:00
Mykhailo Kuznietsov e4763e1dac
Add ability to provide additional build-info in Che (#12919) 2019-03-28 15:46:32 +02:00
Angel Misevski 1263f06945 Add tracing to broker phases
Trace the prepare storage, deploy, and wait broker result phases of
plugin brokering.

Additionally clean up start tracing code slightly:
- Move span names to a separate file
- Move TracingUtil functionality into TracingTags

Signed-off-by: Angel Misevski <amisevsk@redhat.com>
2019-03-28 02:22:51 -04:00
Angel Misevski 15a7f9da6f Rework workspace start tracing
- Group machine start traces under a separate span
- Move wait running and check servers spans out of start machines span
  since the start machine span ends before check servers is complete
- Track wait running async and check servers spans separately
- Add tracing to bootstrap servers

Signed-off-by: Angel Misevski <amisevsk@redhat.com>
2019-03-28 02:22:51 -04:00
Angel Misevski 2c4ef3a60f Allow enabling DB tracing separately from regular tracing
When enabled, tracing database calls fills each span with dozens of
hard-to-parse, ~1-100 ms spans. This commit allows enabling database
tracing separately, using the CHE_DB_TRACING_ENABLED environment
variable.

Signed-off-by: Angel Misevski <amisevsk@redhat.com>
2019-03-28 02:22:51 -04:00
Gerben Oolbekkink c5498c2ac5 Improve ZipUtils tests. (#12946)
Fix ZipUtilsWriteTest for Windows, slashes get converted inside
ZipUtils.

Add test for unzipping. This was not explicitely tested.

Signed-off-by: Gerben Oolbekkink <g.j.w.oolbekkink@gmail.com>
2019-03-23 15:46:56 +02:00
Roman Iuvshyn 0abdc77ea0
RELEASE: Set next development version (#12922) 2019-03-19 15:56:30 +02:00
Sergii Kabashniuk 315767ea5d
NopTracer is used if tracing is not enabled (#12897)
* NopTracer is used in tracing is not enabled

Signed-off-by: Sergii Kabashniuk <skabashniuk@redhat.com>
2019-03-19 09:44:49 +02:00
Mykhailo Kuznietsov fdc1b0dcf0
Expose Traces as metrics for Prometheus (#12823) 2019-03-14 16:00:53 +02:00
Lukas Krejci b52ee401c8 Handle the containerCommand and containerArgs attributes of the machine
defined with the dockerimage recipe.

Note that this only works in kubernetes and openshift environments.

Signed-off-by: Lukas Krejci <lkrejci@redhat.com>
2019-03-05 15:04:18 +01:00
Sergii Kabashniuk 391c30e495
Provide more informative error message (#12814)
* Provide more informative error message in case of rejection on major websocket endpoint of JSON RPC stack

Signed-off-by: Sergii Kabashniuk <skabashniuk@redhat.com>
2019-03-04 22:27:28 +02:00
Roman Iuvshyn 0881493644
RELEASE: Set next development version (#12777) 2019-02-27 16:02:33 +02:00
Sergii Kabashniuk a5b06d444f
Introduced two web-socket endpoints for workspace master to split JSON-RPC messages (#12673)
* Introduced two web-socket endpoints for workspace master to split JSON-RPC messages
Based on Dmytro's Kulieshov  work https://github.com/eclipse/che/pull/12252

Signed-off-by: Sergii Kabashniuk <skabashniuk@redhat.com>
2019-02-27 13:29:43 +02:00
Roman Iuvshyn 3778f01220
RELEASE: Set next development version (#12768) 2019-02-27 11:50:40 +02:00
Sergii Kabashniuk 577eba85ea
Add ProcessMemoryMetrics ProcessThreadMetrics (#12749)
* Add ProcessMemoryMetrics ProcessThreadMetrics

Signed-off-by: Sergii Kabashniuk <skabashniuk@redhat.com>
2019-02-26 14:47:41 +02:00
Lukas Krejci 9a8a4f8660 * Don't try to remove already removed element during removeFirstIndependent
* Presize the LinkedHashMap correctly

Signed-off-by: Lukas Krejci <lkrejci@redhat.com>
2019-02-25 13:52:56 +01:00
Lukas Krejci f66e967339 Make variable expansion work for environment variables in k8s.
K8s does the expansion only if it already knows about the variable being
expanded.

This means we have to sort the environment variable list prior to sending
it to k8s in such a way that vars that reference others always follow the
referenced ones.

Signed-off-by: Lukas Krejci <lkrejci@redhat.com>
2019-02-25 13:18:32 +01:00
Mykhailo Kuznietsov 3bef71020f
Adding tracing tags to workspace related operations (#12652)
Signed-off-by: Mykhailo Kuznietsov <mkuznets@redhat.com>
2019-02-25 12:11:25 +02:00
Max Shaposhnik 88959d006f
API info service to use meta-info from war-s manifest instead of jar
Signed-off-by: Max Shaposhnik <mshaposh@redhat.com>
2019-02-19 15:47:18 +02:00
Roman Iuvshyn a694c4f971
RELEASE: Set next development version (#12596) 2019-02-06 18:22:35 +02:00
Sergii Leshchenko 99017c4553 Move 'machineName' and 'plugin' attributes definition to Command class
Signed-off-by: Sergii Leshchenko <sleshche@redhat.com>
2019-02-01 16:41:00 +02:00
Sergii Kabashniuk 82b6ea432e
Add ability to dump values that is bind by CheBootstrap (#12556)
* Add ability to dump values that is bind by CheBootstrap

Signed-off-by: Sergii Kabashniuk <skabashniuk@redhat.com>
2019-01-31 09:37:32 +02:00
Masaki Muranaka 9f5a7980c7 Fix resource leaks. (#12407)
Signed-off-by: Masaki Muranaka <monaka@monami-ya.com>
2019-01-29 13:02:59 +02:00
Sergii Kabashniuk 84b5a68bd9 Correctly determine server from which IDE was loaded
Provider of "cors.allowed.origins" setting for CORS Filter of WS Agent. Provides the value such  algorithm:
        1. If set che.wsagent.cors.allowed_origins
        2. Server with "ide" attribute in workspace config
        3. Server from url of "ide" link in workspace config
        4. che.api

Signed-off-by: Sergii Kabashniuk <skabashniuk@redhat.com>
2019-01-16 16:01:52 +02:00
Roman Iuvshyn 4ad10f2218
RELEASE: Set next development version (#12441) 2019-01-16 11:51:02 +02:00
Masaki Muranaka 07ceab7754 Remove redundant elements (<groupId> and <version>) (#12406)
Signed-off-by: Masaki Muranaka <monaka@monami-ya.com>
2019-01-14 13:07:42 +02:00
Mykhailo Kuznietsov 3574455d8e
Add filter to track 5xx errors for Prometheus (#12284) 2019-01-10 09:37:26 +02:00
Sergii Leshchenko 2f7f726b83
Fix logged messages in commons schedule module (#12283) 2018-12-27 14:54:16 +02:00
Roman Iuvshyn b872b317cb
RELEASE: Set next development version (#12277) 2018-12-26 13:04:51 +02:00
Yevhen Vydolob 345d1b7e62
Add '.d.ts' DTO generator (#12250)
#12132 Add '.d.ts' DTO generator

Signed-off-by: Yevhen Vydolob <yvydolob@redhat.com>
2018-12-26 11:15:06 +02:00
Mykhailo Kuznietsov bac76ac5ee Fix WS Agent not setting appropriate CORS allowed origin on Docker (#12265) 2018-12-24 13:49:46 +02:00
Mykhailo Kuznietsov 69288516c8
Upgrade Tomcat and change default CORS configuration (#12144) 2018-12-22 10:56:27 +02:00
Mykhailo Kuznietsov b7e1918e32
Upgrade dependencies (#11944) 2018-12-11 11:34:48 +02:00
Max Shaposhnik 3a14bacda1
Devfile local features implenentation with schema validation and automated model build. 2018-12-06 16:19:21 +02:00
Roman Iuvshyn 45490d2a3b
RELEASE: Set next development version (#12115) 2018-12-05 18:33:02 +02:00
Mykhailo Kuznietsov 3d366a1c19
Add ability to change CORS configuration on Che Server through env vars (#12046) 2018-12-04 14:56:38 +02:00
Sergii Kabashniuk 2d0915bf14
Fix MetricsServer deployment (#12072) 2018-11-29 20:52:24 +02:00
Sergii Kabashniuk da3eefe237
Metrics POC (#11990)
With CHE_METRICS_ENABLED env variable enable Prometheus metrics endpoint
2018-11-27 23:47:24 +02:00
Sergii Leshchenko 25f76803db Add commands to InternalEnvironment and Runtime 2018-11-27 09:19:28 +02:00
Masaki Muranaka d309ef4b83 Remove redundant <version> elements. (#12023)
As they will be inherited from `parent.version`.

Signed-off-by: Masaki Muranaka <monaka@monami-ya.com>
2018-11-25 21:17:08 +02:00
Lukas Krejci 9109cf37c5 Workspace tracing (#11924)
* Adding support for @Traced annotation to enable whole method tracing
* Trace the creation and removal of workspace
* Trace the start of async start of the workspace
Note that this does not actually trace the async operations but merely
the "kick off" of those. For tracing the async operations, we need to
introduce support for propagating the span ids over the thread boundaries
using opentracing-concurrent.
* Enable tracing across the thread boundaries by augmenting the
WorkspaceSharedPool threadpool with tracing support.
Note that this does not add any new traces, merely enables the async
tracing.
* Add support for adding tags to @Traced methods.
The interceptor also reports the actual invoked class and method
(cleansed of Guice subclass name garbage)
* Trace the startup of pods during workspace startup.
* Trace stop of a workspace
* Introduce utility methods for tracing parts of methods.
* Trace provisioning of k8s objects (in both Kubernetes and Openshift
infrastructures).
* Create a common set of tags and enable strongly typed tags
* Apply the standard tags instead of hardcoded strings.
* Adding @Beta annotations for the tracing-related classes.
This needs to stabilize first.
* Replacing the "Traces" machinery with just annotated package private methods.
This way the code is easier to ready while we also keep all the flexibility
needed for the tag definitions.
* Rename CheTags to more descriptive TracingTags.
* Evaluate the tag values lazily.
This will reduce the load when tracing is switched off.
* Simplify the machine startup tracing logic and distinguish between
true error and mere cancellation due to prior errors.
* Trivial - applying formatting.
* Use getContext().getEnvironment().getMachines().size() to get the precise
number of machines that will be starting up.
* Trivial - change the name of the machine creation tag
* Use a formatted message instead of string concat.
* Update to the latest parent so that che-core-commons-tracing is correctly
incorporated into the full build.
* Fix tracing of the asynchronous stop of a workspace.
* Don't fall over when tracing is not available.
2018-11-22 21:51:12 +02:00
Oleksandr Garagatyi aaa8f424cd
Make a workspace run without any user env (#11890)
Allows running Che 7 workspace without any user environment but with Che 7 tooling set.
Workspace without environment has an empty list of environments and null value in `defaultEnv` field.
Field `activeEnv` is supposed to be `null` too.
What is changed:
- Migration of DB
- make defaultEnv nullable
- remove env_name from runtimes primary key
- make env_name in runtimes nullable
- Make code respect the fact that there are workspaces with no env
- settings API that returns the list of supported environment types returns no-environment type that - indicates that infrastructure support workspace with no environment at all.
Signed-off-by: Oleksandr Garagatyi <ogaragat@redhat.com>
2018-11-21 16:39:54 +02:00
Sergii Kabashniuk f742047a89
Delegate toString to wrapped class (#11959)
Delegate toString to wrapped class (#11959)
2018-11-19 09:27:30 +02:00
Sergii Leshchenko 18e408854c Add info message about aplied logger config 2018-11-15 14:43:51 +02:00
Roman Iuvshyn 99afaef87f
RELEASE: Set next development version (#11930) 2018-11-14 12:29:03 +02:00
Sergii Kabashniuk 0b16268dcf
Jdbc tracing support (#11905)
Jdbc tracing support (#11905)
2018-11-14 11:37:47 +02:00
Sergii Kabashniuk 8a38002dd9
Basic tracing support for OpenShift (#11844)
Basic tracing support for OpenShift (#11844)
2018-11-09 14:42:52 +02:00
Roman Iuvshyn 365d25f275
RELEASE: Set next development version (#11710) 2018-10-24 16:38:03 +03:00
Sergii Kabashniuk be8a867c4e
More information for ServerSideRequestProcessor.RejectedExecutionHandler (#11681)
More information for ServerSideRequestProcessor.RejectedExecutionHandler (#11681)
2018-10-24 11:27:30 +03:00
Thomas Mäder f925d2b631 Fix resource leak in ZipUtils (#10815)
Signed-off-by: Thomas Mäder <tmader@redhat.com>
2018-10-17 15:05:02 +02:00