@atomist/sdm
Version:
Atomist Software Delivery Machine SDK
38 lines • 1.66 kB
TypeScript
import * as k8s from "@kubernetes/client-node";
import { KubernetesApplication, KubernetesResourceRequest, KubernetesSdm } from "./request";
/**
* Create or patch role or cluster role.
*
* @param req Kubernetes application request
* @return Kubernetes resource spec used to create/update the resource
*/
export declare function upsertRole(req: KubernetesResourceRequest): Promise<k8s.V1Role | k8s.V1ClusterRole>;
/**
* Create role spec for a Kubernetes application. The
* `req.rbac.roleSpec` is merged into the spec created by this
* function using `lodash.merge(default, req.rbac.roleSpec)`.
*
* It is possible to override the role name using the
* [[KubernetesApplication.roleSpec]]. If you do this, make sure you
* know what you are doing and also override it in the
* [[KubernetesApplication.roleBindingSpec]].
*
* @param req application request
* @return role resource specification
*/
export declare function roleTemplate(req: KubernetesApplication & KubernetesSdm): Promise<k8s.V1Role>;
/**
* Create role spec for a Kubernetes application. The
* `req.rbac.roleSpec` is merged into the spec created by this
* function using `lodash.merge(default, req.rbac.roleSpec)`.
*
* It is possible to override the cluster role name using the
* [[KubernetesApplication.roleSpec]]. If you do this, make sure you
* know what you are doing and also override it in the
* [[KubernetesApplication.roleBindingSpec]].
*
* @param req application request
* @return role resource specification
*/
export declare function clusterRoleTemplate(req: KubernetesApplication & KubernetesSdm): Promise<k8s.V1ClusterRole>;
//# sourceMappingURL=role.d.ts.map