coren has uploaded a new change for review.
https://gerrit.wikimedia.org/r/59969
Change subject: Preleminary toollabs module
......................................................................
Preleminary toollabs module
Preleminary implementation of the toollabs module that implements
the Tool Labs instance roles. At this time, only the structure
and some packages are in place.
Change-Id: Ic9595f375ece581bf41ceff44e9d14a7bdfcd70c
---
A modules/toollabs/manifests/bastion.pp
A modules/toollabs/manifests/dev_environ.pp
A modules/toollabs/manifests/exec_environ.pp
A modules/toollabs/manifests/execnode.pp
A modules/toollabs/manifests/master.pp
A modules/toollabs/manifests/shadow.pp
A modules/toollabs/manifests/webproxy.pp
A modules/toollabs/manifests/webserver.pp
8 files changed, 188 insertions(+), 0 deletions(-)
git pull ssh://gerrit.wikimedia.org:29418/operations/puppet
refs/changes/69/59969/1
diff --git a/modules/toollabs/manifests/bastion.pp
b/modules/toollabs/manifests/bastion.pp
new file mode 100644
index 0000000..2ef65f1
--- /dev/null
+++ b/modules/toollabs/manifests/bastion.pp
@@ -0,0 +1,19 @@
+# Class: toollabs::bastion
+#
+# This role sets up an bastion/dev instance in the Tool Labs model.
+#
+# Parameters:
+#
+# Actions:
+#
+# Requires:
+#
+# Sample Usage:
+#
+class toollabs::bastion {
+ include gridengine::submit_host
+ include ssh::bastion
+ include toollabs::exec_environ
+ include toollabs::dev_environ
+}
+
diff --git a/modules/toollabs/manifests/dev_environ.pp
b/modules/toollabs/manifests/dev_environ.pp
new file mode 100644
index 0000000..6575e7e
--- /dev/null
+++ b/modules/toollabs/manifests/dev_environ.pp
@@ -0,0 +1,30 @@
+# Class: toollabs::exec_environ
+#
+# This class sets up a node as a dev environment for tool labs.
+# This is a "sub" role included by the actual tool labs roles and would
+# normally not be included directly in node definitions.
+#
+# Those are the dependencies for development tools and packages intended
+# for interactive use.
+#
+# Parameters:
+#
+# Actions:
+# - Install tool dependencies
+#
+# Requires:
+#
+# Sample Usage:
+#
+class toollabs::dev_environ {
+ package { [
+ 'libtool',
+ 'autoconf',
+ 'sqlite3',
+ 'python-dev',
+ 'libmysqlclient-dev',
+ 'cython'
+ ]:
+ ensure => present
+ }
+}
diff --git a/modules/toollabs/manifests/exec_environ.pp
b/modules/toollabs/manifests/exec_environ.pp
new file mode 100644
index 0000000..44ca34f
--- /dev/null
+++ b/modules/toollabs/manifests/exec_environ.pp
@@ -0,0 +1,46 @@
+# Class: toollabs::exec_environ
+#
+# This class sets up a node as an execution environment for tool labs.
+# This is a "sub" role included by the actual tool labs roles and would
+# normally not be included directly in node definitions.
+#
+# Actual runtime dependencies for tools live here.
+#
+# Parameters:
+#
+# Actions:
+# - Install tool dependencies
+#
+# Requires:
+#
+# Sample Usage:
+#
+class toollabs::exec_environ {
+ package { [
+ 'nodejs',
+ 'php5-curl',
+ 'mono-runtime',
+ 'php5-cli',
+ 'php5-mysql',
+ 'libhtml-parser-perl',
+ 'libwww-perl',
+ 'liburi-perl',
+ 'libdbd-sqlite3-perl',
+ 'mysql-client-core-5.5',
+ 'python-twisted',
+ 'python-virtualenv',
+ 'python-mysqldb',
+ 'python-requests',
+ 'python3',
+ 'mono-complete',
+ 'python-irclib',
+ 'adminbot',
+ 'gnuplot-nox',
+ 'libpod-simple-wiki-perl',
+ 'libxml-libxml-perl',
+ 'p7zip'
+ ]:
+ ensure => present
+ }
+}
+
diff --git a/modules/toollabs/manifests/execnode.pp
b/modules/toollabs/manifests/execnode.pp
new file mode 100644
index 0000000..ebacc78
--- /dev/null
+++ b/modules/toollabs/manifests/execnode.pp
@@ -0,0 +1,17 @@
+# Class: toollabs::execnode
+#
+# This role sets up an execution node in the Tool Labs model.
+#
+# Parameters:
+#
+# Actions:
+#
+# Requires:
+#
+# Sample Usage:
+#
+class toollabs::execnode {
+ include gridengine::exec_host
+ include toollabs::exec_environ
+}
+
diff --git a/modules/toollabs/manifests/master.pp
b/modules/toollabs/manifests/master.pp
new file mode 100644
index 0000000..c4bef52
--- /dev/null
+++ b/modules/toollabs/manifests/master.pp
@@ -0,0 +1,17 @@
+# Class: toollabs::master
+#
+# This role sets up a grid master in the Tool Labs model.
+#
+# Parameters:
+#
+# Actions:
+#
+# Requires:
+#
+# Sample Usage:
+#
+class toollabs::master {
+ include gridengine::master
+ include toollabs::exec_environ
+}
+
diff --git a/modules/toollabs/manifests/shadow.pp
b/modules/toollabs/manifests/shadow.pp
new file mode 100644
index 0000000..ea85d0d
--- /dev/null
+++ b/modules/toollabs/manifests/shadow.pp
@@ -0,0 +1,17 @@
+# Class: toollabs::shadow
+#
+# This role sets up a grid shadow master in the Tool Labs model.
+#
+# Parameters:
+#
+# Actions:
+#
+# Requires:
+#
+# Sample Usage:
+#
+class toollabs::shadow {
+ include gridengine::shadow_master
+ include toollabs::exec_environ
+}
+
diff --git a/modules/toollabs/manifests/webproxy.pp
b/modules/toollabs/manifests/webproxy.pp
new file mode 100644
index 0000000..50c03db
--- /dev/null
+++ b/modules/toollabs/manifests/webproxy.pp
@@ -0,0 +1,15 @@
+# Class: toollabs::webproxy
+#
+# This role sets up a web proxy in the Tool Labs model.
+#
+# Parameters:
+#
+# Actions:
+#
+# Requires:
+#
+# Sample Usage:
+#
+class toollabs::webproxy {
+}
+
diff --git a/modules/toollabs/manifests/webserver.pp
b/modules/toollabs/manifests/webserver.pp
new file mode 100644
index 0000000..d1952bc
--- /dev/null
+++ b/modules/toollabs/manifests/webserver.pp
@@ -0,0 +1,27 @@
+# Class: toollabs::webserver
+#
+# This role sets up a webserver in the Tool Labs model.
+#
+# Parameters:
+#
+# Actions:
+#
+# Requires:
+#
+# Sample Usage:
+#
+class toollabs::webserver {
+ include gridengine::submit_host
+ include toollabs::exec_envrion
+
+ package { [
+ 'libapache2-mod-suphp',
+ 'libhtml-parser-perl'
+ 'libwww-perl',
+ 'liburi-perl',
+ 'libdbd-sqlite3-perl'
+ ]:
+ ensure => present
+ }
+}
+
--
To view, visit https://gerrit.wikimedia.org/r/59969
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings
Gerrit-MessageType: newchange
Gerrit-Change-Id: Ic9595f375ece581bf41ceff44e9d14a7bdfcd70c
Gerrit-PatchSet: 1
Gerrit-Project: operations/puppet
Gerrit-Branch: production
Gerrit-Owner: coren <[email protected]>
_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits