Commit 489271d0 by Jessica Forrester Committed by GitHub

Merge pull request #77 from benjaminapetersen/api-info-verbs

Update APIService.apiInfo to return verbs when possible
parents 46865349 da199af9
......@@ -391,6 +391,13 @@ angular.module('openshiftCommonServices')
return resource;
}
function kindToResourceGroupVersion(kind) {
return toResourceGroupVersion({
resource: kindToResource(kind.kind),
group: kind.group
});
}
// apiInfo returns the host/port, prefix, group, and version for the given resource,
// or undefined if the specified resource/group/version is known not to exist.
var apiInfo = function(resource) {
......@@ -423,12 +430,14 @@ angular.module('openshiftCommonServices')
}
var hostPrefixObj = _.get(APIS_CFG, ["groups", resource.group, 'hostPrefix']) || APIS_CFG;
return {
resource: resource.resource,
group: resource.group,
version: resource.version,
protocol: hostPrefixObj.protocol,
hostPort: hostPrefixObj.hostPort,
prefix: hostPrefixObj.prefix,
group: resource.group,
version: resource.version,
namespaced: discoveredResource.namespaced
namespaced: discoveredResource.namespaced,
verbs: discoveredResource.verbs
};
}
......@@ -442,10 +451,12 @@ angular.module('openshiftCommonServices')
continue;
}
return {
resource: resource.resource,
version: resource.version,
hostPort: api.hostPort,
prefix: api.prefix,
version: resource.version,
namespaced: discoveredResource.namespaced
namespaced: discoveredResource.namespaced,
verbs: discoveredResource.verbs
};
}
return undefined;
......@@ -545,6 +556,8 @@ angular.module('openshiftCommonServices')
kindToResource: kindToResource,
kindToResourceGroupVersion: kindToResourceGroupVersion,
apiInfo: apiInfo,
invalidObjectKindOrVersion: invalidObjectKindOrVersion,
......
......@@ -1971,6 +1971,13 @@ angular.module('openshiftCommonServices')
return resource;
}
function kindToResourceGroupVersion(kind) {
return toResourceGroupVersion({
resource: kindToResource(kind.kind),
group: kind.group
});
}
// apiInfo returns the host/port, prefix, group, and version for the given resource,
// or undefined if the specified resource/group/version is known not to exist.
var apiInfo = function(resource) {
......@@ -2003,12 +2010,14 @@ angular.module('openshiftCommonServices')
}
var hostPrefixObj = _.get(APIS_CFG, ["groups", resource.group, 'hostPrefix']) || APIS_CFG;
return {
resource: resource.resource,
group: resource.group,
version: resource.version,
protocol: hostPrefixObj.protocol,
hostPort: hostPrefixObj.hostPort,
prefix: hostPrefixObj.prefix,
group: resource.group,
version: resource.version,
namespaced: discoveredResource.namespaced
namespaced: discoveredResource.namespaced,
verbs: discoveredResource.verbs
};
}
......@@ -2022,10 +2031,12 @@ angular.module('openshiftCommonServices')
continue;
}
return {
resource: resource.resource,
version: resource.version,
hostPort: api.hostPort,
prefix: api.prefix,
version: resource.version,
namespaced: discoveredResource.namespaced
namespaced: discoveredResource.namespaced,
verbs: discoveredResource.verbs
};
}
return undefined;
......@@ -2125,6 +2136,8 @@ angular.module('openshiftCommonServices')
kindToResource: kindToResource,
kindToResourceGroupVersion: kindToResourceGroupVersion,
apiInfo: apiInfo,
invalidObjectKindOrVersion: invalidObjectKindOrVersion,
......
......@@ -723,6 +723,12 @@ resource = humanizeKind(resource);
}
return resource = String(resource).toLowerCase(), "endpoints" === resource || "securitycontextconstraints" === resource || ("s" === resource[resource.length - 1] ? resource += "es" :"y" === resource[resource.length - 1] ? resource = resource.substring(0, resource.length - 1) + "ies" :resource += "s"), resource;
}
function kindToResourceGroupVersion(kind) {
return toResourceGroupVersion({
resource:kindToResource(kind.kind),
group:kind.group
});
}
var defaultVersion = {
"":"v1",
extensions:"v1beta1"
......@@ -769,20 +775,24 @@ if (resource.group) {
if (discoveredResource = _.get(APIS_CFG, [ "groups", resource.group, "versions", resource.version, "resources", primaryResource ]), !discoveredResource) return void 0;
var hostPrefixObj = _.get(APIS_CFG, [ "groups", resource.group, "hostPrefix" ]) || APIS_CFG;
return {
resource:resource.resource,
group:resource.group,
version:resource.version,
protocol:hostPrefixObj.protocol,
hostPort:hostPrefixObj.hostPort,
prefix:hostPrefixObj.prefix,
group:resource.group,
version:resource.version,
namespaced:discoveredResource.namespaced
namespaced:discoveredResource.namespaced,
verbs:discoveredResource.verbs
};
}
var api;
for (var apiName in API_CFG) if (api = API_CFG[apiName], discoveredResource = _.get(api, [ "resources", resource.version, primaryResource ])) return {
resource:resource.resource,
version:resource.version,
hostPort:api.hostPort,
prefix:api.prefix,
version:resource.version,
namespaced:discoveredResource.namespaced
namespaced:discoveredResource.namespaced,
verbs:discoveredResource.verbs
};
return void 0;
}, invalidObjectKindOrVersion = function(apiObject) {
......@@ -836,6 +846,7 @@ parseGroupVersion:parseGroupVersion,
objectToResourceGroupVersion:objectToResourceGroupVersion,
deriveTargetResource:deriveTargetResource,
kindToResource:kindToResource,
kindToResourceGroupVersion:kindToResourceGroupVersion,
apiInfo:apiInfo,
invalidObjectKindOrVersion:invalidObjectKindOrVersion,
unsupportedObjectKindOrVersion:unsupportedObjectKindOrVersion,
......
......@@ -188,6 +188,13 @@ angular.module('openshiftCommonServices')
return resource;
}
function kindToResourceGroupVersion(kind) {
return toResourceGroupVersion({
resource: kindToResource(kind.kind),
group: kind.group
});
}
// apiInfo returns the host/port, prefix, group, and version for the given resource,
// or undefined if the specified resource/group/version is known not to exist.
var apiInfo = function(resource) {
......@@ -220,12 +227,14 @@ angular.module('openshiftCommonServices')
}
var hostPrefixObj = _.get(APIS_CFG, ["groups", resource.group, 'hostPrefix']) || APIS_CFG;
return {
resource: resource.resource,
group: resource.group,
version: resource.version,
protocol: hostPrefixObj.protocol,
hostPort: hostPrefixObj.hostPort,
prefix: hostPrefixObj.prefix,
group: resource.group,
version: resource.version,
namespaced: discoveredResource.namespaced
namespaced: discoveredResource.namespaced,
verbs: discoveredResource.verbs
};
}
......@@ -239,10 +248,12 @@ angular.module('openshiftCommonServices')
continue;
}
return {
resource: resource.resource,
version: resource.version,
hostPort: api.hostPort,
prefix: api.prefix,
version: resource.version,
namespaced: discoveredResource.namespaced
namespaced: discoveredResource.namespaced,
verbs: discoveredResource.verbs
};
}
return undefined;
......@@ -342,6 +353,8 @@ angular.module('openshiftCommonServices')
kindToResource: kindToResource,
kindToResourceGroupVersion: kindToResourceGroupVersion,
apiInfo: apiInfo,
invalidObjectKindOrVersion: invalidObjectKindOrVersion,
......
......@@ -4,187 +4,473 @@ window.OPENSHIFT_CONFIG.api.k8s.resources = {
"bindings":{
"name":"bindings",
"namespaced":true,
"kind":"Binding"
"kind":"Binding",
"verbs":[
"create"
]
},
"componentstatuses":{
"name":"componentstatuses",
"namespaced":false,
"kind":"ComponentStatus"
"kind":"ComponentStatus",
"verbs":[
"get",
"list"
],
"shortNames":[
"cs"
]
},
"configmaps":{
"name":"configmaps",
"namespaced":true,
"kind":"ConfigMap"
"kind":"ConfigMap",
"verbs":[
"create",
"delete",
"deletecollection",
"get",
"list",
"patch",
"update",
"watch"
],
"shortNames":[
"cm"
]
},
"endpoints":{
"name":"endpoints",
"namespaced":true,
"kind":"Endpoints"
"kind":"Endpoints",
"verbs":[
"create",
"delete",
"deletecollection",
"get",
"list",
"patch",
"update",
"watch"
],
"shortNames":[
"ep"
]
},
"events":{
"name":"events",
"namespaced":true,
"kind":"Event"
"kind":"Event",
"verbs":[
"create",
"delete",
"deletecollection",
"get",
"list",
"patch",
"update",
"watch"
],
"shortNames":[
"ev"
]
},
"limitranges":{
"name":"limitranges",
"namespaced":true,
"kind":"LimitRange"
"kind":"LimitRange",
"verbs":[
"create",
"delete",
"deletecollection",
"get",
"list",
"patch",
"update",
"watch"
],
"shortNames":[
"limits"
]
},
"namespaces":{
"name":"namespaces",
"namespaced":false,
"kind":"Namespace"
"kind":"Namespace",
"verbs":[
"create",
"delete",
"deletecollection",
"get",
"list",
"patch",
"update",
"watch"
],
"shortNames":[
"ns"
]
},
"namespaces/finalize":{
"name":"namespaces/finalize",
"namespaced":false,
"kind":"Namespace"
"kind":"Namespace",
"verbs":[
"update"
]
},
"namespaces/status":{
"name":"namespaces/status",
"namespaced":false,
"kind":"Namespace"
"kind":"Namespace",
"verbs":[
"get",
"patch",
"update"
]
},
"nodes":{
"name":"nodes",
"namespaced":false,
"kind":"Node"
"kind":"Node",
"verbs":[
"create",
"delete",
"deletecollection",
"get",
"list",
"patch",
"proxy",
"update",
"watch"
],
"shortNames":[
"no"
]
},
"nodes/proxy":{
"name":"nodes/proxy",
"namespaced":false,
"kind":"Node"
"kind":"Node",
"verbs":[
]
},
"nodes/status":{
"name":"nodes/status",
"namespaced":false,
"kind":"Node"
"kind":"Node",
"verbs":[
"get",
"patch",
"update"
]
},
"persistentvolumeclaims":{
"name":"persistentvolumeclaims",
"namespaced":true,
"kind":"PersistentVolumeClaim"
"kind":"PersistentVolumeClaim",
"verbs":[
"create",
"delete",
"deletecollection",
"get",
"list",
"patch",
"update",
"watch"
],
"shortNames":[
"pvc"
]
},
"persistentvolumeclaims/status":{
"name":"persistentvolumeclaims/status",
"namespaced":true,
"kind":"PersistentVolumeClaim"
"kind":"PersistentVolumeClaim",
"verbs":[
"get",
"patch",
"update"
]
},
"persistentvolumes":{
"name":"persistentvolumes",
"namespaced":false,
"kind":"PersistentVolume"
"kind":"PersistentVolume",
"verbs":[
"create",
"delete",
"deletecollection",
"get",
"list",
"patch",
"update",
"watch"
],
"shortNames":[
"pv"
]
},
"persistentvolumes/status":{
"name":"persistentvolumes/status",
"namespaced":false,
"kind":"PersistentVolume"
"kind":"PersistentVolume",
"verbs":[
"get",
"patch",
"update"
]
},
"pods":{
"name":"pods",
"namespaced":true,
"kind":"Pod"
"kind":"Pod",
"verbs":[
"create",
"delete",
"deletecollection",
"get",
"list",
"patch",
"proxy",
"update",
"watch"
],
"shortNames":[
"po"
]
},
"pods/attach":{
"name":"pods/attach",
"namespaced":true,
"kind":"Pod"
"kind":"Pod",
"verbs":[
]
},
"pods/binding":{
"name":"pods/binding",
"namespaced":true,
"kind":"Binding"
"kind":"Binding",
"verbs":[
"create"
]
},
"pods/eviction":{
"name":"pods/eviction",
"namespaced":true,
"kind":"Eviction"
"kind":"Eviction",
"verbs":[
"create"
]
},
"pods/exec":{
"name":"pods/exec",
"namespaced":true,
"kind":"Pod"
"kind":"Pod",
"verbs":[
]
},
"pods/log":{
"name":"pods/log",
"namespaced":true,
"kind":"Pod"
"kind":"Pod",
"verbs":[
"get"
]
},
"pods/portforward":{
"name":"pods/portforward",
"namespaced":true,
"kind":"Pod"
"kind":"Pod",
"verbs":[
]
},
"pods/proxy":{
"name":"pods/proxy",
"namespaced":true,
"kind":"Pod"
"kind":"Pod",
"verbs":[
]
},
"pods/status":{
"name":"pods/status",
"namespaced":true,
"kind":"Pod"
"kind":"Pod",
"verbs":[
"get",
"patch",
"update"
]
},
"podtemplates":{
"name":"podtemplates",
"namespaced":true,
"kind":"PodTemplate"
"kind":"PodTemplate",
"verbs":[
"create",
"delete",
"deletecollection",
"get",
"list",
"patch",
"update",
"watch"
]
},
"replicationcontrollers":{
"name":"replicationcontrollers",
"namespaced":true,
"kind":"ReplicationController"
"kind":"ReplicationController",
"verbs":[
"create",
"delete",
"deletecollection",
"get",
"list",
"patch",
"update",
"watch"
],
"shortNames":[
"rc"
]
},
"replicationcontrollers/scale":{
"name":"replicationcontrollers/scale",
"namespaced":true,
"kind":"Scale"
"kind":"Scale",
"verbs":[
"get",
"patch",
"update"
]
},
"replicationcontrollers/status":{
"name":"replicationcontrollers/status",
"namespaced":true,
"kind":"ReplicationController"
"kind":"ReplicationController",
"verbs":[
"get",
"patch",
"update"
]
},
"resourcequotas":{
"name":"resourcequotas",
"namespaced":true,
"kind":"ResourceQuota"
"kind":"ResourceQuota",
"verbs":[
"create",
"delete",
"deletecollection",
"get",
"list",
"patch",
"update",
"watch"
],
"shortNames":[
"quota"
]
},
"resourcequotas/status":{
"name":"resourcequotas/status",
"namespaced":true,
"kind":"ResourceQuota"
"kind":"ResourceQuota",
"verbs":[
"get",
"patch",
"update"
]
},
"secrets":{
"name":"secrets",
"namespaced":true,
"kind":"Secret"
"kind":"Secret",
"verbs":[
"create",
"delete",
"deletecollection",
"get",
"list",
"patch",
"update",
"watch"
]
},
"securitycontextconstraints":{
"name":"securitycontextconstraints",
"namespaced":false,
"kind":"SecurityContextConstraints"
"kind":"SecurityContextConstraints",
"verbs":[
"create",
"delete",
"deletecollection",
"get",
"list",
"patch",
"update",
"watch"
],
"shortNames":[
"scc"
]
},
"serviceaccounts":{
"name":"serviceaccounts",
"namespaced":true,
"kind":"ServiceAccount"
"kind":"ServiceAccount",
"verbs":[
"create",
"delete",
"deletecollection",
"get",
"list",
"patch",
"update",
"watch"
],
"shortNames":[
"sa"
]
},
"services":{
"name":"services",
"namespaced":true,
"kind":"Service"
"kind":"Service",
"verbs":[
"create",
"delete",
"get",
"list",
"patch",
"proxy",
"update",
"watch"
]
},
"services/proxy":{
"name":"services/proxy",
"namespaced":true,
"kind":"Service"
"kind":"Service",
"verbs":[
]
},
"services/status":{
"name":"services/status",
"namespaced":true,
"kind":"Service"
"kind":"Service",
"verbs":[
"get",
"patch",
"update"
]
}
}
};
......@@ -195,397 +481,753 @@ window.OPENSHIFT_CONFIG.api.openshift.resources = {
"appliedclusterresourcequotas":{
"name":"appliedclusterresourcequotas",
"namespaced":true,
"kind":"AppliedClusterResourceQuota"
"kind":"AppliedClusterResourceQuota",
"verbs":[
"get",
"list"
]
},
"buildconfigs":{
"name":"buildconfigs",
"namespaced":true,
"kind":"BuildConfig"
"kind":"BuildConfig",
"verbs":[
"create",
"delete",
"deletecollection",
"get",
"list",
"patch",
"update",
"watch"
]
},
"buildconfigs/instantiate":{
"name":"buildconfigs/instantiate",
"namespaced":true,
"kind":"BuildRequest"
"kind":"BuildRequest",
"verbs":[
"create"
]
},
"buildconfigs/instantiatebinary":{
"name":"buildconfigs/instantiatebinary",
"namespaced":true,
"kind":"BinaryBuildRequestOptions"
"kind":"BinaryBuildRequestOptions",
"verbs":[
]
},
"buildconfigs/webhooks":{
"name":"buildconfigs/webhooks",
"namespaced":true,
"kind":"Status"
"kind":"Build",
"verbs":[
]
},
"builds":{
"name":"builds",
"namespaced":true,
"kind":"Build"
"kind":"Build",
"verbs":[
"create",
"delete",
"deletecollection",
"get",
"list",
"patch",
"update",
"watch"
]
},
"builds/clone":{
"name":"builds/clone",
"namespaced":true,
"kind":"BuildRequest"
"kind":"BuildRequest",
"verbs":[
"create"
]
},
"builds/details":{
"name":"builds/details",
"namespaced":true,
"kind":"Build"
"kind":"Build",
"verbs":[
"update"
]
},
"builds/log":{
"name":"builds/log",
"namespaced":true,
"kind":"BuildLog"
"kind":"BuildLog",
"verbs":[
"get"
]
},
"clusternetworks":{
"name":"clusternetworks",
"namespaced":false,
"kind":"ClusterNetwork"
"kind":"ClusterNetwork",
"verbs":[
"create",
"delete",
"deletecollection",
"get",
"list",
"patch",
"update",
"watch"
]
},
"clusterpolicies":{
"name":"clusterpolicies",
"namespaced":false,
"kind":"ClusterPolicy"
"kind":"ClusterPolicy",
"verbs":[
"create",
"delete",
"deletecollection",
"get",
"list",
"patch",
"update",
"watch"
]
},
"clusterpolicybindings":{
"name":"clusterpolicybindings",
"namespaced":false,
"kind":"ClusterPolicyBinding"
"kind":"ClusterPolicyBinding",
"verbs":[
"create",
"delete",
"deletecollection",
"get",
"list",
"patch",
"update",
"watch"
]
},
"clusterresourcequotas":{
"name":"clusterresourcequotas",
"namespaced":false,
"kind":"ClusterResourceQuota"
"kind":"ClusterResourceQuota",
"verbs":[
"create",
"delete",
"deletecollection",
"get",
"list",
"patch",
"update",
"watch"
]
},
"clusterresourcequotas/status":{
"name":"clusterresourcequotas/status",
"namespaced":false,
"kind":"ClusterResourceQuota"
"kind":"ClusterResourceQuota",
"verbs":[
"get",
"patch",
"update"
]
},
"clusterrolebindings":{
"name":"clusterrolebindings",
"namespaced":false,
"kind":"ClusterRoleBinding"
"kind":"ClusterRoleBinding",
"verbs":[
"create",
"delete",
"get",
"list",
"patch",
"update"
]
},
"clusterroles":{
"name":"clusterroles",
"namespaced":false,
"kind":"ClusterRole"
"kind":"ClusterRole",
"verbs":[
"create",
"delete",
"get",
"list",
"patch",
"update"
]
},
"deploymentconfigrollbacks":{
"name":"deploymentconfigrollbacks",
"namespaced":true,
"kind":"DeploymentConfigRollback"
"kind":"DeploymentConfigRollback",
"verbs":[
"create"
]
},
"deploymentconfigs":{
"name":"deploymentconfigs",
"namespaced":true,
"kind":"DeploymentConfig"
"kind":"DeploymentConfig",
"verbs":[
"create",
"delete",
"deletecollection",
"get",
"list",
"patch",
"update",
"watch"
]
},
"deploymentconfigs/instantiate":{
"name":"deploymentconfigs/instantiate",
"namespaced":true,
"kind":"DeploymentRequest"
"kind":"DeploymentRequest",
"verbs":[
"create"
]
},
"deploymentconfigs/log":{
"name":"deploymentconfigs/log",
"namespaced":true,
"kind":"DeploymentLog"
"kind":"DeploymentLog",
"verbs":[
"get"
]
},
"deploymentconfigs/rollback":{
"name":"deploymentconfigs/rollback",
"namespaced":true,
"kind":"DeploymentConfigRollback"
"kind":"DeploymentConfigRollback",
"verbs":[
"create"
]
},
"deploymentconfigs/scale":{
"name":"deploymentconfigs/scale",
"namespaced":true,
"kind":"Scale"
"kind":"Scale",
"verbs":[
"get",
"patch",
"update"
]
},
"deploymentconfigs/status":{
"name":"deploymentconfigs/status",
"namespaced":true,
"kind":"DeploymentConfig"
"kind":"DeploymentConfig",
"verbs":[
"get",
"patch",
"update"
]
},
"egressnetworkpolicies":{
"name":"egressnetworkpolicies",
"namespaced":true,
"kind":"EgressNetworkPolicy"
"kind":"EgressNetworkPolicy",
"verbs":[
"create",
"delete",
"deletecollection",
"get",
"list",
"patch",
"update",
"watch"
]
},
"generatedeploymentconfigs":{
"name":"generatedeploymentconfigs",
"namespaced":true,
"kind":"DeploymentConfig"
"kind":"DeploymentConfig",
"verbs":[
]
},
"groups":{
"name":"groups",
"namespaced":false,
"kind":"Group"
"kind":"Group",
"verbs":[
"create",
"delete",
"deletecollection",
"get",
"list",
"patch",
"update",
"watch"
]
},
"hostsubnets":{
"name":"hostsubnets",
"namespaced":false,
"kind":"HostSubnet"
"kind":"HostSubnet",
"verbs":[
"create",
"delete",
"deletecollection",
"get",
"list",
"patch",
"update",
"watch"
]
},
"identities":{
"name":"identities",
"namespaced":false,
"kind":"Identity"
"kind":"Identity",
"verbs":[
"create",
"delete",
"deletecollection",
"get",
"list",
"patch",
"update",
"watch"
]
},
"images":{
"name":"images",
"namespaced":false,
"kind":"Image"
"kind":"Image",
"verbs":[
"create",
"delete",
"deletecollection",
"get",
"list",
"patch",
"update",
"watch"
]
},
"imagesignatures":{
"name":"imagesignatures",
"namespaced":false,
"kind":"ImageSignature"
"kind":"ImageSignature",
"verbs":[
"create",
"delete"
]
},
"imagestreamimages":{
"name":"imagestreamimages",
"namespaced":true,
"kind":"ImageStreamImage"
"kind":"ImageStreamImage",
"verbs":[
"get"
]
},
"imagestreamimports":{
"name":"imagestreamimports",
"namespaced":true,
"kind":"ImageStreamImport"
"kind":"ImageStreamImport",
"verbs":[
"create"
]
},
"imagestreammappings":{
"name":"imagestreammappings",
"namespaced":true,
"kind":"ImageStreamMapping"
"kind":"ImageStreamMapping",
"verbs":[
"create"
]
},
"imagestreams":{
"name":"imagestreams",
"namespaced":true,
"kind":"ImageStream"
"kind":"ImageStream",
"verbs":[
"create",
"delete",
"deletecollection",
"get",
"list",
"patch",
"update",
"watch"
]
},
"imagestreams/secrets":{
"name":"imagestreams/secrets",
"namespaced":true,
"kind":"SecretList"
"kind":"SecretList",
"verbs":[
"get"
]
},
"imagestreams/status":{
"name":"imagestreams/status",
"namespaced":true,
"kind":"ImageStream"
"kind":"ImageStream",
"verbs":[
"get",
"patch",
"update"
]
},
"imagestreamtags":{
"name":"imagestreamtags",
"namespaced":true,
"kind":"ImageStreamTag"
"kind":"ImageStreamTag",
"verbs":[
"create",
"delete",
"get",
"list",
"patch",
"update"
]
},
"localresourceaccessreviews":{
"name":"localresourceaccessreviews",
"namespaced":true,
"kind":"LocalResourceAccessReview"
"kind":"LocalResourceAccessReview",
"verbs":[
"create"
]
},
"localsubjectaccessreviews":{
"name":"localsubjectaccessreviews",
"namespaced":true,
"kind":"LocalSubjectAccessReview"
"kind":"LocalSubjectAccessReview",
"verbs":[
"create"
]
},
"netnamespaces":{
"name":"netnamespaces",
"namespaced":false,
"kind":"NetNamespace"
"kind":"NetNamespace",
"verbs":[
"create",
"delete",
"deletecollection",
"get",
"list",
"patch",
"update",
"watch"
]
},
"oauthaccesstokens":{
"name":"oauthaccesstokens",
"namespaced":false,
"kind":"OAuthAccessToken"
"kind":"OAuthAccessToken",
"verbs":[
"create",
"delete",
"deletecollection",
"get",
"list",
"patch",
"update",
"watch"
]
},
"oauthauthorizetokens":{
"name":"oauthauthorizetokens",
"namespaced":false,
"kind":"OAuthAuthorizeToken"
"kind":"OAuthAuthorizeToken",
"verbs":[
"create",
"delete",
"deletecollection",
"get",
"list",
"patch",
"update",
"watch"
]
},
"oauthclientauthorizations":{
"name":"oauthclientauthorizations",
"namespaced":false,
"kind":"OAuthClientAuthorization"
"kind":"OAuthClientAuthorization",
"verbs":[
"create",
"delete",
"deletecollection",
"get",
"list",
"patch",
"update",
"watch"
]
},
"oauthclients":{
"name":"oauthclients",
"namespaced":false,
"kind":"OAuthClient"
"kind":"OAuthClient",
"verbs":[
"create",
"delete",
"deletecollection",
"get",
"list",
"patch",
"update",
"watch"
]
},
"podsecuritypolicyreviews":{
"name":"podsecuritypolicyreviews",
"namespaced":true,
"kind":"PodSecurityPolicyReview"
"kind":"PodSecurityPolicyReview",
"verbs":[
"create"
]
},
"podsecuritypolicyselfsubjectreviews":{
"name":"podsecuritypolicyselfsubjectreviews",
"namespaced":true,
"kind":"PodSecurityPolicySelfSubjectReview"
"kind":"PodSecurityPolicySelfSubjectReview",
"verbs":[
"create"
]
},
"podsecuritypolicysubjectreviews":{
"name":"podsecuritypolicysubjectreviews",
"namespaced":true,
"kind":"PodSecurityPolicySubjectReview"
"kind":"PodSecurityPolicySubjectReview",
"verbs":[
"create"
]
},
"policies":{
"name":"policies",
"namespaced":true,
"kind":"Policy"
"kind":"Policy",
"verbs":[
"create",
"delete",
"deletecollection",
"get",
"list",
"patch",
"update",
"watch"
]
},
"policybindings":{
"name":"policybindings",
"namespaced":true,
"kind":"PolicyBinding"
"kind":"PolicyBinding",
"verbs":[
"create",
"delete",
"deletecollection",
"get",
"list",
"patch",
"update",
"watch"
]
},
"processedtemplates":{
"name":"processedtemplates",
"namespaced":true,
"kind":"Template"
"kind":"Template",
"verbs":[
"create"
]
},
"projectrequests":{
"name":"projectrequests",
"namespaced":false,
"kind":"ProjectRequest"
"kind":"ProjectRequest",
"verbs":[
"create",
"list"
]
},
"projects":{
"name":"projects",
"namespaced":false,
"kind":"Project"
"kind":"Project",
"verbs":[
"create",
"delete",
"get",
"list",
"patch",
"update",
"watch"
]
},
"resourceaccessreviews":{
"name":"resourceaccessreviews",
"namespaced":true,
"kind":"ResourceAccessReview"
"kind":"ResourceAccessReview",
"verbs":[
"create"
]
},
"rolebindingrestrictions":{
"name":"rolebindingrestrictions",
"namespaced":true,
"kind":"RoleBindingRestriction"
"kind":"RoleBindingRestriction",
"verbs":[
"create",
"delete",
"deletecollection",
"get",
"list",
"patch",
"update",
"watch"
]
},
"rolebindings":{
"name":"rolebindings",
"namespaced":true,
"kind":"RoleBinding"
"kind":"RoleBinding",
"verbs":[
"create",
"delete",
"get",
"list",
"patch",
"update"
]
},
"roles":{
"name":"roles",
"namespaced":true,
"kind":"Role"
"kind":"Role",
"verbs":[
"create",
"delete",
"get",
"list",
"patch",
"update"
]
},
"routes":{
"name":"routes",
"namespaced":true,
"kind":"Route"
"kind":"Route",
"verbs":[
"create",
"delete",
"deletecollection",
"get",
"list",
"patch",
"update",
"watch"
]
},
"routes/status":{
"name":"routes/status",
"namespaced":true,
"kind":"Route"
"kind":"Route",
"verbs":[
"get",
"patch",
"update"
]
},
"selfsubjectrulesreviews":{
"name":"selfsubjectrulesreviews",
"namespaced":true,
"kind":"SelfSubjectRulesReview"
"kind":"SelfSubjectRulesReview",
"verbs":[
"create"
]
},
"subjectaccessreviews":{
"name":"subjectaccessreviews",
"namespaced":true,
"kind":"SubjectAccessReview"
"kind":"SubjectAccessReview",
"verbs":[
"create"
]
},
"subjectrulesreviews":{
"name":"subjectrulesreviews",
"namespaced":true,
"kind":"SubjectRulesReview"
"kind":"SubjectRulesReview",
"verbs":[
"create"
]
},
"templates":{
"name":"templates",
"namespaced":true,
"kind":"Template"
"kind":"Template",
"verbs":[
"create",
"delete",
"deletecollection",
"get",
"list",
"patch",
"update",
"watch"
]
},
"useridentitymappings":{
"name":"useridentitymappings",
"namespaced":false,
"kind":"UserIdentityMapping"
"kind":"UserIdentityMapping",
"verbs":[
"create",
"delete",
"get",
"patch",
"update"
]
},
"users":{
"name":"users",
"namespaced":false,
"kind":"User"
"kind":"User",
"verbs":[
"create",
"delete",
"deletecollection",
"get",
"list",
"patch",
"update",
"watch"
]
}
}
};
window.OPENSHIFT_CONFIG.apis.groups = {
"apps":{
"name":"apps",
"preferredVersion":"v1beta1",
"versions":{
"v1beta1":{
"version":"v1beta1",
"groupVersion":"apps/v1beta1",
"resources":{
"statefulsets":{
"name":"statefulsets",
"namespaced":true,
"kind":"StatefulSet"
},
"statefulsets/status":{
"name":"statefulsets/status",
"namespaced":true,
"kind":"StatefulSet"
}
}
}
},
"hostPrefix":null
},
"apps.openshift.io":{
"name":"apps.openshift.io",
"authentication.k8s.io":{
"name":"authentication.k8s.io",
"preferredVersion":"v1",
"versions":{
"v1":{
"version":"v1",
"groupVersion":"apps.openshift.io/v1",
"groupVersion":"authentication.k8s.io/v1",
"resources":{
"deploymentconfigs":{
"name":"deploymentconfigs",
"namespaced":true,
"kind":"DeploymentConfig"
},
"deploymentconfigs/instantiate":{
"name":"deploymentconfigs/instantiate",
"namespaced":true,
"kind":"DeploymentRequest"
},
"deploymentconfigs/log":{
"name":"deploymentconfigs/log",
"namespaced":true,
"kind":"DeploymentLog"
},
"deploymentconfigs/rollback":{
"name":"deploymentconfigs/rollback",
"namespaced":true,
"kind":"DeploymentConfigRollback"
},
"deploymentconfigs/scale":{
"name":"deploymentconfigs/scale",
"namespaced":true,
"kind":"Scale"
},
"deploymentconfigs/status":{
"name":"deploymentconfigs/status",
"namespaced":true,
"kind":"DeploymentConfig"
"tokenreviews":{
"name":"tokenreviews",
"namespaced":false,
"kind":"TokenReview",
"verbs":[
"create"
]
}
}
}
},
"hostPrefix":null
},
"authentication.k8s.io":{
"name":"authentication.k8s.io",
"preferredVersion":"v1beta1",
"versions":{
},
"v1beta1":{
"version":"v1beta1",
"groupVersion":"authentication.k8s.io/v1beta1",
......@@ -593,7 +1235,10 @@ window.OPENSHIFT_CONFIG.apis.groups = {
"tokenreviews":{
"name":"tokenreviews",
"namespaced":false,
"kind":"TokenReview"
"kind":"TokenReview",
"verbs":[
"create"
]
}
}
}
......@@ -602,114 +1247,65 @@ window.OPENSHIFT_CONFIG.apis.groups = {
},
"authorization.k8s.io":{
"name":"authorization.k8s.io",
"preferredVersion":"v1beta1",
"preferredVersion":"v1",
"versions":{
"v1beta1":{
"version":"v1beta1",
"groupVersion":"authorization.k8s.io/v1beta1",
"v1":{
"version":"v1",
"groupVersion":"authorization.k8s.io/v1",
"resources":{
"localsubjectaccessreviews":{
"name":"localsubjectaccessreviews",
"namespaced":true,
"kind":"LocalSubjectAccessReview"
"kind":"LocalSubjectAccessReview",
"verbs":[
"create"
]
},
"selfsubjectaccessreviews":{
"name":"selfsubjectaccessreviews",
"namespaced":false,
"kind":"SelfSubjectAccessReview"
"kind":"SelfSubjectAccessReview",
"verbs":[
"create"
]
},
"subjectaccessreviews":{
"name":"subjectaccessreviews",
"namespaced":false,
"kind":"SubjectAccessReview"
"kind":"SubjectAccessReview",
"verbs":[
"create"
]
}
}
}
},
"hostPrefix":null
},
"authorization.openshift.io":{
"name":"authorization.openshift.io",
"preferredVersion":"v1",
"versions":{
"v1":{
"version":"v1",
"groupVersion":"authorization.openshift.io/v1",
},
"v1beta1":{
"version":"v1beta1",
"groupVersion":"authorization.k8s.io/v1beta1",
"resources":{
"clusterpolicies":{
"name":"clusterpolicies",
"namespaced":false,
"kind":"ClusterPolicy"
},
"clusterpolicybindings":{
"name":"clusterpolicybindings",
"namespaced":false,
"kind":"ClusterPolicyBinding"
},
"clusterrolebindings":{
"name":"clusterrolebindings",
"namespaced":false,
"kind":"ClusterRoleBinding"
},
"clusterroles":{
"name":"clusterroles",
"namespaced":false,
"kind":"ClusterRole"
},
"localresourceaccessreviews":{
"name":"localresourceaccessreviews",
"namespaced":true,
"kind":"LocalResourceAccessReview"
},
"localsubjectaccessreviews":{
"name":"localsubjectaccessreviews",
"namespaced":true,
"kind":"LocalSubjectAccessReview"
},
"policies":{
"name":"policies",
"namespaced":true,
"kind":"Policy"
},
"policybindings":{
"name":"policybindings",
"namespaced":true,
"kind":"PolicyBinding"
},
"resourceaccessreviews":{
"name":"resourceaccessreviews",
"namespaced":true,
"kind":"ResourceAccessReview"
},
"rolebindingrestrictions":{
"name":"rolebindingrestrictions",
"namespaced":true,
"kind":"RoleBindingRestriction"
"kind":"LocalSubjectAccessReview",
"verbs":[
"create"
]
},
"rolebindings":{
"name":"rolebindings",
"namespaced":true,
"kind":"RoleBinding"
},
"roles":{
"name":"roles",
"namespaced":true,
"kind":"Role"
},
"selfsubjectrulesreviews":{
"name":"selfsubjectrulesreviews",
"namespaced":true,
"kind":"SelfSubjectRulesReview"
"selfsubjectaccessreviews":{
"name":"selfsubjectaccessreviews",
"namespaced":false,
"kind":"SelfSubjectAccessReview",
"verbs":[
"create"
]
},
"subjectaccessreviews":{
"name":"subjectaccessreviews",
"namespaced":true,
"kind":"SubjectAccessReview"
},
"subjectrulesreviews":{
"name":"subjectrulesreviews",
"namespaced":true,
"kind":"SubjectRulesReview"
"namespaced":false,
"kind":"SubjectAccessReview",
"verbs":[
"create"
]
}
}
}
......@@ -727,12 +1323,64 @@ window.OPENSHIFT_CONFIG.apis.groups = {
"horizontalpodautoscalers":{
"name":"horizontalpodautoscalers",
"namespaced":true,
"kind":"HorizontalPodAutoscaler"
"kind":"HorizontalPodAutoscaler",
"verbs":[
"create",
"delete",
"deletecollection",
"get",
"list",
"patch",
"update",
"watch"
],
"shortNames":[
"hpa"
]
},
"horizontalpodautoscalers/status":{
"name":"horizontalpodautoscalers/status",
"namespaced":true,
"kind":"HorizontalPodAutoscaler",
"verbs":[
"get",
"patch",
"update"
]
}
}
},
"v2alpha1":{
"version":"v2alpha1",
"groupVersion":"autoscaling/v2alpha1",
"resources":{
"horizontalpodautoscalers":{
"name":"horizontalpodautoscalers",
"namespaced":true,
"kind":"HorizontalPodAutoscaler",
"verbs":[
"create",
"delete",
"deletecollection",
"get",
"list",
"patch",
"update",
"watch"
],
"shortNames":[
"hpa"
]
},
"horizontalpodautoscalers/status":{
"name":"horizontalpodautoscalers/status",
"namespaced":true,
"kind":"HorizontalPodAutoscaler"
"kind":"HorizontalPodAutoscaler",
"verbs":[
"get",
"patch",
"update"
]
}
}
}
......@@ -750,12 +1398,27 @@ window.OPENSHIFT_CONFIG.apis.groups = {
"jobs":{
"name":"jobs",
"namespaced":true,
"kind":"Job"
"kind":"Job",
"verbs":[
"create",
"delete",
"deletecollection",
"get",
"list",
"patch",
"update",
"watch"
]
},
"jobs/status":{
"name":"jobs/status",
"namespaced":true,
"kind":"Job"
"kind":"Job",
"verbs":[
"get",
"patch",
"update"
]
}
}
},
......@@ -766,85 +1429,52 @@ window.OPENSHIFT_CONFIG.apis.groups = {
"cronjobs":{
"name":"cronjobs",
"namespaced":true,
"kind":"CronJob"
"kind":"CronJob",
"verbs":[
"create",
"delete",
"deletecollection",
"get",
"list",
"patch",
"update",
"watch"
]
},
"cronjobs/status":{
"name":"cronjobs/status",
"namespaced":true,
"kind":"CronJob"
},
"jobs":{
"name":"jobs",
"namespaced":true,
"kind":"Job"
},
"jobs/status":{
"name":"jobs/status",
"namespaced":true,
"kind":"Job"
"kind":"CronJob",
"verbs":[
"get",
"patch",
"update"
]
},
"scheduledjobs":{
"name":"scheduledjobs",
"namespaced":true,
"kind":"ScheduledJob"
"kind":"ScheduledJob",
"verbs":[
"create",
"delete",
"deletecollection",
"get",
"list",
"patch",
"update",
"watch"
]
},
"scheduledjobs/status":{
"name":"scheduledjobs/status",
"namespaced":true,
"kind":"ScheduledJob"
}
}
}
},
"hostPrefix":null
},
"build.openshift.io":{
"name":"build.openshift.io",
"preferredVersion":"v1",
"versions":{
"v1":{
"version":"v1",
"groupVersion":"build.openshift.io/v1",
"resources":{
"buildconfigs":{
"name":"buildconfigs",
"namespaced":true,
"kind":"BuildConfig"
},
"buildconfigs/instantiate":{
"name":"buildconfigs/instantiate",
"namespaced":true,
"kind":"BuildRequest"
},
"buildconfigs/instantiatebinary":{
"name":"buildconfigs/instantiatebinary",
"namespaced":true,
"kind":"BinaryBuildRequestOptions"
},
"buildconfigs/webhooks":{
"name":"buildconfigs/webhooks",
"namespaced":true,
"kind":"Status"
},
"builds":{
"name":"builds",
"namespaced":true,
"kind":"Build"
},
"builds/clone":{
"name":"builds/clone",
"namespaced":true,
"kind":"BuildRequest"
},
"builds/details":{
"name":"builds/details",
"namespaced":true,
"kind":"Build"
},
"builds/log":{
"name":"builds/log",
"namespaced":true,
"kind":"BuildLog"
"kind":"ScheduledJob",
"verbs":[
"get",
"patch",
"update"
]
}
}
}
......@@ -853,26 +1483,45 @@ window.OPENSHIFT_CONFIG.apis.groups = {
},
"certificates.k8s.io":{
"name":"certificates.k8s.io",
"preferredVersion":"v1alpha1",
"preferredVersion":"v1beta1",
"versions":{
"v1alpha1":{
"version":"v1alpha1",
"groupVersion":"certificates.k8s.io/v1alpha1",
"v1beta1":{
"version":"v1beta1",
"groupVersion":"certificates.k8s.io/v1beta1",
"resources":{
"certificatesigningrequests":{
"name":"certificatesigningrequests",
"namespaced":false,
"kind":"CertificateSigningRequest"
"kind":"CertificateSigningRequest",
"verbs":[
"create",
"delete",
"deletecollection",
"get",
"list",
"patch",
"update",
"watch"
],
"shortNames":[
"csr"
]
},
"certificatesigningrequests/approval":{
"name":"certificatesigningrequests/approval",
"namespaced":false,
"kind":"CertificateSigningRequest"
"kind":"CertificateSigningRequest",
"verbs":[
"update"
]
},
"certificatesigningrequests/status":{
"name":"certificatesigningrequests/status",
"namespaced":false,
"kind":"CertificateSigningRequest"
"kind":"CertificateSigningRequest",
"verbs":[
"update"
]
}
}
}
......@@ -890,160 +1539,554 @@ window.OPENSHIFT_CONFIG.apis.groups = {
"daemonsets":{
"name":"daemonsets",
"namespaced":true,
"kind":"DaemonSet"
"kind":"DaemonSet",
"verbs":[
"create",
"delete",
"deletecollection",
"get",
"list",
"patch",
"update",
"watch"
],
"shortNames":[
"ds"
]
},
"daemonsets/status":{
"name":"daemonsets/status",
"namespaced":true,
"kind":"DaemonSet"
"kind":"DaemonSet",
"verbs":[
"get",
"patch",
"update"
]
},
"deployments":{
"name":"deployments",
"namespaced":true,
"kind":"Deployment"
"kind":"Deployment",
"verbs":[
"create",
"delete",
"deletecollection",
"get",
"list",
"patch",
"update",
"watch"
],
"shortNames":[
"deploy"
]
},
"deployments/rollback":{
"name":"deployments/rollback",
"namespaced":true,
"kind":"DeploymentRollback"
"kind":"DeploymentRollback",
"verbs":[
"create"
]
},
"deployments/scale":{
"name":"deployments/scale",
"namespaced":true,
"kind":"Scale"
"kind":"Scale",
"verbs":[
"get",
"patch",
"update"
]
},
"deployments/status":{
"name":"deployments/status",
"namespaced":true,
"kind":"Deployment"
"kind":"Deployment",
"verbs":[
"get",
"patch",
"update"
]
},
"horizontalpodautoscalers":{
"name":"horizontalpodautoscalers",
"namespaced":true,
"kind":"HorizontalPodAutoscaler"
"kind":"HorizontalPodAutoscaler",
"verbs":[
"create",
"delete",
"deletecollection",
"get",
"list",
"patch",
"update",
"watch"
],
"shortNames":[
"hpa"
]
},
"horizontalpodautoscalers/status":{
"name":"horizontalpodautoscalers/status",
"namespaced":true,
"kind":"HorizontalPodAutoscaler"
"kind":"HorizontalPodAutoscaler",
"verbs":[
"get",
"patch",
"update"
]
},
"ingresses":{
"name":"ingresses",
"namespaced":true,
"kind":"Ingress"
"kind":"Ingress",
"verbs":[
"create",
"delete",
"deletecollection",
"get",
"list",
"patch",
"update",
"watch"
],
"shortNames":[
"ing"
]
},
"ingresses/status":{
"name":"ingresses/status",
"namespaced":true,
"kind":"Ingress"
},
"jobs":{
"name":"jobs",
"namespaced":true,
"kind":"Job"
},
"jobs/status":{
"name":"jobs/status",
"namespaced":true,
"kind":"Job"
"kind":"Ingress",
"verbs":[
"get",
"patch",
"update"
]
},
"networkpolicies":{
"name":"networkpolicies",
"namespaced":true,
"kind":"NetworkPolicy"
"kind":"NetworkPolicy",
"verbs":[
"create",
"delete",
"deletecollection",
"get",
"list",
"patch",
"update",
"watch"
]
},
"podsecuritypolicies":{
"name":"podsecuritypolicies",
"namespaced":false,
"kind":"PodSecurityPolicy"
"kind":"PodSecurityPolicy",
"verbs":[
"create",
"delete",
"deletecollection",
"get",
"list",
"patch",
"update",
"watch"
],
"shortNames":[
"psp"
]
},
"replicasets":{
"name":"replicasets",
"namespaced":true,
"kind":"ReplicaSet"
"kind":"ReplicaSet",
"verbs":[
"create",
"delete",
"deletecollection",
"get",
"list",
"patch",
"update",
"watch"
],
"shortNames":[
"rs"
]
},
"replicasets/scale":{
"name":"replicasets/scale",
"namespaced":true,
"kind":"Scale"
"kind":"Scale",
"verbs":[
"get",
"patch",
"update"
]
},
"replicasets/status":{
"name":"replicasets/status",
"namespaced":true,
"kind":"ReplicaSet"
"kind":"ReplicaSet",
"verbs":[
"get",
"patch",
"update"
]
},
"replicationcontrollers":{
"name":"replicationcontrollers",
"namespaced":true,
"kind":"ReplicationControllerDummy"
"kind":"ReplicationControllerDummy",
"verbs":[
]
},
"replicationcontrollers/scale":{
"name":"replicationcontrollers/scale",
"namespaced":true,
"kind":"Scale"
"kind":"Scale",
"verbs":[
"get",
"patch",
"update"
]
},
"thirdpartyresources":{
"name":"thirdpartyresources",
"namespaced":false,
"kind":"ThirdPartyResource"
"kind":"ThirdPartyResource",
"verbs":[
"create",
"delete",
"deletecollection",
"get",
"list",
"patch",
"update",
"watch"
]
}
}
}
},
"hostPrefix":null
},
"image.openshift.io":{
"name":"image.openshift.io",
"preferredVersion":"v1",
"policy":{
"name":"policy",
"preferredVersion":"v1beta1",
"versions":{
"v1":{
"version":"v1",
"groupVersion":"image.openshift.io/v1",
"v1beta1":{
"version":"v1beta1",
"groupVersion":"policy/v1beta1",
"resources":{
"images":{
"name":"images",
"namespaced":false,
"kind":"Image"
},
"imagesignatures":{
"name":"imagesignatures",
"namespaced":false,
"kind":"ImageSignature"
},
"imagestreamimages":{
"name":"imagestreamimages",
"poddisruptionbudgets":{
"name":"poddisruptionbudgets",
"namespaced":true,
"kind":"ImageStreamImage"
"kind":"PodDisruptionBudget",
"verbs":[
"create",
"delete",
"deletecollection",
"get",
"list",
"patch",
"update",
"watch"
],
"shortNames":[
"pdb"
]
},
"imagestreamimports":{
"name":"imagestreamimports",
"namespaced":true,
"kind":"ImageStreamImport"
"poddisruptionbudgets/status":{
"name":"poddisruptionbudgets/status",
"namespaced":true,
"kind":"PodDisruptionBudget",
"verbs":[
"get",
"patch",
"update"
]
}
}
}
},
"hostPrefix":null
},
"rbac.authorization.k8s.io":{
"name":"rbac.authorization.k8s.io",
"preferredVersion":"v1beta1",
"versions":{
"v1beta1":{
"version":"v1beta1",
"groupVersion":"rbac.authorization.k8s.io/v1beta1",
"resources":{
"clusterrolebindings":{
"name":"clusterrolebindings",
"namespaced":false,
"kind":"ClusterRoleBinding",
"verbs":[
"create",
"delete",
"deletecollection",
"get",
"list",
"patch",
"update",
"watch"
]
},
"imagestreammappings":{
"name":"imagestreammappings",
"clusterroles":{
"name":"clusterroles",
"namespaced":false,
"kind":"ClusterRole",
"verbs":[
"create",
"delete",
"deletecollection",
"get",
"list",
"patch",
"update",
"watch"
]
},
"rolebindings":{
"name":"rolebindings",
"namespaced":true,
"kind":"ImageStreamMapping"
"kind":"RoleBinding",
"verbs":[
"create",
"delete",
"deletecollection",
"get",
"list",
"patch",
"update",
"watch"
]
},
"imagestreams":{
"name":"imagestreams",
"roles":{
"name":"roles",
"namespaced":true,
"kind":"Role",
"verbs":[
"create",
"delete",
"deletecollection",
"get",
"list",
"patch",
"update",
"watch"
]
}
}
}
},
"hostPrefix":null
},
"settings.k8s.io":{
"name":"settings.k8s.io",
"preferredVersion":"v1alpha1",
"versions":{
"v1alpha1":{
"version":"v1alpha1",
"groupVersion":"settings.k8s.io/v1alpha1",
"resources":{
"podpresets":{
"name":"podpresets",
"namespaced":true,
"kind":"PodPreset",
"verbs":[
"create",
"delete",
"deletecollection",
"get",
"list",
"patch",
"update",
"watch"
]
}
}
}
},
"hostPrefix":null
},
"storage.k8s.io":{
"name":"storage.k8s.io",
"preferredVersion":"v1",
"versions":{
"v1beta1":{
"version":"v1beta1",
"groupVersion":"storage.k8s.io/v1beta1",
"resources":{
"storageclasses":{
"name":"storageclasses",
"namespaced":false,
"kind":"StorageClass",
"verbs":[
"create",
"delete",
"deletecollection",
"get",
"list",
"patch",
"update",
"watch"
],
"shortNames":[
"sc"
]
}
}
},
"v1":{
"version":"v1",
"groupVersion":"storage.k8s.io/v1",
"resources":{
"storageclasses":{
"name":"storageclasses",
"namespaced":false,
"kind":"StorageClass",
"verbs":[
"create",
"delete",
"deletecollection",
"get",
"list",
"patch",
"update",
"watch"
],
"shortNames":[
"sc"
]
}
}
}
},
"hostPrefix":null
},
"apps":{
"name":"apps",
"preferredVersion":"v1beta1",
"versions":{
"v1beta1":{
"version":"v1beta1",
"groupVersion":"apps/v1beta1",
"resources":{
"deployments":{
"name":"deployments",
"namespaced":true,
"kind":"ImageStream"
"kind":"Deployment",
"verbs":[
"create",
"delete",
"deletecollection",
"get",
"list",
"patch",
"update",
"watch"
],
"shortNames":[
"deploy"
]
},
"imagestreams/secrets":{
"name":"imagestreams/secrets",
"deployments/rollback":{
"name":"deployments/rollback",
"namespaced":true,
"kind":"SecretList"
"kind":"DeploymentRollback",
"verbs":[
"create"
]
},
"imagestreams/status":{
"name":"imagestreams/status",
"deployments/scale":{
"name":"deployments/scale",
"namespaced":true,
"kind":"ImageStream"
"kind":"Scale",
"verbs":[
"get",
"patch",
"update"
]
},
"imagestreamtags":{
"name":"imagestreamtags",
"deployments/status":{
"name":"deployments/status",
"namespaced":true,
"kind":"Deployment",
"verbs":[
"get",
"patch",
"update"
]
},
"statefulsets":{
"name":"statefulsets",
"namespaced":true,
"kind":"ImageStreamTag"
"kind":"StatefulSet",
"verbs":[
"create",
"delete",
"deletecollection",
"get",
"list",
"patch",
"update",
"watch"
]
},
"statefulsets/status":{
"name":"statefulsets/status",
"namespaced":true,
"kind":"StatefulSet",
"verbs":[
"get",
"patch",
"update"
]
}
}
}
},
"hostPrefix":null
},
"security.openshift.io":{
"name":"security.openshift.io",
"preferredVersion":"v1",
"versions":{
"v1":{
"version":"v1",
"groupVersion":"security.openshift.io/v1",
"resources":{
"podsecuritypolicyreviews":{
"name":"podsecuritypolicyreviews",
"namespaced":true,
"kind":"PodSecurityPolicyReview",
"verbs":[
"create"
]
},
"podsecuritypolicyselfsubjectreviews":{
"name":"podsecuritypolicyselfsubjectreviews",
"namespaced":true,
"kind":"PodSecurityPolicySelfSubjectReview",
"verbs":[
"create"
]
},
"podsecuritypolicysubjectreviews":{
"name":"podsecuritypolicysubjectreviews",
"namespaced":true,
"kind":"PodSecurityPolicySubjectReview",
"verbs":[
"create"
]
}
}
}
......@@ -1061,22 +2104,395 @@ window.OPENSHIFT_CONFIG.apis.groups = {
"clusternetworks":{
"name":"clusternetworks",
"namespaced":false,
"kind":"ClusterNetwork"
"kind":"ClusterNetwork",
"verbs":[
"create",
"delete",
"deletecollection",
"get",
"list",
"patch",
"update",
"watch"
]
},
"egressnetworkpolicies":{
"name":"egressnetworkpolicies",
"namespaced":true,
"kind":"EgressNetworkPolicy"
"kind":"EgressNetworkPolicy",
"verbs":[
"create",
"delete",
"deletecollection",
"get",
"list",
"patch",
"update",
"watch"
]
},
"hostsubnets":{
"name":"hostsubnets",
"namespaced":false,
"kind":"HostSubnet"
"kind":"HostSubnet",
"verbs":[
"create",
"delete",
"deletecollection",
"get",
"list",
"patch",
"update",
"watch"
]
},
"netnamespaces":{
"name":"netnamespaces",
"namespaced":false,
"kind":"NetNamespace"
"kind":"NetNamespace",
"verbs":[
"create",
"delete",
"deletecollection",
"get",
"list",
"patch",
"update",
"watch"
]
}
}
}
},
"hostPrefix":null
},
"route.openshift.io":{
"name":"route.openshift.io",
"preferredVersion":"v1",
"versions":{
"v1":{
"version":"v1",
"groupVersion":"route.openshift.io/v1",
"resources":{
"routes":{
"name":"routes",
"namespaced":true,
"kind":"Route",
"verbs":[
"create",
"delete",
"deletecollection",
"get",
"list",
"patch",
"update",
"watch"
]
},
"routes/status":{
"name":"routes/status",
"namespaced":true,
"kind":"Route",
"verbs":[
"get",
"patch",
"update"
]
}
}
}
},
"hostPrefix":null
},
"image.openshift.io":{
"name":"image.openshift.io",
"preferredVersion":"v1",
"versions":{
"v1":{
"version":"v1",
"groupVersion":"image.openshift.io/v1",
"resources":{
"images":{
"name":"images",
"namespaced":false,
"kind":"Image",
"verbs":[
"create",
"delete",
"deletecollection",
"get",
"list",
"patch",
"update",
"watch"
]
},
"imagesignatures":{
"name":"imagesignatures",
"namespaced":false,
"kind":"ImageSignature",
"verbs":[
"create",
"delete"
]
},
"imagestreamimages":{
"name":"imagestreamimages",
"namespaced":true,
"kind":"ImageStreamImage",
"verbs":[
"get"
]
},
"imagestreamimports":{
"name":"imagestreamimports",
"namespaced":true,
"kind":"ImageStreamImport",
"verbs":[
"create"
]
},
"imagestreammappings":{
"name":"imagestreammappings",
"namespaced":true,
"kind":"ImageStreamMapping",
"verbs":[
"create"
]
},
"imagestreams":{
"name":"imagestreams",
"namespaced":true,
"kind":"ImageStream",
"verbs":[
"create",
"delete",
"deletecollection",
"get",
"list",
"patch",
"update",
"watch"
]
},
"imagestreams/secrets":{
"name":"imagestreams/secrets",
"namespaced":true,
"kind":"SecretList",
"verbs":[
"get"
]
},
"imagestreams/status":{
"name":"imagestreams/status",
"namespaced":true,
"kind":"ImageStream",
"verbs":[
"get",
"patch",
"update"
]
},
"imagestreamtags":{
"name":"imagestreamtags",
"namespaced":true,
"kind":"ImageStreamTag",
"verbs":[
"create",
"delete",
"get",
"list",
"patch",
"update"
]
}
}
}
},
"hostPrefix":null
},
"authorization.openshift.io":{
"name":"authorization.openshift.io",
"preferredVersion":"v1",
"versions":{
"v1":{
"version":"v1",
"groupVersion":"authorization.openshift.io/v1",
"resources":{
"clusterpolicies":{
"name":"clusterpolicies",
"namespaced":false,
"kind":"ClusterPolicy",
"verbs":[
"create",
"delete",
"deletecollection",
"get",
"list",
"patch",
"update",
"watch"
]
},
"clusterpolicybindings":{
"name":"clusterpolicybindings",
"namespaced":false,
"kind":"ClusterPolicyBinding",
"verbs":[
"create",
"delete",
"deletecollection",
"get",
"list",
"patch",
"update",
"watch"
]
},
"clusterrolebindings":{
"name":"clusterrolebindings",
"namespaced":false,
"kind":"ClusterRoleBinding",
"verbs":[
"create",
"delete",
"get",
"list",
"patch",
"update"
]
},
"clusterroles":{
"name":"clusterroles",
"namespaced":false,
"kind":"ClusterRole",
"verbs":[
"create",
"delete",
"get",
"list",
"patch",
"update"
]
},
"localresourceaccessreviews":{
"name":"localresourceaccessreviews",
"namespaced":true,
"kind":"LocalResourceAccessReview",
"verbs":[
"create"
]
},
"localsubjectaccessreviews":{
"name":"localsubjectaccessreviews",
"namespaced":true,
"kind":"LocalSubjectAccessReview",
"verbs":[
"create"
]
},
"policies":{
"name":"policies",
"namespaced":true,
"kind":"Policy",
"verbs":[
"create",
"delete",
"deletecollection",
"get",
"list",
"patch",
"update",
"watch"
]
},
"policybindings":{
"name":"policybindings",
"namespaced":true,
"kind":"PolicyBinding",
"verbs":[
"create",
"delete",
"deletecollection",
"get",
"list",
"patch",
"update",
"watch"
]
},
"resourceaccessreviews":{
"name":"resourceaccessreviews",
"namespaced":true,
"kind":"ResourceAccessReview",
"verbs":[
"create"
]
},
"rolebindingrestrictions":{
"name":"rolebindingrestrictions",
"namespaced":true,
"kind":"RoleBindingRestriction",
"verbs":[
"create",
"delete",
"deletecollection",
"get",
"list",
"patch",
"update",
"watch"
]
},
"rolebindings":{
"name":"rolebindings",
"namespaced":true,
"kind":"RoleBinding",
"verbs":[
"create",
"delete",
"get",
"list",
"patch",
"update"
]
},
"roles":{
"name":"roles",
"namespaced":true,
"kind":"Role",
"verbs":[
"create",
"delete",
"get",
"list",
"patch",
"update"
]
},
"selfsubjectrulesreviews":{
"name":"selfsubjectrulesreviews",
"namespaced":true,
"kind":"SelfSubjectRulesReview",
"verbs":[
"create"
]
},
"subjectaccessreviews":{
"name":"subjectaccessreviews",
"namespaced":true,
"kind":"SubjectAccessReview",
"verbs":[
"create"
]
},
"subjectrulesreviews":{
"name":"subjectrulesreviews",
"namespaced":true,
"kind":"SubjectRulesReview",
"verbs":[
"create"
]
}
}
}
......@@ -1094,45 +2510,62 @@ window.OPENSHIFT_CONFIG.apis.groups = {
"oauthaccesstokens":{
"name":"oauthaccesstokens",
"namespaced":false,
"kind":"OAuthAccessToken"
"kind":"OAuthAccessToken",
"verbs":[
"create",
"delete",
"deletecollection",
"get",
"list",
"patch",
"update",
"watch"
]
},
"oauthauthorizetokens":{
"name":"oauthauthorizetokens",
"namespaced":false,
"kind":"OAuthAuthorizeToken"
"kind":"OAuthAuthorizeToken",
"verbs":[
"create",
"delete",
"deletecollection",
"get",
"list",
"patch",
"update",
"watch"
]
},
"oauthclientauthorizations":{
"name":"oauthclientauthorizations",
"namespaced":false,
"kind":"OAuthClientAuthorization"
"kind":"OAuthClientAuthorization",
"verbs":[
"create",
"delete",
"deletecollection",
"get",
"list",
"patch",
"update",
"watch"
]
},
"oauthclients":{
"name":"oauthclients",
"namespaced":false,
"kind":"OAuthClient"
}
}
}
},
"hostPrefix":null
},
"policy":{
"name":"policy",
"preferredVersion":"v1beta1",
"versions":{
"v1beta1":{
"version":"v1beta1",
"groupVersion":"policy/v1beta1",
"resources":{
"poddisruptionbudgets":{
"name":"poddisruptionbudgets",
"namespaced":true,
"kind":"PodDisruptionBudget"
},
"poddisruptionbudgets/status":{
"name":"poddisruptionbudgets/status",
"namespaced":true,
"kind":"PodDisruptionBudget"
"kind":"OAuthClient",
"verbs":[
"create",
"delete",
"deletecollection",
"get",
"list",
"patch",
"update",
"watch"
]
}
}
}
......@@ -1150,12 +2583,116 @@ window.OPENSHIFT_CONFIG.apis.groups = {
"projectrequests":{
"name":"projectrequests",
"namespaced":false,
"kind":"ProjectRequest"
"kind":"ProjectRequest",
"verbs":[
"create",
"list"
]
},
"projects":{
"name":"projects",
"namespaced":false,
"kind":"Project"
"kind":"Project",
"verbs":[
"create",
"delete",
"get",
"list",
"patch",
"update",
"watch"
]
}
}
}
},
"hostPrefix":null
},
"build.openshift.io":{
"name":"build.openshift.io",
"preferredVersion":"v1",
"versions":{
"v1":{
"version":"v1",
"groupVersion":"build.openshift.io/v1",
"resources":{
"buildconfigs":{
"name":"buildconfigs",
"namespaced":true,
"kind":"BuildConfig",
"verbs":[
"create",
"delete",
"deletecollection",
"get",
"list",
"patch",
"update",
"watch"
]
},
"buildconfigs/instantiate":{
"name":"buildconfigs/instantiate",
"namespaced":true,
"kind":"BuildRequest",
"verbs":[
"create"
]
},
"buildconfigs/instantiatebinary":{
"name":"buildconfigs/instantiatebinary",
"namespaced":true,
"kind":"BinaryBuildRequestOptions",
"verbs":[
]
},
"buildconfigs/webhooks":{
"name":"buildconfigs/webhooks",
"namespaced":true,
"kind":"Build",
"verbs":[
]
},
"builds":{
"name":"builds",
"namespaced":true,
"kind":"Build",
"verbs":[
"create",
"delete",
"deletecollection",
"get",
"list",
"patch",
"update",
"watch"
]
},
"builds/clone":{
"name":"builds/clone",
"namespaced":true,
"kind":"BuildRequest",
"verbs":[
"create"
]
},
"builds/details":{
"name":"builds/details",
"namespaced":true,
"kind":"Build",
"verbs":[
"update"
]
},
"builds/log":{
"name":"builds/log",
"namespaced":true,
"kind":"BuildLog",
"verbs":[
"get"
]
}
}
}
......@@ -1173,86 +2710,178 @@ window.OPENSHIFT_CONFIG.apis.groups = {
"appliedclusterresourcequotas":{
"name":"appliedclusterresourcequotas",
"namespaced":true,
"kind":"AppliedClusterResourceQuota"
"kind":"AppliedClusterResourceQuota",
"verbs":[
"get",
"list"
]
},
"clusterresourcequotas":{
"name":"clusterresourcequotas",
"namespaced":false,
"kind":"ClusterResourceQuota"
"kind":"ClusterResourceQuota",
"verbs":[
"create",
"delete",
"deletecollection",
"get",
"list",
"patch",
"update",
"watch"
]
},
"clusterresourcequotas/status":{
"name":"clusterresourcequotas/status",
"namespaced":false,
"kind":"ClusterResourceQuota"
"kind":"ClusterResourceQuota",
"verbs":[
"get",
"patch",
"update"
]
}
}
}
},
"hostPrefix":null
},
"route.openshift.io":{
"name":"route.openshift.io",
"user.openshift.io":{
"name":"user.openshift.io",
"preferredVersion":"v1",
"versions":{
"v1":{
"version":"v1",
"groupVersion":"route.openshift.io/v1",
"groupVersion":"user.openshift.io/v1",
"resources":{
"routes":{
"name":"routes",
"namespaced":true,
"kind":"Route"
"groups":{
"name":"groups",
"namespaced":false,
"kind":"Group",
"verbs":[
"create",
"delete",
"deletecollection",
"get",
"list",
"patch",
"update",
"watch"
]
},
"routes/status":{
"name":"routes/status",
"namespaced":true,
"kind":"Route"
"identities":{
"name":"identities",
"namespaced":false,
"kind":"Identity",
"verbs":[
"create",
"delete",
"deletecollection",
"get",
"list",
"patch",
"update",
"watch"
]
},
"useridentitymappings":{
"name":"useridentitymappings",
"namespaced":false,
"kind":"UserIdentityMapping",
"verbs":[
"create",
"delete",
"get",
"patch",
"update"
]
},
"users":{
"name":"users",
"namespaced":false,
"kind":"User",
"verbs":[
"create",
"delete",
"deletecollection",
"get",
"list",
"patch",
"update",
"watch"
]
}
}
}
},
"hostPrefix":null
},
"security.openshift.io":{
"name":"security.openshift.io",
"apps.openshift.io":{
"name":"apps.openshift.io",
"preferredVersion":"v1",
"versions":{
"v1":{
"version":"v1",
"groupVersion":"security.openshift.io/v1",
"groupVersion":"apps.openshift.io/v1",
"resources":{
"podsecuritypolicyreviews":{
"name":"podsecuritypolicyreviews",
"deploymentconfigs":{
"name":"deploymentconfigs",
"namespaced":true,
"kind":"PodSecurityPolicyReview"
"kind":"DeploymentConfig",
"verbs":[
"create",
"delete",
"deletecollection",
"get",
"list",
"patch",
"update",
"watch"
]
},
"podsecuritypolicyselfsubjectreviews":{
"name":"podsecuritypolicyselfsubjectreviews",
"deploymentconfigs/instantiate":{
"name":"deploymentconfigs/instantiate",
"namespaced":true,
"kind":"PodSecurityPolicySelfSubjectReview"
"kind":"DeploymentRequest",
"verbs":[
"create"
]
},
"podsecuritypolicysubjectreviews":{
"name":"podsecuritypolicysubjectreviews",
"deploymentconfigs/log":{
"name":"deploymentconfigs/log",
"namespaced":true,
"kind":"PodSecurityPolicySubjectReview"
}
}
}
},
"hostPrefix":null
},
"storage.k8s.io":{
"name":"storage.k8s.io",
"preferredVersion":"v1beta1",
"versions":{
"v1beta1":{
"version":"v1beta1",
"groupVersion":"storage.k8s.io/v1beta1",
"resources":{
"storageclasses":{
"name":"storageclasses",
"namespaced":false,
"kind":"StorageClass"
"kind":"DeploymentLog",
"verbs":[
"get"
]
},
"deploymentconfigs/rollback":{
"name":"deploymentconfigs/rollback",
"namespaced":true,
"kind":"DeploymentConfigRollback",
"verbs":[
"create"
]
},
"deploymentconfigs/scale":{
"name":"deploymentconfigs/scale",
"namespaced":true,
"kind":"Scale",
"verbs":[
"get",
"patch",
"update"
]
},
"deploymentconfigs/status":{
"name":"deploymentconfigs/status",
"namespaced":true,
"kind":"DeploymentConfig",
"verbs":[
"get",
"patch",
"update"
]
}
}
}
......@@ -1267,58 +2896,28 @@ window.OPENSHIFT_CONFIG.apis.groups = {
"version":"v1",
"groupVersion":"template.openshift.io/v1",
"resources":{
"brokertemplateinstances":{
"name":"brokertemplateinstances",
"namespaced":false,
"kind":"BrokerTemplateInstance"
},
"processedtemplates":{
"name":"processedtemplates",
"namespaced":true,
"kind":"Template"
},
"templateinstances":{
"name":"templateinstances",
"namespaced":true,
"kind":"TemplateInstance"
"kind":"Template",
"verbs":[
"create"
]
},
"templates":{
"name":"templates",
"namespaced":true,
"kind":"Template"
}
}
}
},
"hostPrefix":null
},
"user.openshift.io":{
"name":"user.openshift.io",
"preferredVersion":"v1",
"versions":{
"v1":{
"version":"v1",
"groupVersion":"user.openshift.io/v1",
"resources":{
"groups":{
"name":"groups",
"namespaced":false,
"kind":"Group"
},
"identities":{
"name":"identities",
"namespaced":false,
"kind":"Identity"
},
"useridentitymappings":{
"name":"useridentitymappings",
"namespaced":false,
"kind":"UserIdentityMapping"
},
"users":{
"name":"users",
"namespaced":false,
"kind":"User"
"kind":"Template",
"verbs":[
"create",
"delete",
"deletecollection",
"get",
"list",
"patch",
"update",
"watch"
]
}
}
}
......
......@@ -63,6 +63,77 @@ describe("APIService", function() {
});
describe('#kindToResourceGroupVersion', function() {
var kinds = [
[{kind: 'ServiceAccount', group: ''}, {"resource":"serviceaccounts","group":"","version":"v1"}],
[{kind: 'PodTemplate', group: ''}, {"resource":"podtemplates","group":"","version":"v1"}],
[{kind: 'HorizontalPodAutoscaler', group: 'autoscaling'}, {"resource":"horizontalpodautoscalers","group":"autoscaling","version":"v1"}],
[{kind: 'DaemonSet', group: 'extensions'}, {"resource":"daemonsets","group":"extensions","version":"v1beta1"}],
[{kind: 'RoleBinding', group: 'rbac.authorization.k8s.io'}, {"resource":"rolebindings","group":"rbac.authorization.k8s.io","version":"v1beta1"}],
[{kind: 'PodPreset', group: 'settings.k8s.io'}, {"resource":"podpresets","group":"settings.k8s.io","version":"v1alpha1"}],
[{kind: 'Policy', group: 'authorization.openshift.io'}, {"resource":"policies","group":"authorization.openshift.io","version":"v1"}],
[{kind: 'Template', group: 'template.openshift.io'}, {"resource":"templates","group":"template.openshift.io","version":"v1"}],
[{kind: 'NetworkPolicy', group: 'extensions'}, {"resource":"networkpolicies","group":"extensions","version":"v1beta1"}],
[{kind: 'EgressNetworkPolicy', group: 'network.openshift.io'}, {"resource":"egressnetworkpolicies","group":"network.openshift.io","version":"v1"}],
[{kind: 'LocalResourceAccessReview', group: 'authorization.openshift.io'}, {"resource":"localresourceaccessreviews","group":"authorization.openshift.io","version":"v1"}],
[{kind: 'SelfSubjectRulesReview', group: 'authorization.openshift.io'}, {"resource":"selfsubjectrulesreviews","group":"authorization.openshift.io","version":"v1"}],
[{kind: 'ReplicationControllerDummy', group: 'extensions'}, {"resource":"replicationcontrollerdummies","group":"extensions","version":"v1beta1"}]
];
_.each(kinds, _.spread(function(kind, expectedRGV) {
it('should result in ' + JSON.stringify(expectedRGV) + ' when called with ' + JSON.stringify(kind), function() {
var actualRGV = APIService.kindToResourceGroupVersion(kind);
expect(expectedRGV.resource).toEqual(actualRGV.resource);
expect(expectedRGV.group).toEqual(actualRGV.group);
expect(expectedRGV.version).toEqual(actualRGV.version);
});
}));
});
describe('#apiInfo', function() {
var rgvs = [
[
{"resource":"serviceaccounts","group":"","version":"v1"},
{resource: 'serviceaccounts', version: 'v1', hostPort: 'localhost:8443', prefix: '/api', namespaced: true, verbs: ['create', 'delete', 'deletecollection', 'get', 'list', 'patch', 'update', 'watch']}
],
[
{"resource":"horizontalpodautoscalers","group":"autoscaling","version":"v1"},
{resource: 'horizontalpodautoscalers', group: 'autoscaling', version: 'v1', protocol: undefined, hostPort: 'localhost:8443', prefix: '/apis', namespaced: true, verbs: ['create', 'delete', 'deletecollection', 'get', 'list', 'patch', 'update', 'watch']}
],
[
{"resource":"templates","group":"template.openshift.io","version":"v1"},
{resource: 'templates', group: 'template.openshift.io', version: 'v1', protocol: undefined, hostPort: 'localhost:8443', prefix: '/apis', namespaced: true, verbs: ['create', 'delete', 'deletecollection', 'get', 'list', 'patch', 'update', 'watch']}
],
[
{"resource":"policies","group":"authorization.openshift.io","version":"v1"},
{resource: 'policies', group: 'authorization.openshift.io', version: 'v1', protocol: undefined, hostPort: 'localhost:8443', prefix: '/apis', namespaced: true, verbs: ['create', 'delete', 'deletecollection', 'get', 'list', 'patch', 'update', 'watch']}
],
[
{"resource":"selfsubjectrulesreviews","group":"authorization.openshift.io","version":"v1"},
{resource: 'selfsubjectrulesreviews', group: 'authorization.openshift.io', version: 'v1', protocol: undefined, hostPort: 'localhost:8443', prefix: '/apis', namespaced: true, verbs: ['create']}
],
[
{"resource":"replicationcontrollerdummies","group":"extensions","version":"v1beta1"},
undefined
]
];
_.each(rgvs, _.spread(function(rgv, expectedAPIInfo) {
it('should result in ' + JSON.stringify(expectedAPIInfo) + ' when called with ' + JSON.stringify(rgv), function() {
var actualAPIInfo = APIService.apiInfo(rgv);
if(actualAPIInfo) {
expect(actualAPIInfo.resource).toEqual(expectedAPIInfo.resource);
expect(actualAPIInfo.group).toEqual(expectedAPIInfo.group);
expect(actualAPIInfo.version).toEqual(expectedAPIInfo.version);
expect(actualAPIInfo.hostPort).toEqual(expectedAPIInfo.hostPort);
expect(actualAPIInfo.prefix).toEqual(expectedAPIInfo.prefix);
expect(actualAPIInfo.namespaced).toEqual(expectedAPIInfo.namespaced);
expect(actualAPIInfo.verbs).toEqual(expectedAPIInfo.verbs);
} else {
expect(actualAPIInfo).toEqual(expectedAPIInfo);
}
});
}));
});
describe("#parseGroupVersion", function(){
var tc = [
......@@ -310,7 +381,7 @@ describe("APIService", function() {
it('should not return kinds from the AVAILABLE_KINDS_BLACKLIST', function() {
var allKinds = APIService.availableKinds(true);
// calculateAvailableKinds will transform strings form AVAILABLE_KINDS_BLACKLIST
// into objects in this same way.
// into objects in this same way.
var blacklist = _.map(window.OPENSHIFT_CONSTANTS.AVAILABLE_KINDS_BLACKLIST, function(kind) {
return _.isString(kind) ?
{ kind: kind, group: '' } :
......
......@@ -85,7 +85,7 @@ describe("DataService", function(){
[{resource:'nodes', version:'unknown'}, null],
// Different API groups
[{resource:'jobs', group: 'extensions', version:'v1beta1', namespace:"foo"}, "http://localhost:8443/apis/extensions/v1beta1/namespaces/foo/jobs"]
[{resource:'jobs', group: 'batch', version:'v1', namespace:"foo"}, "http://localhost:8443/apis/batch/v1/namespaces/foo/jobs"]
];
angular.forEach(tc, function(item) {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment