Skip to content

Commit db9b7b5

Browse files
committed
Incorporate Brian's feedback into subproject - SIG governance
1 parent 6d58a38 commit db9b7b5

File tree

1 file changed

+70
-37
lines changed

1 file changed

+70
-37
lines changed

committee-steering/governance/sig-governance-template-short.md

+70-37
Original file line numberDiff line numberDiff line change
@@ -4,32 +4,38 @@
44

55
Membership for roles tracked in: <link to OWNERS file>
66

7-
*TODO: Write a commented template for OWNERS files*
8-
97
- Sig Leads
108
- Run operations and processes governing the SIG
11-
- Seed members established at founding
12-
- Leads may decide to step down at anytime and propose a replacement. Use
13-
lazy consensus with fallback on majority vote to accept proposal.
14-
- SIG may select additional leads by super majority of members
15-
- Leads must remain active in the role and are automatically removed from
16-
the position if they are unresponsive for > 3 months
9+
- Seed members established at SIG founding
10+
- Leads *MAY* decide to step down at anytime and propose a replacement.
11+
- Leads *MAY* select additional leads through a [super-majority] vote. This *SHOULD* be supported by a majority
12+
of SIG members (determined through lazy consensus with fallback on voting).
13+
- Leads *MUST* remain active in the role and are automatically removed from the position if they are unresponsive
14+
for > 3 months and *MAY* be removed if not proactively working with other Sig Leads to fulfill responsibilities.
1715
- Number: 2-3
18-
- Technical Leads
19-
- Escalation for technical discussions
20-
- Set milestone priorities
21-
- Seed members established at founding
22-
- Leads may decide to step down at anytime and propose a replacement. Use
23-
lazy consensus with fallback on majority vote to accept proposal.
24-
- SIG may select additional leads by super majority of members
25-
- Leads must remain active in the role and are automatically removed from
26-
the position if they are unresponsive for > 3 months
16+
- Defined in [sigs.yaml]
17+
- *Optional Role*: SIG Technical Leads
18+
- Established new and shutdown existing subprojects
19+
- Resolve X-Subproject technical issues and decisions
20+
- Subproject Leads
21+
- Scoped to a subproject or area defined in [sigs.yaml]
22+
- Seed members established at subproject founding
23+
- Escalation point for technical discussions in that area
24+
- *MUST* Set milestone priorities
25+
- *MAY* decide to step down at anytime and propose a replacement. Use lazy consensus with fallback on
26+
majority vote to accept proposal.
27+
- SIG *MAY* select additional leads through a vote with a super majority of Leads. This *SHOULD* be supported
28+
by a majority of SIG members (through lazy consensus with fallback on voting).
29+
- Leads *MUST* remain active in the role and are automatically removed from the position if they are unresponsive
30+
for > 3 months and *MAY* be removed if not proactively working with other Project Leads to fulfill responsibilities.
2731
- Number: 3-5
32+
- Defined in [sigs.yaml] [OWNERS] files
2833
- Members
29-
- Maintain health of the project
30-
- Build new functionality
31-
- Shown sustained contributions to the area
32-
- Participate in decision making
34+
- *MUST* maintain health of the subproject
35+
- *MUST* show sustained contributions to the area
36+
- *MAY* build new functionality
37+
- *MAY* participate in decision making
38+
- Defined as reviewers and approvers in [OWNERS] files for subprojects
3339

3440
## Organizational management
3541

@@ -42,39 +48,66 @@ Membership for roles tracked in: <link to OWNERS file>
4248

4349
### Project management
4450

45-
- Subprojects may be created by [KEP] proposal and accepted by lazy consensus with fallback
46-
on majority vote.
47-
- The SIG may delegate responsibilities to local project leads
48-
- Role membership must be documented in a OWNERS file
49-
- Where subprojects processes diverge from the SIG governance, they must document how
50-
- e.g. if subprojects release separately - they must document how release and planning
51-
is performed
52-
53-
- Release milestones
54-
- Follows the kubernetes/kubernetes release milestones and schedule
55-
- Priorities for upcoming release are discussed during the SIG meeting
56-
following the preceding release and shared through a PR. Priorities
57-
are finalized before feature freeze.
58-
- Code and artifacts are published as part of the kubernetes/kubernetes release
51+
#### Subproject creation
52+
53+
---
54+
55+
Option 1: by federation of subprojects
56+
57+
- Subprojects may be created by [KEP] proposal and accepted by lazy consensus with fallback on majority vote of
58+
subproject Leads in the SIG. The result *SHOULD* be supported by the majority of SIG members.
59+
- KEP *MUST* establish subproject leads
60+
- [sigs.yaml] *MUST* be updated to include subproject information and [OWNERS] files with subproject leads
61+
- Where subprojects processes differ from the SIG governance, they must document how
62+
- e.g. if subprojects release separately - they must document how release and planning is performed
63+
64+
Option 2: by SIG Technical leads
65+
66+
- Subprojects may be created by [KEP] proposal and accepted by lazy consensus with fallback on majority vote of
67+
SIG Technical Leads. The result *SHOULD* be supported by the majority of SIG members.
68+
- KEP *MUST* establish subproject leads
69+
- [sigs.yaml] *MUST* be updated to include subproject information and [OWNERS] files with subproject leads
70+
- Where subprojects processes differ from the SIG governance, they must document how
71+
- e.g. if subprojects release separately - they must document how release and planning is performed
72+
73+
---
74+
75+
- Subprojects must define how releases are performed and milestones set. Example follows:
76+
77+
> - Release milestones
78+
> - Follows the kubernetes/kubernetes release milestones and schedule
79+
> - Priorities for upcoming release are discussed during the SIG meeting following the preceding release and
80+
> shared through a PR. Priorities are finalized before feature freeze.
81+
> - Code and artifacts are published as part of the kubernetes/kubernetes release
5982
6083
### Technical processes
6184

85+
Subprojects of the SIG *MUST* use the following processes unless explicitly following alternatives
86+
they have defined.
87+
6288
- Proposing and making decisions
6389
- Proposals sent as [KEP] PRs and published to googlegroup as announcement
6490
- Follow [KEP] decision making process
6591

6692
- Test health
6793
- Canonical health of code published to <link to dashboard>
6894
- Consistently broken tests automatically send an alert to <link to google group>
69-
- SIG members are responsible for responding to broken tests alert. PRs that break tests
70-
should be rolled back if not fixed within 24 hours (business hours).
95+
- SIG members are responsible for responding to broken tests alert. PRs that break tests should be rolled back
96+
if not fixed within 24 hours (business hours).
7197
- Test dashboard checked and reviewed at start of each SIG meeting. Owners assigned for any broken tests.
7298
and followed up during the next SIG meeting.
7399

100+
X-Subproject decisions and test health issues should be resolved through either:
101+
102+
- Option 1: Federation of Subproject Leads
103+
- Option 2: SIG Technical Leads
104+
74105
[lazy-consensus]: http://communitymgt.wikia.com/wiki/Lazy_consensus
75106
[super-majority]: https://en.wikipedia.org/wiki/Supermajority#Two-thirds_vote
76107
[warnocks-dilemma]: http://communitymgt.wikia.com/wiki/Warnock%27s_Dilemma
77108
[slo]: https://en.wikipedia.org/wiki/Service_level_objective
78109
[steering-commitee]: https://github.com/kubernetes/steering#contact
79110
[business-operations]: http://www.businessdictionary.com/definition/business-operation.html
80111
[KEP]: https://github.com/kubernetes/community/blob/master/keps/0000-kep-template.md
112+
[sigs.yaml]: https://github.com/kubernetes/community/blob/master/sigs.yaml#L1454
113+
[OWNERS]: contributors/devel/owners.md

0 commit comments

Comments
 (0)