func SplitPathValuePairs()

in internal/cmd/set.go [17:42]


func SplitPathValuePairs(pathValuePairStrings []string) (pathValuePairs []core.PathValuePair, err error) {
	for _, pathValuePairString := range pathValuePairStrings {
		pathValuePairParts := strings.Split(pathValuePairString, "=")

		errMessage := "%s is not a properly formated configuration key/value pair"

		if len(pathValuePairParts) != 2 {
			return pathValuePairs, fmt.Errorf(errMessage, pathValuePairString)
		}

		pathParts, err := SplitPathParts(pathValuePairParts[0])

		if err != nil {
			return pathValuePairs, fmt.Errorf(errMessage, pathValuePairString)
		}

		pathValuePair := core.PathValuePair{
			Path:  pathParts,
			Value: pathValuePairParts[1],
		}

		pathValuePairs = append(pathValuePairs, pathValuePair)
	}

	return pathValuePairs, nil
}