completeDomain returns completions for comma-separated domain values.
(toComplete string)
| 96 | |
| 97 | // completeDomain returns completions for comma-separated domain values. |
| 98 | func completeDomain(toComplete string) []string { |
| 99 | allDomains := registry.ListFromMetaProjects() |
| 100 | parts := strings.Split(toComplete, ",") |
| 101 | prefix := parts[len(parts)-1] |
| 102 | base := strings.Join(parts[:len(parts)-1], ",") |
| 103 | |
| 104 | var completions []string |
| 105 | for _, d := range allDomains { |
| 106 | if strings.HasPrefix(d, prefix) { |
| 107 | if base == "" { |
| 108 | completions = append(completions, d) |
| 109 | } else { |
| 110 | completions = append(completions, base+","+d) |
| 111 | } |
| 112 | } |
| 113 | } |
| 114 | return completions |
| 115 | } |
| 116 | |
| 117 | // authLoginRun executes the login command logic. |
| 118 | func authLoginRun(opts *LoginOptions) error { |