Skip to content

Commit 7e39b18

Browse files
authored
Merge pull request #5986 from jberkus/election2021
Update community repo for the 2021 elections.
2 parents 8aef169 + 62719bb commit 7e39b18

File tree

7 files changed

+133
-83
lines changed

7 files changed

+133
-83
lines changed

events/elections/2021/OWNERS

+4
Original file line numberDiff line numberDiff line change
@@ -3,5 +3,9 @@
33
# replace with election officers once election starts
44
approvers:
55
- committee-steering
6+
- alisondy
7+
- ameukam
8+
- jberkus
9+
- coderanger
610
labels:
711
- committee/steering

events/elections/2021/README.md

+63-56
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,17 @@ The role of this election is to fill out the four (4) seats due for
66
reelection this year on the [Kubernetes Steering Committee]. Each elected
77
member will serve a two (2) year term.
88

9+
## Changes
10+
11+
This year is the first year we will be using [Elekto] to conduct the election.
12+
Elekto is a new application, commissioned as an internship by the CNCF. As
13+
well as having a new, shiny web UI, it relies entirely on GitHub Oauth for
14+
voting, and as such does not use email at all. Elekto also handles exceptions,
15+
eligibility checks, and other aspects of the election.
16+
17+
This does mean some changes to the nomination, running, and voter exception
18+
process, so please read below.
19+
920
## Background
1021

1122
This election will shape the future of Kubernetes as a community and project.
@@ -37,7 +48,7 @@ Please refer to the [Steering Committee Election Charter] for [Eligibility for c
3748
Eligibility for voting in 2021 is defined as:
3849

3950
* People who had at least 50 contributions to the Kubernetes project over
40-
the past year, according to a snapshot taken 2021-MM-DD of the data driving
51+
the past year, according to a snapshot taken 2021-09-15 of the data driving
4152
the [devstats developer activity counts dashboard][devstats-dashboard],
4253
who are also [Org Members].
4354
Contributions include GitHub events like creating issues, creating PRs,
@@ -90,18 +101,17 @@ Examples of contributions that would NOT be considered:
90101

91102
| Date | Event |
92103
| ------------ | ------------------------ |
93-
| July 1 | Steering Committee selects Election Committee |
94-
| August XX | Announcement of Election and publication of voters.md |
95-
| August XX | Steering Committee Meeting with Q+A with the candidates and community |
96-
| September XX | All candidate bios due by 0000 UTC (5pm PST) |
97-
| ~1 week | Election prep week (voters.md validation and CIVS setup and testing)
98-
| September XX | Election Begins via email ballots |
99-
| October XX | Deadline to submit voter exception forms and request a replacement ballot |
100-
| October XX | Election Closes by 0000 UTC (5pm PST) |
101-
| October XX | Private announcement of Results to SC members not up for election |
102-
| October XX | Private announcement of Results to all candidates |
103-
| October XX | Public announcement of Results at Public Steering Committee Meeting |
104-
| October XX | Election Retro |
104+
| August 19 | Steering Committee selects Election Committee |
105+
| September 21 | Announcement of Election and publication of voters.md |
106+
| September XX | Steering Committee Meeting with Q+A with the candidates and community |
107+
| October 6 | All candidate bios due by 0000 UTC (5pm PST) |
108+
| October 8 | Election Begins via email ballots |
109+
| October 24 | Deadline to submit voter exception forms and request a replacement ballot |
110+
| October 27 | Election Closes by 0000 UTC (5pm PST) |
111+
| October 28 | Private announcement of Results to SC members not up for election |
112+
| October 30 | Private announcement of Results to all candidates |
113+
| November 1 | Public announcement of Results at Public Steering Committee Meeting |
114+
| November 4? | Election Retro |
105115

106116
## Candidacy Process
107117

@@ -127,8 +137,12 @@ nomination on GitHub, as +1s via email will not count. Here's an example email:
127137
**issue** saying something like "I accept the nomination".
128138

129139
4. Finally, the candidate closes the **issue** (`#NNN`) by opening a Pull Request
130-
to add their bio. The PR body must contain the text `Fixes #NNN` to automatically
131-
close the issue once the PR is merged.
140+
to add their bio (see below). The PR body must contain the text `Fixes #NNN` to
141+
automatically close the issue once the PR is merged.
142+
143+
5. Create the PR for your bio by copying the `nomination-template.md` file in
144+
this directory, and creating a new file titled `candidate-YourName.md`. Fill
145+
out all the fields in the template, but avoid making and format changes.
132146

133147
**Endorsement**
134148

@@ -152,14 +166,19 @@ Election Officers will announce that on the GitHub issue.
152166
**Running**
153167

154168
Eligible candidates can submit a pull request with a biography in this
155-
directory with their platform and intent to run. This statement is
156-
**limited to 300 words** and must follow the format of `firstnamelastname.md`.
157-
The word limit applies to the source markdown file and the [`hack/verify-steering-election.sh`]
158-
script can be used to check the word count.
169+
directory with their platform and intent to run. This PR will copy `nomination-template.md`
170+
to a file named `candidate-YourName.md`. It will fill out the fields in
171+
that template.
172+
173+
All biographical statements should be brief and to the point, with a guideline of around
174+
**300 words** total for all text. If your statement is excessively long, you
175+
will be asked to abbreviate it before it is merged.
159176

160-
Please refer to the [2020 candidate bios] for examples. Biography statements are optional.
177+
Please refer to the [2020 candidate bios] for examples of content, although
178+
the formatting should support the new templates. Biography statements are optional.
161179

162-
Missed deadlines by the candidates will be addressed by steering on a per case basis to determine eligibility.
180+
Missed deadlines by the candidates will be addressed by the election committee
181+
on a per case basis to determine eligibility.
163182

164183
**Campaigning**
165184

@@ -174,36 +193,36 @@ roles you may hold.
174193

175194
## Voting Process
176195

177-
Eligible voters will receive a ballot via email. If you are
178-
not on that list and feel you have worked on Kubernetes in a way that is NOT
179-
reflected in GitHub contributions, you can use the [voter exception form] to ask
180-
to participate in the election.
196+
Contributors may check their voter eligibility at any time once the election
197+
process starts, by going to the [election app], logging in, navigating to
198+
the 2021 election, and seeing if the screen there says that they are eligible.
199+
200+
If the app does not say that you are eligible, because you have worked on
201+
Kubernetes in a way that is NOT reflected in GitHub contributions, you can use
202+
the exception form built into the same app to ask to participate in the election.
181203

182-
Elections will be held using time-limited [Condorcet] ranking on [CIVS]
183-
using the [IRV method]. The top vote getters will be elected to the open
184-
seats.
204+
Elections will be held using time-limited [Condorcet] ranking on [Elekto].
205+
The most preferred candidates will be elected to the open seats.
185206

186207
Employer diversity is encouraged, and thus maximal representation will be
187208
enforced as spelled out in the [Steering Committee Election Charter].
188209

189210
You will be ranking your choices of the candidates with an option for
190211
"no opinion". In the event of a tie, a coin will be flipped.
191212

192-
The election will open for voting starting September XX via email and
193-
end three weeks after on October XX, 2021 at 00:00am UTC. You will receive
194-
an email to the address on file at the start of the election from "Kubernetes
195-
(CIVS Poll Supervisor) `<[email protected]>`, please add to the list of addresses
196-
you don't spam filter. Detailed voting instructions will be addressed in email
197-
and the CIVS polling page. Please note that email ballots might be unreliable,
198-
so you are encouraged to contact the election officials if you do not receive a
199-
ballot by September XX.
200-
201-
If you do not receive your ballot, request a new one via the [Ballot Replacement Form].
213+
The election will open for voting starting on the dates specified on the calendar
214+
at the top of this document. You will be reminded that voting has opened by an
215+
email to kubernetes-dev, but no email is required for you to vote.
202216

203217
### Officers
204218

205219
The Steering Committee has selected the following people as [election officers]:
206-
- Name, GitHub handle, Affiliation
220+
221+
- Alison Dowdney, @alisondy
222+
- Josh Berkus, @jberkus
223+
- Noah Kantrowitz, @coderanger
224+
225+
In addition, Arnaud M is serving as our Infra Team liaison for this election.
207226

208227
Please direct any questions via email to <[email protected]>.
209228

@@ -212,8 +231,8 @@ Please direct any questions via email to <[email protected]>.
212231
- First, the results are privately announced to the incumbent Steering Committee
213232
members (who are not up for election) and all the candidates.
214233

215-
- The newly elected body will be publicly announced in the monthly
216-
[public Steering Committee Meeting] on October XX, 2021.
234+
- The newly elected body will be publicly announced in the scheduled monthly
235+
[public Steering Committee Meeting].
217236

218237
- Following the meeting, the raw voting results and winners will be published on the
219238
[Kubernetes Blog].
@@ -223,13 +242,7 @@ the [Steering Committee Election Charter]
223242

224243
## Nominees
225244

226-
The nominee list is filled in by the Election Officers after all bios have been
227-
submitted. Please do not edit the following table.
228-
229-
230-
| Name | Organization/Company | GitHub |
231-
|:------------------------------------------:|:--------------------:|:----------------------------------------------------:|
232-
| [Jane Containerface](./biotemplate.md) | ExampleCo | [@github](https://github.com) |
245+
Nominees may be found in the [election app].
233246

234247
[Kubernetes Steering Committee]: https://github.com/kubernetes/steering
235248
[Steering Committee Charter]: https://github.com/kubernetes/steering/blob/master/charter.md
@@ -243,19 +256,13 @@ submitted. Please do not edit the following table.
243256
[pledge to recuse]: https://github.com/kubernetes/steering/blob/master/elections.md#steering-committee-and-election-officer-recusal
244257

245258
[Condorcet]: https://en.wikipedia.org/wiki/Condorcet_method
246-
[CIVS]: http://civs.cs.cornell.edu/
247-
[IRV method]: https://www.daneckam.com/?p=374
248-
249-
[`hack/verify-steering-election.sh`]: https://git.k8s.io/community/hack/verify-steering-election.sh
250259
[2020 candidate bios]: https://github.com/kubernetes/community/tree/master/events/elections/2020
251260
[election officers]: https://github.com/kubernetes/community/tree/master/events/elections#election-officers
252261
[Kubernetes Community Meeting]: https://github.com/kubernetes/community/blob/master/events/community-meeting.md
253262
[Kubernetes Blog]: https://kubernetes.io/blog/
254-
[eligible voters]: ./voters.md
255-
[voter exception form]: https://www.surveymonkey.com/r/k8s-sc-election-2021
256-
[voters.md]: ./voters.md
257263

258264
[devstats-sql]: https://github.com/cncf/devstats/blob/master/metrics/shared/project_developer_stats.sql
259265
[devstats-dashboard]: https://k8s.devstats.cncf.io/d/13/developer-activity-counts-by-repository-group?orgId=1&var-period_name=Last%20year&var-metric=contributions&var-repogroup_name=All
260266
[Org Members]: https://github.com/kubernetes/community/blob/master/community-membership.md
261-
[Ballot Replacement Form]: https://www.surveymonkey.com/r/kubernetes-sc-2021-ballot
267+
[Elekto]: https://elekto.dev
268+
[election app]: https://election.k8s.io

events/elections/2021/biotemplate.md

-18
This file was deleted.

events/elections/2021/election.yaml

+17
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
name: 2021 Steering Committee Election
2+
organization: Kubernetes
3+
start_datetime: 2021-10-07 00:00:01
4+
end_datetime: 2021-10-28 23:59:00
5+
no_winners: 4
6+
allow_no_opinion: True
7+
delete_after: True
8+
show_candidate_fields:
9+
- employer
10+
- slack
11+
election_officers:
12+
- jberkus
13+
- alisondy
14+
- coderanger
15+
eligibility: Kubernetes Org members with 50 or more contributions in the last year can vote. See [the election guide](https://github.com/kubernetes/community/tree/master/events/elections/2021)
16+
exception_description: Not all contributions are measured by DevStats. If you have contributions that are not so measured, then please request an exception to allow you to vote via the Elekto application.
17+
exception_due: 2021-10-24 10:00:00
+13
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
# Vote for the 2021-2022 Steering Committee
2+
3+
As is now customary, this fall is [Steering Committee](https://github.com/kubernetes/steering) election season for Kubernetes. Three(3) elected members (bobkillen, dims, liggitt) will stay on for the remaining year of their terms, and there will be four(4) positions open for election. Every election term will be 2 years. More complete information on the election may be found [in the voter's guide](https://github.com/kubernetes/community/tree/master/events/elections/2021).
4+
5+
If you’d like to vote or run for a seat, all details and next steps are outlined in the [election process doc](https://git.k8s.io/steering/elections.md) and this application. The application will be the single source of truth of information for this cycle. It will be updated live as new bios of candidates get committed. Please pay attention to the scheduled dates:
6+
7+
| Start Date | End Date | Activity |
8+
| ---------- | -------- | -----------------|
9+
| 2021-09-21 | 2021-10-07 | Nominate Candidates |
10+
| 2021-09-21 | 2021-10-24 | Request voter exceptions |
11+
| 2021-10-09 | 2021-10-27 | Vote |
12+
13+
As mentioned in the process doc, eligibility for voting will be determined by 50 contributions to a Kubernetes project over the past year and [Kubernetes Org membership](https://github.com/kubernetes/community/blob/master/community-membership.md). Eligible voters will be shown as such by this site when logged in. If you should be eligible, but are not, you may also file for an exception on this site.
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
-------------------------------------------------------------
2+
name:
3+
ID: @GitHubID
4+
info:
5+
- employer: Your Employer or "Independent"
6+
- slack: slack handle
7+
-------------------------------------------------------------
8+
9+
<!-- Please make a copy of this template as "candidate-yourname.md" and save it to
10+
the election directory -->
11+
12+
## SIGS
13+
14+
- SIGS/WG/UGs you're a member of
15+
16+
## What I have done
17+
18+
## What I'll do
19+
20+
## Resources About Me
21+
22+
- Links to KubeCon or other conference talks or other related material
23+
- Links to social media

events/elections/2021/templates/election-templates.md

+13-9
Original file line numberDiff line numberDiff line change
@@ -4,31 +4,35 @@ Adjust this template as necessary:
44

55
It’s that time of year again!
66

7-
As is now customary, this fall is election season for Kubernetes. Three(3) elected members (bobkillen, dims, liggitt) will stay on for the remaining year of their terms, and there will be four(4) positions open for election. Every election term will be 2 years. We will be posting regular updates to kubernetes-dev with deadlines and instructions as well as providing quick updates during the regular Thursday community meetings until completion of the election.
7+
It's also new! This is the first year we will be using Elekto[0] for the Kubernetes Steering elections. Elekto was commissioned as an internship project for us by the CNCF. You'll find it has a much more modern UI, and does not rely on email at all to enable voting.
88

9-
If you’d like to vote or run for a seat, all details and next steps are outlined in the election process doc[3] and voters guide.[4] The voters guide will be the single source of truth of information for this cycle. It will be updated live as new bios of candidates flow through over the next four weeks. Please pay attention to the scheduled dates:
9+
As is now customary, this fall is election season for Kubernetes. Three(3) elected members (bobkillen, dims, liggitt) will stay on for the remaining year of their terms, and there will be four(4) positions open for election. Every election term will be 2 years. We will be posting regular updates to kubernetes-dev with deadlines and instructions as well as providing quick updates during the regular Thursday community meetings until completion of the election.
1010

11-
| schedule here |
11+
If you’d like to vote or run for a seat, all details and next steps are outlined in the election process doc[3] and the Elekto application[7]. The application will be the single source of truth of information for this cycle. It will be updated live as new bios of candidates flow through. Please pay attention to the scheduled dates:
1212

13-
As mentioned in the process doc, eligibility for voting will be determined by 50 contributions to a Kubernetes project over the past year and Kubernetes Org membership[5], which will result in you getting a ballot emailed to you when the election starts. All contributors who will receive a ballot are listed in voters.md[6]; if your name is not there, you will need an exception to vote.
13+
| Start Date | End Date | Activity |
14+
| ---------- | -------- | -----------------|
15+
| 2021-09-21 | 2021-10-07 | Nominate Candidates |
16+
| 2021-09-21 | 2021-10-24 | Request voter exceptions |
17+
| 2021-10-09 | 2021-10-28 | Vote |
1418

15-
For those of you doing work within the Kubernetes project/community that is NOT measured in GitHub, or if you have 50 contributions but not Org Membership, you can apply for participation via the voter exception form[7]. This is to ensure that non-code contributors can participate, so please don’t hesitate to use the form.
19+
As mentioned in the process doc, eligibility for voting will be determined by 50 contributions to a Kubernetes project over the past year and Kubernetes Org membership[5]. Eligible voters will be shown as such when by the Elekto application[7]. If you should be eligible, but are not, you may also file for an exception through the same application. For those of you doing work within the Kubernetes project/community that is NOT measured in GitHub, or if you have 50 contributions but not Org Membership, you can apply for participation via the voter exception form[7] in the Elekto app. This is to ensure that non-code contributors can participate, so please don’t hesitate to use the form.
1620

1721
Resources:
1822

1923

24+
[0] Elekto: https://elekto.dev
2025
[1] Steering Committee: https://github.com/kubernetes/steering - who sits on the committee and terms, their projects and meeting info
2126
[2] Steering Committee Charter: https://github.com/kubernetes/steering/blob/master/charter.md - this is a great read if you’re interested in running (or assessing for the best candidates!)
2227
[3] Election Process: https://git.k8s.io/steering/elections.md
23-
[4] Voters Guide: https://github.com/kubernetes/community/tree/master/events/elections/2021 - Updated on a rolling basis. This guide will always have the latest information throughout the election cycle. The complete schedule of events and candidate bios will be housed here.
28+
[4] Voters Guide: https://elections.k8s.io - Updated on a rolling basis. This guide will always have the latest information throughout the election cycle. The complete schedule of events and candidate bios will be housed here.
2429
[5] Contributor Ladder: https://github.com/kubernetes/community/blob/master/community-membership.md - explains Org Membership as well as all of the higher levels
25-
[6] Voters.md: https://github.com/kubernetes/community/blob/master/events/elections/2021/voters.md - list of contributors who will automatically receive a ballot
26-
[7] exception Form: https://www.surveymonkey.com/r/k8s-sc-election-2021
30+
[7] Elekto Application: https://elections.k8s.io
2731

2832

2933
On behalf of the election officers,
3034

31-
Name (github), Name (github), etc
35+
Alison Dowdney (@alisondy), Josh Berkus (@jberkus), Noah Kantrowitz (@coderanger)
3236

3337
If you have questions, please feel free to ask on the list; otherwise, you can reach the Election Officials at [email protected].
3438

0 commit comments

Comments
 (0)