func GetConfigVariables()

in internal/client/integrations/integrations.go [640:681]


func GetConfigVariables(contents []byte) (respBody []byte, err error) {
	iversion := integrationVersion{}
	configVariables := make(map[string]interface{})

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

	for _, param := range iversion.IntegrationConfigParameters {
		configVariables[param.Parameter.Key] = ""
		if param.Value != nil {
			if param.Value.StringValue != nil {
				configVariables[param.Parameter.Key] = param.Value.StringValue
			} else if param.Value.IntValue != nil {
				configVariables[param.Parameter.Key], _ = strconv.ParseInt(*param.Value.IntValue, 10, 0)
			} else if param.Value.JsonValue != nil {
				configVariables[param.Parameter.Key] = getJson(*param.Value.JsonValue)
			} else if param.Value.BooleanValue != nil {
				configVariables[param.Parameter.Key] = param.Value.BooleanValue
			} else if param.Value.StringArray != nil {
				configVariables[param.Parameter.Key] = param.Value.StringArray.StringValues
			}
		} else if param.Parameter.DefaultValue != nil {
			if param.Parameter.DefaultValue.StringValue != nil {
				configVariables[param.Parameter.Key] = param.Parameter.DefaultValue.StringValue
			} else if param.Parameter.DefaultValue.IntValue != nil {
				configVariables[param.Parameter.Key], _ = strconv.ParseInt(*param.Parameter.DefaultValue.IntValue, 10, 0)
			} else if param.Parameter.DefaultValue.JsonValue != nil {
				configVariables[param.Parameter.Key] = getJson(*param.Parameter.DefaultValue.JsonValue)
			} else if param.Parameter.DefaultValue.BooleanValue != nil {
				configVariables[param.Parameter.Key] = param.Parameter.DefaultValue.BooleanValue
			} else if param.Parameter.DefaultValue.StringArray != nil {
				configVariables[param.Parameter.Key] = param.Parameter.DefaultValue.StringArray.StringValues
			}
		}
	}
	if len(configVariables) > 0 {
		respBody, err = json.Marshal(configVariables)
	}
	return respBody, err
}