From 8ba4e42579be3aed0b98b4152ac690bde2746f19 Mon Sep 17 00:00:00 2001 From: Ricardo Carrillo Cruz Date: Sat, 18 Apr 2015 22:43:12 +0200 Subject: [PATCH] Add pre/post gerrit roles and top-level playbooks --- post_puppet_gerrit.yml | 7 +++++++ pre_puppet_gerrit.yml | 7 +++++++ roles/post_puppet_gerrit/tasks/main.yml | 26 +++++++++++++++++++++++++ roles/pre_puppet_gerrit/tasks/main.yml | 16 +++++++++++++++ 4 files changed, 56 insertions(+) create mode 100644 post_puppet_gerrit.yml create mode 100644 pre_puppet_gerrit.yml create mode 100644 roles/post_puppet_gerrit/tasks/main.yml create mode 100644 roles/pre_puppet_gerrit/tasks/main.yml diff --git a/post_puppet_gerrit.yml b/post_puppet_gerrit.yml new file mode 100644 index 0000000..69f4442 --- /dev/null +++ b/post_puppet_gerrit.yml @@ -0,0 +1,7 @@ +--- +# file: post_puppet_gerrit.yml +- hosts: meta-infra_type_gerrit + user: ubuntu + sudo: true + roles: + - { role: post_puppet_gerrit } diff --git a/pre_puppet_gerrit.yml b/pre_puppet_gerrit.yml new file mode 100644 index 0000000..03f2407 --- /dev/null +++ b/pre_puppet_gerrit.yml @@ -0,0 +1,7 @@ +--- +# file: pre_puppet_gerrit.yml +- hosts: meta-infra_type_gerrit + user: ubuntu + sudo: true + roles: + - { role: pre_puppet_gerrit } diff --git a/roles/post_puppet_gerrit/tasks/main.yml b/roles/post_puppet_gerrit/tasks/main.yml new file mode 100644 index 0000000..b866f21 --- /dev/null +++ b/roles/post_puppet_gerrit/tasks/main.yml @@ -0,0 +1,26 @@ +--- +# Enable ssh agent forwarding with sudo +- lineinfile: dest=/etc/sudoers state=present regexp='^Defaults env_keep\+\=SSH_AUTH_SOCK' line='Defaults env_keep+=SSH_AUTH_SOCK' + +- pause: + prompt: | + Please login to "{{ groups['meta-infra_type_gerrit'][0] }}" + with your OpenID, set your user preferences and enter + your user account name + register: gerrit_prompt_var + +- command: hiera -c /etc/puppet/hiera.yaml zuul_ssh_public_key_contents environment=production + delegate_to: "{{ groups['meta-infra_type_puppetmaster'][0] }}" + register: zuul_ssh_public_key_contents + +- command: hiera -c /etc/puppet/hiera.yaml ssh_project_rsa_pubkey_contents environment=production + delegate_to: "{{ groups['meta-infra_type_puppetmaster'][0] }}" + register: ssh_project_rsa_pubkey_contents + +- command: ssh -p 29418 -o StrictHostKeyChecking=no "{{ gerrit_prompt_var.user_input }}"@localhost gerrit create-group "'Project Bootstrappers'" + +- command: ssh -p 29418 -o StrictHostKeyChecking=no "{{ gerrit_prompt_var.user_input }}"@localhost gerrit create-group "'Continuous Integration Tools'" + +- command: ssh -p 29418 -o StrictHostKeyChecking=no "{{ gerrit_prompt_var.user_input }}"@localhost gerrit create-account --group "'Continuous Integration Tools'" --group Administrators --full-name "'Project Creator'" --email creator@infra-ansible.cloud --ssh-key "'{{ ssh_project_rsa_pubkey_contents.stdout }}'" openstack-project-creator + +- command: ssh -p 29418 -o StrictHostKeyChecking=no "{{ gerrit_prompt_var.user_input }}"@localhost gerrit create-account --group "'Continuous Integration Tools'" --full-name "'Zuul'" --email zuul@infra-ansible.cloud --ssh-key "'{{ zuul_ssh_public_key_contents.stdout }}'" jenkins diff --git a/roles/pre_puppet_gerrit/tasks/main.yml b/roles/pre_puppet_gerrit/tasks/main.yml new file mode 100644 index 0000000..442798e --- /dev/null +++ b/roles/pre_puppet_gerrit/tasks/main.yml @@ -0,0 +1,16 @@ +--- +- command: hiera -c /etc/puppet/hiera.yaml gerrit_mysql_password environment=production + delegate_to: "{{ groups['meta-infra_type_puppetmaster'][0] }}" + register: gerrit_mysql_password + no_log: True + +- apt: name=mysql-server state=present + +- apt: name=python-mysqldb state=present + +- mysql_db: name=reviewdb state=present + +- service: name=mysql state=running enabled=yes + +- mysql_user: user=gerrit2 password="{{ gerrit_mysql_password.stdout }}" priv=*.*:ALL,GRANT state=present + no_log: True