Note: This bug is displayed in read-only format because the product is no longer active in Red Hat Bugzilla.

Bug 1621724

Summary: API endpoint, /version/openshift, missing with latest oc cluster up
Product: OpenShift Container Platform Reporter: Jason Montleon <jmontleo>
Component: ocAssignee: Juan Vallejo <jvallejo>
Status: CLOSED NOTABUG QA Contact: Xingxing Xia <xxia>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 3.11.0CC: aos-bugs, deads, dzager, fabian, jmatthew, jokerman, jvallejo, mmccomas, spahl, tsanders
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of:
: 1621909 (view as bug list) Environment:
Last Closed: 2018-08-23 19:24:40 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Jason Montleon 2018-08-23 17:59:37 UTC
Description of problem:
The /version/openshift endpoint appears to be gone when running oc cluster up with oc version v3.11.0-alpha.0+cd7d048-1070.

Version-Release number of selected component (if applicable):
oc v3.11.0-alpha.0+cd7d048-1070

How reproducible:
Always

Steps to Reproduce:
1. Run oc cluster up
2. Run oc version
3. See the server openshift version is missing:

oc v3.11.0-alpha.0+cd7d048-1070
kubernetes v1.11.0+d4cacc0
features: Basic-Auth GSSAPI Kerberos SPNEGO

Server https://localhost:8443
kubernetes v1.11.0+d4cacc0

Actual results:
oc version is missing

Expected results:
oc version is reported correctly

Additional info:
This breaks the ansible kubernetes modules and openshift dynamic client

I saw a suggestion that it may have moved to /version/oversion but this returns a 404 as well.

My understanding is this is a change intended for 4.0, however I don't see a release-3.11 branch in the openshift/origin github repo so my concern is that this is going to make its way into 3.11 upstream resulting different behavior upstream and downstream, and poitentially downstream where it would break functionality we rely on.

oc --loglevel=6  version 
I0823 17:52:20.859731   25868 loader.go:359] Config loaded from file /etc/origin/node/node.kubeconfig
I0823 17:52:20.860519   25868 loader.go:359] Config loaded from file /etc/origin/node/node.kubeconfig
oc v3.11.0-alpha.0+cd7d048-1070
kubernetes v1.11.0+d4cacc0
features: Basic-Auth GSSAPI Kerberos SPNEGO
I0823 17:52:20.878096   25868 round_trippers.go:405] GET https://localhost:8443/version 200 OK in 16 milliseconds
I0823 17:52:20.879394   25868 round_trippers.go:405] GET https://localhost:8443/version/openshift?timeout=32s 404 Not Found in 0 milliseconds

Server https://localhost:8443
kubernetes v1.11.0+d4cacc0

curl -i -k -XGET -H "Authorization: Bearer bW-FUYm9LaMjBbrMxzL7vu_XCbDlJNbC1hPfJNFQa_M" https://172.17.0.1:8443/version/openshift
HTTP/1.1 404 Not Found

On a downstream 3.11 install this works and it worked prior to yesterday with upstream:
oc version
oc v3.11.0-0.20.0
kubernetes v1.11.0+d4cacc0
features: Basic-Auth GSSAPI Kerberos SPNEGO

Server https://192.168.121.108.nip.io:8443
openshift v3.11.0-0.20.0
kubernetes v1.11.0+d4cacc0
[root@192 ~]# oc --loglevel=6 version
I0823 17:54:18.693103   28616 loader.go:359] Config loaded from file /root/.kube/config
I0823 17:54:18.694573   28616 loader.go:359] Config loaded from file /root/.kube/config
oc v3.11.0-0.20.0
kubernetes v1.11.0+d4cacc0
features: Basic-Auth GSSAPI Kerberos SPNEGO
I0823 17:54:18.705382   28616 round_trippers.go:405] GET https://192.168.121.108.nip.io:8443/version 200 OK in 9 milliseconds
I0823 17:54:18.706514   28616 round_trippers.go:405] GET https://192.168.121.108.nip.io:8443/version/openshift?timeout=32s 200 OK in 0 milliseconds

Server https://192.168.121.108.nip.io:8443
openshift v3.11.0-0.20.0
kubernetes v1.11.0+d4cacc0

Comment 1 David Eads 2018-08-23 19:24:40 UTC
`oc cluster up` is not a cluster that we support.  It produces something to play with as a preview and for openshift developers to work against, but the topology bears no relationship to the openshift-ansible created cluster.

`oc cluster up` sets up a kube-apiserver and aggregates in an openshift-apiserver.  kube-apiserver's have no openshift version. It's not a concept that makes sense because the level of openshift being aggregated can be anything from 3.8 to this release +1.  Yesterday's build happened to include an inaccurate endpoint that reported an incorrect version and we removed it as we collapsed fully onto the upstream kube-apiserver.

The openshift-ansible created cluster will still report the /version/openshift for 3.11.

Comment 2 Xingxing Xia 2018-12-12 10:03:17 UTC
4.0 ansible-installed BYOH env doesn't have the issue.
But 4.0 nextgen installer env has the same issue:
oc version
oc v4.0.0-0.94.0
kubernetes v1.11.0+3db990d20d
features: Basic-Auth GSSAPI Kerberos SPNEGO

Server https://....devcluster.openshift.com:6443
kubernetes v1.11.0+231d012

It doesn't return openshift version. Is it bug or expected?

Comment 3 Xingxing Xia 2018-12-13 09:12:48 UTC
Using new bug https://bugzilla.redhat.com/show_bug.cgi?id=1658957 to track above comment issue