Skip to content

Commit d8254e1

Browse files
patchback[bot]Andersson007samccannoraNod
authored
community/maintainers_workflow.rst: improve wording and formatting (#2799) (#2932)
* community/maintainers_workflow.rst: improve wording and formatting * Changed the page title to appropriate * Remove irrelevant parts, change the wording * Change the wording * Update docs/docsite/rst/community/maintainers_workflow.rst * Update docs/docsite/rst/community/maintainers_workflow.rst --------- (cherry picked from commit 578a812) Co-authored-by: Andrew Klychkov <[email protected]> Co-authored-by: Sandra McCann <[email protected]> Co-authored-by: Don Naro <[email protected]>
1 parent dd5aebc commit d8254e1

File tree

1 file changed

+28
-60
lines changed

1 file changed

+28
-60
lines changed
Lines changed: 28 additions & 60 deletions
Original file line numberDiff line numberDiff line change
@@ -1,95 +1,63 @@
11
.. _maintainers_workflow:
22

3+
Ansible Collection Maintenance and Workflow
4+
===========================================
5+
6+
Each collection community can set its own rules and workflows for managing pull requests (PRs), bug reports, documentation issues, feature requests, as well as for adding and replacing maintainers.
37

4-
Backporting and Ansible inclusion
5-
==================================
8+
Collection maintainers have ``write`` or higher access to a collection, allowing them to merge pull requests and perform other administrative tasks.
69

7-
Each collection community can set its own rules and workflow for managing pull requests, bug reports, documentation issues, and feature requests, as well as adding and replacing maintainers. Maintainers review and merge pull requests following the:
10+
Managing pull requests
11+
----------------------
12+
13+
Maintainers review and merge PRs according to the following guidelines:
814

915
* :ref:`code_of_conduct`
1016
* :ref:`maintainer_requirements`
1117
* :ref:`Committer guidelines <committer_general_rules>`
1218
* :ref:`PR review checklist<review_checklist>`
1319

14-
There can be two kinds of maintainers: :ref:`collection_maintainers` and :ref:`module_maintainers`.
15-
16-
.. _collection_maintainers:
17-
18-
Collection maintainers
19-
----------------------
20-
21-
Collection-scope maintainers are contributors who have the ``write`` or higher access level in a collection. They have commit rights and can merge pull requests, among other permissions.
22-
23-
When a collection maintainer considers a contribution to a file significant enough
24-
(for example, fixing a complex bug, adding a feature, providing regular reviews, and so on),
25-
they can invite the author to become a module maintainer.
26-
27-
28-
.. _module_maintainers:
29-
30-
Module maintainers
31-
------------------
32-
33-
Module-scope maintainers exist in collections that have the `collection bot <https://github.com/ansible-community/collection_bot>`_,
34-
for example, `community.general <https://github.com/ansible-collections/community.general>`_
35-
and `community.network <https://github.com/ansible-collections/community.network>`_.
36-
37-
Being a module maintainer is the stage prior to becoming a collection maintainer. Module maintainers are contributors who are listed in ``.github/BOTMETA.yml``. The scope can be any file (for example, a module or plugin), directory, or repository. Because in most cases the scope is a module or group of modules, we call these contributors module maintainers. The collection bot notifies module maintainers when issues/pull requests related to files they maintain are created.
38-
39-
Module maintainers have indirect commit rights implemented through the `collection bot <https://github.com/ansible-community/collection_bot>`_.
40-
When two module maintainers comment with the keywords ``shipit``, ``LGTM``, or ``+1`` on a pull request
41-
which changes a module they maintain, the collection bot merges the pull request automatically.
42-
43-
For more information about the collection bot and its interface,
44-
see to the `Collection bot overview <https://github.com/ansible-community/collection_bot/blob/main/ISSUE_HELP.md>`_.
45-
46-
4720
Releasing a collection
4821
----------------------
4922

50-
Collection maintainers are responsible for releasing new versions of a collection. Generally, releasing a collection consists of:
23+
Collection maintainers are responsible for releasing new collection versions. The general release process includes:
5124

52-
#. Planning and announcement.
53-
#. Generating a changelog.
54-
#. Creating a release Git tag and pushing it.
55-
#. Automatically publishing the release tarball on `Ansible Galaxy <https://galaxy.ansible.com/>`_ through the `Zuul dashboard <https://dashboard.zuul.ansible.com/t/ansible/builds?pipeline=release>`_.
56-
#. Final announcement.
57-
#. Optionally, `file a request to include a new collection into the Ansible package <https://github.com/ansible-collections/ansible-inclusion>`_.
25+
#. **Planning and announcement**: Define the release scope and communicate it.
26+
#. **Changelog generation**: Create a comprehensive list of changes.
27+
#. **Git tagging**: Create and push a release Git tag.
28+
#. **Automated publication**: The release tarball is automatically published on `Ansible Galaxy <https://galaxy.ansible.com/>`_ via the `Zuul dashboard <https://dashboard.zuul.ansible.com/t/ansible/builds?pipeline=release>`_ or a custom GitHub Actions workflow.
29+
#. **Final announcement**: Communicate the successful release.
5830

59-
See :ref:`releasing_collections` for details.
31+
See :ref:`releasing_collections` for more information.
6032

6133
.. _Backporting:
6234

6335
Backporting
6436
------------
6537

66-
Collection maintainers backport merged pull requests to stable branches
67-
following the `semantic versioning <https://semver.org/>`_ and release policies of the collections.
38+
Collection maintainers backport merged pull requests to stable branches if they exist. This process adheres to the collection's `semantic versioning <https://semver.org/>`_ and release policies.
6839

69-
The manual backport process is similar to the :ref:`ansible-core backporting guidelines <backport_process>`.
70-
71-
For convenience, backporting can be implemented automatically using GitHub bots (for example, with the `Patchback app <https://github.com/apps/patchback>`_) and labeling as it is done in `community.general <https://github.com/ansible-collections/community.general>`_ and `community.network <https://github.com/ansible-collections/community.network>`_.
40+
The manual backporting process mirrors the :ref:`ansible-core backporting guidelines <backport_process>`.
7241

42+
For streamlined backporting, GitHub bots like the `Patchback app <https://github.com/apps/patchback>`_ can automate the process through labeling, as implemented in the `community.general <https://github.com/ansible-collections/community.general>`_ collection.
7343

7444
.. _including_collection_ansible:
7545

7646
Including a collection in Ansible
7747
-----------------------------------
7848

79-
If a collection is not included in Ansible (not shipped with Ansible package), maintainers can submit the collection for inclusion by creating a discussion under the `ansible-collections/ansible-inclusion repository <https://github.com/ansible-collections/ansible-inclusion>`_. For more information, see the `repository's README <https://github.com/ansible-collections/ansible-inclusion/blob/main/README.md>`_, and the :ref:`Ansible community package collections requirements <collections_requirements>`.
49+
To include a collection in the Ansible community package, maintainers create a discussion in the `ansible-collections/ansible-inclusion repository <https://github.com/ansible-collections/ansible-inclusion>`_. See the `submission process <https://github.com/ansible-collections/ansible-inclusion/blob/main/README.md>`_ and the :ref:`Ansible community package collections requirements <collections_requirements>` for details.
8050

8151
Stepping down as a collection maintainer
8252
===========================================
8353

84-
Times change, and so may your ability to continue as a collection maintainer. We ask that you do not step down silently.
85-
86-
If you feel you don't have time to maintain your collection anymore, you should:
54+
If you can no longer continue as a collection maintainer, follow these steps:
8755

88-
- Inform other maintainers about it.
89-
- If the collection is under the ``ansible-collections`` organization, also inform relevant :ref:`communication_irc`, the ``community`` chat channels on IRC or matrix, or by email ``[email protected]``.
90-
- Look at active contributors in the collection to find new maintainers among them. Discuss the potential candidates with other maintainers or with the community team.
91-
- If you failed to find a replacement, create a pinned issue in the collection, announcing that the collection needs new maintainers.
92-
- Make the same announcement through the `Bullhorn newsletter <https://forum.ansible.com/t/about-the-newsletter-category/166>`_.
93-
- Please be around to discuss potential candidates found by other maintainers or by the community team.
56+
* **Inform other maintainers**: Notify your co-maintainers.
57+
* **Notify the community**: For collections under the ``ansible-collections`` GitHub organization, inform the relevant :ref:`communication_irc` channels, or email ``[email protected]``.
58+
* **Identify potential replacements**: Look for active contributors within the collection who could become new maintainers. Discuss these candidates with other maintainers or the `Ansible community team <https://forum.ansible.com/g/CommunityEngTeam>`_.
59+
* **Announce the need for maintainers (if no replacement is found)**: If you cannot find a replacement, create a pinned issue in the collection repository announcing the need for new maintainers.
60+
* **Post in the Bullhorn newsletter**: Make the same announcement through the `Bullhorn newsletter <https://forum.ansible.com/t/about-the-newsletter-category/166>`_.
61+
* **Engage in candidate discussions**: Be available to discuss potential candidates identified by other maintainers or the community team.
9462

95-
Remember, this is a community, so you can come back at any time in the future.
63+
Remember, this is a community and you are welcome to rejoin at any time.

0 commit comments

Comments
 (0)