Che: Che-Theia in Che deployed in an offline environment still need access to static.developers.redhat.com

Created on 2 Dec 2019  路  31Comments  路  Source: eclipse/che

Describe the bug

Che version

  • [x] latest
  • [ ] nightly
  • [ ] other: please specify

Steps to reproduce

  1. Create Plugin and devfile registries for offline mode
  2. Deploy Che with Helm ( or chectl) and configure it to use devfile and plugins registries created above
  3. In administration tab create docker registry for the Docker proxy registry server
    4. Create a workspace from a web browser that do not have internet access. The workspace starts, the green ball is displayed but Theia ide is not rendred.

Expected behavior

Runtime

  • [x] kubernetes (include output of kubectl version)
  • [ ] Openshift (include output of oc version)
  • [ ] minikube (include output of minikube version and kubectl version)
  • [ ] minishift (include output of minishift version and oc version)
  • [ ] docker-desktop + K8S (include output of docker version and kubectl version)
  • [ ] other: (please specify)

Screenshots

Installation method

  • [x] chectl
  • [ ] che-operator
  • [ ] minishift-addon
  • [ ] I don't know

Environment

  • [ ] my computer

    • [x] Windows

    • [ ] Linux

    • [ ] macOS

  • [ ] Cloud

    • [ ] Amazon

    • [ ] Azure

    • [ ] GCE

    • [x] other (on premise )

  • [ ] other: please specify

Additional context

The needed resource to render Theia is a javascript hosted at :
https://static.developers.redhat.com/che/theia_artifacts/vendors.8db588d7bb55e4583128.js

areeditoche-theia kinbug severitP1 statuinfo-needed

Most helpful comment

This issue disappeared in Che version 7.7.x but reappeared in version 7.8.0 !

All 31 comments

cc @davidfestal wondering how we manage that for crw 2.0?

@NM4 thanks for reporting this. Offline support is quite fresh and we need to investigate why we are still downloading this static resource.

@l0rd We didn't change anything in che-theia for the offline case (we probably missed this point). However this should not be a problem since when Che-theia cannot access the files on the CDN (404 error for example), the default process is to fallback to the Che-theia server it self to retrieve files.

The only case that might bring difficulties is if the calls to URLs on static.developers.redhat.com lead to gateway timeouts for example, in whch case it migtht block ce-theia start during this time.

@NM4 Could you please share the content of the browser console, as well as the network tab, when you access to the workspace (enable the preseve log option in the network tab) ?

GET http://che-che.dvodvoks018.devops.full-company-name.fr/dashboard/#/ide/che/wksp-hvtg [HTTP/1.1 304 78ms]
GET
http://che-che.dvodvoks018.devops.full-company-name.fr/dashboard/#/ide/che/wksp-hvtg [HTTP/1.1 304 78ms]
GET
http://che-che.dvodvoks018.devops.full-company-name.fr/dashboard/#/ide/che/wksp-hvtg [HTTP/1.1 304 78ms]
GET
http://che-che.dvodvoks018.devops.full-company-name.fr/api/websocket [HTTP/1.1 101 78ms]
GET
http://che-che.dvodvoks018.devops.full-company-name.fr/api/websocket [HTTP/1.1 101 78ms]
GET
http://che-che.dvodvoks018.devops.full-company-name.fr/api/websocket [HTTP/1.1 101 78ms]
GET
http://che-che.dvodvoks018.devops.full-company-name.fr/dashboard/styles/app-7e1344b03a.css [HTTP/1.1 304 47ms]
GET
http://che-che.dvodvoks018.devops.full-company-name.fr/dashboard/styles/app-7e1344b03a.css [HTTP/1.1 304 47ms]
GET
http://che-che.dvodvoks018.devops.full-company-name.fr/dashboard/styles/app-7e1344b03a.css [HTTP/1.1 304 47ms]
GET
http://che-che.dvodvoks018.devops.full-company-name.fr/dashboard/assets/branding/branding.css [HTTP/1.1 304 78ms]
GET
http://che-che.dvodvoks018.devops.full-company-name.fr/dashboard/assets/branding/branding.css [HTTP/1.1 304 78ms]
GET
http://che-che.dvodvoks018.devops.full-company-name.fr/dashboard/assets/branding/branding.css [HTTP/1.1 304 78ms]
GET
http://che-che.dvodvoks018.devops.full-company-name.fr/dashboard/scripts/app-e699fdf779.js [HTTP/1.1 304 109ms]
GET
http://che-che.dvodvoks018.devops.full-company-name.fr/dashboard/scripts/app-e699fdf779.js [HTTP/1.1 304 109ms]
GET
http://che-che.dvodvoks018.devops.full-company-name.fr/dashboard/scripts/app-e699fdf779.js [HTTP/1.1 304 109ms]
GET
XHR
http://che-che.dvodvoks018.devops.full-company-name.fr/api/keycloak/settings [HTTP/1.1 404 47ms]
GET
XHR
http://che-che.dvodvoks018.devops.full-company-name.fr/api/keycloak/settings [HTTP/1.1 404 47ms]
GET
XHR
http://che-che.dvodvoks018.devops.full-company-name.fr/api/keycloak/settings [HTTP/1.1 404 47ms]
GET
XHR
http://che-che.dvodvoks018.devops.full-company-name.fr/api [HTTP/1.1 302 31ms]
GET
XHR
http://che-che.dvodvoks018.devops.full-company-name.fr/api [HTTP/1.1 302 31ms]
GET
XHR
http://che-che.dvodvoks018.devops.full-company-name.fr/api [HTTP/1.1 302 31ms]
GET
XHR
http://che-che.dvodvoks018.devops.full-company-name.fr/api/ [HTTP/1.1 200 47ms]
GET
XHR
http://che-che.dvodvoks018.devops.full-company-name.fr/api/ [HTTP/1.1 200 47ms]
GET
XHR
http://che-che.dvodvoks018.devops.full-company-name.fr/api/ [HTTP/1.1 200 47ms]
GET
XHR
http://che-che.dvodvoks018.devops.full-company-name.fr/api/ [HTTP/1.1 200 41ms]
GET
XHR
http://che-che.dvodvoks018.devops.full-company-name.fr/api/ [HTTP/1.1 200 41ms]
GET
XHR
http://che-che.dvodvoks018.devops.full-company-name.fr/api/ [HTTP/1.1 200 41ms]
GET
XHR
http://che-che.dvodvoks018.devops.full-company-name.fr/dashboard/assets/branding/product.json [HTTP/1.1 200 0ms]
GET
XHR
http://che-che.dvodvoks018.devops.full-company-name.fr/dashboard/assets/branding/product.json [HTTP/1.1 200 0ms]
GET
XHR
http://che-che.dvodvoks018.devops.full-company-name.fr/dashboard/assets/branding/product.json [HTTP/1.1 200 0ms]
OPTIONS
XHR
http://che-che.dvodvoks018.devops.full-company-name.fr/api/ [HTTP/1.1 200 40ms]
OPTIONS
XHR
http://che-che.dvodvoks018.devops.full-company-name.fr/api/ [HTTP/1.1 200 40ms]
OPTIONS
XHR
http://che-che.dvodvoks018.devops.full-company-name.fr/api/ [HTTP/1.1 200 40ms]
GET
XHR
http://che-che.dvodvoks018.devops.full-company-name.fr/api/workspace/settings [HTTP/1.1 200 40ms]
GET
XHR
http://che-che.dvodvoks018.devops.full-company-name.fr/api/workspace/settings [HTTP/1.1 200 40ms]
GET
XHR
http://che-che.dvodvoks018.devops.full-company-name.fr/api/workspace/settings [HTTP/1.1 200 40ms]
GET
XHR
http://che-che.dvodvoks018.devops.full-company-name.fr/workspace-loader/ [HTTP/1.1 200 0ms]
GET
XHR
http://che-che.dvodvoks018.devops.full-company-name.fr/workspace-loader/ [HTTP/1.1 200 0ms]
GET
XHR
http://che-che.dvodvoks018.devops.full-company-name.fr/workspace-loader/ [HTTP/1.1 200 0ms]
GET
XHR
http://che-che.dvodvoks018.devops.full-company-name.fr/api/user [HTTP/1.1 200 41ms]
GET
XHR
http://che-che.dvodvoks018.devops.full-company-name.fr/api/user [HTTP/1.1 200 41ms]
GET
XHR
http://che-che.dvodvoks018.devops.full-company-name.fr/api/user [HTTP/1.1 200 41ms]
GET
XHR
http://che-che.dvodvoks018.devops.full-company-name.fr/api/profile [HTTP/1.1 200 60ms]
GET
XHR
http://che-che.dvodvoks018.devops.full-company-name.fr/api/profile [HTTP/1.1 200 60ms]
GET
XHR
http://che-che.dvodvoks018.devops.full-company-name.fr/api/profile [HTTP/1.1 200 60ms]
GET
XHR
http://che-che.dvodvoks018.devops.full-company-name.fr/api/workspace/settings [HTTP/1.1 200 65ms]
GET
XHR
http://che-che.dvodvoks018.devops.full-company-name.fr/api/workspace/settings [HTTP/1.1 200 65ms]
GET
XHR
http://che-che.dvodvoks018.devops.full-company-name.fr/api/workspace/settings [HTTP/1.1 200 65ms]
GET
XHR
http://che-che.dvodvoks018.devops.full-company-name.fr/api/workspace [HTTP/1.1 200 42ms]
GET
XHR
http://che-che.dvodvoks018.devops.full-company-name.fr/api/workspace [HTTP/1.1 200 42ms]
GET
XHR
http://che-che.dvodvoks018.devops.full-company-name.fr/api/workspace [HTTP/1.1 200 42ms]
GET
XHR
http://che-che.dvodvoks018.devops.full-company-name.fr/api/user [HTTP/1.1 200 40ms]
GET
XHR
http://che-che.dvodvoks018.devops.full-company-name.fr/api/user [HTTP/1.1 200 40ms]
GET
XHR
http://che-che.dvodvoks018.devops.full-company-name.fr/api/user [HTTP/1.1 200 40ms]
GET
XHR
http://che-che.dvodvoks018.devops.full-company-name.fr/api/workspace [HTTP/1.1 200 43ms]
GET
XHR
http://che-che.dvodvoks018.devops.full-company-name.fr/api/workspace [HTTP/1.1 200 43ms]
GET
XHR
http://che-che.dvodvoks018.devops.full-company-name.fr/api/workspace [HTTP/1.1 200 43ms]
GET
XHR
http://che-che.dvodvoks018.devops.full-company-name.fr/api/workspace/settings [HTTP/1.1 200 41ms]
GET
XHR
http://che-che.dvodvoks018.devops.full-company-name.fr/api/workspace/settings [HTTP/1.1 200 41ms]
GET
XHR
http://che-che.dvodvoks018.devops.full-company-name.fr/api/workspace/settings [HTTP/1.1 200 41ms]
GET
XHR
http://che-che.dvodvoks018.devops.full-company-name.fr/api/user [HTTP/1.1 200 41ms]
GET
XHR
http://che-che.dvodvoks018.devops.full-company-name.fr/api/user [HTTP/1.1 200 41ms]
GET
XHR
http://che-che.dvodvoks018.devops.full-company-name.fr/api/user [HTTP/1.1 200 41ms]
GET
XHR
http://che-che.dvodvoks018.devops.full-company-name.fr/api/user [HTTP/1.1 200 40ms]
GET
XHR
http://che-che.dvodvoks018.devops.full-company-name.fr/api/user [HTTP/1.1 200 40ms]
GET
XHR
http://che-che.dvodvoks018.devops.full-company-name.fr/api/user [HTTP/1.1 200 40ms]
GET
http://che-che.dvodvoks018.devops.full-company-name.fr/dashboard/assets/branding/loader.svg [HTTP/1.1 304 40ms]
GET
http://che-che.dvodvoks018.devops.full-company-name.fr/dashboard/assets/branding/loader.svg [HTTP/1.1 304 40ms]
GET
http://che-che.dvodvoks018.devops.full-company-name.fr/dashboard/assets/branding/loader.svg [HTTP/1.1 304 40ms]
GET
http://che-che.dvodvoks018.devops.full-company-name.fr/dashboard/assets/branding/che-logo.svg [HTTP/1.1 304 40ms]
GET
http://che-che.dvodvoks018.devops.full-company-name.fr/dashboard/assets/branding/che-logo.svg [HTTP/1.1 304 40ms]
GET
http://che-che.dvodvoks018.devops.full-company-name.fr/dashboard/assets/branding/che-logo.svg [HTTP/1.1 304 40ms]
GET
XHR
http://che-che.dvodvoks018.devops.full-company-name.fr/dashboard/assets/branding/che-logo-text.svg [HTTP/1.1 200 0ms]
GET
XHR
http://che-che.dvodvoks018.devops.full-company-name.fr/dashboard/assets/branding/che-logo-text.svg [HTTP/1.1 200 0ms]
GET
XHR
http://che-che.dvodvoks018.devops.full-company-name.fr/dashboard/assets/branding/che-logo-text.svg [HTTP/1.1 200 0ms]
GET
XHR
http://che-che.dvodvoks018.devops.full-company-name.fr/api/preferences [HTTP/1.1 200 41ms]
GET
XHR
http://che-che.dvodvoks018.devops.full-company-name.fr/api/preferences [HTTP/1.1 200 41ms]
GET
XHR
http://che-che.dvodvoks018.devops.full-company-name.fr/api/preferences [HTTP/1.1 200 41ms]
GET
XHR
http://plugin-registry-che.dvodvoks018.devops.full-company-name.fr/v3/plugins/ [HTTP/1.1 200 OK 119ms]
GET
XHR
http://plugin-registry-che.dvodvoks018.devops.full-company-name.fr/v3/plugins/ [HTTP/1.1 200 OK 119ms]
GET
XHR
http://plugin-registry-che.dvodvoks018.devops.full-company-name.fr/v3/plugins/ [HTTP/1.1 200 OK 119ms]
GET
XHR
http://che-che.dvodvoks018.devops.full-company-name.fr/api/workspace/workspacemedx4wgryhmy1guq [HTTP/1.1 200 42ms]
GET
XHR
http://che-che.dvodvoks018.devops.full-company-name.fr/api/workspace/workspacemedx4wgryhmy1guq [HTTP/1.1 200 42ms]
GET
XHR
http://che-che.dvodvoks018.devops.full-company-name.fr/api/workspace/workspacemedx4wgryhmy1guq [HTTP/1.1 200 42ms]
GET
http://che-che.dvodvoks018.devops.full-company-name.fr/api/websocket [HTTP/1.1 101 83ms]
GET
http://che-che.dvodvoks018.devops.full-company-name.fr/api/websocket [HTTP/1.1 101 83ms]
GET
http://che-che.dvodvoks018.devops.full-company-name.fr/api/websocket [HTTP/1.1 101 83ms]
GET
XHR
http://che-che.dvodvoks018.devops.full-company-name.fr/api/workspace/workspaceq3u5h1nx42s20wpv [HTTP/1.1 200 41ms]
GET
XHR
http://che-che.dvodvoks018.devops.full-company-name.fr/api/workspace/workspaceq3u5h1nx42s20wpv [HTTP/1.1 200 41ms]
GET
XHR
http://che-che.dvodvoks018.devops.full-company-name.fr/api/workspace/workspaceq3u5h1nx42s20wpv [HTTP/1.1 200 41ms]
GET
XHR
http://che-che.dvodvoks018.devops.full-company-name.fr/api/factory/find [HTTP/1.1 200 41ms]
GET
XHR
http://che-che.dvodvoks018.devops.full-company-name.fr/api/factory/find [HTTP/1.1 200 41ms]
GET
XHR
http://che-che.dvodvoks018.devops.full-company-name.fr/api/factory/find [HTTP/1.1 200 41ms]
GET
XHR
http://che-che.dvodvoks018.devops.full-company-name.fr/api/organization [HTTP/1.1 404 41ms]
GET
XHR
http://che-che.dvodvoks018.devops.full-company-name.fr/api/organization [HTTP/1.1 404 41ms]
GET
XHR
http://che-che.dvodvoks018.devops.full-company-name.fr/api/organization [HTTP/1.1 404 41ms]
GET
XHR
http://che-che.dvodvoks018.devops.full-company-name.fr/api/organization [HTTP/1.1 404 40ms]
GET
XHR
http://che-che.dvodvoks018.devops.full-company-name.fr/api/organization [HTTP/1.1 404 40ms]
GET
XHR
http://che-che.dvodvoks018.devops.full-company-name.fr/api/organization [HTTP/1.1 404 40ms]
GET
XHR
http://che-che.dvodvoks018.devops.full-company-name.fr/api/workspace [HTTP/1.1 304 42ms]
GET
XHR
http://che-che.dvodvoks018.devops.full-company-name.fr/api/workspace [HTTP/1.1 304 42ms]
GET
XHR
http://che-che.dvodvoks018.devops.full-company-name.fr/api/workspace [HTTP/1.1 304 42ms]
GET
XHR
http://che-che.dvodvoks018.devops.full-company-name.fr/api/workspace [HTTP/1.1 304 48ms]
GET
XHR
http://che-che.dvodvoks018.devops.full-company-name.fr/api/workspace [HTTP/1.1 304 48ms]
GET
XHR
http://che-che.dvodvoks018.devops.full-company-name.fr/api/workspace [HTTP/1.1 304 48ms]
GET
http://che-che.dvodvoks018.devops.full-company-name.fr/workspace-loader/che/wksp-hvtg [HTTP/1.1 200 48ms]
GET
http://che-che.dvodvoks018.devops.full-company-name.fr/workspace-loader/che/wksp-hvtg [HTTP/1.1 200 48ms]
GET
http://che-che.dvodvoks018.devops.full-company-name.fr/workspace-loader/che/wksp-hvtg [HTTP/1.1 200 48ms]
The character encoding of a framed document was not declared. The document may appear different if viewed without the document framing it. wksp-hvtg
GET
http://che-che.dvodvoks018.devops.full-company-name.fr/workspace-loader/loader/style.css [HTTP/1.1 200 0ms]
GET
http://che-che.dvodvoks018.devops.full-company-name.fr/workspace-loader/loader/style.css [HTTP/1.1 200 0ms]
GET
http://che-che.dvodvoks018.devops.full-company-name.fr/workspace-loader/loader/style.css [HTTP/1.1 200 0ms]
GET
http://che-che.dvodvoks018.devops.full-company-name.fr/workspace-loader/loader/bundle.js [HTTP/1.1 200 0ms]
GET
http://che-che.dvodvoks018.devops.full-company-name.fr/workspace-loader/loader/bundle.js [HTTP/1.1 200 0ms]
GET
http://che-che.dvodvoks018.devops.full-company-name.fr/workspace-loader/loader/bundle.js [HTTP/1.1 200 0ms]
GET
XHR
http://che-che.dvodvoks018.devops.full-company-name.fr/api/keycloak/settings [HTTP/1.1 404 40ms]
GET
XHR
http://che-che.dvodvoks018.devops.full-company-name.fr/api/keycloak/settings [HTTP/1.1 404 40ms]
GET
XHR
http://che-che.dvodvoks018.devops.full-company-name.fr/api/keycloak/settings [HTTP/1.1 404 40ms]
GET
XHR
http://che-che.dvodvoks018.devops.full-company-name.fr/api/workspace/che/wksp-hvtg [HTTP/1.1 200 43ms]
GET
XHR
http://che-che.dvodvoks018.devops.full-company-name.fr/api/workspace/che/wksp-hvtg [HTTP/1.1 200 43ms]
GET
XHR
http://che-che.dvodvoks018.devops.full-company-name.fr/api/workspace/che/wksp-hvtg [HTTP/1.1 200 43ms]
GET
XHR
http://che-che.dvodvoks018.devops.full-company-name.fr/api/workspace/workspaceq3u5h1nx42s20wpv [HTTP/1.1 200 43ms]
GET
XHR
http://che-che.dvodvoks018.devops.full-company-name.fr/api/workspace/workspaceq3u5h1nx42s20wpv [HTTP/1.1 200 43ms]
GET
XHR
http://che-che.dvodvoks018.devops.full-company-name.fr/api/workspace/workspaceq3u5h1nx42s20wpv [HTTP/1.1 200 43ms]
GET
XHR
http://che-che.dvodvoks018.devops.full-company-name.fr/api/workspace/workspaceq3u5h1nx42s20wpv [HTTP/1.1 200 44ms]
GET
XHR
http://che-che.dvodvoks018.devops.full-company-name.fr/api/workspace/workspaceq3u5h1nx42s20wpv [HTTP/1.1 200 44ms]
GET
XHR
http://che-che.dvodvoks018.devops.full-company-name.fr/api/workspace/workspaceq3u5h1nx42s20wpv [HTTP/1.1 200 44ms]
GET
http://serverqmk2pf9t-theia-ideq56-server-3100.dvodvoks018.devops.full-company-name.fr/ [HTTP/1.1 200 OK 81ms]
GET
http://serverqmk2pf9t-theia-ideq56-server-3100.dvodvoks018.devops.full-company-name.fr/ [HTTP/1.1 200 OK 81ms]
GET
http://serverqmk2pf9t-theia-ideq56-server-3100.dvodvoks018.devops.full-company-name.fr/ [HTTP/1.1 200 OK 81ms]
GET
http://serverqmk2pf9t-theia-ideq56-server-3100.dvodvoks018.devops.full-company-name.fr/runtime.51a9c2917f6d25fe9acc.js [HTTP/1.1 304 Not Modified 40ms]
GET
http://serverqmk2pf9t-theia-ideq56-server-3100.dvodvoks018.devops.full-company-name.fr/runtime.51a9c2917f6d25fe9acc.js [HTTP/1.1 304 Not Modified 40ms]
GET
http://serverqmk2pf9t-theia-ideq56-server-3100.dvodvoks018.devops.full-company-name.fr/runtime.51a9c2917f6d25fe9acc.js [HTTP/1.1 304 Not Modified 40ms]
GET
http://serverqmk2pf9t-theia-ideq56-server-3100.dvodvoks018.devops.full-company-name.fr/cdn-support.79ef8e0583c625da2226.js [HTTP/1.1 304 Not Modified 80ms]
GET
http://serverqmk2pf9t-theia-ideq56-server-3100.dvodvoks018.devops.full-company-name.fr/cdn-support.79ef8e0583c625da2226.js [HTTP/1.1 304 Not Modified 80ms]
GET
http://serverqmk2pf9t-theia-ideq56-server-3100.dvodvoks018.devops.full-company-name.fr/cdn-support.79ef8e0583c625da2226.js [HTTP/1.1 304 Not Modified 80ms]
Synchronous XMLHttpRequest on the main thread is deprecated because of its detrimental effects to the end user鈥檚 experience. For more help http://xhr.spec.whatwg.org/ cdn-support.79ef8e0583c625da2226.js:1:997
HEAD
XHR
https://static.developers.redhat.com/che/theia_artifacts/che.1e54ff4e91be7f851db7.js [0ms]
HEAD
XHR
https://static.developers.redhat.com/che/theia_artifacts/che.1e54ff4e91be7f851db7.js [0ms]
HEAD
XHR
https://static.developers.redhat.com/che/theia_artifacts/che.1e54ff4e91be7f851db7.js [0ms]
NetworkError: A network error occurred. cdn-support.79ef8e0583c625da2226.js:1

Could you share the http responde code of the last requests to static.developers.redhat.com?

Also could you precise which browser you're using ?

Thank you for replying.

Firefox version : 52.1.2

There is no response for the last request.

For information, When I use a web browser from another network that has Internet Access, I get Theia editor displayed.

Could you try with chrome please ?

Firefox is not officially supported afaik.

Same behaviour with Chrome

I get those logs :

Uncaught DOMException: Failed to execute 'send' on 'XMLHttpRequest': Failed to load 'https://static.developers.redhat.com/che/theia_artifacts/che.1e54ff4e91be7f851db7.js'.
at n.url (http://serverrxj1mqfs-theia-ide9m0-server-3100.dvodvoks018.devops.full-company-name.fr/cdn-support.79ef8e0583c625da2226.js:1:1020)
at http://serverrxj1mqfs-theia-ide9m0-server-3100.dvodvoks018.devops.full-company-name.fr/cdn-support.79ef8e0583c625da2226.js:1:620
at Array.map ()
at n.buildScripts (http://serverrxj1mqfs-theia-ide9m0-server-3100.dvodvoks018.devops.full-company-name.fr/cdn-support.79ef8e0583c625da2226.js:1:608)
at http://serverrxj1mqfs-theia-ide9m0-server-3100.dvodvoks018.devops.full-company-name.fr/?uid=581036:9:2150

Could you see in the Network tab and try to grab the http response code of the failing requests ?

I don't get any response. Here what I have in the Headers section :


Request URL: https://static.developers.redhat.com/che/theia_artifacts/che.1e54ff4e91be7f851db7.js
Referrer Policy: no-referrer-when-downgrade
Provisional headers are shown
Referer: http://serverjuaar46y-theia-ideaqx-server-3100.dvodvoks018.full-company-name.fr/?uid=284284
Sec-Fetch-Mode: cors
User-Agent: Mozilla/5.0 (Windows NT 6.3; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/78.0.3878.0 Safari/537.36

The complete request from an exported .har file :


      {
        "startedDateTime": "2019-12-05T08:23:33.756Z",
        "time": 0.004405000014230609,
        "request": {
          "method": "HEAD",
          "url": "https://static.developers.redhat.com/che/theia_artifacts/che.1e54ff4e91be7f851db7.js",
          "httpVersion": "",
          "headers": [
            {
              "name": "Sec-Fetch-Mode",
              "value": "cors"
            },
            {
              "name": "Referer",
              "value": "http://serverjuaar46y-theia-ideaqx-server-3100.dvodvoks018.full-company-name.fr/?uid=3142"
            },
            {
              "name": "User-Agent",
              "value": "Mozilla/5.0 (Windows NT 6.3; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/78.0.3878.0 Safari/537.36"
            }
          ],
          "queryString": [],
          "cookies": [],
          "headersSize": -1,
          "bodySize": 0
        },
        "response": {
          "status": 0,
          "statusText": "",
          "httpVersion": "",
          "headers": [],
          "cookies": [],
          "content": {
            "size": 0,
            "mimeType": "x-unknown"
          },
          "redirectURL": "",
          "headersSize": -1,
          "bodySize": -1,
          "_transferSize": 0,
          "_error": "net::ERR_NAME_NOT_RESOLVED"
        },
        "cache": {},
        "timings": {
          "blocked": 0.004405000014230609,
          "dns": -1,
          "ssl": -1,
          "connect": -1,
          "send": 0,
          "wait": 0,
          "receive": 0,
          "_blocked_queueing": -1
        },
        "serverIPAddress": "",
        "_initiator": {
          "type": "script",
          "stack": {
            "callFrames": [
              {
                "functionName": "url",
                "scriptId": "478",
                "url": "http://serverjuaar46y-theia-ideaqx-server-3100.dvodvoks018.full-company-name.fr/cdn-support.79ef8e0583c625da2226.js",
                "lineNumber": 0,
                "columnNumber": 1019
              },
              {
                "functionName": "",
                "scriptId": "478",
                "url": "http://serverjuaar46y-theia-ideaqx-server-3100.dvodvoks018.full-company-name.fr/cdn-support.79ef8e0583c625da2226.js",
                "lineNumber": 0,
                "columnNumber": 619
              },
              {
                "functionName": "buildScripts",
                "scriptId": "478",
                "url": "http://serverjuaar46y-theia-ideaqx-server-3100.dvodvoks018.full-company-name.fr/cdn-support.79ef8e0583c625da2226.js",
                "lineNumber": 0,
                "columnNumber": 607
              },
              {
                "functionName": "",
                "scriptId": "479",
                "url": "http://serverjuaar46y-theia-ideaqx-server-3100.dvodvoks018.full-company-name.fr/?uid=3142",
                "lineNumber": 8,
                "columnNumber": 2149
              }
            ]
          }
        },
        "_priority": "VeryHigh",
        "_resourceType": "xhr",
        "pageref": "page_1"
      }

Thanks very much @NM4 for these last details. I think they would be very useful.
I'll answer as soon as I can analyzed them.

Hello @davidfestal

Any update about this issue.

Thank you.

This issue disappeared in Che version 7.7.x but reappeared in version 7.8.0 !

hello any update of this issue ?

Hello,
I installed Che version 7.9.2 in offline mode but I still have this same problem: the workspace starts correctly but the theia-ide is not displayed in my browser.
If I reconfigure my workspace to use the version 7.7.0 ( the only one that works) of theia editor then everything is ok.

@NM4 In fact it happens that for some versions (including 7.7.0), the CDN support had been broken. I t has been restored in the meantime, which explains why you're getting your problem back.
However let me provide a bit more analysis here:
In the detail of the HEAD request that you shared above, I can see the following:

        "request": {
          "method": "HEAD",
          "url": "https://static.developers.redhat.com/che/theia_artifacts/che.1e54ff4e91be7f851db7.js",
          "httpVersion": "",
          "headers": [
            {
              "name": "Sec-Fetch-Mode",
              "value": "cors"
            },
            {
              "name": "Referer",
              "value": "http://serverjuaar46y-theia-ideaqx-server-3100.dvodvoks018.full-company-name.fr/?uid=3142"
            },
            {
              "name": "User-Agent",
              "value": "Mozilla/5.0 (Windows NT 6.3; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/78.0.3878.0 Safari/537.36"
            }
          ],
          "queryString": [],
          "cookies": [],
          "headersSize": -1,
          "bodySize": 0
        },
        "response": {
          "status": 0,
          "statusText": "",
          "httpVersion": "",
          "headers": [],
          "cookies": [],
          "content": {
            "size": 0,
            "mimeType": "x-unknown"
          },
          "redirectURL": "",
          "headersSize": -1,
          "bodySize": -1,
          "_transferSize": 0,
          "_error": "net::ERR_NAME_NOT_RESOLVED"

That means that an exception occurred before even returning a response. In fact it seems to be a DNS error.
After looking into the code, we should catch such exceptions and simply ignore them, in order to bypass CDN and retrieve the artifacts from the Che-theia express server itself.

I'll provide a PR asap on this.

che-theia v7.11.0, has this issue.

How to disabe CDN support in offline mode ? THX

Hi, having the same issue with Che version 7.9.2
Is there a workaround?

thanks

@dealboy that has been fixed in 7.9.3

@davidfestal adding need-triage label for revision and fix confirmation

In my environment, the only version of Theia ide that works offline is 7.7.0
I modified the Che plugins registry and set this version as default ( or set it as the only one)
I hope that will be fixed soon.

@dealboy that has been fixed in 7.9.3

Thanks for the info, we decided to move our offline test installation to the latest version (currently 7.13.2) and the issue is fixed.

Thanks, I'll test 7.13.2 version.

Let me provide some more information here:

  • In the initial issue, the root cause of the failure was not the fact that CDN files were accessed from the static.developers.redhat.com, but the fact that the CDN mechanism didn't correctly catch the error that occurred when trying to access them.
  • You should not be required to manually disable CDN support in case of an offline environment. The PRs linked to this issue make the CDN support robust enough to detect when CDN artifacts are not reachable, and switch to non-CDN artifacts in such cases.
  • However if there is a mandatory reason to never use the CDN (which will obviously decrease Theia loading performances), then the NOCDN environment variable can be added in the Theia plugin section of the Devfile, in order to force disabling the CDN completely.

However if there is a mandatory reason to never use the CDN (which will obviously decrease Theia loading performances), then the NOCDN environment variable can be added in the Theia plugin section of the Devfile, in order to force disabling the CDN completely.

@davidfestal, would it be worth adding this piece of info to https://www.eclipse.org/che/docs/che-7/installing-che-in-restricted-environment/?

However if there is a mandatory reason to never use the CDN (which will obviously decrease Theia loading performances), then the NOCDN environment variable can be added in the Theia plugin section of the Devfile, in order to force disabling the CDN completely.

@davidfestal
Is it possible to set this globally for all users and workspaces?

Was this page helpful?
0 / 5 - 0 ratings

Related issues

johnmcollier picture johnmcollier  路  3Comments

LaneGeek picture LaneGeek  路  3Comments

sleshchenko picture sleshchenko  路  3Comments

InterestedInTechAndCake picture InterestedInTechAndCake  路  3Comments

sudheerherle picture sudheerherle  路  3Comments