Dzahn has submitted this change and it was merged. ( 
https://gerrit.wikimedia.org/r/342692 )

Change subject: gerrit: convert to profile/role structure
......................................................................


gerrit: convert to profile/role structure

Converting role to profile/role structure, following
the newer puppet style guide on

https://wikitech.wikimedia.org/wiki/Puppet_coding

Change-Id: Ifce502db939f3c6a9e26c7516c9fd5b18a876392
---
M hieradata/role/common/gerrit/server.yaml
M hieradata/role/eqiad/gerrit/server.yaml
M manifests/site.pp
M modules/gerrit/manifests/init.pp
A modules/profile/manifests/gerrit/server.pp
M modules/role/manifests/gerrit/server.pp
6 files changed, 77 insertions(+), 57 deletions(-)

Approvals:
  Paladox: Looks good to me, but someone else must approve
  jenkins-bot: Verified
  Dzahn: Looks good to me, approved



diff --git a/hieradata/role/common/gerrit/server.yaml 
b/hieradata/role/common/gerrit/server.yaml
index 905feac..d45f3f1 100644
--- a/hieradata/role/common/gerrit/server.yaml
+++ b/hieradata/role/common/gerrit/server.yaml
@@ -4,10 +4,12 @@
 debdeploy::grains:
   debdeploy-gerrit:
     value: standard
-gerrit::host: 'gerrit.wikimedia.org'
-gerrit::master_host: 'cobalt.wikimedia.org'
+
+gerrit::server::host: 'gerrit.wikimedia.org'
+gerrit::server::master_host: 'cobalt.wikimedia.org'
+gerrit::server::bacula: 'srv-gerrit-git'
+
 # Assume all production nodes are slaves
-gerrit::slave: true
 gerrit::jetty::git_dir: '/srv/gerrit/git'
 gerrit::jetty::ssh_host_key: 'ssh_host_key'
 gerrit::jetty::replication:
@@ -20,6 +22,4 @@
         push:
             - '+refs/heads/*:refs/heads/*'
             - '+refs/tags/*:refs/tags/*'
-role::gerrit::server::bacula: 'srv-gerrit-git'
-
 # gerrit::jetty::log_host: 'logstash1002.eqiad.wmnet'
diff --git a/hieradata/role/eqiad/gerrit/server.yaml 
b/hieradata/role/eqiad/gerrit/server.yaml
index 7791889..b271311 100644
--- a/hieradata/role/eqiad/gerrit/server.yaml
+++ b/hieradata/role/eqiad/gerrit/server.yaml
@@ -1,3 +1,3 @@
 gerrit::jetty::db_host: "m2-master.eqiad.wmnet"
-role::gerrit::server::ipv4: '208.80.154.85'
-role::gerrit::server::ipv6: '2620:0:861:3:208:80:154:85'
+profile::gerrit::server::ipv4: '208.80.154.85'
+profile::gerrit::server::ipv6: '2620:0:861:3:208:80:154:85'
diff --git a/manifests/site.pp b/manifests/site.pp
index 948cf29..3aa924b 100644
--- a/manifests/site.pp
+++ b/manifests/site.pp
@@ -223,7 +223,7 @@
 
 # New https://www.mediawiki.org/wiki/Gerrit (T147597)
 node 'cobalt.wikimedia.org' {
-    role(gerrit::server)
+    role('gerrit::server')
 }
 
 # conf100x are zookeeper and etcd discovery service nodes in eqiad
diff --git a/modules/gerrit/manifests/init.pp b/modules/gerrit/manifests/init.pp
index 541fec2..385640c 100644
--- a/modules/gerrit/manifests/init.pp
+++ b/modules/gerrit/manifests/init.pp
@@ -1,6 +1,8 @@
 # Manifest to setup a Gerrit instance
-
-class gerrit($host = undef, $master_host = $::fqdn) {
+class gerrit(
+    $host = undef,
+    $master_host = $::fqdn,
+) {
 
     if $host == undef {
         fail('$gerrit::host must be set!')
diff --git a/modules/profile/manifests/gerrit/server.pp 
b/modules/profile/manifests/gerrit/server.pp
new file mode 100644
index 0000000..e049034
--- /dev/null
+++ b/modules/profile/manifests/gerrit/server.pp
@@ -0,0 +1,59 @@
+# modules/profile/manifests/gerrit/server.pp
+#
+# filtertags: labs-project-git labs-project-ci-staging
+class profile::gerrit::server(
+    $ipv4 = hiera('gerrit::server::ipv4'),
+    $ipv6 = hiera('gerrit::server::ipv6'),
+    $host = hiera('gerrit::server::host'),
+    $master_host = hiera('gerrit::server::master_host'),
+    $bacula = hiera('gerrit::server::bacula'),
+) {
+
+    system::role { 'role::gerrit::server': description => 'Gerrit server' }
+
+    interface::ip { 'role::gerrit::server_ipv4':
+        interface => 'eth0',
+        address   => $ipv4,
+        prefixlen => '32',
+    }
+
+    if $ipv6 != undef {
+        interface::ip { 'role::gerrit::server_ipv6':
+            interface => 'eth0',
+            address   => $ipv6,
+            prefixlen => '128',
+        }
+    }
+
+    monitoring::service { 'gerrit_ssh':
+        description   => 'SSH access',
+        check_command => 'check_ssh_port!29418',
+        contact_group => 'admins,gerrit',
+    }
+
+    include ::base::firewall
+
+    ferm::service { 'gerrit_ssh':
+        proto => 'tcp',
+        port  => '29418',
+    }
+
+    ferm::service { 'gerrit_http':
+        proto => 'tcp',
+        port  => 'http',
+    }
+
+    ferm::service { 'gerrit_https':
+        proto => 'tcp',
+        port  => 'https',
+    }
+
+    if $bacula != undef {
+        backup::set { $bacula: }
+    }
+
+    class { '::gerrit':
+        host        => $host,
+        master_host => $master_host,
+    }
+}
diff --git a/modules/role/manifests/gerrit/server.pp 
b/modules/role/manifests/gerrit/server.pp
index cbf0f81..c95ddf7 100644
--- a/modules/role/manifests/gerrit/server.pp
+++ b/modules/role/manifests/gerrit/server.pp
@@ -1,50 +1,9 @@
-# modules/role/manifests/gerrit/production.pp
+# server running Gerrit code review software
+# https://en.wikipedia.org/wiki/Gerrit_%28software%29
 #
-# filtertags: labs-project-git labs-project-ci-staging
-class role::gerrit::server($ipv4, $ipv6 = undef, $bacula = undef) {
-        system::role { 'role::gerrit::server': description => 'Gerrit server' }
+class role::gerrit::server {
 
-        include ::standard
-        include ::role::backup::host
-        include ::base::firewall
-
-        monitoring::service { 'gerrit_ssh':
-            description   => 'SSH access',
-            check_command => 'check_ssh_port!29418',
-            contact_group => 'admins,gerrit',
-        }
-
-        if $bacula != undef {
-            backup::set { $bacula: }
-        }
-
-        interface::ip { 'role::gerrit::server_ipv4':
-            interface => 'eth0',
-            address   => $ipv4,
-            prefixlen => '32',
-        }
-        if $ipv6 != undef {
-            interface::ip { 'role::gerrit::server_ipv6':
-                interface => 'eth0',
-                address   => $ipv6,
-                prefixlen => '128',
-            }
-        }
-
-        ferm::service { 'gerrit_ssh':
-            proto => 'tcp',
-            port  => '29418',
-        }
-
-        ferm::service { 'gerrit_http':
-            proto => 'tcp',
-            port  => 'http',
-        }
-
-        ferm::service { 'gerrit_https':
-            proto => 'tcp',
-            port  => 'https',
-        }
-
-        class { '::gerrit': }
+    include ::standard
+    include ::profile::gerrit::server
+    include ::role::backup::host
 }

-- 
To view, visit https://gerrit.wikimedia.org/r/342692
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings

Gerrit-MessageType: merged
Gerrit-Change-Id: Ifce502db939f3c6a9e26c7516c9fd5b18a876392
Gerrit-PatchSet: 22
Gerrit-Project: operations/puppet
Gerrit-Branch: production
Gerrit-Owner: Dzahn <[email protected]>
Gerrit-Reviewer: Chad <[email protected]>
Gerrit-Reviewer: Dzahn <[email protected]>
Gerrit-Reviewer: Giuseppe Lavagetto <[email protected]>
Gerrit-Reviewer: Paladox <[email protected]>
Gerrit-Reviewer: jenkins-bot <>

_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits

Reply via email to