A cert-manager CSI driver for requesting SPIFFE certificates from cert-manager on behalf of the mounting Pod.
Usage:
csi-driver-spiffe [flags]
App flags:
--csi-driver-name string The name of the CSI driver, as installed in Kubernetes (default "spiffe.csi.cert-manager.io")
-v, --log-level string Log level (1-5). (default "1")
Cert-manager flags:
--certificate-request-duration duration The duration that created CertificateRequests will use. (default 1h0m0s)
--extra-certificate-request-annotations stringToString Comma-separated list of extra annotations to add to certificate requests e.g '--extra-certificate-request-annotations=hello=world,test=annotation' (default [])
--issuer-group string Group of the issuer that CertificateRequests will be created for. (default "cert-manager.io")
--issuer-kind string Kind of the issuer that CertificateRequests will be created for. (default "ClusterIssuer")
--issuer-name string Name of the issuer that CertificateRequests will be created for. (default "my-spiffe-ca")
--runtime-issuance-config-map-name string Name of a ConfigMap to watch at runtime for issuer details. If such a ConfigMap is found, overrides issuer-name, issuer-kind and issuer-group
--runtime-issuance-config-map-namespace string Namespace for ConfigMap to be watched at runtime for issuer details
--trust-domain string The trust domain that will be requested for on created CertificateRequests. (default "cluster.local")
Volume flags:
--file-name-ca string The file name that the certificate's private key will be written to within the pod's volume directory. (default "ca.crt")
--file-name-certificate string The file name that signed certificates will be written to within the pod's volume directory. (default "tls.crt")
--file-name-key string The file name that the certificate's private key will be written to within the pod's volume directory. (default "tls.key")
--source-ca-bundle string File path that is read by the driver which will be written to all managed volumes to the file location inside volumes defined in --file-name-ca. If undefined, no CA file is written to volumes.
Driver flags:
--data-root string Path to the in-memory data directory used to store data.
--endpoint string Path to the unix socket used to listen for gRPC requests.
--node-id string Name of the node the driver is running on.
--use-own-service-account When true, the driver creates CertificateRequests using its own ServiceAccount credentials rather than impersonating the mounting pod's ServiceAccount. When enabled, the approver is not required; a ValidatingAdmissionPolicy should be deployed instead.
Kubernetes flags:
--as string Username to impersonate for the operation. User could be a regular user or a service account in a namespace.
--as-group stringArray Group to impersonate for the operation, this flag can be repeated to specify multiple groups.
--as-uid string UID to impersonate for the operation.
--as-user-extra stringArray User extras to impersonate for the operation, this flag can be repeated to specify multiple values for the same key.
--cache-dir string Default cache directory (default "/tmp/.kube/cache")
--certificate-authority string Path to a cert file for the certificate authority
--client-certificate string Path to a client certificate file for TLS
--client-key string Path to a client key file for TLS
--cluster string The name of the kubeconfig cluster to use
--context string The name of the kubeconfig context to use
--disable-compression If true, opt-out of response compression for all requests to the server
--insecure-skip-tls-verify If true, the server's certificate will not be checked for validity. This will make your HTTPS connections insecure
--kubeconfig string Path to the kubeconfig file to use for CLI requests.
-n, --namespace string If present, the namespace scope for this CLI request
--proxy-url string Proxy URL to use for requests to the API server
--request-timeout string The length of time to wait before giving up on a single server request. Non-zero values should contain a corresponding time unit (e.g. 1s, 2m, 3h). A value of zero means don't timeout requests. (default "0")
-s, --server string The address and port of the Kubernetes API server
--tls-server-name string Server name to use for server certificate validation. If it is not provided, the hostname used to contact the server is used
--token string Bearer token for authentication to the API server
--user string The name of the kubeconfig user to use
Options (38)
| Option | Description | Source |
|---|---|---|
--csi-driver-name string | The name of the CSI driver, as installed in Kubernetes (default "spiffe.csi.cert-manager.io") | help |
-v, --log-level string | Log level (1-5). | help |
--certificate-request-duration duration | The duration that created CertificateRequests will use. | help |
--extra-certificate-request-annotations stringToString | Comma-separated list of extra annotations to add to certificate requests e.g '--extra-certificate-request-annotations=hello=world,test=annotation' (default []) | help |
--issuer-group string | Group of the issuer that CertificateRequests will be created for. | help |
--issuer-kind string | Kind of the issuer that CertificateRequests will be created for. | help |
--issuer-name string | Name of the issuer that CertificateRequests will be created for. | help |
--runtime-issuance-config-map-name string | Name of a ConfigMap to watch at runtime for issuer details. | help |
--runtime-issuance-config-map-namespace string | Namespace for ConfigMap to be watched at runtime for issuer details | help |
--trust-domain string | The trust domain that will be requested for on created CertificateRequests. | help |
--file-name-ca string | The file name that the certificate's private key will be written to within the pod's volume directory. | help |
--file-name-certificate string | The file name that signed certificates will be written to within the pod's volume directory. | help |
--file-name-key string | The file name that the certificate's private key will be written to within the pod's volume directory. | help |
--source-ca-bundle string | File path that is read by the driver which will be written to all managed volumes to the file location inside volumes defined in --file-name-ca. | help |
--data-root string | Path to the in-memory data directory used to store data. | help |
--endpoint string | Path to the unix socket used to listen for gRPC requests. | help |
--node-id string | Name of the node the driver is running on. | help |
--use-own-service-account | When true, the driver creates CertificateRequests using its own ServiceAccount credentials rather than impersonating the mounting pod's ServiceAccount. | help |
--as string | Username to impersonate for the operation. | help |
--as-group stringArray | Group to impersonate for the operation, this flag can be repeated to specify multiple groups. | help |
--as-uid string | UID to impersonate for the operation. | help |
--as-user-extra stringArray | User extras to impersonate for the operation, this flag can be repeated to specify multiple values for the same key. | help |
--cache-dir string | Default cache directory (default "/tmp/.kube/cache") | help |
--certificate-authority string | Path to a cert file for the certificate authority | help |
--client-certificate string | Path to a client certificate file for TLS | help |
--client-key string | Path to a client key file for TLS | help |
--cluster string | The name of the kubeconfig cluster to use | help |
--context string | The name of the kubeconfig context to use | help |
--disable-compression | If true, opt-out of response compression for all requests to the server | help |
--insecure-skip-tls-verify | If true, the server's certificate will not be checked for validity. | help |
--kubeconfig string | Path to the kubeconfig file to use for CLI requests. | help |
-n, --namespace string | If present, the namespace scope for this CLI request | help |
--proxy-url string | Proxy URL to use for requests to the API server | help |
--request-timeout string | The length of time to wait before giving up on a single server request. | help |
-s, --server string | The address and port of the Kubernetes API server | help |
--tls-server-name string | Server name to use for server certificate validation. | help |
--token string | Bearer token for authentication to the API server | help |
--user string | The name of the kubeconfig user to use | help |