diff --git a/doc/source/gerrit.rst b/doc/source/gerrit.rst index 545c3a008c..3bca57ec71 100644 --- a/doc/source/gerrit.rst +++ b/doc/source/gerrit.rst @@ -381,15 +381,11 @@ To rename a project: #. Prepare a change to the project-config repo to update things like 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. #. Prepare a yaml file called repos.yaml that has a single dictionary called `repos` with a list of dictionaries each having an old and new entry. - Optionally also add a `gerrit_groups` dict of the same form:: + Optionally also add a `gerrit_groups` dict of the same form if groups + are being renamed:: repos: - old: stackforge/awesome-repo @@ -404,27 +400,33 @@ To rename a project: ``opendev/project-config`` repository. #. An hour in advance of the maintenance (if possible), put - ``review02.opendev.org`` into the emergency file on bridge. + ``review02.opendev.org``, ``gitea01-8.opendev.org``, and + ``storyboard01.opendev.org`` into the emergency file on bridge. + +#. Check that all servers involved in the rename playbook + (review, zuul-scheduler, storyboard, storyboard-dev, and the giteas) are + responding to ssh to ensure the next step can run successfully. #. Run the ansible rename repos playbook, passing in the path to your yaml file:: - sudo ansible-playbook -f 10 /opt/system-config/playbooks/rename_repos.yaml -e repolist=ABSOLUTE_PATH_TO_VARS_FILE + sudo ansible-playbook -f 10 /home/zuul/srv/opendev.org/opendev/system-config/playbooks/rename_repos.yaml -e repolist=ABSOLUTE_PATH_TO_VARS_FILE -#. :ref:`Force-merge ` the prepared Puppet - configuration changes. +#. :ref:`Force-merge ` the prepared configuration + changes. -#. Rename the project or transfer ownership in GitHub - -#. Remove ``review02.opendev.org`` from the emergency file. +#. Wait for the changes merged above to replicate to the giteas. .. warning:: - Wait for the ``project-config`` changes to merge before - re-enabling cron, else duplicate projects can appear that have - to be manually removed. + Not waiting at this step can cause manage-projects to run with + our old pre rename state causing the project to be created under + its old name. -#. Submit a change that updates .gitreview with the new location of the - project. +#. Remove ``review02.opendev.org``, ``gitea01-8.opendev.org``, and + ``storyboard01.opendev.org`` from the emergency file. + +#. Ensure that the next manage-projects run does not update the giteas + or review servers. It should be a noop. Developers will either need to re-clone a new copy of the repository, or manually update their remotes with something like::