Once workspace is created a few links are exposed via workspace API e.g.
"links":{
"self":"https://che.openshift.io/api/workspace/workspacet0gu6w16w0ldx1zd",
"ide":"https://che.openshift.io/[email protected]/wksp-d0fg",
"environment/statusChannel":"wss://che.openshift.io/api/websocket",
"environment/outputChannel":"wss://che.openshift.io/api/websocket"
}
However, for workspaces created based on che7 stacks, navigating to ide link does not open Theia IDE:

NOTE: navigating to workspace via UD e.g. https://che.openshift.io/dashboard/#/ide/[email protected]/wksp-d0fg works just fine since the url is edirect to workspace-loader app and it decides which IDE to load in this method https://github.com/eclipse/che/blob/master/workspace-loader/src/index.ts#L348

Currently, this issue prevents che-starter to support che7 for openshift.io flow since workspace startup fall back on ide link provided by workspace API.
More details can be found in https://github.com/redhat-developer/che-starter/pull/323#issuecomment-452736290
Talked with @vparfonov today about this issue. I think it is related to the way how we handle http://host/namespace/workspacename links in https://github.com/eclipse/che/search?q=IDEController&unscoped_q=IDEController
@vparfonov hi, could you please clarify if the issue planned to be fixed in 6.18.0 ?
@ibuziuk Hi, yes work on it. Will be done on this week
@vparfonov not sure I'm doing everything correct, but I can not find ide link in the GET /workspace for che 7 workspace:
[
{
"namespace": "che",
"links": {},
"config": {
"defaultEnv": "default",
"environments": {
"default": {
"recipe": {
"contentType": "application/x-yaml",
"type": "kubernetes",
"content": "kind: List\nitems:\n - \n apiVersion: v1\n kind: Pod\n metadata:\n name: ws\n spec:\n containers:\n - \n image: 'eclipse/che-dev:nightly'\n name: dev\n resources:\n limits:\n memory: 512Mi\n"
},
"machines": {
"ws/dev": {
"volumes": {
"projects": {
"path": "/projects"
}
},
"installers": [],
"env": {},
"servers": {},
"attributes": {
"memoryLimitBytes": "536870912"
}
}
}
}
},
"projects": [
{
"description": "A hello world Java application.",
"source": {
"location": "https://github.com/che-samples/console-java-simple.git",
"type": "git",
"parameters": {}
},
"links": [],
"problems": [],
"mixins": [],
"name": "console-java-simple",
"type": "maven",
"path": "/console-java-simple",
"attributes": {
"language": [
"java"
]
}
}
],
"commands": [
{
"commandLine": "mvn -f ${current.project.path} clean install",
"name": "console-java-simple:build",
"type": "mvn",
"attributes": {
"goal": "Build",
"previewUrl": ""
}
},
{
"commandLine": "mvn -f ${current.project.path} clean install \njava -jar ${current.project.path}/target/*.jar",
"name": "console-java-simple:run",
"type": "mvn",
"attributes": {
"goal": "Run",
"previewUrl": ""
}
}
],
"name": "wksp-tecj",
"attributes": {
"editor": "org.eclipse.che.editor.theia:1.0.0",
"plugins": "che-machine-exec-plugin:0.0.1"
},
"links": []
},
"status": "STOPPED",
"temporary": false,
"id": "workspacekiflnbnct799hr1x",
"attributes": {
"org.eclipse.che.runtimes_id": "runtimesoz72dz3yks5wkvai",
"stopped": "1549627921147",
"created": "1549625018493",
"stoppedAbnormally": "false",
"stackId": "che7-preview",
"updated": "1549625201096"
}
}
]
@ibuziuk and on a RUNNING workspace ?
@benoitf could you please clarify why should it matter? I would expect that links would be available regardless of the workspace state (otherwise it will not work for openshift.io flow)
links for running che 7 workspace seems to be also missing:
[
{
"namespace": "che",
"links": {},
"config": {
"defaultEnv": "default",
"environments": {
"default": {
"recipe": {
"contentType": "application/x-yaml",
"type": "kubernetes",
"content": "kind: List\nitems:\n - \n apiVersion: v1\n kind: Pod\n metadata:\n name: ws\n spec:\n containers:\n - \n image: 'eclipse/che-dev:nightly'\n name: dev\n resources:\n limits:\n memory: 512Mi\n"
},
"machines": {
"ws/dev": {
"volumes": {
"projects": {
"path": "/projects"
}
},
"installers": [],
"env": {},
"servers": {},
"attributes": {
"memoryLimitBytes": "536870912"
}
}
}
}
},
"projects": [
{
"description": "A hello world Java application.",
"source": {
"location": "https://github.com/che-samples/console-java-simple.git",
"type": "git",
"parameters": {}
},
"links": [],
"problems": [],
"mixins": [],
"name": "console-java-simple",
"type": "maven",
"path": "/console-java-simple",
"attributes": {
"language": [
"java"
]
}
}
],
"commands": [
{
"commandLine": "mvn -f ${current.project.path} clean install",
"name": "console-java-simple:build",
"type": "mvn",
"attributes": {
"goal": "Build",
"previewUrl": ""
}
},
{
"commandLine": "mvn -f ${current.project.path} clean install \njava -jar ${current.project.path}/target/*.jar",
"name": "console-java-simple:run",
"type": "mvn",
"attributes": {
"goal": "Run",
"previewUrl": ""
}
}
],
"name": "wksp-tecj",
"attributes": {
"editor": "org.eclipse.che.editor.theia:1.0.0",
"plugins": "che-machine-exec-plugin:0.0.1"
},
"links": []
},
"status": "RUNNING",
"temporary": false,
"id": "workspacekiflnbnct799hr1x",
"attributes": {
"org.eclipse.che.runtimes_id": "runtimesoz72dz3yks5wkvai",
"updated": "1549642673199",
"created": "1549625018493",
"stackId": "che7-preview"
}
}
]
@ibuziuk you should use /workspace/<workspace-id> (/workspace is not giving these details)
@ibuziuk and some links are only available when a workspace is running (didn't check for ide)
you should use
/workspace/<workspace-id>(/workspaceis not giving these details)
@benoitf hmm.. interesting was it always like that or. smth. have changed in API recently ?
ok seems that ide link presents in the response even for stopped workspace and navigating to it start che 7 workspace. All looks good - thanks @vparfonov