Open
Description
Description
When creating a workspace with this DevWorkspace:
DevWorkspace CR
kind: DevWorkspace
apiVersion: workspace.devfile.io/v1alpha2
metadata:
name: code-latest
spec:
started: true
template:
projects:
- name: web-nodejs-sample
git:
remotes:
origin: "https://github.com/che-samples/web-nodejs-sample.git"
components:
- name: dev
container:
image: quay.io/devfile/universal-developer-image:latest
memoryLimit: 512Mi
memoryRequest: 256Mi
cpuRequest: 1000m
commands:
- id:
template:
projects:
- name: web-nodejs-sample
git:
remotes:
origin: "https://github.com/che-samples/web-nodejs-sample.git"
components:
- name: dev
container:
image: quay.io/devfile/universal-developer-image:latest
memoryLimit: 512Mi
memoryRequest: 256Mi
cpuRequest: 1000m
commands:
- id: say-hello
exec:
component: dev
commandLine: echo "Hello {{test}} $(pwd)"
workingDir: ${PROJECT_SOURCE}/app
contributions:
- name: che-code
uri: https://eclipse-che.github.io/che-plugin-registry/main/v3/plugins/che-incubator/che-code/latest/devfile.yaml
components:
- name: che-code-runtime-description
container:
env:
- name: CODE_HOST
value: 0.0.0.0
the workspace starts and container contributions do not happen.
In the example above, there is a undeclared variable {{test}}
in the say-hello
command.
See usage of variables in devfile spec
How To Reproduce
- Create the DevWorkspace reference above
- When the workspace pod starts, verify that the
che-code-runtime-description
exists as it's own container in the pod:
Expected behavior
Ideally, workspace start should fail with a descriptive error message in this case.
Additional context
It's happening if the global variable validation fails here:
devworkspace-operator/pkg/library/flatten/flatten.go
Lines 64 to 68 in 4b2fcda
the function exits early without doing the container contributions and the workspace starts up without notifying the user.
Metadata
Metadata
Assignees
Labels
No labels