From cbbceb233063300eba2187acbc4c9df134f76c6b Mon Sep 17 00:00:00 2001 From: Jeremy Stanley Date: Mon, 19 Mar 2018 15:21:50 +0000 Subject: [PATCH] Update Gerrit project renaming for Zuul v3 With the switch to Zuul v3, we need to resolve some configuration catch-22s where project names and related in-repository job definitions can't happen without a complex multi-stage removal and reintroduction process to get it through speculative testing successfully. For now, just punt and use monolithic changes bypassing CI in code review. As an up side, the Ansible automation of this process coupled with Zuul v3's increased resilience to on-the-fly configuration changes means we can skip stopping/starting it now and significantly simplify the process. Since we're here, correct the section heading level for "Force-Merging a Change" in the sysadmin document. Change-Id: I335c23abd0b5706f43bbea2dd8cfffa4280dd5db --- doc/source/gerrit.rst | 24 ++++++------------------ doc/source/sysadmin.rst | 4 +++- 2 files changed, 9 insertions(+), 19 deletions(-) diff --git a/doc/source/gerrit.rst b/doc/source/gerrit.rst index b2816a4a5f..120507d477 100644 --- a/doc/source/gerrit.rst +++ b/doc/source/gerrit.rst @@ -424,10 +424,10 @@ in-progress changes do not need to be merged before the move. To rename a project: #. Prepare a change to the project-config repo to update things like - projects.yaml/ACLs, jenkins-job-builder and gerritbot for the new - name. Also add changes to update projects.txt in all branches of - the requirements repo, devstack-vm-gate-wrap.sh in the - devstack-gate repo, reference/projects.yaml in the + projects.yaml, Gerrit ACLs, zuul and gerritbot for the new name. + Also add changes to update projects.txt in all branches of the + requirements repo, project matrix in the devstack-gate repo and + all branches of devstack, reference/projects.yaml in the openstack/governance repo, and .gitmodules in the openstack/openstack repo if necessary. @@ -454,25 +454,13 @@ To rename a project: not currently in progress. When it finishes, make sure the entry has not been added back to the crontab. -#. Export and stop Zuul on zuul.openstack.org:: - - python /opt/zuul/tools/zuul-changes.py http://zuul.openstack.org gate >gate.sh - python /opt/zuul/tools/zuul-changes.py http://zuul.openstack.org check >check.sh - sudo invoke-rc.d zuul stop - sudo rm -f /var/run/zuul/zuul.pid /var/run/zuul/zuul.listedock - #. Run the ansible rename repos playbook, passing in the path to your yaml file:: sudo ansible-playbook -f 10 /opt/system-config/production/playbooks/rename_repos.yaml -e repolist=ABSOLUTE_PATH_TO_VARS_FILE -#. Start Zuul on zuul.openstack.org:: - - sudo invoke-rc.d zuul start - sudo bash gate.sh - sudo bash check.sh - -#. Merge the prepared Puppet configuration changes. +#. :ref:`Force-merge ` the prepared Puppet + configuration changes. #. Rename the project or transfer ownership in GitHub diff --git a/doc/source/sysadmin.rst b/doc/source/sysadmin.rst index 10ce5d6ada..97ee41c6a6 100644 --- a/doc/source/sysadmin.rst +++ b/doc/source/sysadmin.rst @@ -291,8 +291,10 @@ Note if you created your working directory in a path that is not excluded by bup you will want to remove that directory when your work is done. /root/backup-restore-* is excluded so the path above is safe. +.. _force-merging-a-change: + Force-Merging a Change ----------------------- +====================== Occasionally it is necessary to bypass the CI system and merge a change directly. Usually, this is only required if we have a hole in