Skip to content

nogroup.v1alpha3.certificate

"A Certificate resource should be created to ensure an up to date and signed x509 certificate is stored in the Kubernetes Secret resource named in spec.secretName. \n The stored certificate will be renewed before it expires (as configured by spec.renewBefore)."

Index

Fields

fn new

new(name)

new returns an instance of Certificate

obj metadata

"ObjectMeta is metadata that all persisted resources must have, which includes all objects users must create."

fn metadata.withAnnotations

withAnnotations(annotations)

"Annotations is an unstructured key value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata. They are not queryable and should be preserved when modifying objects. More info: http://kubernetes.io/docs/user-guide/annotations"

fn metadata.withAnnotationsMixin

withAnnotationsMixin(annotations)

"Annotations is an unstructured key value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata. They are not queryable and should be preserved when modifying objects. More info: http://kubernetes.io/docs/user-guide/annotations"

Note: This function appends passed data to existing values

fn metadata.withClusterName

withClusterName(clusterName)

"The name of the cluster which the object belongs to. This is used to distinguish resources with same name and namespace in different clusters. This field is not set anywhere right now and apiserver is going to ignore it if set in create or update request."

fn metadata.withCreationTimestamp

withCreationTimestamp(creationTimestamp)

"Time is a wrapper around time.Time which supports correct marshaling to YAML and JSON. Wrappers are provided for many of the factory methods that the time package offers."

fn metadata.withDeletionGracePeriodSeconds

withDeletionGracePeriodSeconds(deletionGracePeriodSeconds)

"Number of seconds allowed for this object to gracefully terminate before it will be removed from the system. Only set when deletionTimestamp is also set. May only be shortened. Read-only."

fn metadata.withDeletionTimestamp

withDeletionTimestamp(deletionTimestamp)

"Time is a wrapper around time.Time which supports correct marshaling to YAML and JSON. Wrappers are provided for many of the factory methods that the time package offers."

fn metadata.withFinalizers

withFinalizers(finalizers)

"Must be empty before the object is deleted from the registry. Each entry is an identifier for the responsible component that will remove the entry from the list. If the deletionTimestamp of the object is non-nil, entries in this list can only be removed. Finalizers may be processed and removed in any order. Order is NOT enforced because it introduces significant risk of stuck finalizers. finalizers is a shared field, any actor with permission can reorder it. If the finalizer list is processed in order, then this can lead to a situation in which the component responsible for the first finalizer in the list is waiting for a signal (field value, external system, or other) produced by a component responsible for a finalizer later in the list, resulting in a deadlock. Without enforced ordering finalizers are free to order amongst themselves and are not vulnerable to ordering changes in the list."

fn metadata.withFinalizersMixin

withFinalizersMixin(finalizers)

"Must be empty before the object is deleted from the registry. Each entry is an identifier for the responsible component that will remove the entry from the list. If the deletionTimestamp of the object is non-nil, entries in this list can only be removed. Finalizers may be processed and removed in any order. Order is NOT enforced because it introduces significant risk of stuck finalizers. finalizers is a shared field, any actor with permission can reorder it. If the finalizer list is processed in order, then this can lead to a situation in which the component responsible for the first finalizer in the list is waiting for a signal (field value, external system, or other) produced by a component responsible for a finalizer later in the list, resulting in a deadlock. Without enforced ordering finalizers are free to order amongst themselves and are not vulnerable to ordering changes in the list."

Note: This function appends passed data to existing values

fn metadata.withGenerateName

withGenerateName(generateName)

"GenerateName is an optional prefix, used by the server, to generate a unique name ONLY IF the Name field has not been provided. If this field is used, the name returned to the client will be different than the name passed. This value will also be combined with a unique suffix. The provided value has the same validation rules as the Name field, and may be truncated by the length of the suffix required to make the value unique on the server.\n\nIf this field is specified and the generated name exists, the server will NOT return a 409 - instead, it will either return 201 Created or 500 with Reason ServerTimeout indicating a unique name could not be found in the time allotted, and the client should retry (optionally after the time indicated in the Retry-After header).\n\nApplied only if Name is not specified. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#idempotency"

fn metadata.withGeneration

withGeneration(generation)

"A sequence number representing a specific generation of the desired state. Populated by the system. Read-only."

fn metadata.withLabels

withLabels(labels)

"Map of string keys and values that can be used to organize and categorize (scope and select) objects. May match selectors of replication controllers and services. More info: http://kubernetes.io/docs/user-guide/labels"

fn metadata.withLabelsMixin

withLabelsMixin(labels)

"Map of string keys and values that can be used to organize and categorize (scope and select) objects. May match selectors of replication controllers and services. More info: http://kubernetes.io/docs/user-guide/labels"

Note: This function appends passed data to existing values

fn metadata.withName

withName(name)

"Name must be unique within a namespace. Is required when creating resources, although some resources may allow a client to request the generation of an appropriate name automatically. Name is primarily intended for creation idempotence and configuration definition. Cannot be updated. More info: http://kubernetes.io/docs/user-guide/identifiers#names"

fn metadata.withNamespace

withNamespace(namespace)

"Namespace defines the space within which each name must be unique. An empty namespace is equivalent to the \"default\" namespace, but \"default\" is the canonical representation. Not all objects are required to be scoped to a namespace - the value of this field for those objects will be empty.\n\nMust be a DNS_LABEL. Cannot be updated. More info: http://kubernetes.io/docs/user-guide/namespaces"

fn metadata.withOwnerReferences

withOwnerReferences(ownerReferences)

"List of objects depended by this object. If ALL objects in the list have been deleted, this object will be garbage collected. If this object is managed by a controller, then an entry in this list will point to this controller, with the controller field set to true. There cannot be more than one managing controller."

fn metadata.withOwnerReferencesMixin

withOwnerReferencesMixin(ownerReferences)

"List of objects depended by this object. If ALL objects in the list have been deleted, this object will be garbage collected. If this object is managed by a controller, then an entry in this list will point to this controller, with the controller field set to true. There cannot be more than one managing controller."

Note: This function appends passed data to existing values

fn metadata.withResourceVersion

withResourceVersion(resourceVersion)

"An opaque value that represents the internal version of this object that can be used by clients to determine when objects have changed. May be used for optimistic concurrency, change detection, and the watch operation on a resource or set of resources. Clients must treat these values as opaque and passed unmodified back to the server. They may only be valid for a particular resource or set of resources.\n\nPopulated by the system. Read-only. Value must be treated as opaque by clients and . More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#concurrency-control-and-consistency"

withSelfLink(selfLink)

"SelfLink is a URL representing this object. Populated by the system. Read-only.\n\nDEPRECATED Kubernetes will stop propagating this field in 1.20 release and the field is planned to be removed in 1.21 release."

fn metadata.withUid

withUid(uid)

"UID is the unique in time and space value for this object. It is typically generated by the server on successful creation of a resource and is not allowed to change on PUT operations.\n\nPopulated by the system. Read-only. More info: http://kubernetes.io/docs/user-guide/identifiers#uids"

obj spec

"Desired state of the Certificate resource."

fn spec.withCommonName

withCommonName(commonName)

"CommonName is a common name to be used on the Certificate. The CommonName should have a length of 64 characters or fewer to avoid generating invalid CSRs. This value is ignored by TLS clients when any subject alt name is set. This is x509 behaviour: https://tools.ietf.org/html/rfc6125#section-6.4.4"

fn spec.withDnsNames

withDnsNames(dnsNames)

"DNSNames is a list of DNS subjectAltNames to be set on the Certificate."

fn spec.withDnsNamesMixin

withDnsNamesMixin(dnsNames)

"DNSNames is a list of DNS subjectAltNames to be set on the Certificate."

Note: This function appends passed data to existing values

fn spec.withDuration

withDuration(duration)

"The requested 'duration' (i.e. lifetime) of the Certificate. This option may be ignored/overridden by some issuer types. If unset this defaults to 90 days. Certificate will be renewed either 2/3 through its duration or renewBefore period before its expiry, whichever is later. Minimum accepted duration is 1 hour. Value must be in units accepted by Go time.ParseDuration https://golang.org/pkg/time/#ParseDuration"

fn spec.withEmailSANs

withEmailSANs(emailSANs)

"EmailSANs is a list of email subjectAltNames to be set on the Certificate."

fn spec.withEmailSANsMixin

withEmailSANsMixin(emailSANs)

"EmailSANs is a list of email subjectAltNames to be set on the Certificate."

Note: This function appends passed data to existing values

fn spec.withEncodeUsagesInRequest

withEncodeUsagesInRequest(encodeUsagesInRequest)

"EncodeUsagesInRequest controls whether key usages should be present in the CertificateRequest"

fn spec.withIpAddresses

withIpAddresses(ipAddresses)

"IPAddresses is a list of IP address subjectAltNames to be set on the Certificate."

fn spec.withIpAddressesMixin

withIpAddressesMixin(ipAddresses)

"IPAddresses is a list of IP address subjectAltNames to be set on the Certificate."

Note: This function appends passed data to existing values

fn spec.withIsCA

withIsCA(isCA)

"IsCA will mark this Certificate as valid for certificate signing. This will automatically add the cert sign usage to the list of usages."

fn spec.withKeyAlgorithm

withKeyAlgorithm(keyAlgorithm)

"KeyAlgorithm is the private key algorithm of the corresponding private key for this certificate. If provided, allowed values are either rsa or ecdsa If keyAlgorithm is specified and keySize is not provided, key size of 256 will be used for ecdsa key algorithm and key size of 2048 will be used for rsa key algorithm."

fn spec.withKeyEncoding

withKeyEncoding(keyEncoding)

"KeyEncoding is the private key cryptography standards (PKCS) for this certificate's private key to be encoded in. If provided, allowed values are pkcs1 and pkcs8 standing for PKCS#1 and PKCS#8, respectively. If KeyEncoding is not specified, then pkcs1 will be used by default."

fn spec.withKeySize

withKeySize(keySize)

"KeySize is the key bit size of the corresponding private key for this certificate. If keyAlgorithm is set to rsa, valid values are 2048, 4096 or 8192, and will default to 2048 if not specified. If keyAlgorithm is set to ecdsa, valid values are 256, 384 or 521, and will default to 256 if not specified. No other values are allowed."

fn spec.withRenewBefore

withRenewBefore(renewBefore)

"How long before the currently issued certificate's expiry cert-manager should renew the certificate. The default is 2/3 of the issued certificate's duration. Minimum accepted value is 5 minutes. Value must be in units accepted by Go time.ParseDuration https://golang.org/pkg/time/#ParseDuration"

fn spec.withRevisionHistoryLimit

withRevisionHistoryLimit(revisionHistoryLimit)

"revisionHistoryLimit is the maximum number of CertificateRequest revisions that are maintained in the Certificate's history. Each revision represents a single CertificateRequest created by this Certificate, either when it was created, renewed, or Spec was changed. Revisions will be removed by oldest first if the number of revisions exceeds this number. If set, revisionHistoryLimit must be a value of 1 or greater. If unset (nil), revisions will not be garbage collected. Default value is nil."

fn spec.withSecretName

withSecretName(secretName)

"SecretName is the name of the secret resource that will be automatically created and managed by this Certificate resource. It will be populated with a private key and certificate, signed by the denoted issuer."

fn spec.withUriSANs

withUriSANs(uriSANs)

"URISANs is a list of URI subjectAltNames to be set on the Certificate."

fn spec.withUriSANsMixin

withUriSANsMixin(uriSANs)

"URISANs is a list of URI subjectAltNames to be set on the Certificate."

Note: This function appends passed data to existing values

fn spec.withUsages

withUsages(usages)

"Usages is the set of x509 usages that are requested for the certificate. Defaults to digital signature and key encipherment if not specified."

fn spec.withUsagesMixin

withUsagesMixin(usages)

"Usages is the set of x509 usages that are requested for the certificate. Defaults to digital signature and key encipherment if not specified."

Note: This function appends passed data to existing values

obj spec.issuerRef

"IssuerRef is a reference to the issuer for this certificate. If the kind field is not set, or set to Issuer, an Issuer resource with the given name in the same namespace as the Certificate will be used. If the kind field is set to ClusterIssuer, a ClusterIssuer with the provided name will be used. The name field in this stanza is required at all times."

fn spec.issuerRef.withGroup

withGroup(group)

"Group of the resource being referred to."

fn spec.issuerRef.withKind

withKind(kind)

"Kind of the resource being referred to."

fn spec.issuerRef.withName

withName(name)

"Name of the resource being referred to."

obj spec.keystores

"Keystores configures additional keystore output formats stored in the secretName Secret resource."

obj spec.keystores.jks

"JKS configures options for storing a JKS keystore in the spec.secretName Secret resource."

fn spec.keystores.jks.withCreate

withCreate(create)

"Create enables JKS keystore creation for the Certificate. If true, a file named keystore.jks will be created in the target Secret resource, encrypted using the password stored in passwordSecretRef. The keystore file will only be updated upon re-issuance. A file named truststore.jks will also be created in the target Secret resource, encrypted using the password stored in passwordSecretRef containing the issuing Certificate Authority."

obj spec.keystores.jks.passwordSecretRef

"PasswordSecretRef is a reference to a key in a Secret resource containing the password used to encrypt the JKS keystore."

fn spec.keystores.jks.passwordSecretRef.withKey

withKey(key)

"The key of the entry in the Secret resource's data field to be used. Some instances of this field may be defaulted, in others it may be required."

fn spec.keystores.jks.passwordSecretRef.withName

withName(name)

"Name of the resource being referred to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names"

obj spec.keystores.pkcs12

"PKCS12 configures options for storing a PKCS12 keystore in the spec.secretName Secret resource."

fn spec.keystores.pkcs12.withCreate

withCreate(create)

"Create enables PKCS12 keystore creation for the Certificate. If true, a file named keystore.p12 will be created in the target Secret resource, encrypted using the password stored in passwordSecretRef. The keystore file will only be updated upon re-issuance. A file named truststore.p12 will also be created in the target Secret resource, encrypted using the password stored in passwordSecretRef containing the issuing Certificate Authority."

obj spec.keystores.pkcs12.passwordSecretRef

"PasswordSecretRef is a reference to a key in a Secret resource containing the password used to encrypt the PKCS12 keystore."

fn spec.keystores.pkcs12.passwordSecretRef.withKey

withKey(key)

"The key of the entry in the Secret resource's data field to be used. Some instances of this field may be defaulted, in others it may be required."

fn spec.keystores.pkcs12.passwordSecretRef.withName

withName(name)

"Name of the resource being referred to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names"

obj spec.privateKey

"Options to control private keys used for the Certificate."

fn spec.privateKey.withRotationPolicy

withRotationPolicy(rotationPolicy)

"RotationPolicy controls how private keys should be regenerated when a re-issuance is being processed. If set to Never, a private key will only be generated if one does not already exist in the target spec.secretName. If one does exists but it does not have the correct algorithm or size, a warning will be raised to await user intervention. If set to Always, a private key matching the specified requirements will be generated whenever a re-issuance occurs. Default is 'Never' for backward compatibility."

obj spec.subject

"Full X509 name specification (https://golang.org/pkg/crypto/x509/pkix/#Name)."

fn spec.subject.withCountries

withCountries(countries)

"Countries to be used on the Certificate."

fn spec.subject.withCountriesMixin

withCountriesMixin(countries)

"Countries to be used on the Certificate."

Note: This function appends passed data to existing values

fn spec.subject.withLocalities

withLocalities(localities)

"Cities to be used on the Certificate."

fn spec.subject.withLocalitiesMixin

withLocalitiesMixin(localities)

"Cities to be used on the Certificate."

Note: This function appends passed data to existing values

fn spec.subject.withOrganizationalUnits

withOrganizationalUnits(organizationalUnits)

"Organizational Units to be used on the Certificate."

fn spec.subject.withOrganizationalUnitsMixin

withOrganizationalUnitsMixin(organizationalUnits)

"Organizational Units to be used on the Certificate."

Note: This function appends passed data to existing values

fn spec.subject.withOrganizations

withOrganizations(organizations)

"Organizations to be used on the Certificate."

fn spec.subject.withOrganizationsMixin

withOrganizationsMixin(organizations)

"Organizations to be used on the Certificate."

Note: This function appends passed data to existing values

fn spec.subject.withPostalCodes

withPostalCodes(postalCodes)

"Postal codes to be used on the Certificate."

fn spec.subject.withPostalCodesMixin

withPostalCodesMixin(postalCodes)

"Postal codes to be used on the Certificate."

Note: This function appends passed data to existing values

fn spec.subject.withProvinces

withProvinces(provinces)

"State/Provinces to be used on the Certificate."

fn spec.subject.withProvincesMixin

withProvincesMixin(provinces)

"State/Provinces to be used on the Certificate."

Note: This function appends passed data to existing values

fn spec.subject.withSerialNumber

withSerialNumber(serialNumber)

"Serial number to be used on the Certificate."

fn spec.subject.withStreetAddresses

withStreetAddresses(streetAddresses)

"Street addresses to be used on the Certificate."

fn spec.subject.withStreetAddressesMixin

withStreetAddressesMixin(streetAddresses)

"Street addresses to be used on the Certificate."

Note: This function appends passed data to existing values