ab32644b57
We need to tell mysql where the file with the credentials is. Change-Id: I185fd83f187c94074a163565f2328e754b785b50
93 lines
2.9 KiB
YAML
93 lines
2.9 KiB
YAML
- hosts: review
|
|
gather_facts: False
|
|
remote_user: root
|
|
tasks:
|
|
|
|
- include_vars: "{{ repolist }}"
|
|
|
|
- name: Stop Gerrit
|
|
shell: invoke-rc.d gerrit stop
|
|
|
|
- name: Update account_project_watches in gerrit database
|
|
shell: echo 'update account_project_watches set project_name = "{{ item.new }}" where project_name = "{{ item.old }}";' | mysql reviewdb --defaults-file=/root/.gerrit_db.cfg
|
|
with_items: "{{ repos }}"
|
|
|
|
- name: Update changes in gerrit database
|
|
shell: echo 'update changes set dest_project_name = "{{ item.new }}", created_on = created_on where dest_project_name = "{{ item.old }}";' | mysql reviewdb --defaults-file=/root/.gerrit_db.cfg
|
|
with_items: "{{ repos }}"
|
|
|
|
- name: Rename git repos on gerrit
|
|
shell: mv {{ item[0] }}{{ item[1].old }}.git {{ item[0] }}{{ item[1].new }}.git
|
|
with_nested:
|
|
- [ '~gerrit2/review_site/git/', '/opt/lib/git/' ]
|
|
- "{{ repos }}"
|
|
|
|
- hosts: 'git0*'
|
|
gather_facts: False
|
|
tasks:
|
|
|
|
- include_vars: "{{ repolist }}"
|
|
|
|
- name: Rename git repos on git farm
|
|
shell: mv {{ item[0] }}{{ item[1].old }}.git {{ item[0] }}{{ item[1].new }}.git
|
|
with_nested:
|
|
- [ '/var/lib/git/' ]
|
|
- "{{ repos }}"
|
|
|
|
- hosts: storyboard.openstack.org
|
|
gather_facts: False
|
|
remote_user: root
|
|
tasks:
|
|
|
|
- include_vars: "{{ repolist }}"
|
|
|
|
- name: Rename projects in storyboard
|
|
shell: echo 'update projects set name="{{ item.new }}" where name="{{ item.old }}";' | mysql --defaults-file=/root/.storyboard_db.cnf storyboard
|
|
with_items: "{{ repos }}"
|
|
|
|
- hosts: review
|
|
gather_facts: False
|
|
remote_user: root
|
|
become: yes
|
|
become_user: gerrit2
|
|
tasks:
|
|
|
|
- name: Make backup of gerrit index
|
|
shell: cp -ax /home/gerrit2/review_site/index /home/gerrit2/index.backup.$(date +%s)
|
|
|
|
- hosts: review
|
|
gather_facts: False
|
|
remote_user: root
|
|
tasks:
|
|
|
|
# TODO: gerrit startup exceeds the timeout, so this task fails
|
|
- name: Start gerrit
|
|
shell: invoke-rc.d gerrit start
|
|
|
|
- hosts: review
|
|
gather_facts: False
|
|
remote_user: root
|
|
become: yes
|
|
become_user: gerrit2
|
|
tasks:
|
|
|
|
- include_vars: "{{ repolist }}"
|
|
|
|
# TODO: Replace this with a wait_for?
|
|
- pause:
|
|
prompt: "Make sure that Gerrit ssh api is accepting requests. Use Enter or ^C c to continue. ^C a to abort."
|
|
|
|
- name: Set base ssh command fact
|
|
set_fact:
|
|
gerrit_ssh_command: ssh -p 29418 -i /home/gerrit2/review_site/etc/ssh_project_rsa_key openstack-project-creator@review.openstack.org gerrit
|
|
|
|
- name: Rename groups in gerrit
|
|
shell: "{{ gerrit_ssh_command }} rename-group {{ item.old }} {{ item.new }}"
|
|
with_items: "{{ gerrit_groups|default([]) }}"
|
|
|
|
- name: Start online reindex of accounts
|
|
shell: "{{ gerrit_ssh_command }} index start accounts --force"
|
|
|
|
- name: Start online reindex of changes
|
|
shell: "{{ gerrit_ssh_command }} index start changes --force"
|