2
0
Эх сурвалжийг харах

lookup correct agent key + fix compilation

Alexander Belanger 4 жил өмнө
parent
commit
ead5061ff2

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

@@ -80,7 +80,7 @@ func (d *OutOfClusterAgentGetter) GetOutOfClusterConfig(cluster *models.Cluster)
 
 func (d *OutOfClusterAgentGetter) GetAgent(r *http.Request, cluster *models.Cluster) (*kubernetes.Agent, error) {
 	// look for the agent in context
-	ctxAgentVal := r.Context().Value(types.ClusterScope)
+	ctxAgentVal := r.Context().Value(KubernetesAgentCtxKey)
 
 	if ctxAgentVal != nil {
 		if agent, ok := ctxAgentVal.(*kubernetes.Agent); ok {

+ 4 - 3
api/server/handlers/cluster/delete_namespace.go

@@ -3,6 +3,7 @@ package cluster
 import (
 	"net/http"
 
+	"github.com/porter-dev/porter/api/server/authz"
 	"github.com/porter-dev/porter/api/server/handlers"
 	"github.com/porter-dev/porter/api/server/shared"
 	"github.com/porter-dev/porter/api/server/shared/apierrors"
@@ -12,7 +13,7 @@ import (
 
 type DeleteNamespaceHandler struct {
 	handlers.PorterHandlerReader
-	KubernetesAgentGetter
+	authz.KubernetesAgentGetter
 }
 
 func NewDeleteNamespaceHandler(
@@ -21,7 +22,7 @@ func NewDeleteNamespaceHandler(
 ) *DeleteNamespaceHandler {
 	return &DeleteNamespaceHandler{
 		PorterHandlerReader:   handlers.NewDefaultPorterHandler(config, decoderValidator, nil),
-		KubernetesAgentGetter: NewDefaultKubernetesAgentGetter(config),
+		KubernetesAgentGetter: authz.NewOutOfClusterAgentGetter(config),
 	}
 }
 
@@ -34,7 +35,7 @@ func (c *DeleteNamespaceHandler) ServeHTTP(w http.ResponseWriter, r *http.Reques
 
 	cluster, _ := r.Context().Value(types.ClusterScope).(*models.Cluster)
 
-	agent, err := c.GetAgent(cluster)
+	agent, err := c.GetAgent(r, cluster)
 
 	if err != nil {
 		c.HandleAPIError(w, apierrors.NewErrInternal(err))

+ 4 - 3
api/server/handlers/cluster/detect_prometheus_installed.go

@@ -3,6 +3,7 @@ package cluster
 import (
 	"net/http"
 
+	"github.com/porter-dev/porter/api/server/authz"
 	"github.com/porter-dev/porter/api/server/handlers"
 	"github.com/porter-dev/porter/api/server/shared"
 	"github.com/porter-dev/porter/api/server/shared/apierrors"
@@ -13,7 +14,7 @@ import (
 
 type DetectPrometheusInstalledHandler struct {
 	handlers.PorterHandler
-	KubernetesAgentGetter
+	authz.KubernetesAgentGetter
 }
 
 func NewDetectPrometheusInstalledHandler(
@@ -21,14 +22,14 @@ func NewDetectPrometheusInstalledHandler(
 ) *DetectPrometheusInstalledHandler {
 	return &DetectPrometheusInstalledHandler{
 		PorterHandler:         handlers.NewDefaultPorterHandler(config, nil, nil),
-		KubernetesAgentGetter: NewDefaultKubernetesAgentGetter(config),
+		KubernetesAgentGetter: authz.NewOutOfClusterAgentGetter(config),
 	}
 }
 
 func (c *DetectPrometheusInstalledHandler) ServeHTTP(w http.ResponseWriter, r *http.Request) {
 	cluster, _ := r.Context().Value(types.ClusterScope).(*models.Cluster)
 
-	agent, err := c.GetAgent(cluster)
+	agent, err := c.GetAgent(r, cluster)
 
 	if err != nil {
 		c.HandleAPIError(w, apierrors.NewErrInternal(err))

+ 4 - 3
api/server/handlers/cluster/get.go

@@ -3,6 +3,7 @@ package cluster
 import (
 	"net/http"
 
+	"github.com/porter-dev/porter/api/server/authz"
 	"github.com/porter-dev/porter/api/server/handlers"
 	"github.com/porter-dev/porter/api/server/shared"
 	"github.com/porter-dev/porter/api/server/shared/apierrors"
@@ -14,7 +15,7 @@ import (
 
 type ClusterGetHandler struct {
 	handlers.PorterHandlerWriter
-	KubernetesAgentGetter
+	authz.KubernetesAgentGetter
 }
 
 func NewClusterGetHandler(
@@ -23,7 +24,7 @@ func NewClusterGetHandler(
 ) *ClusterGetHandler {
 	return &ClusterGetHandler{
 		PorterHandlerWriter:   handlers.NewDefaultPorterHandler(config, nil, writer),
-		KubernetesAgentGetter: NewDefaultKubernetesAgentGetter(config),
+		KubernetesAgentGetter: authz.NewOutOfClusterAgentGetter(config),
 	}
 }
 
@@ -34,7 +35,7 @@ func (c *ClusterGetHandler) ServeHTTP(w http.ResponseWriter, r *http.Request) {
 		Cluster: cluster.ToClusterType(),
 	}
 
-	agent, err := c.GetAgent(cluster)
+	agent, err := c.GetAgent(r, cluster)
 
 	if err != nil {
 		c.HandleAPIError(w, apierrors.NewErrInternal(err))

+ 3 - 2
api/server/handlers/cluster/get_kubeconfig.go

@@ -3,6 +3,7 @@ package cluster
 import (
 	"net/http"
 
+	"github.com/porter-dev/porter/api/server/authz"
 	"github.com/porter-dev/porter/api/server/handlers"
 	"github.com/porter-dev/porter/api/server/shared"
 	"github.com/porter-dev/porter/api/server/shared/apierrors"
@@ -13,7 +14,7 @@ import (
 
 type GetTemporaryKubeconfigHandler struct {
 	handlers.PorterHandlerWriter
-	KubernetesAgentGetter
+	authz.KubernetesAgentGetter
 }
 
 func NewGetTemporaryKubeconfigHandler(
@@ -22,7 +23,7 @@ func NewGetTemporaryKubeconfigHandler(
 ) *GetTemporaryKubeconfigHandler {
 	return &GetTemporaryKubeconfigHandler{
 		PorterHandlerWriter:   handlers.NewDefaultPorterHandler(config, nil, writer),
-		KubernetesAgentGetter: NewDefaultKubernetesAgentGetter(config),
+		KubernetesAgentGetter: authz.NewOutOfClusterAgentGetter(config),
 	}
 }
 

+ 6 - 4
api/server/handlers/cluster/get_pod_metrics.go

@@ -1,9 +1,11 @@
 package cluster
 
 import (
-	"github.com/porter-dev/porter/internal/kubernetes/prometheus"
 	"net/http"
 
+	"github.com/porter-dev/porter/internal/kubernetes/prometheus"
+
+	"github.com/porter-dev/porter/api/server/authz"
 	"github.com/porter-dev/porter/api/server/handlers"
 	"github.com/porter-dev/porter/api/server/shared"
 	"github.com/porter-dev/porter/api/server/shared/apierrors"
@@ -13,7 +15,7 @@ import (
 
 type GetPodMetricsHandler struct {
 	handlers.PorterHandlerReadWriter
-	KubernetesAgentGetter
+	authz.KubernetesAgentGetter
 }
 
 func NewGetPodMetricsHandler(
@@ -23,7 +25,7 @@ func NewGetPodMetricsHandler(
 ) *GetPodMetricsHandler {
 	return &GetPodMetricsHandler{
 		PorterHandlerReadWriter: handlers.NewDefaultPorterHandler(config, decoderValidator, writer),
-		KubernetesAgentGetter:   NewDefaultKubernetesAgentGetter(config),
+		KubernetesAgentGetter:   authz.NewOutOfClusterAgentGetter(config),
 	}
 }
 
@@ -36,7 +38,7 @@ func (c *GetPodMetricsHandler) ServeHTTP(w http.ResponseWriter, r *http.Request)
 
 	cluster, _ := r.Context().Value(types.ClusterScope).(*models.Cluster)
 
-	agent, err := c.GetAgent(cluster)
+	agent, err := c.GetAgent(r, cluster)
 
 	if err != nil {
 		c.HandleAPIError(w, apierrors.NewErrInternal(err))

+ 4 - 3
api/server/handlers/cluster/list_namespaces.go

@@ -3,6 +3,7 @@ package cluster
 import (
 	"net/http"
 
+	"github.com/porter-dev/porter/api/server/authz"
 	"github.com/porter-dev/porter/api/server/handlers"
 	"github.com/porter-dev/porter/api/server/shared"
 	"github.com/porter-dev/porter/api/server/shared/apierrors"
@@ -12,7 +13,7 @@ import (
 
 type ListNamespacesHandler struct {
 	handlers.PorterHandlerWriter
-	KubernetesAgentGetter
+	authz.KubernetesAgentGetter
 }
 
 func NewListNamespacesHandler(
@@ -21,14 +22,14 @@ func NewListNamespacesHandler(
 ) *ListNamespacesHandler {
 	return &ListNamespacesHandler{
 		PorterHandlerWriter:   handlers.NewDefaultPorterHandler(config, nil, writer),
-		KubernetesAgentGetter: NewDefaultKubernetesAgentGetter(config),
+		KubernetesAgentGetter: authz.NewOutOfClusterAgentGetter(config),
 	}
 }
 
 func (c *ListNamespacesHandler) ServeHTTP(w http.ResponseWriter, r *http.Request) {
 	cluster, _ := r.Context().Value(types.ClusterScope).(*models.Cluster)
 
-	agent, err := c.GetAgent(cluster)
+	agent, err := c.GetAgent(r, cluster)
 
 	if err != nil {
 		c.HandleAPIError(w, apierrors.NewErrInternal(err))

+ 4 - 3
api/server/handlers/cluster/list_nginx_ingresses.go

@@ -3,6 +3,7 @@ package cluster
 import (
 	"net/http"
 
+	"github.com/porter-dev/porter/api/server/authz"
 	"github.com/porter-dev/porter/api/server/handlers"
 	"github.com/porter-dev/porter/api/server/shared"
 	"github.com/porter-dev/porter/api/server/shared/apierrors"
@@ -13,7 +14,7 @@ import (
 
 type ListNGINXIngressesHandler struct {
 	handlers.PorterHandlerWriter
-	KubernetesAgentGetter
+	authz.KubernetesAgentGetter
 }
 
 func NewListNGINXIngressesHandler(
@@ -22,14 +23,14 @@ func NewListNGINXIngressesHandler(
 ) *ListNGINXIngressesHandler {
 	return &ListNGINXIngressesHandler{
 		PorterHandlerWriter:   handlers.NewDefaultPorterHandler(config, nil, writer),
-		KubernetesAgentGetter: NewDefaultKubernetesAgentGetter(config),
+		KubernetesAgentGetter: authz.NewOutOfClusterAgentGetter(config),
 	}
 }
 
 func (c *ListNGINXIngressesHandler) ServeHTTP(w http.ResponseWriter, r *http.Request) {
 	cluster, _ := r.Context().Value(types.ClusterScope).(*models.Cluster)
 
-	agent, err := c.GetAgent(cluster)
+	agent, err := c.GetAgent(r, cluster)
 
 	if err != nil {
 		c.HandleAPIError(w, apierrors.NewErrInternal(err))