func GetAuthConfigs()

in internal/client/integrations/integrations.go [821:850]


func GetAuthConfigs(integration []byte) (authcfgs []string, err error) {
	iversion := integrationVersion{}

	err = json.Unmarshal(integration, &iversion)
	if err != nil {
		return authcfgs, err
	}

	for _, taskConfig := range iversion.TaskConfigs {
		if taskConfig.Task == "GenericRestV2Task" || taskConfig.Task == "CloudFunctionTask" {
			authConfigParams := taskConfig.Parameters["authConfig"]
			if authConfigParams.Key == "authConfig" {
				authConfigUuid := getAuthConfigUuid(*authConfigParams.Value.JsonValue)
				if authConfigUuid != "" {
					authcfgs = append(authcfgs, authConfigUuid)
				}
			}
			authConfigNameParams := taskConfig.Parameters["authConfigName"]
			if authConfigNameParams.Key == "authConfigName" && *authConfigNameParams.Value.StringValue != "" {
				authConfigUuid, err := authconfigs.Find(*authConfigNameParams.Value.StringValue, "")
				if err != nil {
					return nil, fmt.Errorf("unable to find authconfig with name %s", *authConfigNameParams.Value.StringValue)
				}
				authcfgs = append(authcfgs, authConfigUuid)
			}
		}
	}

	return authcfgs, err
}