Procházet zdrojové kódy

Update github actions (#3163)

Stefan McShane před 2 roky
rodič
revize
2e8cd3d1b3

+ 1 - 1
.github/workflows/install_script.yml

@@ -18,7 +18,7 @@ jobs:
         with:
           app: install-script
           cluster: "9"
-          host: https://dashboard.internal-tools.getporter.dev
+          host: https://dashboard.internal-tools.porter.run
           namespace: default
           project: "5"
           tag: ${{ steps.vars.outputs.sha_short }}

+ 1 - 1
.github/workflows/internal_tooling_stack_porter-ui.yml

@@ -86,7 +86,7 @@ jobs:
           command: apply -f nonexistant-porter.yaml
         env:
           PORTER_CLUSTER: "11"
-          PORTER_HOST: https://dashboard.internal-tools.getporter.dev
+          PORTER_HOST: https://dashboard.internal-tools.porter.run
           PORTER_PROJECT: "8"
           PORTER_STACK_NAME: porter-ui
           PORTER_TAG: ${{ steps.vars.outputs.sha_short }}

+ 1 - 1
.github/workflows/production.yml

@@ -80,7 +80,7 @@ jobs:
         with:
           app: porter-ui
           cluster: "9"
-          host: https://dashboard.internal-tools.getporter.dev
+          host: https://dashboard.internal-tools.porter.run
           namespace: default
           project: "5"
           tag: ${{ steps.vars.outputs.sha_short }}

+ 1 - 1
.github/workflows/tf_provisioner.yml

@@ -18,7 +18,7 @@ jobs:
         with:
           app: tf-provisioner
           cluster: "9"
-          host: https://dashboard.internal-tools.getporter.dev
+          host: https://dashboard.internal-tools.porter.run
           namespace: default
           project: "5"
           tag: ${{ steps.vars.outputs.sha_short }}

+ 31 - 17
api/server/handlers/namespace/list_releases.go

@@ -1,7 +1,6 @@
 package namespace
 
 import (
-	"context"
 	"net/http"
 
 	"github.com/porter-dev/porter/api/server/authz"
@@ -11,6 +10,7 @@ import (
 	"github.com/porter-dev/porter/api/server/shared/config"
 	"github.com/porter-dev/porter/api/types"
 	"github.com/porter-dev/porter/internal/models"
+	"github.com/porter-dev/porter/internal/telemetry"
 )
 
 type ListReleasesHandler struct {
@@ -30,6 +30,9 @@ func NewListReleasesHandler(
 }
 
 func (c *ListReleasesHandler) ServeHTTP(w http.ResponseWriter, r *http.Request) {
+	ctx, span := telemetry.NewSpan(r.Context(), "serve-list-releases")
+	defer span.End()
+
 	request := &types.ListReleasesRequest{}
 
 	if ok := c.DecodeAndValidate(w, r, request); !ok {
@@ -40,37 +43,48 @@ func (c *ListReleasesHandler) ServeHTTP(w http.ResponseWriter, r *http.Request)
 		request.ReleaseListFilter = &types.ReleaseListFilter{}
 	}
 
-	namespace := r.Context().Value(types.NamespaceScope).(string)
-	cluster, _ := r.Context().Value(types.ClusterScope).(*models.Cluster)
+	namespace := ctx.Value(types.NamespaceScope).(string)
+	cluster, _ := ctx.Value(types.ClusterScope).(*models.Cluster)
+
+	telemetry.WithAttributes(span,
+		telemetry.AttributeKV{Key: "namespace", Value: namespace},
+		telemetry.AttributeKV{Key: "cluster_id", Value: cluster.ID},
+	)
 
-	helmAgent, err := c.GetHelmAgent(r.Context(), r, cluster, "")
+	helmAgent, err := c.GetHelmAgent(ctx, r, cluster, "")
 	if err != nil {
-		c.HandleAPIError(w, r, apierrors.NewErrInternal(err))
+		e := telemetry.Error(ctx, span, err, "failed to get helm agent")
+		c.HandleAPIError(w, r, apierrors.NewErrPassThroughToClient(e, http.StatusInternalServerError))
 		return
 	}
 
-	releases, err := helmAgent.ListReleases(context.Background(), namespace, request.ReleaseListFilter)
+	releases, err := helmAgent.ListReleases(ctx, namespace, request.ReleaseListFilter)
 	if err != nil {
-		c.HandleAPIError(w, r, apierrors.NewErrInternal(err))
+		e := telemetry.Error(ctx, span, err, "failed to list releases")
+		c.HandleAPIError(w, r, apierrors.NewErrPassThroughToClient(e, http.StatusInternalServerError))
 		return
 	}
 
 	var res types.ListReleasesResponse
 
 	for _, helmRel := range releases {
+		release := types.Release{
+			Release: helmRel,
+		}
+		telemetry.WithAttributes(span,
+			telemetry.AttributeKV{Key: "release_name", Value: helmRel.Name},
+			telemetry.AttributeKV{Key: "release_namespace", Value: helmRel.Namespace},
+		)
+
 		rel, err := c.Repo().Release().ReadRelease(cluster.ID, helmRel.Name, helmRel.Namespace)
+		if err != nil {
+			telemetry.Error(ctx, span, err, "failed to read release. Not a fatal error")
+		}
 
-		if err == nil {
-			res = append(res, &types.Release{
-				Release:       helmRel,
-				PorterRelease: rel.ToReleaseType(),
-			})
-		} else {
-			res = append(res, &types.Release{
-				Release:       helmRel,
-				PorterRelease: &types.PorterRelease{},
-			})
+		if rel != nil {
+			release.PorterRelease = rel.ToReleaseType()
 		}
+
 	}
 
 	c.WriteResult(w, r, res)