Introduce new kubernetes spec helpers
Add create_role_binding, create_namespace and get_namespace kubernetes spec helpers. This new helpers are going to be used on https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/22011
This commit is contained in:
parent
4cf1845e7e
commit
b0c30dce3f
|
@ -0,0 +1,5 @@
|
|||
---
|
||||
title: Introduce new kubernetes helpers
|
||||
merge_request: 22525
|
||||
author:
|
||||
type: other
|
|
@ -33,10 +33,11 @@ module KubernetesHelpers
|
|||
WebMock.stub_request(:get, deployments_url).to_return(response || kube_deployments_response)
|
||||
end
|
||||
|
||||
def stub_kubeclient_get_secret(api_url, namespace: 'default', **options)
|
||||
def stub_kubeclient_get_secret(api_url, **options)
|
||||
options[:metadata_name] ||= "default-token-1"
|
||||
options[:namespace] ||= "default"
|
||||
|
||||
WebMock.stub_request(:get, api_url + "/api/v1/namespaces/#{namespace}/secrets/#{options[:metadata_name]}")
|
||||
WebMock.stub_request(:get, api_url + "/api/v1/namespaces/#{options[:namespace]}/secrets/#{options[:metadata_name]}")
|
||||
.to_return(kube_response(kube_v1_secret_body(options)))
|
||||
end
|
||||
|
||||
|
@ -65,6 +66,21 @@ module KubernetesHelpers
|
|||
.to_return(kube_response({}))
|
||||
end
|
||||
|
||||
def stub_kubeclient_create_role_binding(api_url, namespace: 'default')
|
||||
WebMock.stub_request(:post, api_url + "/apis/rbac.authorization.k8s.io/v1/namespaces/#{namespace}/rolebindings")
|
||||
.to_return(kube_response({}))
|
||||
end
|
||||
|
||||
def stub_kubeclient_create_namespace(api_url)
|
||||
WebMock.stub_request(:post, api_url + "/api/v1/namespaces")
|
||||
.to_return(kube_response({}))
|
||||
end
|
||||
|
||||
def stub_kubeclient_get_namespace(api_url, namespace: 'default')
|
||||
WebMock.stub_request(:get, api_url + "/api/v1/namespaces/#{namespace}")
|
||||
.to_return(kube_response({}))
|
||||
end
|
||||
|
||||
def kube_v1_secret_body(**options)
|
||||
{
|
||||
"kind" => "SecretList",
|
||||
|
@ -87,7 +103,8 @@ module KubernetesHelpers
|
|||
{ "name" => "deployments", "namespaced" => true, "kind" => "Deployment" },
|
||||
{ "name" => "secrets", "namespaced" => true, "kind" => "Secret" },
|
||||
{ "name" => "serviceaccounts", "namespaced" => true, "kind" => "ServiceAccount" },
|
||||
{ "name" => "services", "namespaced" => true, "kind" => "Service" }
|
||||
{ "name" => "services", "namespaced" => true, "kind" => "Service" },
|
||||
{ "name" => "namespaces", "namespaced" => true, "kind" => "Namespace" }
|
||||
]
|
||||
}
|
||||
end
|
||||
|
|
Loading…
Reference in New Issue