Documentation ¶
Overview ¶
Package secrets provides resources which store secrets.
Index ¶
- Constants
- type API
- type APICertsSpec
- type APIExtension
- type APIReadyCondition
- type CertSAN
- type CertSANExtension
- type CertSANSpec
- func (spec *CertSANSpec) Append(sans ...string)
- func (spec *CertSANSpec) AppendDNSNames(dnsNames ...string)
- func (spec *CertSANSpec) AppendIPs(ips ...netip.Addr)
- func (o CertSANSpec) DeepCopy() CertSANSpec
- func (spec *CertSANSpec) Reset()
- func (spec *CertSANSpec) Sort()
- func (spec *CertSANSpec) StdIPs() []net.IP
- type Etcd
- type EtcdCertsSpec
- type EtcdExtension
- type EtcdRoot
- type EtcdRootExtension
- type EtcdRootSpec
- type Kubelet
- type KubeletExtension
- type KubeletSpec
- type Kubernetes
- type KubernetesCertsSpec
- type KubernetesDynamicCerts
- type KubernetesDynamicCertsExtension
- type KubernetesDynamicCertsSpec
- type KubernetesExtension
- type KubernetesRoot
- type KubernetesRootExtension
- type KubernetesRootSpec
- type OSRoot
- type OSRootExtension
- type OSRootSpec
- type Trustd
- type TrustdCertsSpec
- type TrustdExtension
Constants ¶
const APIID = resource.ID("api")
APIID is a resource ID of singleton instance.
const APIType = resource.Type("ApiCertificates.secrets.talos.dev")
APIType is type of API resource.
const CertSANAPIID = resource.ID("api")
CertSANAPIID is a resource ID of singleton instance for the Talos API.
const CertSANKubernetesID = resource.ID("k8s")
CertSANKubernetesID is a resource ID of singleton instance for the Kubernetes API Server.
const CertSANType = resource.Type("CertSANs.secrets.talos.dev")
CertSANType is type of CertSAN resource.
const EtcdID = resource.ID("etcd")
EtcdID is a resource ID of singleton instance.
const EtcdRootID = resource.ID("etcd")
EtcdRootID is the IDs of EtcdRoot.
const EtcdRootType = resource.Type("EtcdRootSecrets.secrets.talos.dev")
EtcdRootType is type of EtcdRoot secret resource.
const EtcdType = resource.Type("EtcdSecrets.secrets.talos.dev")
EtcdType is type of Etcd resource.
const KubeletID = resource.ID("kubelet")
KubeletID is the ID of KubeletType resource.
const KubeletType = resource.Type("KubeletSecrets.secrets.talos.dev")
KubeletType is type of Kubelet secret resource.
const KubernetesDynamicCertsID = resource.ID("k8s-dynamic-certs")
KubernetesDynamicCertsID is a resource ID of singleton instance.
const KubernetesDynamicCertsType = resource.Type("KubernetesDynamicCerts.secrets.talos.dev")
KubernetesDynamicCertsType is type of KubernetesCerts resource.
const KubernetesID = resource.ID("k8s-certs")
KubernetesID is a resource ID of singleton instance.
const KubernetesRootID = resource.ID("k8s")
KubernetesRootID is the ID of KubernetesRootType resource.
const KubernetesRootType = resource.Type("KubernetesRootSecrets.secrets.talos.dev")
KubernetesRootType is type of KubernetesRoot secret resource.
const KubernetesType = resource.Type("KubernetesSecrets.secrets.talos.dev")
KubernetesType is type of Kubernetes resource.
const NamespaceName resource.Namespace = "secrets"
NamespaceName contains resources containing secret material.
const OSRootID = resource.ID("os")
OSRootID is the Resource ID for OSRoot.
const OSRootType = resource.Type("OSRootSecrets.secrets.talos.dev")
OSRootType is type of OSRoot secret resource.
const TrustdID = resource.ID("trustd")
TrustdID is a resource ID of singleton instance.
const TrustdType = resource.Type("TrustdCertificates.secrets.talos.dev")
TrustdType is type of Trustd resource.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type API ¶
type API = typed.Resource[APICertsSpec, APIExtension]
API contains apid generated secrets.
type APICertsSpec ¶
type APICertsSpec struct { CA *x509.PEMEncodedCertificateAndKey `yaml:"ca" protobuf:"1"` // only cert is passed, without key Client *x509.PEMEncodedCertificateAndKey `yaml:"client" protobuf:"2"` Server *x509.PEMEncodedCertificateAndKey `yaml:"server" protobuf:"3"` }
APICertsSpec describes etcd certs secrets.
func (APICertsSpec) DeepCopy ¶
func (o APICertsSpec) DeepCopy() APICertsSpec
DeepCopy generates a deep copy of APICertsSpec.
type APIExtension ¶ added in v1.4.0
type APIExtension struct{}
APIExtension provides auxiliary methods for API.
func (APIExtension) ResourceDefinition ¶ added in v1.4.0
func (APIExtension) ResourceDefinition() meta.ResourceDefinitionSpec
ResourceDefinition implements meta.ResourceDefinitionProvider interface.
type APIReadyCondition ¶
type APIReadyCondition struct {
// contains filtered or unexported fields
}
APIReadyCondition implements condition which waits for the API certs to be ready.
func NewAPIReadyCondition ¶
func NewAPIReadyCondition(state state.State) *APIReadyCondition
NewAPIReadyCondition builds a coondition which waits for the API certs to be ready.
func (*APIReadyCondition) String ¶
func (condition *APIReadyCondition) String() string
type CertSAN ¶
type CertSAN = typed.Resource[CertSANSpec, CertSANExtension]
CertSAN contains certficiate subject alternative names.
type CertSANExtension ¶ added in v1.4.0
type CertSANExtension struct{}
CertSANExtension is a resource data of CertSAN.
func (CertSANExtension) ResourceDefinition ¶ added in v1.4.0
func (CertSANExtension) ResourceDefinition() meta.ResourceDefinitionSpec
ResourceDefinition implements meta.ResourceDefinitionProvider interface.
type CertSANSpec ¶
type CertSANSpec struct { IPs []netip.Addr `yaml:"ips" protobuf:"1"` DNSNames []string `yaml:"dnsNames" protobuf:"2"` FQDN string `yaml:"fqdn" protobuf:"3"` }
CertSANSpec describes fields of the cert SANs.
func (*CertSANSpec) Append ¶
func (spec *CertSANSpec) Append(sans ...string)
Append list of SANs splitting into IPs/DNS names.
func (*CertSANSpec) AppendDNSNames ¶
func (spec *CertSANSpec) AppendDNSNames(dnsNames ...string)
AppendDNSNames skipping duplicates.
func (*CertSANSpec) AppendIPs ¶
func (spec *CertSANSpec) AppendIPs(ips ...netip.Addr)
AppendIPs skipping duplicates.
func (CertSANSpec) DeepCopy ¶
func (o CertSANSpec) DeepCopy() CertSANSpec
DeepCopy generates a deep copy of CertSANSpec.
func (*CertSANSpec) StdIPs ¶
func (spec *CertSANSpec) StdIPs() []net.IP
StdIPs returns a list of converted std.IPs.
type Etcd ¶
type Etcd = typed.Resource[EtcdCertsSpec, EtcdExtension]
Etcd contains etcd generated secrets.
type EtcdCertsSpec ¶
type EtcdCertsSpec struct { Etcd *x509.PEMEncodedCertificateAndKey `yaml:"etcd" protobuf:"1"` EtcdPeer *x509.PEMEncodedCertificateAndKey `yaml:"etcdPeer" protobuf:"2"` EtcdAdmin *x509.PEMEncodedCertificateAndKey `yaml:"etcdAdmin" protobuf:"3"` EtcdAPIServer *x509.PEMEncodedCertificateAndKey `yaml:"etcdAPIServer" protobuf:"4"` }
EtcdCertsSpec describes etcd certs secrets.
func (EtcdCertsSpec) DeepCopy ¶
func (o EtcdCertsSpec) DeepCopy() EtcdCertsSpec
DeepCopy generates a deep copy of EtcdCertsSpec.
type EtcdExtension ¶ added in v1.4.0
type EtcdExtension struct{}
EtcdExtension provides auxiliary methods for Etcd.
func (EtcdExtension) ResourceDefinition ¶ added in v1.4.0
func (EtcdExtension) ResourceDefinition() meta.ResourceDefinitionSpec
ResourceDefinition implements meta.ResourceDefinitionProvider interface.
type EtcdRoot ¶
type EtcdRoot = typed.Resource[EtcdRootSpec, EtcdRootExtension]
EtcdRoot contains root (not generated) secrets.
func NewEtcdRoot ¶
NewEtcdRoot initializes a EtcdRoot resource.
type EtcdRootExtension ¶ added in v1.4.0
type EtcdRootExtension struct{}
EtcdRootExtension provides auxiliary methods for EtcdRoot.
func (EtcdRootExtension) ResourceDefinition ¶ added in v1.4.0
func (EtcdRootExtension) ResourceDefinition() meta.ResourceDefinitionSpec
ResourceDefinition implements meta.ResourceDefinitionProvider interface.
type EtcdRootSpec ¶
type EtcdRootSpec struct {
EtcdCA *x509.PEMEncodedCertificateAndKey `yaml:"etcdCA" protobuf:"1"`
}
EtcdRootSpec describes etcd CA secrets.
func (EtcdRootSpec) DeepCopy ¶
func (o EtcdRootSpec) DeepCopy() EtcdRootSpec
DeepCopy generates a deep copy of EtcdRootSpec.
type Kubelet ¶
type Kubelet = typed.Resource[KubeletSpec, KubeletExtension]
Kubelet contains root (not generated) secrets.
func NewKubelet ¶
NewKubelet initializes a Kubelet resource.
type KubeletExtension ¶ added in v1.4.0
type KubeletExtension struct{}
KubeletExtension provides auxiliary methods for Kubelet.
func (KubeletExtension) ResourceDefinition ¶ added in v1.4.0
func (KubeletExtension) ResourceDefinition() meta.ResourceDefinitionSpec
ResourceDefinition implements meta.ResourceDefinitionProvider interface.
type KubeletSpec ¶
type KubeletSpec struct { Endpoint *url.URL `yaml:"endpoint" protobuf:"1"` CA *x509.PEMEncodedCertificateAndKey `yaml:"ca" protobuf:"2"` BootstrapTokenID string `yaml:"bootstrapTokenID" protobuf:"3"` BootstrapTokenSecret string `yaml:"bootstrapTokenSecret" protobuf:"4"` }
KubeletSpec describes root Kubernetes secrets.
func (KubeletSpec) DeepCopy ¶
func (o KubeletSpec) DeepCopy() KubeletSpec
DeepCopy generates a deep copy of KubeletSpec.
type Kubernetes ¶
type Kubernetes = typed.Resource[KubernetesCertsSpec, KubernetesExtension]
Kubernetes contains K8s generated secrets.
Kubernetes resource contains secrets which require reload of the control plane pods if updated.
func NewKubernetes ¶
func NewKubernetes() *Kubernetes
NewKubernetes initializes a Kubernetes resource.
type KubernetesCertsSpec ¶
type KubernetesCertsSpec struct { SchedulerKubeconfig string `yaml:"schedulerKubeconfig" protobuf:"4"` ControllerManagerKubeconfig string `yaml:"controllerManagerKubeconfig" protobuf:"5"` // Admin-level kubeconfig with access through the localhost endpoint and cluster endpoints. LocalhostAdminKubeconfig string `yaml:"localhostAdminKubeconfig" protobuf:"6"` AdminKubeconfig string `yaml:"adminKubeconfig" protobuf:"7"` }
KubernetesCertsSpec describes generated Kubernetes certificates.
func (KubernetesCertsSpec) DeepCopy ¶
func (o KubernetesCertsSpec) DeepCopy() KubernetesCertsSpec
DeepCopy generates a deep copy of KubernetesCertsSpec.
type KubernetesDynamicCerts ¶ added in v1.4.2
type KubernetesDynamicCerts = typed.Resource[KubernetesDynamicCertsSpec, KubernetesDynamicCertsExtension]
KubernetesDynamicCerts contains K8s generated secrets.
KubernetesDynamicCerts resource contains secrets which do not require reload when updated.
func NewKubernetesDynamicCerts ¶ added in v1.4.2
func NewKubernetesDynamicCerts() *KubernetesDynamicCerts
NewKubernetesDynamicCerts initializes a KubernetesCerts resource.
type KubernetesDynamicCertsExtension ¶ added in v1.4.2
type KubernetesDynamicCertsExtension struct{}
KubernetesDynamicCertsExtension provides auxiliary methods for KubernetesCerts.
func (KubernetesDynamicCertsExtension) ResourceDefinition ¶ added in v1.4.2
func (KubernetesDynamicCertsExtension) ResourceDefinition() meta.ResourceDefinitionSpec
ResourceDefinition implements meta.ResourceDefinitionProvider interface.
type KubernetesDynamicCertsSpec ¶ added in v1.4.2
type KubernetesDynamicCertsSpec struct { APIServer *x509.PEMEncodedCertificateAndKey `yaml:"apiServer" protobuf:"1"` APIServerKubeletClient *x509.PEMEncodedCertificateAndKey `yaml:"apiServerKubeletClient" protobuf:"2"` FrontProxy *x509.PEMEncodedCertificateAndKey `yaml:"frontProxy" protobuf:"3"` }
KubernetesDynamicCertsSpec describes generated KubernetesCerts certificates.
func (KubernetesDynamicCertsSpec) DeepCopy ¶ added in v1.4.2
func (o KubernetesDynamicCertsSpec) DeepCopy() KubernetesDynamicCertsSpec
DeepCopy generates a deep copy of KubernetesDynamicCertsSpec.
type KubernetesExtension ¶ added in v1.4.0
type KubernetesExtension struct{}
KubernetesExtension provides auxiliary methods for Kubernetes.
func (KubernetesExtension) ResourceDefinition ¶ added in v1.4.0
func (KubernetesExtension) ResourceDefinition() meta.ResourceDefinitionSpec
ResourceDefinition implements meta.ResourceDefinitionProvider interface.
type KubernetesRoot ¶
type KubernetesRoot = typed.Resource[KubernetesRootSpec, KubernetesRootExtension]
KubernetesRoot contains root (not generated) secrets.
func NewKubernetesRoot ¶
func NewKubernetesRoot(id resource.ID) *KubernetesRoot
NewKubernetesRoot initializes a KubernetesRoot resource.
type KubernetesRootExtension ¶ added in v1.4.0
type KubernetesRootExtension struct{}
KubernetesRootExtension provides auxiliary methods for KubernetesRoot.
func (KubernetesRootExtension) ResourceDefinition ¶ added in v1.4.0
func (KubernetesRootExtension) ResourceDefinition() meta.ResourceDefinitionSpec
ResourceDefinition implements meta.ResourceDefinitionProvider interface.
type KubernetesRootSpec ¶
type KubernetesRootSpec struct { Name string `yaml:"name" protobuf:"1"` Endpoint *url.URL `yaml:"endpoint" protobuf:"2"` LocalEndpoint *url.URL `yaml:"local_endpoint" protobuf:"3"` CertSANs []string `yaml:"certSANs" protobuf:"4"` APIServerIPs []netip.Addr `yaml:"apiServerIPs" protobuf:"14"` DNSDomain string `yaml:"dnsDomain" protobuf:"6"` CA *x509.PEMEncodedCertificateAndKey `yaml:"ca" protobuf:"7"` ServiceAccount *x509.PEMEncodedKey `yaml:"serviceAccount" protobuf:"8"` AggregatorCA *x509.PEMEncodedCertificateAndKey `yaml:"aggregatorCA" protobuf:"9"` AESCBCEncryptionSecret string `yaml:"aesCBCEncryptionSecret" protobuf:"10"` BootstrapTokenID string `yaml:"bootstrapTokenID" protobuf:"11"` BootstrapTokenSecret string `yaml:"bootstrapTokenSecret" protobuf:"12"` SecretboxEncryptionSecret string `yaml:"secretboxEncryptionSecret" protobuf:"13"` }
KubernetesRootSpec describes root Kubernetes secrets.
func (KubernetesRootSpec) DeepCopy ¶
func (o KubernetesRootSpec) DeepCopy() KubernetesRootSpec
DeepCopy generates a deep copy of KubernetesRootSpec.
type OSRoot ¶
type OSRoot = typed.Resource[OSRootSpec, OSRootExtension]
OSRoot contains root (not generated) secrets.
type OSRootExtension ¶ added in v1.4.0
type OSRootExtension struct{}
OSRootExtension provides auxiliary methods for OSRoot.
func (OSRootExtension) ResourceDefinition ¶ added in v1.4.0
func (OSRootExtension) ResourceDefinition() meta.ResourceDefinitionSpec
ResourceDefinition implements meta.ResourceDefinitionProvider interface.
type OSRootSpec ¶
type OSRootSpec struct { CA *x509.PEMEncodedCertificateAndKey `yaml:"ca" protobuf:"1"` CertSANIPs []netip.Addr `yaml:"certSANIPs" protobuf:"2"` CertSANDNSNames []string `yaml:"certSANDNSNames" protobuf:"3"` Token string `yaml:"token" protobuf:"4"` }
OSRootSpec describes operating system CA.
func (OSRootSpec) DeepCopy ¶
func (o OSRootSpec) DeepCopy() OSRootSpec
DeepCopy generates a deep copy of OSRootSpec.
type Trustd ¶
type Trustd = typed.Resource[TrustdCertsSpec, TrustdExtension]
Trustd contains trustd generated secrets.
type TrustdCertsSpec ¶
type TrustdCertsSpec struct { CA *x509.PEMEncodedCertificateAndKey `yaml:"ca" protobuf:"1"` // only cert is passed, without key Server *x509.PEMEncodedCertificateAndKey `yaml:"server" protobuf:"2"` }
TrustdCertsSpec describes etcd certs secrets.
func (TrustdCertsSpec) DeepCopy ¶
func (o TrustdCertsSpec) DeepCopy() TrustdCertsSpec
DeepCopy generates a deep copy of TrustdCertsSpec.
type TrustdExtension ¶ added in v1.4.0
type TrustdExtension struct{}
TrustdExtension provides auxiliary methods for Trustd.
func (TrustdExtension) ResourceDefinition ¶ added in v1.4.0
func (TrustdExtension) ResourceDefinition() meta.ResourceDefinitionSpec
ResourceDefinition implements meta.ResourceDefinitionProvider interface.