Clarify project deprecation guide

Some steps are not clear enough and requires to do extra research or
educated guesses on what is exactly meant in a specific step. This patch
aims to clerify required steps - what repository and what files should be
changed to get project deprecated. Also some generic cleanup made.

Change-Id: I8a749acbd2b26327114ef76d4e79c06c3ed5b8c6
This commit is contained in:
Dmitriy Rabotyagov 2022-10-31 16:50:06 +01:00
parent 1246dcbb32
commit 824304d561
1 changed files with 12 additions and 21 deletions

View File

@ -185,17 +185,15 @@ stable branches, you need to do a slightly different approach.
Deprecating the project or repository is different than removal. Deprecating the project or repository is different than removal.
If the project want to stop the development on master branch but If the project want to stop the development on master branch but
support the stable branches with bug fixes, then project with support the stable branches with bug fixes, then project must be marked as
the `stable policy tag <https://governance.openstack.org/tc/reference/tags/stable_follows-policy.html>` deprecated. If project has no stable branch then you have option to go with
must be marked as deprecated. If project has no stable branch or does not removal process directly.
follow the stable policy tag then you have option to go with removal process
directly.
Step 1: Mark the Repository as Deprecated in the Governance Repository Step 1: Mark the Repository as Deprecated in the Governance Repository
----------------------------------------------------------------------- -----------------------------------------------------------------------
Mark the repository in the ``reference/projects.yaml`` file as Mark the repository in the ``reference/projects.yaml`` file of
deprecated with adding a line:: the ``openstack/governance`` repository as deprecated with adding a line::
deprecated: <deprecated-cycle-name> deprecated: <deprecated-cycle-name>
release-management: deprecated release-management: deprecated
@ -214,10 +212,10 @@ Step 3: Retire master branch
Step 3a: Use only noop jobs Step 3a: Use only noop jobs
~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~
Add ``noop`` jobs for master only in ``project-config`` repository and Add ``noop-jobs`` template to ``zuul.d/projects.yaml`` for master only
remove all templates temporarily with exception of in ``project-config`` repository and remove all other templates temporarily
``official-openstack-repo-jobs`` and pypi release template if any. with exception of ``official-openstack-repo-jobs`` and pypi release template
If your project has ``publish-to-pypi`` template present, then change if any. If your project has ``publish-to-pypi`` template present, then change
it to ``publish-to-pypi-stable-only``. It should look something like it to ``publish-to-pypi-stable-only``. It should look something like
this:: this::
@ -226,14 +224,7 @@ this::
templates: templates:
- official-openstack-repo-jobs - official-openstack-repo-jobs
- publish-to-pypi-stable-only - publish-to-pypi-stable-only
check: - noop-jobs
jobs:
- noop:
branches: master
gate:
jobs:
- noop:
branches: master
Adjust the project description. Find the entry for your project in Adjust the project description. Find the entry for your project in
``gerrit/projects.yaml`` and look for the line which defines the description, ``gerrit/projects.yaml`` and look for the line which defines the description,
@ -252,10 +243,10 @@ Step 3c: Remove noop jobs
~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~
Once the project content is retired, partially revert the change you merged Once the project content is retired, partially revert the change you merged
earlier for ``project-config`` in step 2a and re-add templates and jobs you earlier for ``project-config`` in step 3a and re-add templates and jobs you
need so that you can merge content on stable branches. need so that you can merge content on stable branches.
Please ensure you keep the ``DEPRECATED,`` prefix you added to project Please ensure you keep the ``DEPRECATED,`` prefix you added to project
description in step 2a. description in step 3a.
NOTE: In all the patches, use Depends-On on ``governance`` patch submitted in NOTE: In all the patches, use Depends-On on ``governance`` patch submitted in
Step 1. Step 1.