okd-project / okd

The self-managing, auto-upgrading, Kubernetes distribution for everyone
https://okd.io
Apache License 2.0
1.72k stars 295 forks source link

New OKD update URL: Unable to retrieve available updates: unexpected HTTP status: 400 Bad Request #23

Closed jomeier closed 4 years ago

jomeier commented 4 years ago

Hi,

I changed the URL for updated OKD images in the the ClusterVersion manifest to: https://origin-release.svc.ci.openshift.org/graph

apiVersion: config.openshift.io/v1
kind: ClusterVersion
metadata:
  creationTimestamp: '2019-11-30T20:45:11Z'
  generation: 11
  name: version
  resourceVersion: '5843386'
  selfLink: /apis/config.openshift.io/v1/clusterversions/version
  uid: 0abf886d-ccb5-47b0-b417-394811ad651b
spec:
  channel: fast-4.3
  clusterID: d960adc9-68c7-43cc-953c-fb81e886008d
  upstream: 'https://origin-release.svc.ci.openshift.org/graph'
status:
  availableUpdates: null
  conditions:
    - lastTransitionTime: '2019-11-30T21:14:55Z'
      message: Done applying 4.3.0-0.okd-2019-11-15-182656
      status: 'True'
      type: Available
    - lastTransitionTime: '2019-12-03T09:40:28Z'
      status: 'False'
      type: Failing
    - lastTransitionTime: '2019-11-30T21:14:55Z'
      message: Cluster version is 4.3.0-0.okd-2019-11-15-182656
      status: 'False'
      type: Progressing
    - lastTransitionTime: '2019-12-10T10:39:29Z'
      message: >-
        Unable to retrieve available updates: unexpected HTTP status: 400 Bad
        Request
      reason: RemoteFailed
      status: 'False'
      type: RetrievedUpdates
...

As reported in the Status field the Cluster Version Operator reports a HTTP error 400.

If I curl to this URL I get a JSON with DockerImages. I can pull this DockerImages manually:

~$ curl https://origin-release.svc.ci.openshift.org/graph
{
  "nodes": [
    {
      "version": "4.3.0-0.okd-2019-12-09-174357",
      "payload": "registry.svc.ci.openshift.org/origin/release@sha256:c394a5db6ea1b8e534b5fc6dcfb27cb15c08312f9c75b06f2e0fb3ee8dc6f339"
    },
    {
      "version": "4.3.0-0.okd-2019-12-05-213603",
      "payload": "registry.svc.ci.openshift.org/origin/release@sha256:f8552ab8af4f3130d6ccd1423b6027735d73c6d45c5dff61ccdcb304de6386d7"
    },
    {
      "version": "4.3.0-0.okd-2019-12-05-210603",
      "payload": "registry.svc.ci.openshift.org/origin/release@sha256:5f23b43883fffc7ae89d3d86b7b2b7372f087a6471939c5ae03e85122f1904b4"
    },
    {
      "version": "4.3.0-0.okd-2019-12-05-193216",
      "payload": "registry.svc.ci.openshift.org/origin/release@sha256:ac6663eea65aa6b50361c5e782090745e5608097625cf0906ef30f713c101ad1"
    },
    {
      "version": "4.3.0-0.okd-2019-12-05-185724",
      "payload": "registry.svc.ci.openshift.org/origin/release@sha256:d0ea09b6e1089284ca65c4525710b0292b95bb1663fd43001499227c66d92a8b"
    },
...

I found the URL on https://github.com/orgs/openshift/projects/1 👍

Patch CVO in installer to update upstream to https://origin-release.svc.ci.openshift.org/graph?stable-XXX

Added by vrutkovs

Greetings,

Josef

vrutkovs commented 4 years ago

Wrong channel set in CVO - channel: fast-4.3, so Cincinnati would throw HTTP 400 when a non-existent channel is used

Channel names are not yet defined though, this should be discussed during OKD WG