Hashar has uploaded a new change for review. ( 
https://gerrit.wikimedia.org/r/338770 )

Change subject: contint: slave role for Saucelabs jobs
......................................................................

contint: slave role for Saucelabs jobs

We have a subset of jobs (selenium-*) that runs on the third party
Saucelabs and target beta cluster or production websites. For such jobs
we only need ruby to be installed and the ability to record videos
(libav-tools).

Extract the bare minimum requirements to drive Saucelabs jobs to a new
contint::mediawiki_selenium class.
Create a role::ci::slave::saucelabs that includes which will let us have
very dumb slaves for the daily browser tests.

Remove contint::browsertests, inline it directly in
role::ci::slave::browsertests.  That role would have the browsers and
xvfb server suitable for the local testing of a MediaWiki install.

Change-Id: I789ed4684d8d84cfc47139bd75d9b75f5a7582a6
---
D modules/contint/manifests/browsertests.pp
A modules/contint/manifests/mediawiki_selenium.pp
M modules/role/manifests/ci/slave/browsertests.pp
A modules/role/manifests/ci/slave/saucelabs.pp
4 files changed, 39 insertions(+), 16 deletions(-)


  git pull ssh://gerrit.wikimedia.org:29418/operations/puppet 
refs/changes/70/338770/1

diff --git a/modules/contint/manifests/browsertests.pp 
b/modules/contint/manifests/browsertests.pp
deleted file mode 100644
index 8cdc452..0000000
--- a/modules/contint/manifests/browsertests.pp
+++ /dev/null
@@ -1,15 +0,0 @@
-# == Class contint::browsertests
-#
-class contint::browsertests {
-
-    include ::contint::packages::ruby
-
-    # Provides phantomjs, firefox and xvfb
-    include ::contint::browsers
-
-    # For Selenium jobs recording (T113520)
-    package { 'libav-tools':
-        ensure => present,
-    }
-
-}
diff --git a/modules/contint/manifests/mediawiki_selenium.pp 
b/modules/contint/manifests/mediawiki_selenium.pp
new file mode 100644
index 0000000..8105d06
--- /dev/null
+++ b/modules/contint/manifests/mediawiki_selenium.pp
@@ -0,0 +1,13 @@
+# == Class contint::mediawiki_selenium
+#
+# Base dependencies required for the mediawiki_selenium ruby gem.
+class contint::mediawiki_selenium {
+
+    include ::contint::packages::ruby
+
+    # For Selenium jobs recording (T113520)
+    package { 'libav-tools':
+        ensure => present,
+    }
+
+}
diff --git a/modules/role/manifests/ci/slave/browsertests.pp 
b/modules/role/manifests/ci/slave/browsertests.pp
index 2556610..a9e39c2 100644
--- a/modules/role/manifests/ci/slave/browsertests.pp
+++ b/modules/role/manifests/ci/slave/browsertests.pp
@@ -1,3 +1,8 @@
+# == Class role::ci::slave::browsertests
+#
+# Configure an instance to be used for running Selenium tests against a locally
+# installed MediaWiki. Different browsers are included as well as a local
+# in-memory X11 server.
 class role::ci::slave::browsertests {
     requires_realm('labs')
 
@@ -6,7 +11,9 @@
     }
 
     include role::ci::slave::labs::common
-    include contint::browsertests
+    include ::contint::mediawiki_selenium
+    # Provides phantomjs, firefox and xvfb
+    include ::contint::browsers
 
     # For CirrusSearch testing:
     $redis_port = 6379
diff --git a/modules/role/manifests/ci/slave/saucelabs.pp 
b/modules/role/manifests/ci/slave/saucelabs.pp
new file mode 100644
index 0000000..1d4e061
--- /dev/null
+++ b/modules/role/manifests/ci/slave/saucelabs.pp
@@ -0,0 +1,18 @@
+# == Class role::ci::slave::saucelabs
+#
+# Configure an instance to be used as a runner for the
+# mediawiki_selenium daily jobs which rely on SauceLabs.
+#
+# That kind of slave does not need a local Xvfb nor any browser or apache
+# configuration since everything is handled on Saucelabs or the target website.
+#
+# filtertags: labs-project-git labs-project-integration labs-project-ci-staging
+class role::ci::slave::saucelabs {
+
+    system::role { 'role::ci::slave::saucelabs':
+        description => 'CI Jenkins slave for jobs running on SauceLabs',
+    }
+
+    include ::role::ci::slave::labs::common
+    include ::contint::mediawiki_selenium
+}

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

Gerrit-MessageType: newchange
Gerrit-Change-Id: I789ed4684d8d84cfc47139bd75d9b75f5a7582a6
Gerrit-PatchSet: 1
Gerrit-Project: operations/puppet
Gerrit-Branch: production
Gerrit-Owner: Hashar <[email protected]>

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

Reply via email to