Просмотр исходного кода

Merge branch 'nafees/preview-env-token' into dev

Mohammed Nafees 3 лет назад
Родитель
Сommit
c41467ae3c

+ 1 - 0
api/server/handlers/environment/create.go

@@ -178,6 +178,7 @@ func (c *CreateEnvironmentHandler) ServeHTTP(w http.ResponseWriter, r *http.Requ
 		ClusterID:         cluster.ID,
 		ClusterID:         cluster.ID,
 		GitInstallationID: uint(ga.InstallationID),
 		GitInstallationID: uint(ga.InstallationID),
 		EnvironmentName:   request.Name,
 		EnvironmentName:   request.Name,
+		InstanceName:      c.Config().ServerConf.InstanceName,
 	})
 	})
 
 
 	if err != nil {
 	if err != nil {

+ 1 - 0
api/server/handlers/environment/delete.go

@@ -129,6 +129,7 @@ func (c *DeleteEnvironmentHandler) ServeHTTP(w http.ResponseWriter, r *http.Requ
 		ClusterID:         cluster.ID,
 		ClusterID:         cluster.ID,
 		GitInstallationID: uint(ga.InstallationID),
 		GitInstallationID: uint(ga.InstallationID),
 		EnvironmentName:   env.Name,
 		EnvironmentName:   env.Name,
+		InstanceName:      c.Config().ServerConf.InstanceName,
 	})
 	})
 
 
 	if err != nil {
 	if err != nil {

+ 6 - 1
api/server/handlers/registry/list_images.go

@@ -1,7 +1,9 @@
 package registry
 package registry
 
 
 import (
 import (
+	"fmt"
 	"net/http"
 	"net/http"
+	"strings"
 
 
 	"github.com/porter-dev/porter/api/server/handlers"
 	"github.com/porter-dev/porter/api/server/handlers"
 	"github.com/porter-dev/porter/api/server/shared"
 	"github.com/porter-dev/porter/api/server/shared"
@@ -37,7 +39,10 @@ func (c *RegistryListImagesHandler) ServeHTTP(w http.ResponseWriter, r *http.Req
 
 
 	imgs, err := regAPI.ListImages(repoName, c.Repo(), c.Config().DOConf)
 	imgs, err := regAPI.ListImages(repoName, c.Repo(), c.Config().DOConf)
 
 
-	if err != nil {
+	if err != nil && strings.Contains(err.Error(), "RepositoryNotFoundException") {
+		c.HandleAPIError(w, r, apierrors.NewErrNotFound(fmt.Errorf("no such repository: %s", repoName)))
+		return
+	} else if err != nil {
 		c.HandleAPIError(w, r, apierrors.NewErrInternal(err))
 		c.HandleAPIError(w, r, apierrors.NewErrInternal(err))
 		return
 		return
 	}
 	}

+ 3 - 1
cli/cmd/apply.go

@@ -762,7 +762,9 @@ func (t *DeploymentHook) PreApply() error {
 	envs := *envList
 	envs := *envList
 
 
 	for _, env := range envs {
 	for _, env := range envs {
-		if env.GitRepoOwner == t.repoOwner && env.GitRepoName == t.repoName && env.GitInstallationID == t.gitInstallationID {
+		if strings.EqualFold(env.GitRepoOwner, t.repoOwner) &&
+			strings.EqualFold(env.GitRepoName, t.repoName) &&
+			env.GitInstallationID == t.gitInstallationID {
 			t.envID = env.ID
 			t.envID = env.ID
 			break
 			break
 		}
 		}

+ 12 - 3
internal/integrations/ci/actions/preview.go

@@ -17,6 +17,7 @@ type EnvOpts struct {
 	PorterToken                             string
 	PorterToken                             string
 	GitRepoOwner, GitRepoName               string
 	GitRepoOwner, GitRepoName               string
 	EnvironmentName                         string
 	EnvironmentName                         string
+	InstanceName                            string
 	ProjectID, ClusterID, GitInstallationID uint
 	ProjectID, ClusterID, GitInstallationID uint
 }
 }
 
 
@@ -44,7 +45,7 @@ func SetupEnv(opts *EnvOpts) error {
 	// create porter token secret
 	// create porter token secret
 	err = createGithubSecret(
 	err = createGithubSecret(
 		opts.Client,
 		opts.Client,
-		getPorterTokenSecretName(opts.ProjectID),
+		getPreviewEnvSecretName(opts.ProjectID, opts.ClusterID, opts.InstanceName),
 		opts.PorterToken,
 		opts.PorterToken,
 		opts.GitRepoOwner,
 		opts.GitRepoOwner,
 		opts.GitRepoName,
 		opts.GitRepoName,
@@ -211,18 +212,26 @@ func DeleteEnv(opts *EnvOpts) error {
 	)
 	)
 }
 }
 
 
+func getPreviewEnvSecretName(projectID, clusterID uint, instanceName string) string {
+	if instanceName != "" {
+		return fmt.Sprintf("PORTER_PREVIEW_%s_%d_%d", strings.ToUpper(instanceName), projectID, clusterID)
+	}
+
+	return fmt.Sprintf("PORTER_PREVIEW_%d_%d", projectID, clusterID)
+}
+
 func getPreviewApplyActionYAML(opts *EnvOpts) ([]byte, error) {
 func getPreviewApplyActionYAML(opts *EnvOpts) ([]byte, error) {
 	gaSteps := []GithubActionYAMLStep{
 	gaSteps := []GithubActionYAMLStep{
 		getCheckoutCodeStep(),
 		getCheckoutCodeStep(),
 		getCreatePreviewEnvStep(
 		getCreatePreviewEnvStep(
 			opts.ServerURL,
 			opts.ServerURL,
-			getPorterTokenSecretName(opts.ProjectID),
+			getPreviewEnvSecretName(opts.ProjectID, opts.ClusterID, opts.InstanceName),
 			opts.ProjectID,
 			opts.ProjectID,
 			opts.ClusterID,
 			opts.ClusterID,
 			opts.GitInstallationID,
 			opts.GitInstallationID,
 			opts.GitRepoOwner,
 			opts.GitRepoOwner,
 			opts.GitRepoName,
 			opts.GitRepoName,
-			"v0.2.0",
+			"v0.2.1",
 		),
 		),
 	}
 	}
 
 

+ 3 - 5
internal/opa/config.yaml

@@ -97,15 +97,13 @@ porter_agent_pod:
   policies:
   policies:
   - path: "./policies/pod/running.rego"
   - path: "./policies/pod/running.rego"
     name: "pod.running"
     name: "pod.running"
-porter_agent_redis_pod:
+porter_agent_loki_pod:
   kind: "pod"
   kind: "pod"
   match:
   match:
     namespace: porter-agent-system
     namespace: porter-agent-system
     labels:
     labels:
-      app.kubernetes.io/component: "master"
-      app.kubernetes.io/instance: "porter-agent"
-      app.kubernetes.io/managed-by: "Helm"
-      app.kubernetes.io/name: "redis"
+      app: "loki"
+      name: "porter-agent-loki"
   policies:
   policies:
   - path: "./policies/pod/running.rego"
   - path: "./policies/pod/running.rego"
     name: "pod.running"
     name: "pod.running"