diff --git a/puppet-manifests/src/manifests/controller.pp b/puppet-manifests/src/manifests/controller.pp index f1da36ed4e..496edd8495 100644 --- a/puppet-manifests/src/manifests/controller.pp +++ b/puppet-manifests/src/manifests/controller.pp @@ -34,6 +34,7 @@ include ::platform::etcd include ::platform::docker include ::platform::dockerdistribution include ::platform::kubernetes::master +include ::platform::helm include ::platform::patching include ::platform::patching::api diff --git a/puppet-manifests/src/modules/platform/manifests/helm.pp b/puppet-manifests/src/modules/platform/manifests/helm.pp new file mode 100644 index 0000000000..ebbeec57f9 --- /dev/null +++ b/puppet-manifests/src/modules/platform/manifests/helm.pp @@ -0,0 +1,34 @@ +class platform::helm +{ + include ::platform::kubernetes::params + include ::platform::kubernetes::master + + if $::platform::kubernetes::params::enabled { + if str2bool($::is_initial_config_primary) { + + Class['::platform::kubernetes::master'] -> + + exec { "load tiller docker image": + command => "docker load -i /var/lib/tiller/tiller-2.9.1-docker-image.tgz", + logoutput => true, + } -> + + exec { "create service account for tiller": + command => "kubectl --kubeconfig=/etc/kubernetes/admin.conf create serviceaccount --namespace kube-system tiller", + logoutput => true, + } -> + + exec { "create cluster role binding for tiller service account": + command => "kubectl --kubeconfig=/etc/kubernetes/admin.conf create clusterrolebinding tiller-cluster-rule --clusterrole=cluster-admin --serviceaccount=kube-system:tiller", + logoutput => true, + } -> + + exec { 'initialize helm': + environment => [ "KUBECONFIG=/etc/kubernetes/admin.conf" ], + command => "helm init --skip-refresh --service-account tiller", + logoutput => true, + } + } + } +} + diff --git a/puppet-manifests/src/modules/platform/manifests/kubernetes.pp b/puppet-manifests/src/modules/platform/manifests/kubernetes.pp index e87b0fe25a..6b37d90d69 100644 --- a/puppet-manifests/src/modules/platform/manifests/kubernetes.pp +++ b/puppet-manifests/src/modules/platform/manifests/kubernetes.pp @@ -122,8 +122,8 @@ class platform::kubernetes::master inherits ::platform::kubernetes::params { if $enabled { - include ::platform::kubernetes::kubeadm - include ::platform::kubernetes::master::init + contain ::platform::kubernetes::kubeadm + contain ::platform::kubernetes::master::init Class['::platform::etcd'] -> Class[$name] Class['::platform::docker::config'] -> Class[$name] @@ -163,8 +163,8 @@ class platform::kubernetes::worker inherits ::platform::kubernetes::params { if $enabled { - include ::platform::kubernetes::kubeadm - include ::platform::kubernetes::worker::init + contain ::platform::kubernetes::kubeadm + contain ::platform::kubernetes::worker::init Class['::platform::kubernetes::kubeadm'] -> Class['::platform::kubernetes::worker::init']