Signed-off-by: Gladkov Alexey <agladkov@redhat.com>
| ... | ... |
@@ -75,7 +75,7 @@ func (r DockerClientSearcher) Search(precise bool, terms ...string) (ComponentMa |
| 75 | 75 |
termMatches := ScoredComponentMatches{}
|
| 76 | 76 |
|
| 77 | 77 |
// first look for the image in the remote docker registry |
| 78 |
- if r.RegistrySearcher != nil && ref.String() != "*" {
|
|
| 78 |
+ if r.RegistrySearcher != nil {
|
|
| 79 | 79 |
glog.V(4).Infof("checking remote registry for %q", ref.String())
|
| 80 | 80 |
matches, err := r.RegistrySearcher.Search(precise, term) |
| 81 | 81 |
errs = append(errs, err...) |
| ... | ... |
@@ -308,6 +308,13 @@ func ValidateImageStreamImport(isi *api.ImageStreamImport) field.ErrorList {
|
| 308 | 308 |
if len(spec.From.Name) == 0 {
|
| 309 | 309 |
errs = append(errs, field.Required(imagesPath.Index(i).Child("from", "name"), ""))
|
| 310 | 310 |
} else {
|
| 311 |
+ // The ParseDockerImageReference qualifies '*' as a wrong name. |
|
| 312 |
+ // The legacy clients use this character to look up imagestreams. |
|
| 313 |
+ // TODO: This should be removed in 1.6 |
|
| 314 |
+ // See for more info: https://github.com/openshift/origin/pull/11774#issuecomment-258905994 |
|
| 315 |
+ if spec.From.Name == "*" {
|
|
| 316 |
+ continue |
|
| 317 |
+ } |
|
| 311 | 318 |
if ref, err := api.ParseDockerImageReference(spec.From.Name); err != nil {
|
| 312 | 319 |
errs = append(errs, field.Invalid(imagesPath.Index(i).Child("from", "name"), spec.From.Name, err.Error()))
|
| 313 | 320 |
} else {
|
| ... | ... |
@@ -110,10 +110,20 @@ func (i *ImageStreamImporter) importImages(ctx gocontext.Context, retriever Repo |
| 110 | 110 |
if from.Kind != "DockerImage" {
|
| 111 | 111 |
continue |
| 112 | 112 |
} |
| 113 |
- ref, err := api.ParseDockerImageReference(from.Name) |
|
| 114 |
- if err != nil {
|
|
| 115 |
- isi.Status.Images[i].Status = invalidStatus("", field.Invalid(field.NewPath("from", "name"), from.Name, fmt.Sprintf("invalid name: %v", err)))
|
|
| 116 |
- continue |
|
| 113 |
+ // TODO: This should be removed in 1.6 |
|
| 114 |
+ // See for more info: https://github.com/openshift/origin/pull/11774#issuecomment-258905994 |
|
| 115 |
+ var ( |
|
| 116 |
+ err error |
|
| 117 |
+ ref api.DockerImageReference |
|
| 118 |
+ ) |
|
| 119 |
+ if from.Name != "*" {
|
|
| 120 |
+ ref, err = api.ParseDockerImageReference(from.Name) |
|
| 121 |
+ if err != nil {
|
|
| 122 |
+ isi.Status.Images[i].Status = invalidStatus("", field.Invalid(field.NewPath("from", "name"), from.Name, fmt.Sprintf("invalid name: %v", err)))
|
|
| 123 |
+ continue |
|
| 124 |
+ } |
|
| 125 |
+ } else {
|
|
| 126 |
+ ref = api.DockerImageReference{Name: from.Name}
|
|
| 117 | 127 |
} |
| 118 | 128 |
defaultRef := ref.DockerClientDefaults() |
| 119 | 129 |
repoName := defaultRef.RepositoryName() |
| ... | ... |
@@ -217,11 +227,22 @@ func (i *ImageStreamImporter) importFromRepository(ctx gocontext.Context, retrie |
| 217 | 217 |
if from.Kind != "DockerImage" {
|
| 218 | 218 |
return |
| 219 | 219 |
} |
| 220 |
- ref, err := api.ParseDockerImageReference(from.Name) |
|
| 221 |
- if err != nil {
|
|
| 222 |
- status.Status = invalidStatus("", field.Invalid(field.NewPath("from", "name"), from.Name, fmt.Sprintf("invalid name: %v", err)))
|
|
| 223 |
- return |
|
| 220 |
+ // TODO: This should be removed in 1.6 |
|
| 221 |
+ // See for more info: https://github.com/openshift/origin/pull/11774#issuecomment-258905994 |
|
| 222 |
+ var ( |
|
| 223 |
+ err error |
|
| 224 |
+ ref api.DockerImageReference |
|
| 225 |
+ ) |
|
| 226 |
+ if from.Name != "*" {
|
|
| 227 |
+ ref, err = api.ParseDockerImageReference(from.Name) |
|
| 228 |
+ if err != nil {
|
|
| 229 |
+ status.Status = invalidStatus("", field.Invalid(field.NewPath("from", "name"), from.Name, fmt.Sprintf("invalid name: %v", err)))
|
|
| 230 |
+ return |
|
| 231 |
+ } |
|
| 232 |
+ } else {
|
|
| 233 |
+ ref = api.DockerImageReference{Name: from.Name}
|
|
| 224 | 234 |
} |
| 235 |
+ |
|
| 225 | 236 |
defaultRef := ref.DockerClientDefaults() |
| 226 | 237 |
repoName := defaultRef.RepositoryName() |
| 227 | 238 |
registryURL := defaultRef.RegistryURL() |