Prechádzať zdrojové kódy

support all namespaces more cleanly

Alexander Belanger 4 rokov pred
rodič
commit
f7d8c5457e

+ 1 - 6
api/server/authz/cluster.go

@@ -4,7 +4,6 @@ import (
 	"context"
 	"fmt"
 	"net/http"
-	"strings"
 
 	"github.com/porter-dev/porter/api/server/shared/apierrors"
 	"github.com/porter-dev/porter/api/server/shared/config"
@@ -139,14 +138,10 @@ func (d *OutOfClusterAgentGetter) GetHelmAgent(r *http.Request, cluster *models.
 	reqScopes, _ := r.Context().Value(types.RequestScopeCtxKey).(map[types.PermissionScope]*types.RequestAction)
 	namespace := "default"
 
-	if nsPolicy, ok := reqScopes[types.NamespaceScope]; ok && nsPolicy.Resource.Name != "" {
+	if nsPolicy, ok := reqScopes[types.NamespaceScope]; ok {
 		namespace = nsPolicy.Resource.Name
 	}
 
-	if strings.ToLower(namespace) == "all" {
-		namespace = ""
-	}
-
 	helmAgent, err := helm.GetAgentFromK8sAgent("secret", namespace, d.config.Logger, k8sAgent)
 
 	if err != nil {

+ 5 - 0
api/server/authz/namespace.go

@@ -3,6 +3,7 @@ package authz
 import (
 	"context"
 	"net/http"
+	"strings"
 
 	"github.com/porter-dev/porter/api/server/shared/config"
 	"github.com/porter-dev/porter/api/types"
@@ -33,6 +34,10 @@ func (n *NamespaceScopedMiddleware) ServeHTTP(w http.ResponseWriter, r *http.Req
 
 	namespace := reqScopes[types.NamespaceScope].Resource.Name
 
+	if strings.ToLower(namespace) == "all" {
+		namespace = ""
+	}
+
 	ctx := NewNamespaceContext(r.Context(), namespace)
 	r = r.Clone(ctx)
 	n.next.ServeHTTP(w, r)