Skip to content
This repository was archived by the owner on Jul 30, 2021. It is now read-only.

Commit 03d6038

Browse files
authored
Merge pull request #586 from hongchaodeng/f
SHE: autogen secrets containing etcd tls assets
2 parents ab1b6b6 + 5e87496 commit 03d6038

File tree

2 files changed

+51
-3
lines changed

2 files changed

+51
-3
lines changed

pkg/asset/asset.go

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -56,6 +56,9 @@ const (
5656
AssetPathSystemNamespace = "manifests/kube-system-ns.yaml"
5757
AssetPathCheckpointer = "manifests/pod-checkpointer.yaml"
5858
AssetPathEtcdOperator = "manifests/etcd-operator.yaml"
59+
AssetPathSelfHostedEtcdOperatorSecret = "manifests/etcd-operator-client-tls.yaml"
60+
AssetPathSelfHostedEtcdMemberPeerSecret = "manifests/etcd-member-peer-tls.yaml"
61+
AssetPathSelfHostedEtcdMemberCliSecret = "manifests/etcd-member-client-tls.yaml"
5962
AssetPathEtcdSvc = "manifests/etcd-service.yaml"
6063
AssetPathKenc = "manifests/kube-etcd-network-checkpointer.yaml"
6164
AssetPathKubeSystemSARoleBinding = "manifests/kube-system-rbac-role-binding.yaml"
@@ -148,6 +151,12 @@ func NewDefaultAssets(conf Config) (Assets, error) {
148151
return nil, err
149152
}
150153
as = append(as, tlsAssets...)
154+
155+
secretAssets, err := newSelfHostedEtcdSecretAssets(as)
156+
if err != nil {
157+
return nil, err
158+
}
159+
as = append(as, secretAssets...)
151160
} else {
152161
etcdTLSAssets, err := newEtcdTLSAssets(conf.EtcdCACert, conf.EtcdClientCert, conf.EtcdClientKey, conf.CACert, conf.CAPrivKey, conf.EtcdServers)
153162
if err != nil {

pkg/asset/k8s.go

Lines changed: 42 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -15,9 +15,12 @@ const (
1515
// The name of the k8s service that selects self-hosted etcd pods
1616
EtcdServiceName = "etcd-service"
1717

18-
secretNamespace = "kube-system"
19-
secretAPIServerName = "kube-apiserver"
20-
secretCMName = "kube-controller-manager"
18+
secretNamespace = "kube-system"
19+
secretAPIServerName = "kube-apiserver"
20+
secretCMName = "kube-controller-manager"
21+
secretEtcdMemberPeer = "etcd-member-peer-tls"
22+
secretEtcdMemberCli = "etcd-member-client-tls"
23+
secretEtcdOperator = "etcd-operator-client-tls"
2124
)
2225

2326
type staticConfig struct {
@@ -96,6 +99,42 @@ func newKubeConfigAsset(assets Assets, conf Config) (Asset, error) {
9699
})
97100
}
98101

102+
func newSelfHostedEtcdSecretAssets(assets Assets) (Assets, error) {
103+
var res Assets
104+
105+
secretYAML, err := secretFromAssets(secretEtcdMemberPeer, secretNamespace, []string{
106+
AssetPathSelfHostedEtcdMemberPeerCA,
107+
AssetPathSelfHostedEtcdMemberPeerCert,
108+
AssetPathSelfHostedEtcdMemberPeerKey,
109+
}, assets)
110+
if err != nil {
111+
return nil, err
112+
}
113+
res = append(res, Asset{Name: AssetPathSelfHostedEtcdMemberPeerSecret, Data: secretYAML})
114+
115+
secretYAML, err = secretFromAssets(secretEtcdMemberCli, secretNamespace, []string{
116+
AssetPathSelfHostedEtcdMemberClientCA,
117+
AssetPathSelfHostedEtcdMemberClientCert,
118+
AssetPathSelfHostedEtcdMemberClientKey,
119+
}, assets)
120+
if err != nil {
121+
return nil, err
122+
}
123+
res = append(res, Asset{Name: AssetPathSelfHostedEtcdMemberCliSecret, Data: secretYAML})
124+
125+
secretYAML, err = secretFromAssets(secretEtcdOperator, secretNamespace, []string{
126+
AssetPathSelfHostedOperatorEtcdCA,
127+
AssetPathSelfHostedOperatorEtcdCert,
128+
AssetPathSelfHostedOperatorEtcdKey,
129+
}, assets)
130+
if err != nil {
131+
return nil, err
132+
}
133+
res = append(res, Asset{Name: AssetPathSelfHostedEtcdOperatorSecret, Data: secretYAML})
134+
135+
return res, nil
136+
}
137+
99138
func newAPIServerSecretAsset(assets Assets, etcdUseTLS bool) (Asset, error) {
100139
secretAssets := []string{
101140
AssetPathAPIServerKey,

0 commit comments

Comments
 (0)