From 40653ba99377a2371de945cc67abc72254c83e32 Mon Sep 17 00:00:00 2001 From: Bernard Wagner Date: Mon, 28 Jan 2019 14:04:45 +0200 Subject: [PATCH] Add support for SSH certificate authentication --- apis/management.cattle.io/v3/machine_types.go | 6 ++++-- apis/management.cattle.io/v3/rke_types.go | 10 ++++++++++ 2 files changed, 14 insertions(+), 2 deletions(-) diff --git a/apis/management.cattle.io/v3/machine_types.go b/apis/management.cattle.io/v3/machine_types.go index 268457bd..24fa6a3c 100644 --- a/apis/management.cattle.io/v3/machine_types.go +++ b/apis/management.cattle.io/v3/machine_types.go @@ -168,8 +168,10 @@ type CustomConfig struct { // Optional - Docker socket on the node that will be used in tunneling DockerSocket string `yaml:"docker_socket" json:"dockerSocket,omitempty"` // SSH Private Key - SSHKey string `yaml:"ssh_key" json:"sshKey,omitempty" norman:"type=password"` - Label map[string]string `yaml:"label" json:"label,omitempty"` + SSHKey string `yaml:"ssh_key" json:"sshKey,omitempty" norman:"type=password"` + // SSH Certificate + SSHCert string `yaml:"ssh_cert" json:"sshCert,omitempty"` + Label map[string]string `yaml:"label" json:"label,omitempty"` } type NodeSpec struct { diff --git a/apis/management.cattle.io/v3/rke_types.go b/apis/management.cattle.io/v3/rke_types.go index fa52e91e..22947064 100644 --- a/apis/management.cattle.io/v3/rke_types.go +++ b/apis/management.cattle.io/v3/rke_types.go @@ -17,6 +17,8 @@ type RancherKubernetesEngineConfig struct { SystemImages RKESystemImages `yaml:"system_images" json:"systemImages,omitempty"` // SSH Private Key Path SSHKeyPath string `yaml:"ssh_key_path" json:"sshKeyPath,omitempty"` + // SSH Certificate Path + SSHCertPath string `yaml:"ssh_cert_path" json:"sshCertPath,omitempty"` // SSH Agent Auth enable SSHAgentAuth bool `yaml:"ssh_agent_auth" json:"sshAgentAuth"` // Authorization mode configuration used in the cluster @@ -62,6 +64,10 @@ type BastionHost struct { SSHKey string `yaml:"ssh_key" json:"sshKey,omitempty" norman:"type=password"` // SSH Private Key Path SSHKeyPath string `yaml:"ssh_key_path" json:"sshKeyPath,omitempty"` + // SSH Certificate + SSHCert string `yaml:"ssh_cert" json:"sshCert,omitempty"` + // SSH Certificate Path + SSHCertPath string `yaml:"ssh_cert_path" json:"sshCertPath,omitempty"` } type PrivateRegistry struct { @@ -155,6 +161,10 @@ type RKEConfigNode struct { SSHKey string `yaml:"ssh_key" json:"sshKey,omitempty" norman:"type=password"` // SSH Private Key Path SSHKeyPath string `yaml:"ssh_key_path" json:"sshKeyPath,omitempty"` + // SSH Certificate + SSHCert string `yaml:"ssh_cert" json:"sshCert,omitempty"` + // SSH Certificate Path + SSHCertPath string `yaml:"ssh_cert_path" json:"sshCertPath,omitempty"` // Node Labels Labels map[string]string `yaml:"labels" json:"labels,omitempty"` }