diff --git a/docs/integrations/platforms/kubernetes/infisical-push-secret-crd.mdx b/docs/integrations/platforms/kubernetes/infisical-push-secret-crd.mdx index 936a37303..f1912b847 100644 --- a/docs/integrations/platforms/kubernetes/infisical-push-secret-crd.mdx +++ b/docs/integrations/platforms/kubernetes/infisical-push-secret-crd.mdx @@ -241,7 +241,21 @@ After applying the InfisicalPushSecret CRD, you should notice that the secrets y DATABASE_URL: postgres://127.0.0.1:5432 ENCRYPTION_KEY: fabcc12-a22-facbaa4-11aa568aab ``` + + + The `generators[]` field is used to define the generators you want to use for your InfisicalPushSecret CRD. + You can follow the guide for [using generators to push secrets](#using-generators-to-push-secrets) for more information. + Example: + + ```yaml + push: + generators: + - destinationSecretName: password-generator-test + generatorRef: + kind: Password + name: password-generator + ``` @@ -475,22 +489,36 @@ For this reason you may want to disable automatic reconciliation of the Infisica To use a generator, you must specify at least one generator in the `push.generators[]` field. An example of a generator usage can be seen here: + - Define a generator in the `push.generators[]` field. - - - The name of the secret that will be created in Infisical. - - - - The reference to the generator resource. - - Valid fields: - - `kind`: The kind of the generator resource, must match the generator kind. - - `name`: The name of the generator resource. - + This field holds an array of the generators you want to use for your InfisicalPushSecret CRD. + + The name of the secret that will be created in Infisical. + + + + The reference to the generator resource. + + Valid fields: + - `kind`: The kind of the generator resource, must match the generator kind. + - `name`: The name of the generator resource. + + + + The kind of the generator resource, must match the generator kind. + + Valid values: + - `Password` + - `UUID` + + + + The name of the generator resource. + + + ```yaml push: secret: @@ -503,81 +531,94 @@ To use a generator, you must specify at least one generator in the `push.generat name: custom-generator # Name of the generator resource ``` - - - The Password generator is a custom resource that is installed on the cluster that defines the logic for generating a password. - - - - `kind`: The kind of the generator resource, must match the generator kind. For the Password generator, the kind is `Password`. - - `generator.passwordSpec`: The spec of the password generator. +### Supported Generators +Below are the currently supported generators for the InfisicalPushSecret CRD. Each generator has its own spec that can be used to customize the generated secret. - - - `length`: The length of the password. - - `digits`: The number of digits in the password. - - `symbols`: The number of symbols in the password. - - `symbolCharacters`: The characters to use for the symbols in the password. - - `noUpper`: Whether to include uppercase letters in the password. - - `allowRepeat`: Whether to allow repeating characters in the password. - + + ### Password Generator + + The Password generator is a custom resource that is installed on the cluster that defines the logic for generating a password. + - `kind`: The kind of the generator resource, must match the generator kind. For the Password generator, the kind is `Password`. + - `generator.passwordSpec`: The spec of the password generator. + + + The `generator.kind` field must match the kind of the generator resource. For the Password generator, the kind should always be set to `Password`. + + + - `length`: The length of the password. + - `digits`: The number of digits in the password. + - `symbols`: The number of symbols in the password. + - `symbolCharacters`: The characters to use for the symbols in the password. + - `noUpper`: Whether to include uppercase letters in the password. + - `allowRepeat`: Whether to allow repeating characters in the password. - ```yaml password-cluster-generator.yaml + ```yaml password-cluster-generator.yaml + apiVersion: secrets.infisical.com/v1alpha1 + kind: ClusterGenerator + metadata: + name: password-generator + spec: + kind: Password + generator: + passwordSpec: + length: 10 + digits: 5 + symbols: 5 + symbolCharacters: "-_$@" + noUpper: false + allowRepeat: true + ``` + + Example InfisicalPushSecret CRD using the Password generator: + ```yaml infisical-push-secret-crd.yaml + push: + generators: + - destinationSecretName: password-generator-test + generatorRef: + kind: Password + name: password-generator + ``` + + + ### UUID Generator + + The UUID generator is a custom resource that is installed on the cluster that defines the logic for generating a UUID. + - `kind`: The kind of the generator resource, must match the generator kind. For the UUID generator, the kind is `UUID`. + - `generator.uuidSpec`: The spec of the UUID generator. For UUID's, this can be left empty. + + + The `generator.kind` field must match the kind of the generator resource. For the UUID generator, the kind should always be set to `UUID`. + + + + The spec of the UUID generator. For UUID's, this can be left empty. + + + ```yaml uuid-cluster-generator.yaml apiVersion: secrets.infisical.com/v1alpha1 kind: ClusterGenerator metadata: - name: password-generator + name: uuid-generator spec: - kind: Password + kind: UUID generator: - passwordSpec: - length: 10 - digits: 5 - symbols: 5 - symbolCharacters: "-_$@" - noUpper: false - allowRepeat: true - ``` + uuidSpec: + ``` - Example InfisicalPushSecret CRD using the Password generator: - ```yaml infisical-push-secret-crd.yaml - push: - generators: - - destinationSecretName: password-generator-test - generatorRef: - kind: Password - name: password-generator - ``` - - - The UUID generator is a custom resource that is installed on the cluster that defines the logic for generating a UUID. - - - `kind`: The kind of the generator resource, must match the generator kind. For the UUID generator, the kind is `UUID`. - - `generator.uuidSpec`: The spec of the UUID generator. For UUID's, this can be left empty. - + Example InfisicalPushSecret CRD using the UUID generator: - ```yaml uuid-cluster-generator.yaml - apiVersion: secrets.infisical.com/v1alpha1 - kind: ClusterGenerator - metadata: - name: uuid-generator - spec: - kind: UUID - generator: - uuidSpec: - ``` + ```yaml infisical-push-secret-crd.yaml + push: + generators: + - destinationSecretName: uuid-generator-test + generatorRef: + kind: UUID + name: uuid-generator + ``` + - Example InfisicalPushSecret CRD using the UUID generator: - ```yaml infisical-push-secret-crd.yaml - push: - generators: - - destinationSecretName: uuid-generator-test - generatorRef: - kind: UUID - name: uuid-generator - ``` - -