Ver Fonte

creation of constant env group works

Mohammed Nafees há 3 anos atrás
pai
commit
8527687227
1 ficheiros alterados com 29 adições e 8 exclusões
  1. 29 8
      cli/cmd/preview/v2/apply.go

+ 29 - 8
cli/cmd/preview/v2/apply.go

@@ -54,6 +54,14 @@ func NewApplier(client *api.Client, raw []byte, namespace string) (*PreviewAppli
 }
 
 func (a *PreviewApplier) Apply() error {
+	color.New(color.FgBlue).Printf("[porter.yaml v2] Applying preview environments with the following attributes:\n"+
+		"\tHost: %s\n\tProject ID: %d\n\tCluster ID: %d\n\tNamespace: %s\n",
+		config.GetCLIConfig().Host,
+		config.GetCLIConfig().Project,
+		config.GetCLIConfig().Cluster,
+		a.namespace,
+	) // FIXME: use a scoped logger
+
 	err := a.readOSEnv()
 
 	if err != nil {
@@ -66,27 +74,34 @@ func (a *PreviewApplier) Apply() error {
 		return err
 	}
 
-	err = a.processEnvGroups()
+	// err = a.processEnvGroups()
 
-	if err != nil {
-		return err
-	}
+	// if err != nil {
+	// 	return err
+	// }
 
 	return nil
 }
 
 func (a *PreviewApplier) readOSEnv() error {
-	color.New(color.FgBlue).Println("[porter.yaml] Reading OS environment variables") // FIXME: use a scoped logger
+	color.New(color.FgBlue).Println("[porter.yaml v2] Reading OS environment variables") // FIXME: use a scoped logger
 
 	env := os.Environ()
 	osEnv := make(map[string]string)
 
 	for _, e := range env {
 		k, v, _ := strings.Cut(e, "=")
+		kCopy := k
 
-		if k != "" && v != "" {
+		if k != "" && v != "" && strings.HasPrefix(k, "PORTER_APPLY_") {
 			// we only read in env variables that start with PORTER_APPLY_
-			k = strings.ReplaceAll(k, "PORTER_APPLY_", "")
+			for strings.HasPrefix(k, "PORTER_APPLY_") {
+				k = strings.TrimPrefix(k, "PORTER_APPLY_")
+			}
+
+			if k == "" {
+				color.New(color.FgYellow).Printf("[porter.yaml v2] ignoring invalid OS environment variable '%s'\n", kCopy) // FIXME: use a scoped logger
+			}
 
 			osEnv[k] = v
 		}
@@ -98,6 +113,8 @@ func (a *PreviewApplier) readOSEnv() error {
 }
 
 func (a *PreviewApplier) processEnvGroups() error {
+	color.New(color.FgBlue).Println("[porter.yaml v2] Processing env groups") // FIXME: use a scoped logger
+
 	for _, eg := range a.parsed.PorterYAML.EnvGroups.GetValue() {
 		envGroup, err := a.apiClient.GetEnvGroup(
 			context.Background(),
@@ -154,7 +171,7 @@ func (a *PreviewApplier) processEnvGroups() error {
 }
 
 func (a *PreviewApplier) processVariables() error {
-	color.New(color.FgBlue).Println("[porter.yaml] Processing variables") // FIXME: use a scoped logger
+	color.New(color.FgBlue).Println("[porter.yaml v2] Processing variables") // FIXME: use a scoped logger
 
 	constantsMap := make(map[string]string)
 	variablesMap := make(map[string]string)
@@ -239,6 +256,10 @@ func (a *PreviewApplier) constantExistsInEnvGroup(name string) (*bool, error) {
 	)
 
 	if err != nil {
+		if strings.Contains(err.Error(), "env group not found") {
+			return boolean(false), nil
+		}
+
 		return nil, err
 	}