(ports []string)
| 898 | } |
| 899 | |
| 900 | func convertToStandardNotation(ports []string) ([]string, error) { |
| 901 | optsList := []string{} |
| 902 | for _, publish := range ports { |
| 903 | if strings.Contains(publish, "=") { |
| 904 | params := map[string]string{"protocol": "tcp"} |
| 905 | for param := range strings.SplitSeq(publish, ",") { |
| 906 | k, v, ok := strings.Cut(param, "=") |
| 907 | if !ok || k == "" { |
| 908 | return optsList, fmt.Errorf("invalid publish opts format (should be name=value but got '%s')", param) |
| 909 | } |
| 910 | params[k] = v |
| 911 | } |
| 912 | optsList = append(optsList, fmt.Sprintf("%s:%s/%s", params["published"], params["target"], params["protocol"])) |
| 913 | } else { |
| 914 | optsList = append(optsList, publish) |
| 915 | } |
| 916 | } |
| 917 | return optsList, nil |
| 918 | } |
| 919 | |
| 920 | func parseLoggingOpts(loggingDriver string, loggingOpts []string) (map[string]string, error) { |
| 921 | loggingOptsMap := opts.ConvertKVStringsToMap(loggingOpts) |
searching dependent graphs…