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