diff --git a/OWNERS_ALIASES b/OWNERS_ALIASES index ec5ee97d06d..9dcbe4d91b8 100644 --- a/OWNERS_ALIASES +++ b/OWNERS_ALIASES @@ -31,7 +31,6 @@ aliases: sig-cli-leads: - soltysh - pwittrock - - AdoHe sig-cluster-lifecycle-leads: - lukemarsden - roberthbailey diff --git a/sig-cli/README.md b/sig-cli/README.md index 6c3a1892b43..94529a44996 100644 --- a/sig-cli/README.md +++ b/sig-cli/README.md @@ -21,12 +21,18 @@ Covers kubectl and related tools. We focus on the development and standardizatio The Chairs of the SIG run operations and processes governing the SIG. * Maciej Szulik (**[@soltysh](https://github.com/soltysh)**), Red Hat -* Phillip Wittrock (**[@pwittrock](https://github.com/pwittrock)**), Google -* Tony Ado (**[@AdoHe](https://github.com/AdoHe)**), Alibaba +* Sean Sullivan (**[@seans3](https://github.com/seans3)**), Google + +### Technical Leads +The technical leads of the SIG provide the technical leadership for the SIG. -## Emeritus Leads +* Maciej Szulik (**[@soltysh](https://github.com/soltysh)**), Red Hat +* Philip Wittrock (**[@pwittrock](https://github.com/pwittrock)**), Google + +### Emeritus Leads * Fabiano Franz (**[@fabianofranz](https://github.com/fabianofranz)**), Red Hat +* Tony Ado (**[@AdoHe](https://github.com/AdoHe)**), Alibaba ## Contact * [Slack](https://kubernetes.slack.com/messages/sig-cli) @@ -39,7 +45,6 @@ The following subprojects are owned by sig-cli: - **kubectl** - Owners: - https://raw.githubusercontent.com/kubernetes/kubectl/master/OWNERS - - https://raw.githubusercontent.com/kubernetes/kubernetes/master/pkg/kubectl/OWNERS ## GitHub Teams diff --git a/sig-cli/charter.md b/sig-cli/charter.md new file mode 100644 index 00000000000..eb3b30dbc5e --- /dev/null +++ b/sig-cli/charter.md @@ -0,0 +1,160 @@ +# SIG CLI Charter + +## Purpose + +The Command Line Interface SIG (SIG CLI) is responsible for kubectl and +related tools. This group focuses on command line tools and +libraries to interface with Kubernetes API's. + +## Roles + +* Chair + * *MUST* run operations and processes governing the SIG. + * *MUST* remain active in the role. A Chair will be automatically removed from + the position if he/she is unresponsive for > 3 months. + * *MAY* be removed if not proactively working with other Chairs to fulfill + responsibilities. + * *MAY* select additional Chairs through a [two-thirds super majority] vote + amongst current Chairs. This *SHOULD* be supported by a majority of SIG Members. + * *MAY* decide to step down at anytime and propose a replacement. Use + [lazy-consensus] amongst Chairs with fallback on majority vote to accept + proposal. This *SHOULD* be supported by a majority of SIG Members. + * There *SHOULD* be 2 to 3 Chairs. + * *MUST* be specifically enumerated in [sigs.yaml] under the **leadership -> chairs** label. + +* Technical Lead + * *MUST* provide the technical direction and vision for SIG CLI. + * *MAY* establish new subprojects. + * *MAY* decommission existing subprojects. + * *MAY* resolve X-Subproject technical issues and decisions. + * *MUST* be specifically enumerated in [sigs.yaml] under the **leadership -> leads** label. + +* Subproject Owner + * *MUST* be scoped to a subproject of SIG CLI defined in [sigs.yaml]. + * *MUST* be an escalation point for technical discussions and decisions in the + subproject. + * *MUST* set milestone priorities for subproject or delegate this responsibility. + * *MUST* remain active in the role. A Subproject Owner will be automatically + removed from the position if he/she is unresponsive for > 3 months. + * *MAY* be removed if not proactively working with other Subproject Owners to + fulfill responsibilities. + * *MAY* decide to step down at anytime and propose a replacement. Use + [lazy-consensus] amongst Subproject Owners with fallback on majority vote to + accept proposal. This *SHOULD* be supported by a majority of subproject + contributors (those having some role in the subproject). + * *MAY* select additional Subproject Owners through a + [two-thirds super majority] vote amongst current Subproject Owners. This + *SHOULD* be supported by a majority of subproject contributors (through + [lazy-consensus] with fallback on voting). + * There *SHOULD* be 3 to 5 Subproject Owners. + * *MUST* be specifically enumerated in an OWNERS file under the **owners** + label. [sigs.yaml] *MUST* point to this OWNERS file under the **subproject -> + owners** label. + +* Approver + * *MUST* contribute to SIG CLI by reviewing and approving proposed changes to + the SIG CLI code for a directory and its sub-directories. + * New Approvers *SHOULD* be chosen from current Reviewers by a majority vote of + Subproject Owners for directories under their control. + * *MUST* be enumerated in an OWNERS file within a directory under the + **approvers** label. + +* Reviewer + * *MUST* contribute to SIG CLI by reviewing proposed changes to the SIG CLI + code for a directory and its sub-directories. + * *SHOULD* have made significant technical contributions during the review of at + least six PR's in the last six months. + * *MAY* be voted as Reviewer by a majority of current Subproject Owners for directories + and subdirectories under their control. + * *MUST* be enumerated in an OWNERS file within a directory under the + **reviewers** label. + +* Test Health Maintainer + * *MUST* contribute to SIG CLI by maintaining test health. + * *MUST* have successfully completed at least one test on-call rotation within the + last six months as shown in on-call schedule of [Test Playbook]. + +* Member + * *MUST* show sustained contributions to at least one subproject or to the SIG. + * *MUST* maintain health of at least one subproject or the health of the SIG. + * *MAY* build new functionality for subprojects. + * *MAY* participate in decision making for the subprojects they hold roles in. + * The Chair(s), Technical Lead(s), and Subproject Owner(s) are Members. + * Approvers are Members. + * Reviewers are Members. + * Test Health Maintainers are Members. + * A significant SIG contributor *MAY* be chosen as a Member using + [lazy-consensus] amongst Subproject Owners with fallback to a majority vote + of Members. + +## Subprojects + +* [kubectl](https://github.com/kubernetes/community/blob/master/sigs.yaml#L555) + +### Subproject Creation + +* Subprojects *MUST* be created by [KEP] proposal and accepted by [lazy-consensus] +of Technical Leads with fallback on majority vote of Technical Leads. +The result *SHOULD* be supported by the majority of SIG Members. + * Subproject creation KEP *MUST* enumerate the founding Subproject Owners. + * [sigs.yaml] *MUST* be updated to include subproject information and + Subproject Owners. + +## Organizational management + +* SIG CLI meetings + * *SHOULD* be facilitated by Chairs unless delegated to specific Members. + * *SHOULD* be held bi-weekly on [Zoom](https://zoom.us/my/sigcli) video + conference every other Wednesday at 9am PST. Convert to your + [timezone](https://www.timeanddate.com/worldclock/converter.html?iso=20180509T160000&p1=900). + * Proposed topics and meeting agenda *SHOULD* be stored at the [Meeting Notes] + * Meetings *SHOULD* be recorded and uploaded to the [Meeting Archive] + * Meetings *SHOULD* contain a test health update from the on-call Member. + +* SIG CLI overview and deep-dive sessions organized for Kubecon + * *SHOULD* be organized by Chairs unless delegated to specific Members + +## Technical processes + +Subprojects of the SIG *MUST* use the following processes unless explicitly +following alternatives they have defined. + +* Proposing and making decisions + * Significant design proposals *SHOULD* be sent as [KEP] PR's and published to + [SIG CLI email group] as an announcement. + * Subproject owners are final decision-makers where [lazy-consensus] is not + achieved for subproject technical decisions. +* Issues impacting multiple subprojects in the SIG *SHOULD* be resolved by Technical Leads +* Contributors *SHOULD* follow the SIG CLI [Contributing Guidelines] +* Members *SHOULD* follow the SIG CLI [Release Process] +* Test health + * [Test Playbook] *SHOULD* describe the process for monitoring and managing + SIG CLI code health. + * PRs that break tests *SHOULD* be rolled back if not fixed within 24 hours + (business hours). + * Test health *SHOULD* be reported at start of each SIG meeting. + * Test on-call rotation *SHOULD* transfer directly after bi-weekly SIG meeting. + * Consistently broken tests *SHOULD* automatically send an alert to [SIG CLI email group] + +## TODO + +* Update [sigs.yaml] to current Chair(s), Technical Lead(s), and Subproject Owner(s). +* Update [OWNERS] and [OWNERS_ALIASES] to current subproject owners, approvers and reviewers. +* Create alert to send email to [SIG CLI email group] when a test continuously fails. +* Update [Contributing Guidelines] +* Update [Release Process] + +*MAY*, *SHOULD*, *MUST* within this document are defined at [RFC 2119](https://tools.ietf.org/html/rfc2119) + +[lazy-consensus]: http://communitymgt.wikia.com/wiki/Lazy_consensus +[two-thirds super majority]: https://en.wikipedia.org/wiki/Supermajority#Two-thirds_vote +[KEP]: https://github.com/kubernetes/community/blob/master/keps/0000-kep-template.md +[sigs.yaml]: https://github.com/kubernetes/community/blob/master/sigs.yaml#L502 +[OWNERS]: https://github.com/kubernetes/kubernetes/blob/master/pkg/kubectl/OWNERS +[OWNERS_ALIASES]: https://github.com/kubernetes/kubernetes/blob/master/OWNERS_ALIASES +[SIG CLI email group]: https://groups.google.com/forum/#!forum/kubernetes-sig-cli +[Meeting Notes]: https://docs.google.com/document/d/1r0YElcXt6G5mOWxwZiXgGu_X6he3F--wKwg-9UBc29I/edit?usp=sharing +[Meeting Archive]: https://www.youtube.com/playlist?list=PL69nYSiGNLP28HaTzSlFe6RJVxpFmbUvF +[Test Playbook]: https://docs.google.com/document/d/1Z3teqtOLvjAtE-eo0G9tjyZbgNc6bMhYGZmOx76v6oM +[Contributing Guidelines]: https://github.com/kubernetes/kubectl/blob/master/CONTRIBUTING.md +[Release Process]: https://github.com/kubernetes/kubectl/blob/master/RELEASE.md diff --git a/sig-list.md b/sig-list.md index d98fafb0a57..b905e9541bf 100644 --- a/sig-list.md +++ b/sig-list.md @@ -30,7 +30,7 @@ When the need arises, a [new SIG can be created](sig-creation-procedure.md) |[AWS](sig-aws/README.md)|aws|* [Justin Santa Barbara](https://github.com/justinsb)
* [Kris Nova](https://github.com/kris-nova), Heptio
* [Bob Wise](https://github.com/countspongebob), AWS
|* [Slack](https://kubernetes.slack.com/messages/sig-aws)
* [Mailing List](https://groups.google.com/forum/#!forum/kubernetes-sig-aws)|* Regular SIG Meeting: [Fridays at 9:00 PT (Pacific Time) (biweekly)](https://zoom.us/my/k8ssigaws)
|[Azure](sig-azure/README.md)|azure|* [Stephen Augustus](https://github.com/justaugustus), Red Hat
* [Shubheksha Jalan](https://github.com/shubheksha), Microsoft
|* [Slack](https://kubernetes.slack.com/messages/sig-azure)
* [Mailing List](https://groups.google.com/forum/#!forum/kubernetes-sig-azure)|* Regular SIG Meeting: [Wednesdays at 16:00 UTC (biweekly)](https://zoom.us/j/2015551212)
|[Big Data](sig-big-data/README.md)|big-data|* [Anirudh Ramanathan](https://github.com/foxish), Google
* [Erik Erlandson](https://github.com/erikerlandson), Red Hat
|* [Slack](https://kubernetes.slack.com/messages/sig-big-data)
* [Mailing List](https://groups.google.com/forum/#!forum/kubernetes-sig-big-data)|* Regular SIG Meeting: [Wednesdays at 17:00 UTC (weekly)](https://zoom.us/my/sig.big.data)
-|[CLI](sig-cli/README.md)|cli|* [Maciej Szulik](https://github.com/soltysh), Red Hat
* [Phillip Wittrock](https://github.com/pwittrock), Google
* [Tony Ado](https://github.com/AdoHe), Alibaba
|* [Slack](https://kubernetes.slack.com/messages/sig-cli)
* [Mailing List](https://groups.google.com/forum/#!forum/kubernetes-sig-cli)|* Regular SIG Meeting: [Wednesdays at 09:00 PT (Pacific Time) (biweekly)](https://zoom.us/my/sigcli)
+|[CLI](sig-cli/README.md)|cli|* [Maciej Szulik](https://github.com/soltysh), Red Hat
* [Sean Sullivan](https://github.com/seans3), Google
|* [Slack](https://kubernetes.slack.com/messages/sig-cli)
* [Mailing List](https://groups.google.com/forum/#!forum/kubernetes-sig-cli)|* Regular SIG Meeting: [Wednesdays at 09:00 PT (Pacific Time) (biweekly)](https://zoom.us/my/sigcli)
|[Cluster Lifecycle](sig-cluster-lifecycle/README.md)|cluster-lifecycle|* [Luke Marsden](https://github.com/lukemarsden), Weave
* [Robert Bailey](https://github.com/roberthbailey), Google
* [Lucas Käldström](https://github.com/luxas), Luxas Labs (occasionally contracting for Weaveworks)
* [Timothy St. Clair](https://github.com/timothysc), Heptio
|* [Slack](https://kubernetes.slack.com/messages/sig-cluster-lifecycle)
* [Mailing List](https://groups.google.com/forum/#!forum/kubernetes-sig-cluster-lifecycle)|* Regular SIG Meeting: [Tuesdays at 09:00 PT (Pacific Time) (weekly)](https://zoom.us/j/166836%E2%80%8B624)
* kubeadm Office Hours: [Wednesdays at 09:00 PT (Pacific Time) (weekly)](https://zoom.us/j/166836%E2%80%8B624)
* Cluster API working group: [Wednesdays at 10:00 PT (Pacific Time) (weekly)](https://zoom.us/j/166836%E2%80%8B624)
* kops Office Hours: [Fridays at 09:00 PT (Pacific Time) (biweekly)](https://zoom.us/my/k8ssigaws)
|[Cluster Ops](sig-cluster-ops/README.md)|cluster-ops|* [Rob Hirschfeld](https://github.com/zehicle), RackN
* [Jaice Singer DuMars](https://github.com/jdumars), Microsoft
|* [Slack](https://kubernetes.slack.com/messages/sig-cluster-ops)
* [Mailing List](https://groups.google.com/forum/#!forum/kubernetes-sig-cluster-ops)|* Regular SIG Meeting: [Thursdays at 20:00 UTC (biweekly)](https://zoom.us/j/297937771)
|[Contributor Experience](sig-contributor-experience/README.md)|contributor-experience|* [Elsie Phillips](https://github.com/Phillels), CoreOS
* [Paris Pittman](https://github.com/parispittman), Google
|* [Slack](https://kubernetes.slack.com/messages/sig-contribex)
* [Mailing List](https://groups.google.com/forum/#!forum/kubernetes-sig-contribex)|* Regular SIG Meeting: [Wednesdays at 9:30 PT (Pacific Time) (weekly)](https://zoom.us/j/7658488911)
diff --git a/sigs.yaml b/sigs.yaml index caf04a84ab5..a8498ae88a9 100644 --- a/sigs.yaml +++ b/sigs.yaml @@ -510,19 +510,26 @@ sigs: label: cli leadership: chairs: + - name: Maciej Szulik + github: soltysh + company: Red Hat + - name: Sean Sullivan + github: seans3 + company: Google + leads: - name: Maciej Szulik github: soltysh company: Red Hat - name: Phillip Wittrock github: pwittrock - company: Google - - name: Tony Ado - github: AdoHe - company: Alibaba + company: Google emeritus_leads: - name: Fabiano Franz github: fabianofranz company: Red Hat + - name: Tony Ado + github: AdoHe + company: Alibaba meetings: - description: Regular SIG Meeting day: Wednesday @@ -556,7 +563,6 @@ sigs: - name: kubectl owners: - https://raw.githubusercontent.com/kubernetes/kubectl/master/OWNERS - - https://raw.githubusercontent.com/kubernetes/kubernetes/master/pkg/kubectl/OWNERS - name: Cluster Lifecycle dir: sig-cluster-lifecycle mission_statement: >