{
  "description": "Password generates a random password based on the\nconfiguration parameters in spec.\nYou can specify the length, characterset and other attributes.",
  "properties": {
    "apiVersion": {
      "description": "APIVersion defines the versioned schema of this representation of an object.\nServers should convert recognized schemas to the latest internal value, and\nmay reject unrecognized values.\nMore info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources",
      "type": "string"
    },
    "kind": {
      "description": "Kind is a string value representing the REST resource this object represents.\nServers may infer this from the endpoint the client submits requests to.\nCannot be updated.\nIn CamelCase.\nMore info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds",
      "type": "string"
    },
    "metadata": {
      "type": "object"
    },
    "spec": {
      "description": "PasswordSpec controls the behavior of the password generator.",
      "properties": {
        "allowRepeat": {
          "default": false,
          "description": "set AllowRepeat to true to allow repeating characters.",
          "type": "boolean"
        },
        "digits": {
          "description": "Digits specifies the number of digits in the generated\npassword. If omitted it defaults to 25% of the length of the password",
          "type": "integer"
        },
        "encoding": {
          "default": "raw",
          "description": "Encoding specifies the encoding of the generated password.\nValid values are:\n- \"raw\" (default): no encoding\n- \"base64\": standard base64 encoding\n- \"base64url\": base64url encoding\n- \"base32\": base32 encoding\n- \"hex\": hexadecimal encoding",
          "enum": [
            "base64",
            "base64url",
            "base32",
            "hex",
            "raw"
          ],
          "type": "string"
        },
        "length": {
          "default": 24,
          "description": "Length of the password to be generated.\nDefaults to 24",
          "type": "integer"
        },
        "noUpper": {
          "default": false,
          "description": "Set NoUpper to disable uppercase characters",
          "type": "boolean"
        },
        "secretKeys": {
          "description": "SecretKeys defines the keys that will be populated with generated passwords.\nDefaults to \"password\" when not set.",
          "items": {
            "type": "string"
          },
          "minItems": 1,
          "type": "array"
        },
        "symbolCharacters": {
          "description": "SymbolCharacters specifies the special characters that should be used\nin the generated password.",
          "type": "string"
        },
        "symbols": {
          "description": "Symbols specifies the number of symbol characters in the generated\npassword. If omitted it defaults to 25% of the length of the password",
          "type": "integer"
        }
      },
      "required": [
        "allowRepeat",
        "length",
        "noUpper"
      ],
      "type": "object",
      "additionalProperties": false
    }
  },
  "type": "object"
}
