diff --git a/lib/rest_openshift.rb b/lib/rest_openshift.rb index 806b027fa4..9a6718e47d 100644 --- a/lib/rest_openshift.rb +++ b/lib/rest_openshift.rb @@ -6,7 +6,7 @@ module OpenShift extend Helper def self.populate(path, base_opts, opts) - populate_common("/oapi/", path, base_opts, opts) + populate_common("/apis/user.openshift.io/", path, base_opts, opts) end class << self @@ -52,11 +52,22 @@ def self.get_project(base_opts, opts) end def self.get_user(base_opts, opts) + base_opts_org = base_opts.dup populate("/users/", base_opts, opts) - return perform(**base_opts, method: "GET") { |res| + res = perform(**base_opts, method: "GET") { |res| res[:props][:name] = res[:parsed]["metadata"]["name"] res[:props][:uid] = res[:parsed]["metadata"]["uid"] } + unless res[:success] + # failed with new url, fall back to old url path + populate_common("/oapi/", "/users/", base_opts_org, opts) + res = perform(**base_opts_org, method: "GET") { |res| + res[:props][:name] = res[:parsed]["metadata"]["name"] + res[:props][:uid] = res[:parsed]["metadata"]["uid"] + } + end + + return res end # this usually creates a project in fact