Yuvipanda has uploaded a new change for review.
https://gerrit.wikimedia.org/r/278976
Change subject: k8s: Extract basic docker engine setup
......................................................................
k8s: Extract basic docker engine setup
The docker module can't still be used outside of the
k8s module, but maybe some day.
Change-Id: Ic458e19e76a3cd302afd306f1a374394f13bddc3
---
R modules/docker/files/docker.gpg
A modules/docker/manifests/engine.pp
M modules/k8s/manifests/docker.pp
3 files changed, 50 insertions(+), 51 deletions(-)
git pull ssh://gerrit.wikimedia.org:29418/operations/puppet
refs/changes/76/278976/1
diff --git a/modules/k8s/files/docker.gpg b/modules/docker/files/docker.gpg
similarity index 100%
rename from modules/k8s/files/docker.gpg
rename to modules/docker/files/docker.gpg
Binary files differ
diff --git a/modules/docker/manifests/engine.pp
b/modules/docker/manifests/engine.pp
new file mode 100644
index 0000000..6cba22e
--- /dev/null
+++ b/modules/docker/manifests/engine.pp
@@ -0,0 +1,48 @@
+class docker::engine(
+ $version = '1.9.1-0~jessie',
+) {
+ apt::repository { 'docker':
+ uri => 'https://apt.dockerproject.org/repo',
+ dist => 'debian-jessie',
+ components => 'main',
+ source => false,
+ keyfile => 'puppet:///modules/docker/docker.gpg',
+ }
+
+ # Pin a version of docker-engine so we have the same
+ # across the fleet
+ package { 'docker-engine':
+ ensure => $version,
+ }
+
+ $docker_username = hiera('docker::username')
+ $docker_password = hiera('docker::password')
+ $docker_registry = hiera('docker::registry_url')
+
+ # uses strict_encode64 since encode64 adds newlines?!
+ $docker_auth = inline_template("<%= require 'base64';
Base64.strict_encode64('${docker_username}:${docker_password}') -%>")
+
+ $docker_config = {
+ 'auths' => {
+ "${docker_registry}" => {
+ 'auth' => $docker_auth,
+ }
+ }
+ }
+
+ file { '/root/.docker':
+ ensure => directory,
+ owner => 'root',
+ group => 'docker',
+ mode => '0550',
+ }
+
+ file { '/root/.docker/config.json':
+ content => ordered_json($docker_config),
+ owner => 'root',
+ group => 'docker',
+ mode => '0440',
+ notify => Base::Service_unit['docker'],
+ require => File['/root/.docker'],
+ }
+}
diff --git a/modules/k8s/manifests/docker.pp b/modules/k8s/manifests/docker.pp
index 709449b..2748023 100644
--- a/modules/k8s/manifests/docker.pp
+++ b/modules/k8s/manifests/docker.pp
@@ -2,59 +2,10 @@
#
# Sets up docker as used by kubernetes
class k8s::docker {
- apt::repository { 'docker':
- uri => 'https://apt.dockerproject.org/repo',
- dist => 'debian-jessie',
- components => 'main',
- source => false,
- keyfile => 'puppet:///modules/k8s/docker.gpg',
- }
-
- package { 'docker.io':
- ensure => absent,
- require => Apt::Repository['docker'],
- }
-
- # Pin a version of docker-engine so we have the same
- # across the fleet
- package { 'docker-engine':
- ensure => '1.9.1-0~jessie',
- require => Package['docker.io'],
- }
-
- $docker_username = hiera('docker::username')
- $docker_password = hiera('docker::password')
- $docker_registry = hiera('docker::registry_url')
-
- # uses strict_encode64 since encode64 adds newlines?!
- $docker_auth = inline_template("<%= require 'base64';
Base64.strict_encode64('${docker_username}:${docker_password}') -%>")
-
- $docker_config = {
- 'auths' => {
- "${docker_registry}" => {
- 'auth' => $docker_auth,
- }
- }
- }
-
- file { '/root/.docker':
- ensure => directory,
- owner => 'root',
- group => 'docker',
- mode => '0550',
- }
-
- file { '/root/.docker/config.json':
- content => ordered_json($docker_config),
- owner => 'root',
- group => 'docker',
- mode => '0440',
- notify => Base::Service_unit['docker'],
- require => File['/root/.docker'],
- }
+ class { '::docker::engine': }
base::service_unit { 'docker':
systemd => true,
- subscribe => Package['docker-engine'],
+ subscribe => Class['::docker::engine'],
}
}
--
To view, visit https://gerrit.wikimedia.org/r/278976
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings
Gerrit-MessageType: newchange
Gerrit-Change-Id: Ic458e19e76a3cd302afd306f1a374394f13bddc3
Gerrit-PatchSet: 1
Gerrit-Project: operations/puppet
Gerrit-Branch: production
Gerrit-Owner: Yuvipanda <[email protected]>
_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits