Added playbook for nodepool

Change-Id: Iaba1c9d40a5612fc9d97ac9d5daa082ee3370417
This commit is contained in:
Evgeny Sikachev 2017-08-08 12:11:15 +00:00
parent 1bceed5ff6
commit 86d68a361d
6 changed files with 80 additions and 1 deletions

View File

@ -23,3 +23,7 @@ zuul_git_url: git://git.openstack.org/openstack-infra/zuul
jjb_git_url: git://git.openstack.org/openstack-infra/jenkins-job-builder
jjb_auth_username: admin
jjb_auth_password: admin
# Nodepool params
nodepool_user: nodepool
nodepool_git_url: git://git.openstack.org/openstack-infra/nodepool

View File

@ -20,6 +20,7 @@
- unzip
- mysql-server
- libssl-dev
- python-mysqldb
- name: Install pip packages
pip:

View File

@ -0,0 +1,65 @@
---
- name: Create nodepool directories
file:
path: "{{ item }}"
owner: "{{ nodepool_user }}"
group: "{{ nodepool_user }}"
mode: 0755
state: directory
with_items:
- "{{ ci_dir }}/files/nodepool_dib"
- "{{ ci_dir }}/nodepool"
- /etc/nodepool
- /var/log/nodepool
- /var/lib/nodepool
- /var/run/nodepool
- name: Clone nodepool repo
git:
repo: "{{ nodepool_git_url }}"
dest: "{{ ci_dir}}/nodepool"
become: true
become_user: "{{ nodepool_user }}"
- name: Install nodepool to virtualenv
command: tox -e venv --notest
args:
chdir: "{{ ci_dir }}/nodepool"
become: true
become_user: "{{ nodepool_user }}"
- name: Copy configs
template:
src: "{{ item }}"
dest: "/etc/nodepool/{{ item }}"
become: true
with_items:
- secure.conf
- logging.conf
- name: Copy nodepool-scripts
command: cp -r /home/ubuntu/sahara-ci-config/config/nodepool/scripts /opt/ci/files/nodepool-scripts
become: true
- name: Copy nodepool-scripts
command: "cp -r /home/ubuntu/sahara-ci-config/slave-scripts/update_pool.sh {{ ci_dir }}/files"
become: true
become_user: "{{ jenkins_user }}"
- name: Create db user for nodepool
mysql_user:
name: nodepool
password: ''
priv: '*.*:ALL'
state: present
- name: Create db for nodepool
mysql_db:
name: nodepool
state: present
- name: Create nodepool symlink
file:
src: "{{ ci_dir }}/nodepool/.tox/venv/bin/nodepool"
dest: /usr/sbin/nodepool-client
state: link

View File

@ -13,11 +13,15 @@
tasks:
- name: Create Jenkins CI directory
file:
path: "{{ ci_dir }}/files"
path: "{{ ci_dir }}/{{ item }}"
owner: "{{ jenkins_user }}"
group: "{{ jenkins_user }}"
mode: 0755
state: directory
with_items:
- files/nodepool-scripts
- files/ext-files
- logs
- name: Install jjb
hosts: localhost
@ -28,3 +32,8 @@
hosts: localhost
roles:
- zuul
- name: Install nodepool
hosts: localhost
roles:
- nodepool