ArielGlenn has uploaded a new change for review.
https://gerrit.wikimedia.org/r/112424
Change subject: module for releases webserver (mobile and mw tarballs)
......................................................................
module for releases webserver (mobile and mw tarballs)
Change-Id: Ife41e6f5c937e5af6b922cf118b7a7042dd794a9
---
A modules/releases/manifests/access.pp
A modules/releases/manifests/backups.pp
A modules/releases/manifests/groups.pp
A modules/releases/manifests/init.pp
A modules/releases/manifests/monitor.pp
A modules/releases/manifests/webserver.pp
6 files changed, 93 insertions(+), 0 deletions(-)
git pull ssh://gerrit.wikimedia.org:29418/operations/puppet
refs/changes/24/112424/1
diff --git a/modules/releases/manifests/access.pp
b/modules/releases/manifests/access.pp
new file mode 100644
index 0000000..0d49a18
--- /dev/null
+++ b/modules/releases/manifests/access.pp
@@ -0,0 +1,8 @@
+define releases::access ( $user=$title, $group='wikidev' ) {
+ require 'releases::groups'
+ require 'groups::wikidev'
+ require "accounts::${user}"
+ Class['groups::wikidev'] -> Class['releases::groups'] ->
+ Class["accounts::${user}"]
+ User<|title == $user|> { groups +> [ $group ] }
+}
diff --git a/modules/releases/manifests/backups.pp
b/modules/releases/manifests/backups.pp
new file mode 100644
index 0000000..ce5af77
--- /dev/null
+++ b/modules/releases/manifests/backups.pp
@@ -0,0 +1,4 @@
+class releases::backups {
+ include 'backup::host'
+ backup::set { 'srv-org-wikimedia': }
+}
diff --git a/modules/releases/manifests/groups.pp
b/modules/releases/manifests/groups.pp
new file mode 100644
index 0000000..8d7f318
--- /dev/null
+++ b/modules/releases/manifests/groups.pp
@@ -0,0 +1,8 @@
+class releases::groups {
+ group { 'mwupld':
+ ensure => 'present',
+ }
+ group { 'mobileupld':
+ ensure => 'present',
+ }
+}
diff --git a/modules/releases/manifests/init.pp
b/modules/releases/manifests/init.pp
new file mode 100644
index 0000000..ec02df0
--- /dev/null
+++ b/modules/releases/manifests/init.pp
@@ -0,0 +1,35 @@
+# Release server module for Wikimedia
+#
+# this module sets up a simple web server
+# that will serve static files
+#
+# production: https://releases.wikimedia.org
+#
+# requirements:
+#
+# - initial content must be manually copied into
+# /srv/org/wikimedia/releases
+# - ownership/perms of subdirs must be initially
+# be set appropriately for users to add content
+#
+# this sets up:
+#
+# - the apache site config
+# - the /srv/org/wikimedia/releases docroot
+# - users and groups access to add content
+#
+# Because this service is intended to live behind a
+# caching cluster which would handle ssh, it does not
+# install certs or configure apache for ssh
+
+class releases {
+
+ system::role { 'releases': description => 'Releases webserver' }
+
+ include 'releases::webserver'
+ include 'releases::backups'
+ include 'releases::monitor'
+
+ releases::access { 'brion': group => 'mobileupld' }
+ releases::access { 'csteipp': group => 'mwupld' }
+}
diff --git a/modules/releases/manifests/monitor.pp
b/modules/releases/manifests/monitor.pp
new file mode 100644
index 0000000..6c53c88
--- /dev/null
+++ b/modules/releases/manifests/monitor.pp
@@ -0,0 +1,6 @@
+class releases::monitor {
+ monitor_service {
+ 'http': description => 'HTTP',
+ check_command => 'check_http',
+ }
+}
diff --git a/modules/releases/manifests/webserver.pp
b/modules/releases/manifests/webserver.pp
new file mode 100644
index 0000000..eadd158
--- /dev/null
+++ b/modules/releases/manifests/webserver.pp
@@ -0,0 +1,32 @@
+class releases::webserver {
+
+ file { '/srv/org':
+ ensure => directory,
+ owner => 'root',
+ group => 'root',
+ mode => '0755',
+ }
+ file { '/srv/org/wikimedia':
+ ensure => directory,
+ owner => 'root',
+ group => 'root',
+ mode => '0755',
+ }
+ file { '/srv/org/wikimedia/releases':
+ ensure => directory,
+ owner => 'root',
+ group => 'root',
+ mode => '0755',
+ }
+
+ include 'webserver::apache'
+ @webserver::apache::module { ['rewrite']: }
+ @webserver::apache::site { 'releases.wikimedia.org':
+ docroot => '/srv/org/wikimedia/releases/',
+ server_admin => '[email protected]',
+ require => [
+ Webserver::Apache::Module['rewrite'],
+ File['/srv/org/wikimedia/releases']
+ ],
+ }
+}
--
To view, visit https://gerrit.wikimedia.org/r/112424
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings
Gerrit-MessageType: newchange
Gerrit-Change-Id: Ife41e6f5c937e5af6b922cf118b7a7042dd794a9
Gerrit-PatchSet: 1
Gerrit-Project: operations/puppet
Gerrit-Branch: production
Gerrit-Owner: ArielGlenn <[email protected]>
_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits