Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
10 changes: 10 additions & 0 deletions pkg/config/config.go
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@ package config

import (
"fmt"
"io/ioutil"
"os"
)

Expand All @@ -37,3 +38,12 @@ func GetDefaultExecImage() (string, error) {
}
return val, nil
}

func GetNamespace() (string, error) {
namespace, err := ioutil.ReadFile("/var/run/secrets/kubernetes.io/serviceaccount/namespace")
if err != nil {
return "", err
}
return string(namespace), err
}

1 change: 0 additions & 1 deletion pkg/config/constants.go
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,6 @@ const (

ToolingTemplateName = "web-terminal-tooling"
ExecTemplateName = "web-terminal-exec"
DefaultTemplatesNamespace = "openshift-operators"

ToolingMemoryRequest = "128Mi"
ToolingMemoryLimit = "256Mi"
Expand Down
11 changes: 9 additions & 2 deletions pkg/webterminal/defaults.go
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@ package webterminal

import (
"context"
"github.com/redhat-developer/web-terminal-operator/pkg/config"

ctrl "sigs.k8s.io/controller-runtime"
crclient "sigs.k8s.io/controller-runtime/pkg/client"
Expand All @@ -25,11 +26,17 @@ var (

func SetupDefaultWebTerminalTemplates(ctx context.Context, client crclient.Client) error {
log.Info("Syncing DevWorkspaceTemplate for Web Terminal Tooling")
if err := syncToolingTemplate(ctx, client); err != nil {

namespace, err := config.GetNamespace()
if err != nil {
return err
}

if err := syncToolingTemplate(ctx, client, namespace); err != nil {
return err
}
log.Info("Syncing DevWorkspaceTemplate for Web Terminal Exec")
if err := syncExecTemplate(ctx, client); err != nil {
if err := syncExecTemplate(ctx, client, namespace); err != nil {
return err
}

Expand Down
14 changes: 7 additions & 7 deletions pkg/webterminal/exec.go
Original file line number Diff line number Diff line change
Expand Up @@ -25,12 +25,12 @@ import (
"github.com/redhat-developer/web-terminal-operator/pkg/config"
)

func syncExecTemplate(ctx context.Context, client crclient.Client) error {
clusterDWT, err := getClusterExecTemplate(ctx, client)
func syncExecTemplate(ctx context.Context, client crclient.Client, namespace string) error {
clusterDWT, err := getClusterExecTemplate(ctx, client, namespace)
if err != nil {
return err
}
specDWT, err := getSpecExecTemplate()
specDWT, err := getSpecExecTemplate(namespace)
if err != nil {
return nil
}
Expand All @@ -44,7 +44,7 @@ func syncExecTemplate(ctx context.Context, client crclient.Client) error {
return nil
}

func getSpecExecTemplate() (*dw.DevWorkspaceTemplate, error) {
func getSpecExecTemplate(namespace string) (*dw.DevWorkspaceTemplate, error) {
image, err := config.GetDefaultExecImage()
if err != nil {
return nil, err
Expand All @@ -56,7 +56,7 @@ func getSpecExecTemplate() (*dw.DevWorkspaceTemplate, error) {
dwt := &dw.DevWorkspaceTemplate{
ObjectMeta: v1.ObjectMeta{
Name: config.ExecTemplateName,
Namespace: config.DefaultTemplatesNamespace,
Namespace: namespace,
Annotations: map[string]string{
config.PermittedNamespacesAnnotation: "*",
},
Expand Down Expand Up @@ -104,11 +104,11 @@ func getSpecExecTemplate() (*dw.DevWorkspaceTemplate, error) {
return dwt, nil
}

func getClusterExecTemplate(ctx context.Context, client crclient.Client) (*dw.DevWorkspaceTemplate, error) {
func getClusterExecTemplate(ctx context.Context, client crclient.Client, namespace string) (*dw.DevWorkspaceTemplate, error) {
execTemplate := &dw.DevWorkspaceTemplate{}
execRef := types.NamespacedName{
Name: config.ExecTemplateName,
Namespace: config.DefaultTemplatesNamespace,
Namespace: namespace,
}
err := client.Get(ctx, execRef, execTemplate)
if err != nil {
Expand Down
14 changes: 7 additions & 7 deletions pkg/webterminal/tooling.go
Original file line number Diff line number Diff line change
Expand Up @@ -24,12 +24,12 @@ import (
"github.com/redhat-developer/web-terminal-operator/pkg/config"
)

func syncToolingTemplate(ctx context.Context, client crclient.Client) error {
clusterDWT, err := getClusterToolingTemplate(ctx, client)
func syncToolingTemplate(ctx context.Context, client crclient.Client, namespace string) error {
clusterDWT, err := getClusterToolingTemplate(ctx, client, namespace)
if err != nil {
return err
}
specDWT, err := getSpecToolingTemplate()
specDWT, err := getSpecToolingTemplate(namespace)
if err != nil {
return nil
}
Expand All @@ -44,7 +44,7 @@ func syncToolingTemplate(ctx context.Context, client crclient.Client) error {
return nil
}

func getSpecToolingTemplate() (*dw.DevWorkspaceTemplate, error) {
func getSpecToolingTemplate(namespace string) (*dw.DevWorkspaceTemplate, error) {
image, err := config.GetDefaultToolingImage()
if err != nil {
return nil, err
Expand All @@ -54,7 +54,7 @@ func getSpecToolingTemplate() (*dw.DevWorkspaceTemplate, error) {
dwt := &dw.DevWorkspaceTemplate{
ObjectMeta: v1.ObjectMeta{
Name: config.ToolingTemplateName,
Namespace: config.DefaultTemplatesNamespace,
Namespace: namespace,
Annotations: map[string]string{
config.PermittedNamespacesAnnotation: "*",
},
Expand Down Expand Up @@ -87,11 +87,11 @@ func getSpecToolingTemplate() (*dw.DevWorkspaceTemplate, error) {
return dwt, nil
}

func getClusterToolingTemplate(ctx context.Context, client crclient.Client) (*dw.DevWorkspaceTemplate, error) {
func getClusterToolingTemplate(ctx context.Context, client crclient.Client, namespace string) (*dw.DevWorkspaceTemplate, error) {
toolingTemplate := &dw.DevWorkspaceTemplate{}
toolingRef := types.NamespacedName{
Name: config.ToolingTemplateName,
Namespace: config.DefaultTemplatesNamespace,
Namespace: namespace,
}
err := client.Get(ctx, toolingRef, toolingTemplate)
if err != nil {
Expand Down