func parseEnvs(envArray []string) ([]api.EnvVar, error) { envs := []api.EnvVar{} for _, env := range envArray { parts := strings.Split(env, "=") if len(parts) != 2 || !util.IsCIdentifier(parts[0]) || len(parts[1]) == 0 { return nil, fmt.Errorf("invalid env: %v", env) } envVar := api.EnvVar{Name: parts[0], Value: parts[1]} envs = append(envs, envVar) } return envs, nil }
func validateEnv(vars []kapi.EnvVar) fielderrors.ValidationErrorList { allErrs := fielderrors.ValidationErrorList{} for i, ev := range vars { vErrs := fielderrors.ValidationErrorList{} if len(ev.Name) == 0 { vErrs = append(vErrs, fielderrors.NewFieldRequired("name")) } if !util.IsCIdentifier(ev.Name) { vErrs = append(vErrs, fielderrors.NewFieldInvalid("name", ev.Name, "must match regex "+util.CIdentifierFmt)) } allErrs = append(allErrs, vErrs.PrefixIndex(i)...) } return allErrs }