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

Change subject: deployment::server: convert to profile/role
......................................................................


deployment::server: convert to profile/role

Moving this role towards a role/profile structure
to follow current puppet code organization practices.

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

Change-Id: Ieac6487d603b1edf715364bec2a0ef8c04be94ea
---
R hieradata/role/common/deployment_server.yaml
M manifests/site.pp
R modules/profile/manifests/mediawiki/deployment/server.pp
A modules/role/manifests/deployment_server.pp
A modules/role/manifests/deployment_server/base.pp
5 files changed, 32 insertions(+), 34 deletions(-)

Approvals:
  jenkins-bot: Verified
  Dzahn: Looks good to me, approved



diff --git a/hieradata/role/common/deployment/server.yaml 
b/hieradata/role/common/deployment_server.yaml
similarity index 100%
rename from hieradata/role/common/deployment/server.yaml
rename to hieradata/role/common/deployment_server.yaml
diff --git a/manifests/site.pp b/manifests/site.pp
index 806b0b9..59a3bd7 100644
--- a/manifests/site.pp
+++ b/manifests/site.pp
@@ -2672,12 +2672,7 @@
 
 # deployment servers
 node 'tin.eqiad.wmnet', 'mira.codfw.wmnet', 'naos.codfw.wmnet' {
-    role(deployment::server)
-    include ::base::firewall
-
-    interface::add_ip6_mapped { 'main':
-        interface => 'eth0',
-    }
+    role(deployment_server)
 }
 
 # test system for performance team (T117888)
diff --git a/modules/role/manifests/deployment/server.pp 
b/modules/profile/manifests/mediawiki/deployment/server.pp
similarity index 83%
rename from modules/role/manifests/deployment/server.pp
rename to modules/profile/manifests/mediawiki/deployment/server.pp
index a4328f1..9b65b9f 100644
--- a/modules/role/manifests/deployment/server.pp
+++ b/modules/profile/manifests/mediawiki/deployment/server.pp
@@ -1,12 +1,13 @@
 # filtertags: labs-project-deployment-prep labs-project-phabricator 
labs-project-striker
-class role::deployment::server(
-    $apache_fqdn = $::fqdn,
-    $deployment_group = 'wikidev',
+class profile::mediawiki::deployment::server(
+    $apache_fqdn = hiera('apache_fqdn', $::fqdn),
+    $deployment_group = hiera('deployment_group', 'wikidev'),
+    $deployment_server = hiera('deployment_server', 'tin.eqiad.wmnet'),
+    $main_deployment_server = hiera('scap::deployment_server'),
+    $base_path = hiera('base_[ath', '/srv/deployment'),
 ) {
 
-    include ::standard
-    $base_path = '/srv/deployment'
-    include role::deployment::mediawiki
+    interface::add_ip6_mapped { 'main': interface => 'eth0', }
 
     ## Scap Config ##
     require ::scap
@@ -22,26 +23,19 @@
     create_resources('scap::source', hiera('scap::sources', {}))
     ## End scap config ###
 
-    include ::deployment::umask_wikidev
+    class {'::deployment::umask_wikidev': }
 
-    class { 'deployment::deployment_server':
+    class { '::deployment::deployment_server':
         deployment_group => $deployment_group,
     }
 
-    include ::apache
-    # Install apache-fast-test
-    include ::apache::helper_scripts
-    include mysql
+    class {'::apache': }
+    class {'::apache::helper_scripts': }
+    class {'::mysql': }
 
     include network::constants
     $deployable_networks = $::network::constants::deployable_networks
-
-    if $::realm != 'labs' {
-        include role::microsites::releases::upload
-        # backup /home dirs on deployment servers
-        include ::profile::backup::host
-        backup::set {'home': }
-    }
+    $deployable_networks_ferm = join($deployable_networks, ' ')
 
     # Firewall rules
     ferm::service { 'rsyncd_scap_master':
@@ -50,8 +44,6 @@
         srange => '$MW_APPSERVER_NETWORKS',
     }
 
-
-    $deployable_networks_ferm = join($deployable_networks, ' ')
 
     # T113351
     ferm::service { 'http_deployment_server':
@@ -86,7 +78,6 @@
         require => File['/srv/deployment'],
     }
 
-    $deployment_server = hiera('deployment_server', 'tin.eqiad.wmnet')
     class { '::deployment::redis':
         deployment_server => $deployment_server
     }
@@ -101,7 +92,6 @@
         cron_ensure       => $deploy_ensure,
     }
 
-    $main_deployment_server = hiera('scap::deployment_server')
     motd::script { 'inactive_warning':
         ensure   => $deploy_ensure,
         priority => 01,
@@ -139,12 +129,8 @@
     }
     ### End Trebuchet
 
-
     # tig is a ncurses-based git utility which is useful for
     # determining the state of git repos during deployments.
-
     require_package('percona-toolkit', 'tig')
-
-    # Bug T126262
-    require_package('php5-readline')
+    require_package('php5-readline') # bug T126262
 }
diff --git a/modules/role/manifests/deployment_server.pp 
b/modules/role/manifests/deployment_server.pp
new file mode 100644
index 0000000..2a1d8e0
--- /dev/null
+++ b/modules/role/manifests/deployment_server.pp
@@ -0,0 +1,10 @@
+# Mediawiki Deployment Server (prod)
+class role::deployment_server {
+    include ::standard
+    include ::base::firewall
+    include ::profile::mediawiki::deployment::server
+    include ::profile::backup::host
+    include ::role::deployment::mediawiki
+    include ::role::microsites::releases::upload
+    backup::set {'home': }
+}
diff --git a/modules/role/manifests/deployment_server/base.pp 
b/modules/role/manifests/deployment_server/base.pp
new file mode 100644
index 0000000..918fc08
--- /dev/null
+++ b/modules/role/manifests/deployment_server/base.pp
@@ -0,0 +1,7 @@
+# Mediawiki Deployment Server (labs)
+class role::deployment_server::base {
+    include ::standard
+    include ::base::firewall
+    include ::profile::mediawiki::deployment::server
+    include ::role::deployment::mediawiki
+}

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

Gerrit-MessageType: merged
Gerrit-Change-Id: Ieac6487d603b1edf715364bec2a0ef8c04be94ea
Gerrit-PatchSet: 13
Gerrit-Project: operations/puppet
Gerrit-Branch: production
Gerrit-Owner: Dzahn <[email protected]>
Gerrit-Reviewer: Alexandros Kosiaris <[email protected]>
Gerrit-Reviewer: Dzahn <[email protected]>
Gerrit-Reviewer: Giuseppe Lavagetto <[email protected]>
Gerrit-Reviewer: jenkins-bot <>

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

Reply via email to