Skip to content

Commit ce39b26

Browse files
committed
Add function to populate env vars required by machine-exec
Machine exec depends on the CHE_MACHINE_NAME plugin to find the right container to exec into. Add a function for populating env vars to the shim library. Signed-off-by: Angel Misevski <[email protected]>
1 parent 3d1c1f0 commit ce39b26

File tree

2 files changed

+10
-0
lines changed

2 files changed

+10
-0
lines changed

controllers/workspace/devworkspace_controller.go

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -188,6 +188,7 @@ func (r *DevWorkspaceReconciler) Reconcile(req ctrl.Request) (reconcileResult ct
188188
reconcileStatus.Conditions[devworkspace.WorkspaceFailedStart] = fmt.Sprintf("Error processing devfile volumes: %s", err)
189189
return reconcile.Result{}, nil
190190
}
191+
shimlib.FillDefaultEnvVars(devfilePodAdditions, workspace.Spec.Template)
191192
componentDescriptions, err := shimlib.GetComponentDescriptionsFromPodAdditions(devfilePodAdditions, workspace.Spec.Template)
192193
if err != nil {
193194
reqLogger.Info("DevWorkspace start failed")

pkg/library/shim/component.go

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,15 @@ import (
2626
corev1 "k8s.io/api/core/v1"
2727
)
2828

29+
func FillDefaultEnvVars(podAdditions *v1alpha1.PodAdditions, workspace devworkspace.DevWorkspaceTemplateSpec) {
30+
for idx, mainContainer := range podAdditions.Containers {
31+
podAdditions.Containers[idx].Env = append(mainContainer.Env, corev1.EnvVar{
32+
Name: "CHE_MACHINE_NAME",
33+
Value: mainContainer.Name,
34+
})
35+
}
36+
}
37+
2938
func GetComponentDescriptionsFromPodAdditions(podAdditions *v1alpha1.PodAdditions, workspace devworkspace.DevWorkspaceTemplateSpec) ([]v1alpha1.ComponentDescription, error) {
3039
var descriptions []v1alpha1.ComponentDescription
3140

0 commit comments

Comments
 (0)