UNPKG

@atomist/sdm

Version:

Atomist Software Delivery Machine SDK

46 lines 2.06 kB
import * as k8s from "@kubernetes/client-node"; import { KubernetesApplication, KubernetesResourceRequest, KubernetesSdm } from "./request"; /** * Create application secrets if they do not exist. If a secret in * `req.secrets` exists, the secret is patched. The provided secrets * are merged through [[secretTemplate]] before creating/patching. If * `req.secrets` is false or any empty array, no secrets are modified. * * @param req Kuberenetes application request * @return Array of secret specs created/patched, which array may be empty */ export declare function upsertSecrets(req: KubernetesResourceRequest): Promise<k8s.V1Secret[]>; /** * Add labels to a secret so we can delete it later. * * @param secret the unlabeled secret * @return the provided secret with appropriate labels */ export declare function secretTemplate(req: KubernetesApplication & KubernetesSdm, secret: k8s.V1Secret): Promise<k8s.V1Secret>; /** * Create encoded opaque secret object from key/value pairs. * * @param secrets Key/value pairs of secrets, the values will be base64 encoded in the returned secret * @return Kubernetes secret object */ export declare function encodeSecret(name: string, data: { [key: string]: string; }): k8s.V1Secret; /** * Return a copy of the provided secret with its data values * encrypted. The provided secret should have its data values base64 * encoded. The provided secret is not modified. * * @param secret Kubernetes secret with base64 encoded data values * @return Kubernetes secret object with encrypted data values */ export declare function encryptSecret(secret: k8s.V1Secret, key: string): Promise<k8s.V1Secret>; /** * Return a copy of the provided secret with its data valued * decrypted. The provided secret is not modified. * * @param secret Kubernetes secret with encrypted data values * @return Kubernetes secret object with base64 encoded data values */ export declare function decryptSecret(secret: k8s.V1Secret, key: string): Promise<k8s.V1Secret>; //# sourceMappingURL=secret.d.ts.map