Update README for new tools and clean steps no longer needed

We now have tools to generate most of the emails we'll need to send.
Document how to use them.

While there update docs to remove references to adding {tc,ptl}.rst to
index.rst.  This is now done auto-magically ;P

Change-Id: I77b4f930231e6c8930a24e84b67a33490e578d5e
This commit is contained in:
Tony Breeds 2019-02-18 16:52:53 +11:00
parent bb25c953cc
commit 5c7ad3f4cd

View File

@ -23,21 +23,24 @@ Things to keep in mind when selecting election dates:
* Should start around R-4 for nominations period * Should start around R-4 for nominations period
* Allow at least a week for nomination period * Allow at least a week for nomination period
``setup-election-config`` can be used to pick some obvous dates that need to be
check by the election offiicals and TC
Preparation Preparation
----------- -----------
A month before election starts: As early as possible but at least a month before election starts:
* Edit elections details (timeline, cycle timeframe): * Edit elections details (timeline, cycle timeframe):
* edit configuration.yaml * edit configuration.yaml
* Prepare new election, e.g.: * Prepare new election, e.g.:
* tox -evenv -- create-directories * tox -evenv -- create-directories
* Update index.rst to include ptl.rst
* Commit to update website * Commit to update website
* Update Release Schedule * Update Release Schedule
A couple of weeks before election starts A couple of weeks before election starts
* Send 'PTL Election Season' email * Send 'PTL Election Season' email
* tox -e venv -- template-emails election_season
PTL Candidacy Round PTL Candidacy Round
@ -45,32 +48,38 @@ PTL Candidacy Round
When PTL Candidacy start When PTL Candidacy start
* Send 'PTL Nominations Kickoff' email * Send 'PTL Nominations Kickoff' email
* tox -e venv -- template-emails nominations_kickoff
During the PTL Candidacy round: During the PTL Candidacy round:
* Validate candidacy, e.g.: * Validate candidacy, e.g.:
* tox -evenv -- check-all-candidacies, or * tox -evenv -- check-all-candidacies, or
* tox -evenv -- ci-check-all-candidate-files candidates/release/project/candidates , or
* tox -evenv -- check-candidacy change_id * tox -evenv -- check-candidacy change_id
* To +2 a candidate: * To +2 a candidate:
* check commit link is indeed valid * check commit link is indeed valid
* check filename is email address * check filename is email address
* cursory check the candidacy statement * cursory check the candidacy statement
* To +Workflow, checks the previous +2 details, find another commits using --limit 5 (optionals) * To +Workflow, checks the previous +2 details, find another commits using --limit 5 (optional)
* Check candidate list and fix badly generated names through changes to the exception.txt file * Check candidate list and fix badly generated names through changes to the exception.txt file or
requesting the candidate to update thier OSF member profile.
Once the email deadline is reached: Once the email deadline is reached:
* Ask the TC chair to tag the governance repository * Ask the TC chair to tag the governance repository
* Generate the electorate rolls. This generates the rolls for all project
teams even if they aren't going to hold an election.
* tox -evenv -- generate-rolls
A couple of days before the candidacy submission ends: A couple of days before the candidacy submission ends:
* Render statistics and send 'Motivation call for PTL candidacy round', e.g.: * Render statistics and send 'Motivation call for PTL candidacy round', e.g.:
* tox -evenv -- render-statistics * tox -evenv -- render-statistics
* Send 'PTL Nominations Last Days' email * Send 'PTL Nominations Last Days' email
* tox -e venv -- template-emails nominations_last_days
When PTL Candidacy submission ends: When PTL Candidacy submission ends:
* Send 'PTL Nominations End' email * Send 'PTL Nominations End' email
* tox -e venv -- template-emails end_nominations
When PreferredEmailDeadLine is reached:
* Ask the TC chair to tag the governance repository with the tag defined in the configuration.yaml
* When the tag is available, generate ATC rolls, e.g.: * When the tag is available, generate ATC rolls, e.g.:
* tox -evenv -- generate-rolls * tox -evenv -- generate-rolls
* Compare ATC rolls with at least one other election official * Compare ATC rolls with at least one other election official
@ -84,17 +93,22 @@ When PTL Election begins:
* CIVS has a maximum number of electorate emails you can upload at a time without crashing, limit to 500 * CIVS has a maximum number of electorate emails you can upload at a time without crashing, limit to 500
at a time at a time
* Send 'PTL Voting Kickoff' email * Send 'PTL Voting Kickoff' email
* tox -e venv -- template-emails voting_kickoff
A couple of days before the PTL Election ends: A couple of days before the PTL Election ends:
* Send 'PTL Voting Last Days' email * Send 'PTL Voting Last Days' email
* tox -e venv -- template-emails voting_last_days
When PTL Election ends: When PTL Election ends:
* Close the election and udpate the results: * Close the election and udpate the results:
* tox -evenv -- close-election ptl * tox -evenv -- close-election ptl
* edit doc/sources/pike/ptl.yaml to set election winners to True * edit doc/sources/pike/ptl.yaml to set election winners to True
* Update index.rst to comment ptl.rst candidate list
* Commit the change and review the results * Commit the change and review the results
* Send 'PTL Results' email * Send 'PTL Results' email
* This is doc/source/results/release/announce_ptl.rst generated by
building the docs: toc -e docs
After doc/source/results/release/ptl.yaml has been created and updated
* Update governance repo: * Update governance repo:
* tox -e venv update-governance -- --governance-repo ../governance/ * tox -e venv update-governance -- --governance-repo ../governance/
@ -111,19 +125,22 @@ Things to keep in mind when selecting election dates:
* Allow for at least 48 hours between email deadline and polling begininning * Allow for at least 48 hours between email deadline and polling begininning
* Allow at least a week for nomination and campaign periods * Allow at least a week for nomination and campaign periods
``setup-election-config`` can be used to pick some obvous dates that need to be
check by the election offiicals and TC
Preparation Preparation
----------- -----------
A month before election starts: As early as possible but at least a month before election starts:
* Edit elections details (timeline, cycle timeframe): * Edit elections details (timeline, cycle timeframe):
* Edit configuration.yaml * Edit configuration.yaml
* Update index.rst to include tc.rst instead of ptl.rst
* Commit to update website * Commit to update website
* Update Release Schedule * Update Release Schedule
A couple of weeks before election starts A couple of weeks before election starts
* Send 'TC Election Season' email * Send 'TC Election Season' email
* tox -e venv -- template-emails election_season
TC Candidacy Round TC Candidacy Round
@ -131,6 +148,7 @@ TC Candidacy Round
When TC Candidacy starts: When TC Candidacy starts:
* Send 'TC Nominations Kickoff' email * Send 'TC Nominations Kickoff' email
* tox -e venv -- template-emails nominations_kickoff
During the TC Candidacy round: During the TC Candidacy round:
* To +2 a candidate: * To +2 a candidate:
@ -141,15 +159,27 @@ During the TC Candidacy round:
A couple of days before the candidacy submission ends: A couple of days before the candidacy submission ends:
* Send 'TC Nominations Last Days' email * Send 'TC Nominations Last Days' email
* tox -e venv -- template-emails nominations_last_days
When TC Candidacy submission ends: When TC Candidacy submission ends:
* Send 'TC End Nominations' email * Send 'TC End Nominations' email
* tox -e venv -- template-emails end_nominations
When PreferredEmailDeadLine is reached:
* Generate ATC rolls, e.g.: Once the email deadline is reached:
* Ask the TC chair to tag the governance repository
* Generate the electorate rolls.
* tox -evenv -- generate-rolls * tox -evenv -- generate-rolls
TC Campaigning
--------------
The TC election includes a perido after the candidates are defined befoer the
election for candidates to answer question from the community. Open this with
* tox -e venv -- template-emails campaigning_kickoff
TC Election Round TC Election Round
----------------- -----------------
@ -158,9 +188,11 @@ When PTL Election begins:
* Enable detailed ballot reporting * Enable detailed ballot reporting
* Upload rolls * Upload rolls
* Send 'TC Voting Kickoff' Email * Send 'TC Voting Kickoff' Email
* tox -e venv -- template-emails voting_kickoff
A couple of days before the TC Election ends: A couple of days before the TC Election ends:
* Send 'TC Voting Last Days' email * Send 'TC Voting Last Days' email
* tox -e venv -- template-emails voting_last_days
When TC Election ends: When TC Election ends:
* Close the election * Close the election
@ -168,9 +200,12 @@ When TC Election ends:
* edit doc/source/pike/tc.yaml setting the winners to 'True' * edit doc/source/pike/tc.yaml setting the winners to 'True'
* Commit change & push review * Commit change & push review
* Send 'TC Results' email * Send 'TC Results' email
* This is doc/source/results/release/announce_tc.rst generated by
building the docs: toc -e docs
After doc/source/results/release/tc.yaml has been created and updated
* Update reference/members in governance repository * Update reference/members in governance repository
* Add new members * Add new members
* Remove 'chair' & 'vice-chair' from file * Remove 'chair' & 'vice-chair' from file
* Commit change & push review * Commit change & push review
* Update tc-election-summary.py with election statistics * Update tc-election-summary.py with election statistics
* Send 'TC Election Statistics' * [Optional]Send 'TC Election Statistics'