Openshift: Unresolved Image

la3mmchen picture la3mmchen · Jul 1, 2017 · Viewed 13.1k times · Source

i'm stuck with Openshift (Origin) and need some help.

Let's say i want to add a grafana deployment via CLI to a new started cluster.

What i do:

  1. Upload a template to my openshift cluster (oc create -f openshift-grafana.yml)

  2. Pull the necessary image from the docker hub (oc import-image --confirm grafana/grafana)

  3. Build a new app based on my template (oc new-app grafana)

These steps creates the deployment config and the routes. But then i'm not able to start a deployment via CLI.

# oc deploy grafana                                                                                                                                            
grafana deployment #1 waiting on image or update
# oc rollout latest grafana                                                                                                                                    
Error from server (BadRequest): cannot trigger a deployment for "grafana" because it contains unresolved imagesenter code here

In the openshift web console it looks like this:

The images is there, even the link is working. In the web console i can click "deploy" and it's working. But nevertheless i'm not able to rollout a new version via command line.

The only way it works is editing the deployment yml so openshift recognizes a change a starts a deployment based on "config change" (hint: i'm was not changing the image or image name)

There is nothing special in my template, it was just an export via oc export from a working config.

Any hint would be appreciated, i'm pretty much stuck. Thanks.

Answer

Diego Garber picture Diego Garber · Apr 16, 2018

I had this same issue and I solved it by adding:

        lastTriggeredImage: >-
          mydockerrepo.com/repo/myimage@sha256:xxxxxxxxxxxxxxxx

On:

  triggers:
    - type: ImageChange
      imageChangeParams:

Of the deploymentconfig yaml. Looks like if it doesn't know what the last triggered image is, it wont be able to resolve it.