Skip to content

Commit 5c49902

Browse files
Andersson007mariolenzoraNod
authored
Move community_topics_workflow to docs.ansible.com (ansible#1028)
* Move community_topics_workflow to docs.ansible.com * Simplify * Update docs/docsite/rst/community/steering/community_topics_workflow.rst Co-authored-by: Mario Lenz <[email protected]> * Update docs/docsite/rst/community/steering/community_topics_workflow.rst Co-authored-by: Mario Lenz <[email protected]> * Improve * Replacing Creating a topic section content * Update docs/docsite/rst/community/steering/community_topics_workflow.rst Co-authored-by: Don Naro <[email protected]> * Update docs/docsite/rst/community/steering/community_topics_workflow.rst Co-authored-by: Don Naro <[email protected]> * Update docs/docsite/rst/community/steering/community_topics_workflow.rst Co-authored-by: Don Naro <[email protected]> * Update docs/docsite/rst/community/steering/community_topics_workflow.rst Co-authored-by: Don Naro <[email protected]> * Update docs/docsite/rst/community/steering/community_topics_workflow.rst Co-authored-by: Don Naro <[email protected]> * Update docs/docsite/rst/community/steering/community_topics_workflow.rst Co-authored-by: Don Naro <[email protected]> * Update docs/docsite/rst/community/steering/community_topics_workflow.rst Co-authored-by: Don Naro <[email protected]> * Update docs/docsite/rst/community/steering/community_topics_workflow.rst Co-authored-by: Don Naro <[email protected]> * Update docs/docsite/rst/community/steering/community_topics_workflow.rst Co-authored-by: Don Naro <[email protected]> * Update docs/docsite/rst/community/steering/community_topics_workflow.rst Co-authored-by: Don Naro <[email protected]> * Update docs/docsite/rst/community/steering/community_topics_workflow.rst Co-authored-by: Don Naro <[email protected]> * Update docs/docsite/rst/community/steering/community_topics_workflow.rst Co-authored-by: Don Naro <[email protected]> * Update docs/docsite/rst/community/steering/community_topics_workflow.rst Co-authored-by: Don Naro <[email protected]> * Clarify * Update docs/docsite/rst/community/steering/community_topics_workflow.rst Co-authored-by: Don Naro <[email protected]> --------- Co-authored-by: Mario Lenz <[email protected]> Co-authored-by: Don Naro <[email protected]>
1 parent 780b4d9 commit 5c49902

File tree

2 files changed

+76
-70
lines changed

2 files changed

+76
-70
lines changed

docs/docsite/rst/community/communication.rst

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,8 @@ The `Ansible Forum <https://forum.ansible.com>`_ is a single starting point and
2222
Take a look at the `forum groups <https://forum.ansible.com/g>`_ and join ones that match your interests.
2323
In most cases, joining a forum group automatically subscribes you to related posts.
2424

25+
.. _bullhorn:
26+
2527
The Bullhorn
2628
------------
2729

docs/docsite/rst/community/steering/community_topics_workflow.rst

Lines changed: 74 additions & 70 deletions
Original file line numberDiff line numberDiff line change
@@ -4,121 +4,125 @@
44
For other changes, create a `community topic <https://forum.ansible.com/new-topic?category=project&tags=community-wg>`_ to discuss them.
55
(Creating a draft PR for this file and mentioning it in the community topic is also OK.)
66
7-
Ansible community topics workflow
8-
=================================
7+
.. _community_topics_workflow:
8+
9+
Community topics workflow
10+
=========================
911

1012
Overview
1113
--------
1214

13-
This document describes the Ansible community topics workflow (herein after ``Workflow``) to provide guidance on successful resolving topics in an asynchronous way.
15+
This document describes the Ansible community topics workflow to provide guidance on successful resolving topics in the asynchronous way.
1416

15-
The Workflow is a set of actions that need to be done successively within the corresponding time frames.
17+
The workflow is a set of actions that need to be completed in order within the corresponding time frames.
1618

1719
.. note::
1820

19-
If you have any ideas on how the Workflow can be improved, please create an issue in this repository or pull request against this document.
21+
The following section outlines a generic scenario for a workflow.
22+
Workflows can vary depending on a topic's complexity and other nuances; for example, when there is a mass agreement from the beginning.
2023

2124
Creating a topic
2225
----------------
2326

24-
Any person can `create a topic <https://forum.ansible.com/new-topic?title=topic%20title&body=topic%20body&category=project&tags=community-wg>`_ tagged with ``community-wg`` under the ``Project Discussions`` category in the `Ansible Forum <https://forum.ansible.com/>`_. A :ref:`Steering Committee member<steering_members>` can tag the forum post with `community-wg-nextmtg` to put it on the meeting agenda.
25-
26-
Workflow
27-
--------
28-
29-
.. note::
30-
31-
This is a rough scenario and it can vary depending on a topic's complexity and other nuances, for example, when there is a mass agreement upfront.
27+
Any person can :ref:`create a community topic<creating_community_topic>`.
3228

3329
Preparation stage
34-
^^^^^^^^^^^^^^^^^
30+
-----------------
3531

36-
A Committee person checks the topic content and asks the author, or other persons, to provide additional information if needed.
32+
* A Committee person checks the topic's content and asks the author/other persons to provide additional information as needed.
3733

3834
Discussion stage
39-
^^^^^^^^^^^^^^^^
40-
41-
* If the topic is ready to be discussed, the Committee person:
42-
43-
* Adds the ``community-wg-nextmtg`` tag if it needs to be discussed in the meeting.
35+
----------------
4436

45-
* Opens the discussion by adding a comment asking the Community and the Committee to take part in it.
37+
* By default, the discussion happens asynchronously in the topic.
4638

47-
* No synchronous discussion is needed (there are no blockers, complications, confusion, or impasses).
39+
* A :ref:`steering committee <steering_responsibilities>` member can tag the forum post with ``community-wg-nextmtg`` to put it on the synchronous meeting agenda.
4840

4941
Voting stage
50-
^^^^^^^^^^^^
51-
52-
* Depending on the topic complexity, 1-2 weeks after the discussion was opened, the Committee person formulates vote options based on the prior discussion and gives participants a reasonable amount of time to propose changes to the options (no longer than a week). The person summarizes the options in a comment and also establishes a date when the vote begins if there are no objections about the options or vote date.
53-
* In the vote date, the vote starts with a comment from a Committee person who opens the vote and establishes a date when the vote ends ($CURRENT_DATE + no longer than 21 days; Usually it should not exceed 14 days. 21 days should only be used if it is known that a lot of interested persons will likely not have time to vote in a 14 day period).
54-
* The Committee person labels the topic with the ``active-vote`` tag.
55-
* The Committee person adds ``[Vote ends on $YYYY-MM-DD]`` to the beginning of the topic description.
56-
* A vote is actually two polls, one for the Steering Committee, one for everyone else. To create a vote in a topic:
57-
58-
* Create a new post in the topic.
59-
60-
* Click the ``gear`` button in the composer and select ``Build Poll``.
42+
------------
6143

62-
* Click the ``gear`` in the Poll Builder for advanced mode.
44+
The Committee person:
6345

64-
* Set up the options (generally this will be Single Choice but other poll types can be used).
46+
* Formulates vote options based on the prior discussion and gives participants up to one week to propose changes to the options. This step takes place one to two weeks after the discussion was opened, depending on the complexity of the topic.
47+
* Summarizes the options in a comment and establishes a date for the vote to begin if there are no objections to the options.
48+
* Starts the vote on the beginning date and establishes an end date, which is $CURRENT_DATE plus:
6549

66-
* Title it "Steering Committee vote" and "Limit voting" to the ``Steering Committee``.
50+
* 7 days: simple cases
51+
* 14 days: maximum vote length
52+
* 21 days: only used in exceptional cases such as holiday seasons when the majority of the Committee are not able to participate in the vote
53+
* Labels the topic with the ``active-vote`` tag.
54+
* Adds ``[Vote ends on $YYYY-MM-DD]`` to the beginning of the topic's description.
6755

68-
* Do not set the close date because it cannot be changed later.
69-
70-
* Results should be "Always Visible" unless there is some good reason for the SC votes not to be public.
71-
72-
* Submit the poll (the BBcode will appear in the post) and then repeat the above for the second poll.
73-
74-
* The title should be "Community vote".
56+
The vote always consists of two polls: one for the Steering Committee, one for everyone else. To create a vote in a topic:
7557

58+
* Create a new post in the topic.
59+
* Click the ``gear`` button in the composer and select ``Build Poll``.
60+
* Click the ``gear`` in the ``Poll Builder`` for advanced mode.
61+
* Set up the options (generally this will be ``Single Choice`` but other poll types can be used).
62+
* Title it "Steering Committee vote" and ``Limit voting`` to the ``@SteeringCommittee``.
63+
* Do NOT set the close date because this cannot be changed later.
64+
* Results should be ``Always Visible`` unless there is a good reason for the SC votes not to be public.
65+
* Submit the poll (the BBcode will appear in the post):
66+
* Repeat the above steps for the second poll:
67+
68+
* Title should be "Community vote".
7669
* No group limitation.
7770

7871
Voting result stage
79-
^^^^^^^^^^^^^^^^^^^
80-
81-
* The day after the last day of the vote, the Committee person:
82-
83-
* Closes the polls.
72+
-------------------
8473

85-
* Removes the ``active-vote`` tag.
86-
87-
* Add a comment that the vote ended.
88-
89-
* Changes the beginning of the topic's description to ``[Vote ended]``.
90-
91-
* Creates a summary comment declaring the vote result.
92-
93-
* The vote result and final decision are announced via the `Bullhorn newsletter <https://forum.ansible.com/c/news/bullhorn/17>`_.
74+
On the vote end date, the Committee person:
9475

76+
* Closes the polls if the :ref:`quorum<community_topics_workflow>` is reached, otherwise prolongs the polls.
77+
* Removes the ``active-vote`` tag.
78+
* Adds a comment that the vote has ended.
79+
* Changes the beginning of the topic's description to ``[Vote ended]``.
80+
* Creates a summary comment declaring the vote result.
81+
* Announces the vote result and the final decision in the :ref:`Bullhorn <bullhorn>`.
9582

9683
Implementation stage
97-
^^^^^^^^^^^^^^^^^^^^
84+
--------------------
9885

99-
* If the topic implies some actions (if it does not, just mark this as complete), the Committee person:
86+
No further action required
87+
~~~~~~~~~~~~~~~~~~~~~~~~~~
10088

101-
* Assigns the topic to the person who is responsible for performing the actions.
89+
The Committee person:
10290

103-
* Add the ``being-implemented`` tag to the topic.
91+
* Merges an associated pull request if exists.
92+
* Adds the ``resolved`` tag.
10493

105-
* After the topic is implemented, the assignee:
94+
Further actions required
95+
~~~~~~~~~~~~~~~~~~~~~~~~
10696

107-
* Comments on the topic that the work is done.
97+
The Committee person:
10898

109-
* Removes the ``being-implemented`` tag.
99+
* Assigns a person responsible for performing the actions by mentioning them in a comment.
100+
* Adds the ``being-implemented`` tag to the topic.
110101

111-
* Add the ``implemented`` tag.
102+
After the actions are done, the assignee:
112103

113-
* If the topic implies actions related to the future Ansible Community package releases (for example, a collection exclusion), the Committee person:
104+
* Comments on the topic that the work is done.
105+
* Removes the ``being-implemented`` tag.
106+
* Adds the ``implemented`` and ``resolved`` tags.
114107

115-
* Adds the ``scheduled-for-future-release`` tag to the topic.
108+
Package-release related actions required
109+
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
116110

117-
* Checks if there is a corresponding milestone in the `ansible-build-data <https://github.com/ansible-community/ansible-build-data/milestones>`_ repository. If there is no milestone, the person creates it.
111+
If the topic implies actions related to the future Ansible community package releases (for example, a collection exclusion), the Committee person/assignee:
118112

119-
* Creates an issue in ansible-build-data that references the :ref:`community topic<creating_community_topic>`, and adds it to the milestone.
113+
* Adds the ``scheduled-for-future-release`` tag to the topic.
114+
* Checks if there is a corresponding milestone in the `ansible-build-data <https://github.com/ansible-community/ansible-build-data/milestones>`_ repository.
115+
116+
* If there is no milestone, the person creates it.
117+
* Creates an issue in ``ansible-build-data`` that references the topic and adds it to the milestone.
118+
* After it is implemented, adds the ``implemented`` and ``resolved`` tags.
120119

121120
Tools
122121
-----
123122

124-
We have some `scripts <https://github.com/ansible-community/community-topics/tree/main/scripts>`_ that can be used to create Ansible community announcements in the Bullhorn and similar places.
123+
There are a few `scripts <https://github.com/ansible-community/community-topics/tree/main/scripts>`_ that can be used to create Ansible community announcements on the Bullhorn and similar locations.
124+
125+
.. seealso::
126+
127+
:ref:`steering committee <steering_responsibilities>`
128+
Ansible Community Steering Committee

0 commit comments

Comments
 (0)