summaryrefslogtreecommitdiff
path: root/README.md
blob: d55b45f909ce62d09b866742f53869b1963a0365 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
turbo-hipster
=============

A set of CI tools.

worker_server.py is a worker server that loads and runs task_plugins.

Each task_plugin is a zuul gearman worker that implements, handles, executes a
job, uploads/post-processes the logs and sends back the results to zuul.

Plugins
-------

**gate_real_db_upgrade**:
Runs the db_sync migrations on each dataset available in the datasets subdir.

Installation
------------

* boot a fresh Ubuntu image
* setup ssh authentication for your admin team
* apt-get update; apt-get dist-upgrade
* adduser th
* apt-get install vim git python-pip python-setuptools python-keystoneclient virtualenvwrapper python-eventlet python-numpy python-mysqldb python-git python-gitdb python-netaddr python-pkg-resources libxml2-dev libxml2-utils libxslt-dev git-review libxml2-dev libxml2-utils libxslt-dev libmysqlclient-dev pep8 postgresql-server-dev-9.1 python2.7-dev python-coverage python-netaddr
* pip install -U pip 
* apt-get purge python-pip
* cd /home/th; git clone http://github.com/stackforge/turbo-hipster
* apply any patches you need
* python setup.py install
* cp turbo_hipster/task_plugins/gate_real_db_upgrade/*.sh /usr/local/lib/python2.7/dist-packages/turbo_hipster/task_plugins/gate_real_db_upgrade/
* cp -R etc/* /etc/
* mkdir /var/lib/turbo-hipster
* chown -R th.th /var/lib/turbo-hipster
* mkdir /var/log/turbo-hipster
* chown -R th.th /var/log/turbo-hipster
* install your chosen MySQL-like database engine (percona, maria, mysql)
* mysql -u root --password=$1 -e "create user 'nova'@'localhost' identified by 'tester';"
* mysql -u root --password=$1 -e "create user 'nova'@'172.16.0.2' identified by 'tester';"
* mysql -u root --password=$1 -e "grant all privileges on *.* to 'nova'@'localhost' with grant option;"
* mysql -u root --password=$1 -e "grant all privileges on *.* to 'nova'@'172.16.0.2' with grant option;"
* /etc/rc.local
* rsync the datasets from the master
* logrotate -f /etc/logrotate.conf
* chmod -R ugo+r /var/log/*
* chmod ugo+rx /var/log/mysql
* mkdir /var/cache/pip
* chmod -R ugo+rwx /var/cache/pip
* touch /var/log/mysql/slow-queries.log
* /etc/init.d/turbo-hipster start