Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

First version of SIG CLI Charter #2453

Merged
merged 4 commits into from
Aug 28, 2018
Merged
Show file tree
Hide file tree
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion OWNERS_ALIASES
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@ aliases:
sig-cli-leads:
- soltysh
- pwittrock
- AdoHe
- seans3
sig-cloud-provider-leads:
- andrewsykim
- hogepodge
Expand Down
10 changes: 9 additions & 1 deletion sig-cli/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,8 @@ To understand how this file is generated, see https://git.k8s.io/community/gener

Covers kubectl and related tools. We focus on the development and standardization of the CLI framework and its dependencies, the establishment of conventions for writing CLI commands, POSIX compliance, and improving the command line tools from a developer and devops user experience and usability perspective.

The [charter](charter.md) defines the scope and governance of the CLI Special Interest Group.

## Meetings
* Regular SIG Meeting: [Wednesdays at 09:00 PT (Pacific Time)](https://docs.google.com/document/d/1FQx0BPlkkl1Bn0c9ocVBxYIKojpmrS1CFP5h0DI68AE/edit) (biweekly). [Convert to your timezone](http://www.thetimezoneconverter.com/?t=09:00&tz=PT%20%28Pacific%20Time%29).
* [Meeting notes and Agenda](https://docs.google.com/document/d/1r0YElcXt6G5mOWxwZiXgGu_X6he3F--wKwg-9UBc29I/edit?usp=sharing).
Expand All @@ -20,13 +22,19 @@ Covers kubectl and related tools. We focus on the development and standardizatio
### Chairs
The Chairs of the SIG run operations and processes governing the SIG.

* Maciej Szulik (**[@soltysh](https://github.com/soltysh)**), Red Hat
* Sean Sullivan (**[@seans3](https://github.com/seans3)**), Google

### Technical Leads
The technical leads provide the technical vision and leadership for 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

## 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)
Expand Down
50 changes: 50 additions & 0 deletions sig-cli/charter.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,50 @@
# SIG CLI Charter

This charter adheres to the conventions described in the [Kubernetes Charter README] and uses
the Roles and Organization Management outlined in [sig-governance].

## Scope

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.

### In scope

SIG CLI section in [sigs.yaml]
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please link to the corresponding information in the sig-cli README instead.


#### Code, Binaries and Services

SIG CLI code include command line tools and binaries for working with Kubernetes
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I suggest "general-purpose command-line tools and binaries" as a way to distinguish these from the special-purpose tools built by other SIGs.

API's. Examples of these binaries include: kubectl and kustomize.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

### Out of scope
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

would it make sense to include some "Cross-cutting and Externally Facing Processes" aspects of how sig-cli collaborates with the sigs that own other binaries to improve command consistency?

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Not quite sure what you mean by that?


SIG CLI is NOT responsible for defining the Kubernetes API that it
interfaces with. The Kubernetes API is the responsibility of SIG API Machinery.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It is probably worthwhile to call out all of the other CLIs that SIG CLI doesn't oversee and why. For example kubeadm, kube-apiserver, etc, etc.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The why being that these CLIs don't interact with the API I suppose.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

There's nothing stopping us from looking after them, but nobody reached out to us for so, that's why since none of us (sig participants) authored these we don't feel like owning them nor don't want to 'steal' other's work.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

On a second note, I think that calling out what we don't oversee might be an overkill. IMO it's sufficient we clearly define ownership in the previous paragraph. The fact that API is being mentioned here is specifically to call out that we don't and never will change the API, that's sig-apimachinery responsibility.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I am not going to hold strong on this point. But, I do still believe it would be helpful to provide illustrative counter examples.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

To recap, following Maciej's advice:

  1. We won't mention kubeadm or kube-apiserver.
  2. We will keep the "Out of scope" statement as is.

If misunderstood, please let me know.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't think it's helpful to lump all Kubernetes components, such as kube-apiserver, under "CLI".

I do think it's helpful to indicate that SIG CLI doesn't own all conceivable command-line tools within the project: kubeadm, kops, kompose, kubefed, etc.

I would add something like:

SIG CLI is not responsible for command-line tools built and maintained by other SIGs, such as kubeadm, which is owned by SIG Cluster Lifecycle.

(Just to include one example and not make it appear to be an exhaustive list.)


## Roles and Organization Management

SIG CLI adheres to the Roles and Organization Management outlined in [sig-governance]
and opts-in to updates and modifications to [sig-governance].

### Deviations from [sig-governance]

- In addition to Technical Leads, SIG CLI defines Emeritus Leads. These former
SIG CLI leaders *SHOULD* be available to provide historical perspective and
knowledge.
- SIG CLI defines the role of Test Health Maintainer. Contributors who have
successfully completed one test on-call rotation within the last six months as
shown in the test on-call schedule of the [Test Playbook] are included in this
group. Test Health Maintainers are SIG CLI Members.

### Subproject Creation

Option 1: by [SIG Technical Leads](https://github.com/kubernetes/community/blob/master/committee-steering/governance/sig-governance.md#L100)


[sig-governance]: https://github.com/kubernetes/community/blob/master/committee-steering/governance/sig-governance.md
[sigs.yaml]: https://github.com/kubernetes/community/blob/master/sigs.yaml#L487
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Use of sigs.yaml with line number is not recommended by the latest changes in the charter template for a good reason that the number for sig section may not remain same - e0d60fd

[Kubernetes Charter README]: https://github.com/kubernetes/community/blob/master/committee-steering/governance/README.md
[Test Playbook]: https://docs.google.com/document/d/1Z3teqtOLvjAtE-eo0G9tjyZbgNc6bMhYGZmOx76v6oM

2 changes: 1 addition & 1 deletion sig-list.md
Original file line number Diff line number Diff line change
Expand Up @@ -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)<br>* [Kris Nova](https://github.com/kris-nova), Heptio<br>* [Bob Wise](https://github.com/countspongebob), AWS<br>|* [Slack](https://kubernetes.slack.com/messages/sig-aws)<br>* [Mailing List](https://groups.google.com/forum/#!forum/kubernetes-sig-aws)|* Regular SIG Meeting: [Fridays at 9:00 PT (Pacific Time) (biweekly)](https://docs.google.com/document/d/1FQx0BPlkkl1Bn0c9ocVBxYIKojpmrS1CFP5h0DI68AE/edit)<br>
|[Azure](sig-azure/README.md)|azure|* [Stephen Augustus](https://github.com/justaugustus), Red Hat<br>* [Shubheksha Jalan](https://github.com/shubheksha), Microsoft<br>|* [Slack](https://kubernetes.slack.com/messages/sig-azure)<br>* [Mailing List](https://groups.google.com/forum/#!forum/kubernetes-sig-azure)|* Regular SIG Meeting: [Wednesdays at 16:00 UTC (biweekly)](https://docs.google.com/document/d/1FQx0BPlkkl1Bn0c9ocVBxYIKojpmrS1CFP5h0DI68AE/edit)<br>
|[Big Data](sig-big-data/README.md)|big-data|* [Anirudh Ramanathan](https://github.com/foxish), Rockset<br>* [Erik Erlandson](https://github.com/erikerlandson), Red Hat<br>* [Yinan Li](https://github.com/liyinan926), Google<br>|* [Slack](https://kubernetes.slack.com/messages/sig-big-data)<br>* [Mailing List](https://groups.google.com/forum/#!forum/kubernetes-sig-big-data)|* Regular SIG Meeting: [Wednesdays at 17:00 UTC (weekly)](https://docs.google.com/document/d/1FQx0BPlkkl1Bn0c9ocVBxYIKojpmrS1CFP5h0DI68AE/edit)<br>
|[CLI](sig-cli/README.md)|cli|* [Maciej Szulik](https://github.com/soltysh), Red Hat<br>* [Phillip Wittrock](https://github.com/pwittrock), Google<br>* [Tony Ado](https://github.com/AdoHe), Alibaba<br>|* [Slack](https://kubernetes.slack.com/messages/sig-cli)<br>* [Mailing List](https://groups.google.com/forum/#!forum/kubernetes-sig-cli)|* Regular SIG Meeting: [Wednesdays at 09:00 PT (Pacific Time) (biweekly)](https://docs.google.com/document/d/1FQx0BPlkkl1Bn0c9ocVBxYIKojpmrS1CFP5h0DI68AE/edit)<br>
|[CLI](sig-cli/README.md)|cli|* [Maciej Szulik](https://github.com/soltysh), Red Hat<br>* [Sean Sullivan](https://github.com/seans3), Google<br>|* [Slack](https://kubernetes.slack.com/messages/sig-cli)<br>* [Mailing List](https://groups.google.com/forum/#!forum/kubernetes-sig-cli)|* Regular SIG Meeting: [Wednesdays at 09:00 PT (Pacific Time) (biweekly)](https://docs.google.com/document/d/1FQx0BPlkkl1Bn0c9ocVBxYIKojpmrS1CFP5h0DI68AE/edit)<br>
|[Cloud Provider](sig-cloud-provider/README.md)|cloud-provider|* [Andrew Sy Kim](https://github.com/andrewsykim), DigitalOcean<br>* [Chris Hoge](https://github.com/hogepodge), OpenStack Foundation<br>* [Jago Macleod](https://github.com/jagosan), Google<br>|* [Slack](https://kubernetes.slack.com/messages/sig-cloud-provider)<br>* [Mailing List](https://groups.google.com/forum/#!forum/kubernetes-sig-cloud-provider)|* Regular SIG Meeting: [Wednesdays at 1:00 PT (Pacific Time) (biweekly)](https://docs.google.com/document/d/1FQx0BPlkkl1Bn0c9ocVBxYIKojpmrS1CFP5h0DI68AE/edit)<br>
|[Cluster Lifecycle](sig-cluster-lifecycle/README.md)|cluster-lifecycle|* [Luke Marsden](https://github.com/lukemarsden), Weave<br>* [Robert Bailey](https://github.com/roberthbailey), Google<br>* [Lucas Käldström](https://github.com/luxas), Luxas Labs (occasionally contracting for Weaveworks)<br>* [Timothy St. Clair](https://github.com/timothysc), Heptio<br>|* [Slack](https://kubernetes.slack.com/messages/sig-cluster-lifecycle)<br>* [Mailing List](https://groups.google.com/forum/#!forum/kubernetes-sig-cluster-lifecycle)|* Regular SIG Meeting: [Tuesdays at 09:00 PT (Pacific Time) (weekly)](https://docs.google.com/document/d/1FQx0BPlkkl1Bn0c9ocVBxYIKojpmrS1CFP5h0DI68AE/edit)<br>* kubeadm Office Hours: [Wednesdays at 09:00 PT (Pacific Time) (weekly)](https://docs.google.com/document/d/1FQx0BPlkkl1Bn0c9ocVBxYIKojpmrS1CFP5h0DI68AE/edit)<br>* Cluster API working group: [Wednesdays at 10:00 PT (Pacific Time) (weekly)](https://docs.google.com/document/d/1FQx0BPlkkl1Bn0c9ocVBxYIKojpmrS1CFP5h0DI68AE/edit)<br>* kops Office Hours: [Fridays at 09:00 PT (Pacific Time) (biweekly)](https://docs.google.com/document/d/1FQx0BPlkkl1Bn0c9ocVBxYIKojpmrS1CFP5h0DI68AE/edit)<br>
|[Cluster Ops](sig-cluster-ops/README.md)|cluster-ops|* [Rob Hirschfeld](https://github.com/zehicle), RackN<br>* [Jaice Singer DuMars](https://github.com/jdumars), Google<br>|* [Slack](https://kubernetes.slack.com/messages/sig-cluster-ops)<br>* [Mailing List](https://groups.google.com/forum/#!forum/kubernetes-sig-cluster-ops)|* Regular SIG Meeting: [Thursdays at 20:00 UTC (biweekly)](https://docs.google.com/document/d/1FQx0BPlkkl1Bn0c9ocVBxYIKojpmrS1CFP5h0DI68AE/edit)<br>
Expand Down
15 changes: 11 additions & 4 deletions sigs.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -492,23 +492,30 @@ sigs:
establishment of conventions for writing CLI commands, POSIX compliance,
and improving the command line tools from a developer and devops user
experience and usability perspective.
charter_link:
charter_link: charter.md
label: cli
leadership:
chairs:
- name: Maciej Szulik
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

duplicated entry

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nope, there are chairs which are responsible for organizational issue with sig and leads which are responsible for technicalities. Sean and I are both chairs, on top of that Phil and I are tech-leads, which makes me deserve double entry 🥇

github: soltysh
company: Red Hat
- name: Sean Sullivan
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

seems like it might be better to make chair changes separately from the charter addition

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'd just move this to separate commit, which should be sufficient.

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
emeritus_leads:
- name: Fabiano Franz
github: fabianofranz
company: Red Hat
- name: Tony Ado
github: AdoHe
company: Alibaba
meetings:
- description: Regular SIG Meeting
day: Wednesday
Expand Down