Skip to content

Commit 4b67c07

Browse files
awesomenixk8s-ci-robot
authored andcommitted
Create certificates, admin kubeconfig, bootstrap token and discoveryhashes using kubeadm (#136)
* Generate certificates using kubeadm instead of manual operations right now, this consolidates efforts into upstream, any bug fixes, updates are consumed * Update cluster-api dependency (#133) Signed-off-by: Stephen Augustus <[email protected]> * Bring vendor into sync * Bring vendor into sync * Fix lint issues * Address review comments * Move adminkubeconfig and discoverhashes to cluster status instead of clusterspec
1 parent 4dde368 commit 4b67c07

File tree

321 files changed

+27714
-510
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

321 files changed

+27714
-510
lines changed

.gitignore

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -23,9 +23,9 @@
2323
envfile
2424

2525
# kubeconfigs
26-
kind.kubeconfig
27-
minikube.kubeconfig
28-
kubeconfig
26+
/kind.kubeconfig
27+
/minikube.kubeconfig
28+
/kubeconfig
2929

3030
# binaries
3131
/manager

Gopkg.lock

Lines changed: 105 additions & 16 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Gopkg.toml

Lines changed: 0 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -48,15 +48,6 @@ required = [
4848
name = "sigs.k8s.io/cluster-api"
4949
revision = "af298a2a480fb7143786cf4f9990e741855f08e9"
5050

51-
# TODO: It's currently necessary to pin this to kubernetes-1.13.1, instead of
52-
# kubernetes-1.13.4, due to some transitive dependencies upstream.
53-
# See here:
54-
# - https://github.com/kubernetes-sigs/cluster-api-provider-azure/pull/116#discussion_r262599059
55-
# - https://github.com/kubernetes-sigs/controller-runtime/pull/349
56-
[[constraint]]
57-
name = "k8s.io/client-go"
58-
version = "kubernetes-1.13.1"
59-
6051
[[constraint]]
6152
name = "github.com/Azure/azure-sdk-for-go"
6253
version = "26.3.0"

pkg/apis/azureprovider/v1alpha1/azureclusterproviderstatus_types.go

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -30,8 +30,9 @@ type AzureClusterProviderStatus struct {
3030
metav1.TypeMeta `json:",inline"`
3131
metav1.ObjectMeta `json:"metadata,omitempty"`
3232

33-
Network Network `json:"network,omitempty"`
34-
Bastion VM `json:"bastion,omitempty"`
33+
CertificateStatus CertificateStatus `json:"certificateStatus,omitempty"`
34+
Network Network `json:"network,omitempty"`
35+
Bastion VM `json:"bastion,omitempty"`
3536
}
3637

3738
// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object

pkg/apis/azureprovider/v1alpha1/types.go

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -85,6 +85,16 @@ type Network struct {
8585
APIServerIP PublicIP `json:"apiServerIp,omitempty"`
8686
}
8787

88+
//CertificateStatus contains fields generated along with certificate generation
89+
type CertificateStatus struct {
90+
// AdminKubeconfig generated using the certificates part of the spec
91+
AdminKubeconfig string `json:"adminKubeconfig,omitempty"`
92+
93+
// DiscoveryHashes generated using the certificates part of the spec, used by master and nodes bootstrapping
94+
// this never changes until ca is rotated
95+
DiscoveryHashes []string `json:"discoveryHashes,omitempty"`
96+
}
97+
8898
// TODO: Implement tagging
8999
/*
90100
// Tags defines resource tags.

pkg/apis/azureprovider/v1alpha1/zz_generated.deepcopy.go

Lines changed: 22 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

pkg/cloud/azure/services/certificates/BUILD

Lines changed: 18 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,8 +12,22 @@ go_library(
1212
"//pkg/apis/azureprovider/v1alpha1:go_default_library",
1313
"//pkg/cloud/azure/actuators:go_default_library",
1414
"//vendor/github.com/pkg/errors:go_default_library",
15-
"//vendor/k8s.io/client-go/tools/clientcmd/api:go_default_library",
15+
"//vendor/k8s.io/apimachinery/pkg/apis/meta/v1:go_default_library",
16+
"//vendor/k8s.io/client-go/kubernetes:go_default_library",
17+
"//vendor/k8s.io/client-go/tools/clientcmd:go_default_library",
18+
"//vendor/k8s.io/client-go/util/cert:go_default_library",
19+
"//vendor/k8s.io/cluster-bootstrap/token/util:go_default_library",
1620
"//vendor/k8s.io/klog:go_default_library",
21+
"//vendor/k8s.io/kubernetes/cmd/kubeadm/app/apis/kubeadm:go_default_library",
22+
"//vendor/k8s.io/kubernetes/cmd/kubeadm/app/apis/kubeadm/scheme:go_default_library",
23+
"//vendor/k8s.io/kubernetes/cmd/kubeadm/app/apis/kubeadm/v1beta1:go_default_library",
24+
"//vendor/k8s.io/kubernetes/cmd/kubeadm/app/constants:go_default_library",
25+
"//vendor/k8s.io/kubernetes/cmd/kubeadm/app/phases/bootstraptoken/node:go_default_library",
26+
"//vendor/k8s.io/kubernetes/cmd/kubeadm/app/phases/certs:go_default_library",
27+
"//vendor/k8s.io/kubernetes/cmd/kubeadm/app/phases/kubeconfig:go_default_library",
28+
"//vendor/k8s.io/kubernetes/cmd/kubeadm/app/util/kubeconfig:go_default_library",
29+
"//vendor/k8s.io/kubernetes/cmd/kubeadm/app/util/pubkeypin:go_default_library",
30+
"//vendor/sigs.k8s.io/controller-runtime/pkg/client/config:go_default_library",
1731
],
1832
)
1933

@@ -23,6 +37,8 @@ go_test(
2337
embed = [":go_default_library"],
2438
deps = [
2539
"//pkg/apis/azureprovider/v1alpha1:go_default_library",
26-
"//vendor/github.com/pkg/errors:go_default_library",
40+
"//pkg/cloud/azure/actuators:go_default_library",
41+
"//vendor/k8s.io/apimachinery/pkg/apis/meta/v1:go_default_library",
42+
"//vendor/sigs.k8s.io/cluster-api/pkg/apis/cluster/v1alpha1:go_default_library",
2743
],
2844
)

0 commit comments

Comments
 (0)