public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
From: "Robin H. Johnson" <robbat2@gentoo.org>
To: gentoo-commits@lists.gentoo.org
Subject: [gentoo-commits] proj/elections:master commit in: /
Date: Fri, 18 Jun 2021 06:57:42 +0000 (UTC)	[thread overview]
Message-ID: <1623999319.247f865bf13016731beed5e2254c2528f971c763.robbat2@gentoo> (raw)

commit:     247f865bf13016731beed5e2254c2528f971c763
Author:     Robin H. Johnson <robbat2 <AT> gentoo <DOT> org>
AuthorDate: Fri Jun 18 06:55:14 2021 +0000
Commit:     Robin H. Johnson <robbat2 <AT> gentoo <DOT> org>
CommitDate: Fri Jun 18 06:55:19 2021 +0000
URL:        https://gitweb.gentoo.org/proj/elections.git/commit/?id=247f865b

README.md: refresh docs

Signed-off-by: Robin H. Johnson <robbat2 <AT> gentoo.org>

 README => README.md | 61 ++++++++++++++++++++++++++++++++++-------------------
 1 file changed, 39 insertions(+), 22 deletions(-)

diff --git a/README b/README.md
similarity index 64%
rename from README
rename to README.md
index 0d3c8e6..a59ed18 100644
--- a/README
+++ b/README.md
@@ -2,23 +2,24 @@ Gentoo Elections
 ----------------
 
 Welcome to the Gentoo Elections codebase.
-This handles all elections in Gentoo per the Elections project [1].
+
+This handles all elections per the [Gentoo Elections](https://wiki.gentoo.org/wiki/Project:Elections) project.
 
 The Condercet system is used, and most of this repository exists just to house
 the actual data needed to run each election, such as the start/stop time,
 eligable voters, blank ballot etc.
 
-Completed elections are available in the completed/ directory.
+Completed elections are available in the `completed/` directory.
 
 The codebase is meant to be checked out somewhere read-only (Gentoo
-Infrastructure uses /etc/elections/), with the votify & countify scripts
-symlinked into somewhere used by $PATH for normal users (eg /usr/local/bin).
+Infrastructure uses `/etc/elections/`), with the `votify` & `countify` scripts
+symlinked into somewhere used by $PATH for normal users (eg `/usr/local/bin`).
 
-Listify & election-stats-count are other helpful tools.
+`listify` & `election-stats-count` are other helpful tools.
 
-listify: generate text to include in MOTD 
+- `listify`: generate text to include in MOTD
 
-election-stats-count: generate turnout stats for ongoing elections, for
+- `election-stats-count`: generate turnout stats for ongoing elections, for
   election officials to review an election in progress (put it in a cronjob,
   needs root).
 
@@ -28,14 +29,15 @@ Instructions
 ---------------------
 To create a new election, make a top-level directory with the exact name of
 the election. Usually in the format of `{council,trustees}-YYYYMM`.
-Let ${election_name} be the name of the election. Any member of the elections
+
+Let `${election_name}` be the name of the election. Any member of the elections
 project or infra may set this up.
 
-- `Votify.pm`: symlink to ../Votify.pm for tooling
+- `Votify.pm`: symlink to `../Votify.pm` for tooling
 - `ballot-${election_name}`
   One entry per line, in alphabetical order.
   The special candidate `_reopen_nominations` is valid in some elections.
-  The ballot order will be randomized per candidate, at voting time. 
+  The ballot order will be randomized per candidate, at voting time.
 - `election-details`:
   key-value file with details about the election.
   `name`: exact election name
@@ -52,6 +54,12 @@ Populate the files, commit & push to Git. At the start time, an official
 should verify that the ballot works. Ideally a non-infra official, who then
 confirms to the infra election handler it worked.
 
+The URLs may link to either of two repos for the data:
+- `sites/projects/elections.git`, which populates:
+  `https://projects.gentoo.org/elections/TYPE/YYYY/...`
+- `projects/elections.git` (this repo), which is only visible on Gitweb:
+  https://gitweb.gentoo.org/proj/elections.git/
+
 2.1. Let people vote:
 -------------------
 The regular way is to login to `dev.gentoo.org` and run `votify`.
@@ -79,9 +87,9 @@ status files into the home directories of election officials: `voter-turnout-${e
 
 4. Close of election:
 ---------------------
-This is where the infra contact is absolutely required.
-The infra contact must run `countify --collect ${election_name}` as root, which will write
-the master ballot & confirmation stub file to all officials:
+This is the only step where the infra contact is absolutely required.
+The infra contact must run `countify --collect ${election_name}` as root,
+which will write the master ballot & confirmation stub file to all officials:
 ```
 $ sudo su
 # cd /etc/elections
@@ -98,7 +106,7 @@ results. This requires `countify --rank` to transform the master ballot into
 results.
 ```
 $ cd /home/${official}/results-${election_name}
-$ countify --rank
+$ countify --rank | tee ranked-${election_name}
 (election output)
 ```
 
@@ -116,12 +124,21 @@ independent verification.
 
 8. Cleanup:
 -----------
-- The master ballot must be committed to git. This file is named
-  `master-${election_name}`
-- This list of voters who cast a ballot should be recorded & committed.
-  This is required to purge rolls of inactive voters in some cases (Foundation
-  members are required to vote at least every 2nd election if they are not an
-  active developer). This file must be named `casting-voters-${election_name}`
-- The confirmation stub file should be destroyed after the election results
-  have been formally accepted, to make de-anonymizing the ballots harder.
+- The following files must be commited to `proj/elections.git` repo.
+  - `master-${election_name}`
+  - `casting-voters-${election_name}`
+  - `ranked-${election_name}`
+- The some files should also be copied with renames into the
+  `sites/projects/elections.git` repo as follows:
+  - `ballot-${election_name}` -> `ballot-${election_name}.txt`
+  - `master-${election_name}` -> `master-${election_name}.txt`
+  - `ranked-${election_name}` -> `${election_name}-results.txt`
+  - `voters-${election_name}.txt` -> `voters-${election_name}.txt`
+- `casting-voters-${election_name}` is a list of voters who cast a ballot, and
+  needs to be recorded. This is required to purge rolls of inactive voters in
+  some cases (Foundation members are required to vote at least every 2nd
+  election if they are not an active developer).
+- The confirmation stub file `confs-${election_name}` MUST be destroyed after
+  the election results have been formally accepted, to make de-anonymizing the
+  ballots harder.
 - Lastly, `git mv` the election directory into the `completed/` directory.


             reply	other threads:[~2021-06-18  6:57 UTC|newest]

Thread overview: 44+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-06-18  6:57 Robin H. Johnson [this message]
  -- strict thread matches above, loose matches on Subject: below --
2024-06-02  0:13 [gentoo-commits] proj/elections:master commit in: / Robin H. Johnson
2024-05-25 17:14 Robin H. Johnson
2023-04-19 22:28 Robin H. Johnson
2022-07-01 19:12 Robin H. Johnson
2022-07-01 15:50 Robin H. Johnson
2022-06-30 22:36 Robin H. Johnson
2022-06-25 16:31 Robin H. Johnson
2022-06-25 13:58 Jorge Manuel B. S. Vicetto
2021-06-18  6:57 Robin H. Johnson
2020-07-06  5:10 Robin H. Johnson
2020-06-20  5:17 Robin H. Johnson
2020-06-20  5:17 Robin H. Johnson
2017-06-25  0:04 Robin H. Johnson
2017-06-24 23:54 Robin H. Johnson
2016-07-21 18:07 Robin H. Johnson
2016-07-21 18:07 Robin H. Johnson
2016-07-03 15:01 Robin H. Johnson
2016-07-03 11:04 Jorge Manuel B. S. Vicetto
2016-06-19 12:13 Jorge Manuel B. S. Vicetto
2016-06-19 12:13 Jorge Manuel B. S. Vicetto
2016-06-18 17:28 Robin H. Johnson
2016-06-18 17:28 Robin H. Johnson
2016-06-18 17:28 Robin H. Johnson
2016-06-18 17:28 Robin H. Johnson
2015-06-28  0:12 Jorge Manuel B. S. Vicetto
2015-06-27 16:18 Robin H. Johnson
2013-06-30  6:32 Jorge Manuel B. S. Vicetto
2013-02-06  0:09 Jorge Manuel B. S. Vicetto
2012-07-16 19:01 Christian Ruppert
2012-06-18 21:08 Christian Ruppert
2012-02-15  2:07 Robin H. Johnson
2011-06-20  6:14 Robin H. Johnson
2011-06-20  6:13 Robin H. Johnson
2011-06-20  6:13 Robin H. Johnson
2011-06-20  6:13 Robin H. Johnson
2011-06-20  6:13 Robin H. Johnson
2011-06-20  6:08 Robin H. Johnson
2011-06-09  7:46 Robin H. Johnson
2011-04-09  0:09 Robin H. Johnson
2011-03-12 18:41 Robin H. Johnson
2011-03-12 10:57 Robin H. Johnson
2011-03-12 10:56 Robin H. Johnson
2011-02-13  2:21 Robin H. Johnson

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1623999319.247f865bf13016731beed5e2254c2528f971c763.robbat2@gentoo \
    --to=robbat2@gentoo.org \
    --cc=gentoo-commits@lists.gentoo.org \
    --cc=gentoo-dev@lists.gentoo.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox