Image stream tags are relative to a cluster. You can't specify a registry:
$ oc tag --source=imagestreamtag --insecure 172.30.1.1:5000/development/ruby-ex@sha256:b70b03830f84b7ac51c064db2bccdd85188b1ca9e1e22787015b5d752ce71886 development/ruby-ex:promote is REGISTRY/NAMESPACE/NAME, but image stream tags don't deal with registries and can't currently work across clusters. $ oc tag --source=imagestreamtag --insecure development/ruby-ex@sha256:b70b03830f84b7ac51c064db2bccdd85188b1ca9e1e22787015b5d752ce71886 development/ruby-ex:promote is NAMESPACE/NAME. To tag an image from *another* cluster, you'd do: $ oc tag PUBLIC_REGISTRY_URL_FOR_OTHER_CLUSTER/development/ruby-ex@sha256:b70b03830f84b7ac51c064db2bccdd85188b1ca9e1e22787015b5d752ce71886 development/ruby-ex:promote Which does the import flow. On Tue, Jun 6, 2017 at 12:04 PM, Tim Dudgeon <[email protected]> wrote: > Actually, clearly I don't totally understand. Whilst using the shorter > syntax works, I had a go using the --source=imagestreamtag and --insecure > args with the longer syntax, and got the following error: > > oc tag --source=imagestreamtag --insecure 172.30.1.1:5000/development/ > ruby-ex@sha256:b70b03830f84b7ac51c064db2bccdd > 85188b1ca9e1e22787015b5d752ce71886 development/ruby-ex:promote > error: server in SOURCE is only allowed when providing a Docker image > > Only when I used --source=docker did it work (and it could be promoted to > a different project). > > But then doing a oc describe is/ruby-ex the two approaches seem to give > slightly different outcomes. What's the difference between the two methods? > > On 06/06/2017 13:25, Clayton Coleman wrote: > > Tag tries to guess at whether you mean an image stream ref or a regular > image ref. In your case, it saw the SRC arg as 172.30.1.1 (registry) > development (namespace) and (name) ruby22-centos7 and assumed you meant a > docker image (which that is). However, it then tries to import the image > and fails because the registry internally is not running over https by > default. > > If you use tag with a short name > > oc tag ruby-ex@sha256:b70b03830f84b7ac51c064db2bccdd > 85188b1ca9e1e22787015b5d752ce71886 development/ruby-ex:promote > > It assumes you mean an image stream and should do what you want. You can > use the --source=X flag to exactly specify which source to use. You can > also use --insecure which would allow the import attempt to succeed, but > whenever you're promoting images doing so with a direct image stream tag is > much faster. > > In retrospect this has confused many people, but we can't change it > without breaking backwards compatibility. > > > On Jun 6, 2017, at 7:43 AM, Tim Dudgeon <[email protected]> wrote: > > Hi All, > > I'm trying to get started with promoting builds across projects, starting > from the basics. > This is with OpenShift origin v1.5.1 > > I build a demo app fine in the development project using: > oc new-app centos/ruby-22-centos7~https://github.com/openshift/ruby-ex.git > > The image streams were created: > > oc get is > 172.30.1.1:5000/development/ruby-22-centos7 > 172.30.1.1:5000/development/ruby-ex > > Then I try to tag the image: > oc tag 172.30.1.1:5000/development/ruby-ex@sha256: > b70b03830f84b7ac51c064db2bccdd85188b1ca9e1e22787015b5d752ce71886 > development/ruby-ex:promote > > It looks OK: > > oc get is/ruby-ex > NAME DOCKER REPO TAGS UPDATED > ruby-ex 172.30.1.1:5000/development/ruby-ex latest,promote 8 > minutes ago > > But when I inspect it I see this: > > oc describe is/ruby-ex > Name: ruby-ex > Namespace: development > Created: 6 minutes ago > Labels: app=ruby-ex > Annotations: openshift.io/generated-by=OpenShiftNewApp > openshift.io/image.dockerRepositoryCheck=2017-06-06T11:26:04Z > Docker Pull Spec: 172.30.1.1:5000/development/ruby-ex > Unique Images: 1 > Tags: 2 > > latest > pushed image > > * 172.30.1.1:5000/development/ruby-ex@sha256: > b70b03830f84b7ac51c064db2bccdd85188b1ca9e1e22787015b5d752ce71886 > 6 minutes ago > > promote > tagged from 172.30.1.1:5000/development/ruby-ex@sha256: > b70b03830f84b7ac51c064db2bccdd85188b1ca9e1e22787015b5d752ce71886 > > ! error: Import failed (InternalError): Internal error occurred: Get > https://172.30.1.1:5000/v2/: http: server gave HTTP response to HTTPS > client > 5 minutes ago > > See the error at the bottom. > > The consequence is that the development/ruby-ex:promote image cannot be > accessed from a different project, but development/ruby-ex:latest can. > > Any thoughts on what is going wrong? I can write to the repository, but > not tag anything? > > Thanks > Tim > > > > > _______________________________________________ > users mailing list > [email protected] > http://lists.openshift.redhat.com/openshiftmm/listinfo/users > > > > _______________________________________________ > users mailing list > [email protected] > http://lists.openshift.redhat.com/openshiftmm/listinfo/users > >
_______________________________________________ users mailing list [email protected] http://lists.openshift.redhat.com/openshiftmm/listinfo/users
