diff --git a/.github/ISSUE_TEMPLATE/election-request.yml b/.github/ISSUE_TEMPLATE/election-request.yml new file mode 100644 index 00000000000..752c2f12b0d --- /dev/null +++ b/.github/ISSUE_TEMPLATE/election-request.yml @@ -0,0 +1,68 @@ +name: Team Election Request +description : Create an election for your SIG/WG/Subproject/Team +title: 'ELECTION REQUEST: ' +labels: area/elections, sig/contributor-experience +body: +- type: input + attributes: + label: Group Requesting + description: The SIG, WG, team, subproject, or other Kubernetes community group wanting the election. + validations: + required: true +- type: input + attributes: + label: Title of Election + description: The name of what's being decided. If this is a recurring election, include the year/period. + validations: + required: true +- type: textarea + attributes: + label: Election Description + description: Please write a full description of the election, suitable for those voting in it. Include dates and contact info. + validations: + required: true +- type: input + attributes: + label: Administrators + description: Supply a list of GitHub IDs of the members of your team who will be administering this election. Min 1, Max 5 + validations: + required: true +- type: input + attributes: + label: Voters + description: Describe who the eligible voters in this election are. If you have the voters as a list, please paste a list of GitHub IDs here or attach a file listing the IDs (1 per line). + validations: + required: true +- type: input + attributes: + label: Date/Time Candidates may file + description: Date and UTC time that candidates may start submitting profiles for the election. If you already have all of the profiles, that date is now. + validations: + required: true +- type: input + attributes: + label: Date/Time Candidates Due + description: Date and UTC time that candidates must have completed their profiles. If you already have all of the profiles, that date is now. + validations: + required: true +- type: input + attributes: + label: Date/Time Voting Begins + description: Date and UTC time that voting should begin. + validations: + required: true +- type: input + attributes: + label: Date/Time Voting Ends + description: Date and UTC time that voting closes. + validations: + required: true +- type: dropdown + attributes: + label: Publicity Help Wanted? + description: Is this an election that goes beyond your team, such that you want help from Contributor Comms in advertising it? + options: + - "Yes" + - "No" + validations: + required: true diff --git a/elections/README.md b/elections/README.md new file mode 100644 index 00000000000..d0cca27ffea --- /dev/null +++ b/elections/README.md @@ -0,0 +1,116 @@ +# Kubernetes Elections + +Welcome to the Kubernetes Elections area. This directory defines the Elections +Subproject, including its products of the annual [Steering Committee election] +and elections-as-a-service for our community. Elections is a subproject of +[Contributor Experience] SIG. + +## Steering Elections + +The Elections subproject is responsible for the annual [Steerting Committee election], +which is directly administered by the Election Officers. + +* If you are looking to vote in the steering election, go to the [elections app]. +* If you are looking for detailed information on the steering elections, + visit [Steering Committee election] page. + +## How to Request an Election for your SIG/WG + +All teams in Kubernetes may use our [elections app] to run preference elections +for their team. See the instructions on [requesting an election]. + +## The Elections Subproject + +The Elections Subproject is a team within Kubernetes [SIG Contributor Experience] +with the following responsibilities: + +* Maintain and update the elections documentation and messaging templates +* Assist K8s-Infra team in maintaining the elections sofware and service +* Assisting and approving SIGs/WGs in running minor elections +* Recommending a slate of Election Officers for each Steering Election + +### Members + +Anyone can contribute to the elections subproject. In our [OWNERS file] you +can find the list of our current approvers and reviewers. + +Approvers and reviewers are also responsible for the Elections roadmap, +maintenance, and security. As such, new approvers must be approved by +the [Contributor Experience] chairs or by the Steering Committee. + +### Communications + +The elections subproject can be reached by the following mechanisms: + +* tagging area/elections in issues or PRs in the Kubernetes/Community repo +* #sig-contribex channel in Kubernetes slack +* The weekly [Contributor Experience] meeting + +### Documentation + +The subproject is responsible for making sure that all elections documentation +is completed and kept up-to-date. This includes: + +* Community documentation on the SC election +* Election Officer documentation on how to run an SC election +* Election messaging templates +* Elekto documentation + +This documentation may include setting policy for some aspects of the Steering +election. In those cases, the subproject is responsible for getting the SC's +approval on such items. + +### Software + +Elections in Kubernetes run on [Elekto]. The subproject is responsible for +maintaining these by working together with [K8s-Infra] team. This includes +upgrades, migrations, assisting community members using the software, and handling +security reports. Should there be a reason to change software, the subproject +will prepare recommendations for the Steering Committee to approve. It is also +responsible for any necessary scripts, such as how to pull a voter list. + +### Recommending Election Officers + +The Elections Subproject will be responsible for finding and recommending +Election Officers to run the next Steering Committee election. The schedule +for that should be: + +* Early June: contact last year's EOs and determine who will be returning. +* Mid-June: put out a call within SIG-Contribex to find out who is interested + in being an EO. Contact likely individuals 1-on-1 +* Early July: submit a recommended slate of EOs to the Steering Committee, + including alternates if possible. +* Mid-July: SC approves the EOs. +* Late July: EOs set the schedule for the election. + +Election Officers should be chosen from among regular, trusted contributors to the +Kubernetes project, with an eye towards employer, demographic, and geographic +diversity. + +Election Officers are considered part of the Elections Subproject. + +### Minor Elections + +The subproject will assist Kubernetes teams/SIGs/WGs in preparing any internal +elections they want to run. This includes watching for election issues and PRs +and either helping create the appropriate files or auditing them for the teams. +The subproject will work with the Contributor Comms team to promote the elections +as appropriate. + +Any named Kubernetes team (see [requesting an election]) may run an election +in elections.k8s.io. As they cost nothing to run, and multiple elections can +run concurrently, the only limitation is the time of Contribex volunteers to +help. + +### Other Responsibilities + +The subproject team will make a biweekly report to SIG-Contribex's regular +meeting. + +[Contributor Experience]: /sig-contributor-experience/README.md +[Elekto]: https://elekto.dev +[OWNERS file]: OWNERS +[Steering Committee election]: https://git.k8s.io/steering/elections.md +[elections app]: https://elections.k8s.io +[requesting an election]: teams/README.md +[K8s-Infra]: /sig-k8s-infra/README.md diff --git a/events/elections/2017/BALLOTS.csv b/elections/steering/2017/BALLOTS.csv similarity index 100% rename from events/elections/2017/BALLOTS.csv rename to elections/steering/2017/BALLOTS.csv diff --git a/events/elections/2017/README.md b/elections/steering/2017/README.md similarity index 100% rename from events/elections/2017/README.md rename to elections/steering/2017/README.md diff --git a/events/elections/2017/RESULTS.md b/elections/steering/2017/RESULTS.md similarity index 100% rename from events/elections/2017/RESULTS.md rename to elections/steering/2017/RESULTS.md diff --git a/events/elections/2017/aaroncrickenberger_bio.md b/elections/steering/2017/aaroncrickenberger_bio.md similarity index 100% rename from events/elections/2017/aaroncrickenberger_bio.md rename to elections/steering/2017/aaroncrickenberger_bio.md diff --git a/events/elections/2017/aaronschlesinger_bio.md b/elections/steering/2017/aaronschlesinger_bio.md similarity index 100% rename from events/elections/2017/aaronschlesinger_bio.md rename to elections/steering/2017/aaronschlesinger_bio.md diff --git a/events/elections/2017/adnanabdulhussein_bio.md b/elections/steering/2017/adnanabdulhussein_bio.md similarity index 100% rename from events/elections/2017/adnanabdulhussein_bio.md rename to elections/steering/2017/adnanabdulhussein_bio.md diff --git a/events/elections/2017/alexpollitt_bio.md b/elections/steering/2017/alexpollitt_bio.md similarity index 100% rename from events/elections/2017/alexpollitt_bio.md rename to elections/steering/2017/alexpollitt_bio.md diff --git a/events/elections/2017/calebamiles_bio.md b/elections/steering/2017/calebamiles_bio.md similarity index 100% rename from events/elections/2017/calebamiles_bio.md rename to elections/steering/2017/calebamiles_bio.md diff --git a/events/elections/2017/derekcarr_bio.md b/elections/steering/2017/derekcarr_bio.md similarity index 100% rename from events/elections/2017/derekcarr_bio.md rename to elections/steering/2017/derekcarr_bio.md diff --git a/events/elections/2017/dougdavis_bio.md b/elections/steering/2017/dougdavis_bio.md similarity index 100% rename from events/elections/2017/dougdavis_bio.md rename to elections/steering/2017/dougdavis_bio.md diff --git a/events/elections/2017/errordeveloper_bio.md b/elections/steering/2017/errordeveloper_bio.md similarity index 100% rename from events/elections/2017/errordeveloper_bio.md rename to elections/steering/2017/errordeveloper_bio.md diff --git a/events/elections/2017/idvoretskyi_bio.md b/elections/steering/2017/idvoretskyi_bio.md similarity index 100% rename from events/elections/2017/idvoretskyi_bio.md rename to elections/steering/2017/idvoretskyi_bio.md diff --git a/events/elections/2017/jaicesingerdumars_bio.md b/elections/steering/2017/jaicesingerdumars_bio.md similarity index 100% rename from events/elections/2017/jaicesingerdumars_bio.md rename to elections/steering/2017/jaicesingerdumars_bio.md diff --git a/events/elections/2017/kris-nova_bio.md b/elections/steering/2017/kris-nova_bio.md similarity index 100% rename from events/elections/2017/kris-nova_bio.md rename to elections/steering/2017/kris-nova_bio.md diff --git a/events/elections/2017/mattfarina_bio.md b/elections/steering/2017/mattfarina_bio.md similarity index 100% rename from events/elections/2017/mattfarina_bio.md rename to elections/steering/2017/mattfarina_bio.md diff --git a/events/elections/2017/michaelrubin_bio.md b/elections/steering/2017/michaelrubin_bio.md similarity index 100% rename from events/elections/2017/michaelrubin_bio.md rename to elections/steering/2017/michaelrubin_bio.md diff --git a/events/elections/2017/michellenoorali_bio.md b/elections/steering/2017/michellenoorali_bio.md similarity index 100% rename from events/elections/2017/michellenoorali_bio.md rename to elections/steering/2017/michellenoorali_bio.md diff --git a/events/elections/2017/pwittrock_bio.md b/elections/steering/2017/pwittrock_bio.md similarity index 100% rename from events/elections/2017/pwittrock_bio.md rename to elections/steering/2017/pwittrock_bio.md diff --git a/events/elections/2017/quintonhoole_bio.md b/elections/steering/2017/quintonhoole_bio.md similarity index 100% rename from events/elections/2017/quintonhoole_bio.md rename to elections/steering/2017/quintonhoole_bio.md diff --git a/events/elections/2017/rhirschfeld_bio.md b/elections/steering/2017/rhirschfeld_bio.md similarity index 100% rename from events/elections/2017/rhirschfeld_bio.md rename to elections/steering/2017/rhirschfeld_bio.md diff --git a/events/elections/2017/sebastiengoasguen_bio.md b/elections/steering/2017/sebastiengoasguen_bio.md similarity index 100% rename from events/elections/2017/sebastiengoasguen_bio.md rename to elections/steering/2017/sebastiengoasguen_bio.md diff --git a/events/elections/2017/timothysc_bio.md b/elections/steering/2017/timothysc_bio.md similarity index 100% rename from events/elections/2017/timothysc_bio.md rename to elections/steering/2017/timothysc_bio.md diff --git a/events/elections/2017/vote_for_justinsb.md b/elections/steering/2017/vote_for_justinsb.md similarity index 100% rename from events/elections/2017/vote_for_justinsb.md rename to elections/steering/2017/vote_for_justinsb.md diff --git a/events/elections/2018/BALLOTS.csv b/elections/steering/2018/BALLOTS.csv similarity index 100% rename from events/elections/2018/BALLOTS.csv rename to elections/steering/2018/BALLOTS.csv diff --git a/events/elections/2018/OWNERS b/elections/steering/2018/OWNERS similarity index 100% rename from events/elections/2018/OWNERS rename to elections/steering/2018/OWNERS diff --git a/events/elections/2018/README.md b/elections/steering/2018/README.md similarity index 100% rename from events/elections/2018/README.md rename to elections/steering/2018/README.md diff --git a/events/elections/2018/RESULTS.md b/elections/steering/2018/RESULTS.md similarity index 100% rename from events/elections/2018/RESULTS.md rename to elections/steering/2018/RESULTS.md diff --git a/events/elections/2018/aaroncrickenberger.md b/elections/steering/2018/aaroncrickenberger.md similarity index 100% rename from events/elections/2018/aaroncrickenberger.md rename to elections/steering/2018/aaroncrickenberger.md diff --git a/events/elections/2018/davanumsrinivas.md b/elections/steering/2018/davanumsrinivas.md similarity index 100% rename from events/elections/2018/davanumsrinivas.md rename to elections/steering/2018/davanumsrinivas.md diff --git a/events/elections/2018/krisnova.md b/elections/steering/2018/krisnova.md similarity index 100% rename from events/elections/2018/krisnova.md rename to elections/steering/2018/krisnova.md diff --git a/events/elections/2018/nikhitaraghunath.md b/elections/steering/2018/nikhitaraghunath.md similarity index 100% rename from events/elections/2018/nikhitaraghunath.md rename to elections/steering/2018/nikhitaraghunath.md diff --git a/events/elections/2018/quintonhoole.md b/elections/steering/2018/quintonhoole.md similarity index 100% rename from events/elections/2018/quintonhoole.md rename to elections/steering/2018/quintonhoole.md diff --git a/events/elections/2018/stephenaugustus.md b/elections/steering/2018/stephenaugustus.md similarity index 100% rename from events/elections/2018/stephenaugustus.md rename to elections/steering/2018/stephenaugustus.md diff --git a/events/elections/2018/timothysc.md b/elections/steering/2018/timothysc.md similarity index 100% rename from events/elections/2018/timothysc.md rename to elections/steering/2018/timothysc.md diff --git a/events/elections/2018/timpepper.md b/elections/steering/2018/timpepper.md similarity index 100% rename from events/elections/2018/timpepper.md rename to elections/steering/2018/timpepper.md diff --git a/events/elections/2018/voters.md b/elections/steering/2018/voters.md similarity index 100% rename from events/elections/2018/voters.md rename to elections/steering/2018/voters.md diff --git a/events/elections/2019/BALLOTS.csv b/elections/steering/2019/BALLOTS.csv similarity index 100% rename from events/elections/2019/BALLOTS.csv rename to elections/steering/2019/BALLOTS.csv diff --git a/events/elections/2019/OWNERS b/elections/steering/2019/OWNERS similarity index 100% rename from events/elections/2019/OWNERS rename to elections/steering/2019/OWNERS diff --git a/events/elections/2019/README.md b/elections/steering/2019/README.md similarity index 100% rename from events/elections/2019/README.md rename to elections/steering/2019/README.md diff --git a/events/elections/2019/RESULTS.md b/elections/steering/2019/RESULTS.md similarity index 100% rename from events/elections/2019/RESULTS.md rename to elections/steering/2019/RESULTS.md diff --git a/events/elections/2019/brendanburns.md b/elections/steering/2019/brendanburns.md similarity index 100% rename from events/elections/2019/brendanburns.md rename to elections/steering/2019/brendanburns.md diff --git a/events/elections/2019/christophblecker.md b/elections/steering/2019/christophblecker.md similarity index 100% rename from events/elections/2019/christophblecker.md rename to elections/steering/2019/christophblecker.md diff --git a/events/elections/2019/derekcarr.md b/elections/steering/2019/derekcarr.md similarity index 100% rename from events/elections/2019/derekcarr.md rename to elections/steering/2019/derekcarr.md diff --git a/events/elections/2019/klausma.md b/elections/steering/2019/klausma.md similarity index 100% rename from events/elections/2019/klausma.md rename to elections/steering/2019/klausma.md diff --git a/events/elections/2019/krisnova.md b/elections/steering/2019/krisnova.md similarity index 100% rename from events/elections/2019/krisnova.md rename to elections/steering/2019/krisnova.md diff --git a/events/elections/2019/lachlanevenson.md b/elections/steering/2019/lachlanevenson.md similarity index 100% rename from events/elections/2019/lachlanevenson.md rename to elections/steering/2019/lachlanevenson.md diff --git a/events/elections/2019/nikhitaraghunath.md b/elections/steering/2019/nikhitaraghunath.md similarity index 100% rename from events/elections/2019/nikhitaraghunath.md rename to elections/steering/2019/nikhitaraghunath.md diff --git a/events/elections/2019/parispittman.md b/elections/steering/2019/parispittman.md similarity index 100% rename from events/elections/2019/parispittman.md rename to elections/steering/2019/parispittman.md diff --git a/events/elections/2019/pengfeini.md b/elections/steering/2019/pengfeini.md similarity index 100% rename from events/elections/2019/pengfeini.md rename to elections/steering/2019/pengfeini.md diff --git a/events/elections/2019/stephenaugustus.md b/elections/steering/2019/stephenaugustus.md similarity index 100% rename from events/elections/2019/stephenaugustus.md rename to elections/steering/2019/stephenaugustus.md diff --git a/events/elections/2019/vallerylancey.md b/elections/steering/2019/vallerylancey.md similarity index 100% rename from events/elections/2019/vallerylancey.md rename to elections/steering/2019/vallerylancey.md diff --git a/events/elections/2019/voters.md b/elections/steering/2019/voters.md similarity index 100% rename from events/elections/2019/voters.md rename to elections/steering/2019/voters.md diff --git a/events/elections/2020/BALLOTS.csv b/elections/steering/2020/BALLOTS.csv similarity index 100% rename from events/elections/2020/BALLOTS.csv rename to elections/steering/2020/BALLOTS.csv diff --git a/events/elections/2020/OWNERS b/elections/steering/2020/OWNERS similarity index 100% rename from events/elections/2020/OWNERS rename to elections/steering/2020/OWNERS diff --git a/events/elections/2020/README.md b/elections/steering/2020/README.md similarity index 100% rename from events/elections/2020/README.md rename to elections/steering/2020/README.md diff --git a/events/elections/2020/RESULTS.md b/elections/steering/2020/RESULTS.md similarity index 100% rename from events/elections/2020/RESULTS.md rename to elections/steering/2020/RESULTS.md diff --git a/events/elections/2020/biotemplate.md b/elections/steering/2020/biotemplate.md similarity index 100% rename from events/elections/2020/biotemplate.md rename to elections/steering/2020/biotemplate.md diff --git a/events/elections/2020/bobkillen.md b/elections/steering/2020/bobkillen.md similarity index 100% rename from events/elections/2020/bobkillen.md rename to elections/steering/2020/bobkillen.md diff --git a/events/elections/2020/carlos-panato.md b/elections/steering/2020/carlos-panato.md similarity index 100% rename from events/elections/2020/carlos-panato.md rename to elections/steering/2020/carlos-panato.md diff --git a/events/elections/2020/davanumsrinivas.md b/elections/steering/2020/davanumsrinivas.md similarity index 100% rename from events/elections/2020/davanumsrinivas.md rename to elections/steering/2020/davanumsrinivas.md diff --git a/events/elections/2020/divya-mohan.md b/elections/steering/2020/divya-mohan.md similarity index 100% rename from events/elections/2020/divya-mohan.md rename to elections/steering/2020/divya-mohan.md diff --git a/events/elections/2020/fedebongio.md b/elections/steering/2020/fedebongio.md similarity index 100% rename from events/elections/2020/fedebongio.md rename to elections/steering/2020/fedebongio.md diff --git a/events/elections/2020/iancoldwater.md b/elections/steering/2020/iancoldwater.md similarity index 100% rename from events/elections/2020/iancoldwater.md rename to elections/steering/2020/iancoldwater.md diff --git a/events/elections/2020/jordanliggitt.md b/elections/steering/2020/jordanliggitt.md similarity index 100% rename from events/elections/2020/jordanliggitt.md rename to elections/steering/2020/jordanliggitt.md diff --git a/events/elections/2020/lachlanevenson.md b/elections/steering/2020/lachlanevenson.md similarity index 100% rename from events/elections/2020/lachlanevenson.md rename to elections/steering/2020/lachlanevenson.md diff --git a/events/elections/2020/mayankkumar.md b/elections/steering/2020/mayankkumar.md similarity index 100% rename from events/elections/2020/mayankkumar.md rename to elections/steering/2020/mayankkumar.md diff --git a/events/elections/2020/stephenaugustus.md b/elections/steering/2020/stephenaugustus.md similarity index 100% rename from events/elections/2020/stephenaugustus.md rename to elections/steering/2020/stephenaugustus.md diff --git a/events/elections/2020/templates/election-templates.md b/elections/steering/2020/templates/election-templates.md similarity index 100% rename from events/elections/2020/templates/election-templates.md rename to elections/steering/2020/templates/election-templates.md diff --git a/events/elections/2020/voters.md b/elections/steering/2020/voters.md similarity index 100% rename from events/elections/2020/voters.md rename to elections/steering/2020/voters.md diff --git a/events/elections/2021/OWNERS b/elections/steering/2021/OWNERS similarity index 100% rename from events/elections/2021/OWNERS rename to elections/steering/2021/OWNERS diff --git a/events/elections/2021/README.md b/elections/steering/2021/README.md similarity index 100% rename from events/elections/2021/README.md rename to elections/steering/2021/README.md diff --git a/events/elections/2021/ballots.csv b/elections/steering/2021/ballots.csv similarity index 100% rename from events/elections/2021/ballots.csv rename to elections/steering/2021/ballots.csv diff --git a/events/elections/2021/candidate-IanColdwater.md b/elections/steering/2021/candidate-IanColdwater.md similarity index 100% rename from events/elections/2021/candidate-IanColdwater.md rename to elections/steering/2021/candidate-IanColdwater.md diff --git a/events/elections/2021/candidate-aojea.md b/elections/steering/2021/candidate-aojea.md similarity index 100% rename from events/elections/2021/candidate-aojea.md rename to elections/steering/2021/candidate-aojea.md diff --git a/events/elections/2021/candidate-cblecker.md b/elections/steering/2021/candidate-cblecker.md similarity index 100% rename from events/elections/2021/candidate-cblecker.md rename to elections/steering/2021/candidate-cblecker.md diff --git a/events/elections/2021/candidate-deads2k.md b/elections/steering/2021/candidate-deads2k.md similarity index 100% rename from events/elections/2021/candidate-deads2k.md rename to elections/steering/2021/candidate-deads2k.md diff --git a/events/elections/2021/candidate-jeremyrickard.md b/elections/steering/2021/candidate-jeremyrickard.md similarity index 100% rename from events/elections/2021/candidate-jeremyrickard.md rename to elections/steering/2021/candidate-jeremyrickard.md diff --git a/events/elections/2021/candidate-justaugustus.md b/elections/steering/2021/candidate-justaugustus.md similarity index 100% rename from events/elections/2021/candidate-justaugustus.md rename to elections/steering/2021/candidate-justaugustus.md diff --git a/events/elections/2021/candidate-lachie83.md b/elections/steering/2021/candidate-lachie83.md similarity index 100% rename from events/elections/2021/candidate-lachie83.md rename to elections/steering/2021/candidate-lachie83.md diff --git a/events/elections/2021/candidate-palnabarun.md b/elections/steering/2021/candidate-palnabarun.md similarity index 100% rename from events/elections/2021/candidate-palnabarun.md rename to elections/steering/2021/candidate-palnabarun.md diff --git a/events/elections/2021/candidate-parispittman.md b/elections/steering/2021/candidate-parispittman.md similarity index 100% rename from events/elections/2021/candidate-parispittman.md rename to elections/steering/2021/candidate-parispittman.md diff --git a/events/elections/2021/candidate-saiyam1814.md b/elections/steering/2021/candidate-saiyam1814.md similarity index 100% rename from events/elections/2021/candidate-saiyam1814.md rename to elections/steering/2021/candidate-saiyam1814.md diff --git a/events/elections/2021/candidate-tashimi.md b/elections/steering/2021/candidate-tashimi.md similarity index 100% rename from events/elections/2021/candidate-tashimi.md rename to elections/steering/2021/candidate-tashimi.md diff --git a/events/elections/2021/candidate-tpepper.md b/elections/steering/2021/candidate-tpepper.md similarity index 100% rename from events/elections/2021/candidate-tpepper.md rename to elections/steering/2021/candidate-tpepper.md diff --git a/events/elections/2021/candidate-vincepri.md b/elections/steering/2021/candidate-vincepri.md similarity index 100% rename from events/elections/2021/candidate-vincepri.md rename to elections/steering/2021/candidate-vincepri.md diff --git a/events/elections/2021/election.yaml b/elections/steering/2021/election.yaml similarity index 100% rename from events/elections/2021/election.yaml rename to elections/steering/2021/election.yaml diff --git a/events/elections/2021/election_desc.md b/elections/steering/2021/election_desc.md similarity index 100% rename from events/elections/2021/election_desc.md rename to elections/steering/2021/election_desc.md diff --git a/events/elections/2021/nomination-template.md b/elections/steering/2021/nomination-template.md similarity index 100% rename from events/elections/2021/nomination-template.md rename to elections/steering/2021/nomination-template.md diff --git a/events/elections/2021/ranking.md b/elections/steering/2021/ranking.md similarity index 100% rename from events/elections/2021/ranking.md rename to elections/steering/2021/ranking.md diff --git a/events/elections/2021/results.md b/elections/steering/2021/results.md similarity index 100% rename from events/elections/2021/results.md rename to elections/steering/2021/results.md diff --git a/events/elections/2021/templates/election-templates.md b/elections/steering/2021/templates/election-templates.md similarity index 100% rename from events/elections/2021/templates/election-templates.md rename to elections/steering/2021/templates/election-templates.md diff --git a/events/elections/2021/voters.yaml b/elections/steering/2021/voters.yaml similarity index 100% rename from events/elections/2021/voters.yaml rename to elections/steering/2021/voters.yaml diff --git a/events/elections/OWNERS b/elections/steering/OWNERS similarity index 100% rename from events/elections/OWNERS rename to elections/steering/OWNERS diff --git a/events/elections/README.md b/elections/steering/README.md similarity index 100% rename from events/elections/README.md rename to elections/steering/README.md diff --git a/elections/teams/README.md b/elections/teams/README.md new file mode 100644 index 00000000000..f969e6a7620 --- /dev/null +++ b/elections/teams/README.md @@ -0,0 +1,85 @@ +# Elections for Kubernetes Teams + +As Kubernetes now has access to self-hosted preference election software, +we can host any number of elections for community groups, as they need them. + +## Who Can Request an Election + +Any "Kubernetes team" can request an election. This includes SIGs, Working Groups, +User Groups, operational teams like Release Engineering or Enhancements, +Subprojects, and even wholly subsidiary projects like Prow and ClusterAPI. +Basically, if your group is all Kubernetes contributors, you can ask for an +election. + +This does not include CNCF projects that are not components of Kubernetes and +subject to Kubernetes governance. At some point, the CNCF may offer +elections-as-a-service for those other projects. + +## How It Works + +Kubernetes uses an election tool called [Elekto], an instance of which is +hosted at [elections.k8s.io]. Your team's election gets added as metadata +to the kubernetes/community repository, and that automatically causes +an election to appear in the app. + +You assign some of your team to be election administrators, and they are +in charge of running the election. You also assemble and supply a list +of GithubIDs for valid voters in the election, and the dates that candidate +statements are due, followed by when voting opens and closes. Candidates +join the election by publishing candidate profiles to your election directory. + +Depending on availability and the nature of your election, Contributor Comms +may help publicize your election and remind voters of deadlines. Otherwise, +you will do this. + +Once voting has closed, one of your election administrators can calculate +the result of the election, and publish it either through the app or directly +to your team's channel or mailing list. + +## Requesting by Issue + +If you are not already familiar with [Elekto], you should request an election +by filing an [election request issue]. Please fill out all of the information +in the template; it's required for the election. + +A member of the Elections Subproject will contact you and help you through +setting up the election metadata. Please allow at least a week before your election +needs to start. + +## Requesting by Pull Request + +If you are familiar with [Elekto] from prior elections, then you may create +your own metadata files and submit your election as a pull request, which +will make it happen faster. + +Each team election goes in its own folder in the kubernetes/community repo, +using the path `elections/teams/team-name/election-name`, +e.g. `elections/teams/clusterapi/leads-2022`. This folder should then have +the following files in it, with complete contents. See the +[Elekto administration docs] for more details. + +* election.yaml file defining the election +* election-desc.md file with a text description of the election +* voters.yaml with the initial list of voters + +The easiest path is to copy these files from another election and then +modify them. The above will require you to have already decided your list of +Election Admins and the dates for your election. + +A member of the Elections Subproject will then review your PR, offer any required +data corrections, and approve it. + +## Additional Notes + +* Candidates do not have to be people; sometimes you may want to run an + "election" between development alternatives or graphic design options. + However, consider doing a survey for those instead. +* Voters and Admins do not have to be Kubernetes Org Members. + They do have to have GitHub IDs. + + +[Elekto]: https://elekto.dev +[elections.k8s.io]: https://elections.k8s.io +[preference elections]: https://en.wikipedia.org/wiki/Preferential_voting +[election request issue]: /issues/new/choose +[Elekto administration docs]: https://elekto.dev/docs/administration/ diff --git a/sigs.yaml b/sigs.yaml index 35c9664e28e..f229b2f683d 100644 --- a/sigs.yaml +++ b/sigs.yaml @@ -1372,6 +1372,12 @@ sigs: slack: devstats owners: - https://raw.githubusercontent.com/kubernetes/community/master/sig-contributor-experience/devstats/OWNERS + - name: elections + description: Oversees running elections in the community. Maintains documentation and software for elections. + contact: + slack: sig-contribex + owners: + - https://raw.githubusercontent.com/kubernetes/community/master/elections/OWNERS - name: events description: Creates and runs contributor-focused events, such as the Contributor Summit. Event Teams are part of this subproject.