Stefan.petrea has uploaded a new change for review.

  https://gerrit.wikimedia.org/r/105893


Change subject: Added jumpstart
......................................................................

Added jumpstart

    A vagrant setup designed for newcomers to get a look at Wikimetrics
    running on their own machine.

    Note: It does contain some quick & dirty hacks like "|| true".
    At the moment I don't know enough Puppet to fix that.
    If someone else knows I'd be glad to find out how to avoid ||true.

Change-Id: I6b23a01a7baf1f923ff245f5093358058ed04697
---
A jumpstart/README.md
A jumpstart/Vagrantfile
A jumpstart/manifests/site.pp
3 files changed, 165 insertions(+), 0 deletions(-)


  git pull ssh://gerrit.wikimedia.org:29418/analytics/wikimetrics 
refs/changes/93/105893/1

diff --git a/jumpstart/README.md b/jumpstart/README.md
new file mode 100644
index 0000000..8f3fbc2
--- /dev/null
+++ b/jumpstart/README.md
@@ -0,0 +1,16 @@
+
+Jumpstart
+=========
+
+A single-node Vagrant instance with a puppet manifest designed to install 
wikimetrics and all dependencies
+on a Ubuntu Precise 64bit VM.
+
+Usage
+=====
+
+* Get the Vagrant Ubuntu .deb here https://www.vagrantup.com/downloads.html
+* Install vagrant from that .deb (with dpkg)
+* `cd jumpstart/`
+* `vagrant up`
+
+
diff --git a/jumpstart/Vagrantfile b/jumpstart/Vagrantfile
new file mode 100644
index 0000000..75f26af
--- /dev/null
+++ b/jumpstart/Vagrantfile
@@ -0,0 +1,16 @@
+# -*- mode: ruby -*-
+# vi: set ft=ruby :
+
+# Vagrantfile API/syntax version. Don't touch unless you know what you're 
doing!
+VAGRANTFILE_API_VERSION = "2"
+
+Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
+  config.vm.box = "precise64"
+
+  config.vm.provision :puppet do |puppet|
+    puppet.manifests_path = "manifests"
+    puppet.manifest_file  = "site.pp"
+  end
+
+  config.vm.network :forwarded_port, guest: 80, host: 8080
+end
diff --git a/jumpstart/manifests/site.pp b/jumpstart/manifests/site.pp
new file mode 100644
index 0000000..38cfdb0
--- /dev/null
+++ b/jumpstart/manifests/site.pp
@@ -0,0 +1,133 @@
+
+exec { 'apt-update-1':
+    command => '/usr/bin/apt-get update'
+}
+
+package { 'curl':
+    ensure => present,
+    require => exec['apt-update-1'],
+}
+
+package { 'htop':
+    ensure => present,
+    require => exec['apt-update-1'],
+}
+
+
+package { 'gcc':
+    ensure => present,
+    require => exec['apt-update-1'],
+}
+
+package { 'g++':
+    ensure => present,
+    require => exec['apt-update-1'],
+}
+
+package { 'python-dev':
+    ensure => present,
+    require => exec['apt-update-1'],
+}
+
+package { 'python-minimal':
+    ensure => present,
+    require => exec['apt-update-1'],
+}
+
+package { 'make':
+    ensure => present,
+    require => exec['apt-update-1'],
+}
+
+package { 'automake':
+    ensure => present,
+    require => exec['apt-update-1'],
+}
+
+package { 'git-core':
+    ensure => 'present',
+    require => exec['apt-update-1'],
+}
+
+
+package { 'python-pip':
+    ensure => 'present',
+    require => exec['apt-update-1'],
+}
+
+package { 'redis-server':
+    ensure => 'present',
+    require => exec['apt-update-1'],
+}
+
+package { 'mysql-server':
+    ensure => 'present',
+    require => exec['apt-update-1'],
+}
+
+package { 'libmysqld-dev':
+    ensure => 'present',
+    require => exec['apt-update-1'],
+}
+
+exec { 'python-pip-upgrade':
+    command => '/usr/bin/pip install -q -U pip || true',
+    require => package['python-pip'],
+}
+
+exec { 'wikimetrics-checkout':
+    command => '/usr/bin/git clone 
https://github.com/wikimedia/analytics-wikimetrics.git || true',
+    require => [exec['python-pip-upgrade'], 
+                package['redis-server'],
+                package['mysql-server'],
+                package['libmysqld-dev'],
+                package['gcc'],
+                package['git-core'],
+                package['g++'],
+                package['automake'],
+                package['make'],
+               ]
+}
+
+exec { 'change-rights-wikimetrics':
+    command => '/bin/chmod -R 777 /home/vagrant/analytics-wikimetrics',
+    require => exec['wikimetrics-checkout'],
+}
+
+
+exec { 'install-step1':
+    command => '/bin/cat 
/home/vagrant/analytics-wikimetrics/scripts/00_create_wikimetrics_db  | mysql 
-uroot  | true',
+    require => exec['change-rights-wikimetrics'],
+}
+
+
+exec { 'install-step2':
+    command => '/bin/cat 
/home/vagrant/analytics-wikimetrics/scripts/01_create_enwiki_db  | mysql -uroot 
| true',
+    require => exec['install-step1'],
+}
+
+exec { 'install-step3':
+    command => '/bin/cat 
/home/vagrant/analytics-wikimetrics/scripts/02_create_dewiki_db  | mysql -uroot 
| true',
+    require => exec['install-step2'],
+}
+
+exec { 'install-step4':
+    cwd => '/home/vagrant/analytics-wikimetrics',
+    command => '/usr/local/bin/pip install setuptools --no-use-wheel 
--upgrade',
+    require => exec['install-step3'],
+}
+
+exec { 'install-step5':
+    cwd => '/home/vagrant/analytics-wikimetrics',
+    command => '/usr/local/bin/pip install -r ./requirements.txt',
+    require => exec['install-step4'],
+}
+
+exec { 'install-step6':
+    cwd => '/home/vagrant/analytics-wikimetrics',
+    command => '/usr/local/bin/pip install -e .',
+    require => exec['install-step5'],
+}
+
+
+

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

Gerrit-MessageType: newchange
Gerrit-Change-Id: I6b23a01a7baf1f923ff245f5093358058ed04697
Gerrit-PatchSet: 1
Gerrit-Project: analytics/wikimetrics
Gerrit-Branch: master
Gerrit-Owner: Stefan.petrea <ste...@garage-coding.com>

_______________________________________________
MediaWiki-commits mailing list
MediaWiki-commits@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits

Reply via email to