Przeglądaj źródła

Merge pull request #2491 from porter-dev/nafees/preview-env-token

[POR-705] Use a dedicated github secret name for preview env
abelanger5 3 lat temu
rodzic
commit
abe6c2c63f

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

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

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

@@ -17,6 +17,7 @@ type EnvOpts struct {
 	PorterToken                             string
 	GitRepoOwner, GitRepoName               string
 	EnvironmentName                         string
+	InstanceName                            string
 	ProjectID, ClusterID, GitInstallationID uint
 }
 
@@ -44,7 +45,7 @@ func SetupEnv(opts *EnvOpts) error {
 	// create porter token secret
 	err = createGithubSecret(
 		opts.Client,
-		getPorterTokenSecretName(opts.ProjectID),
+		getPreviewEnvSecretName(opts.ProjectID, opts.ClusterID, opts.InstanceName),
 		opts.PorterToken,
 		opts.GitRepoOwner,
 		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) {
 	gaSteps := []GithubActionYAMLStep{
 		getCheckoutCodeStep(),
 		getCreatePreviewEnvStep(
 			opts.ServerURL,
-			getPorterTokenSecretName(opts.ProjectID),
+			getPreviewEnvSecretName(opts.ProjectID, opts.ClusterID, opts.InstanceName),
 			opts.ProjectID,
 			opts.ClusterID,
 			opts.GitInstallationID,
 			opts.GitRepoOwner,
 			opts.GitRepoName,
-			"v0.2.0",
+			"v0.2.1",
 		),
 	}