Repository: knative/pkg
Pull request #2090 (2021-04-08 12:19:42)

Fix a few comments in reconciler-gen
<!-- Thanks for sending a pull request! -->

# Changes

As per title. A few comment nits.

/assign @n3wscott 

knative-prow-robot: [APPROVALNOTIFIER] This PR is **NOT APPROVED**

This pull-request has been approved by:
To complete the [pull request process](https://git.k8s.io/community/contributors/guide/owners.md#the-code-review-process), please ask for approval from **markusthoemmes** after the PR has been reviewed.

The full list of commands accepted by this bot can be found [here](https://go.k8s.io/bot-commands?repo=knative%2Fpkg).

<details open>
Needs approval from an approver in each of these files:

- **[OWNERS](https://github.com/knative/pkg/blob/main/OWNERS)**

Approvers can indicate their approval by writing `/approve` in a comment
Approvers can cancel approval by writing `/approve cancel` in a comment
</details>
<!-- META={"approvers":["markusthoemmes"]} -->
knative-prow-robot: @markusthoemmes: The following test **failed**, say `/retest` to rerun all failed tests:

Test name | Commit | Details | Rerun command
--- | --- | --- | ---
pull-knative-pkg-unit-tests | fe55aa0b82000badc2be681659268c41f84ce632 | [link](https://prow.knative.dev/view/gs/knative-prow/pr-logs/pull/knative_pkg/2090/pull-knative-pkg-unit-tests/1380133266048159744) | `/test pull-knative-pkg-unit-tests`

[Full PR test history](https://gubernator.knative.dev/pr/knative_pkg/2090). [Your PR dashboard](https://gubernator.knative.dev/pr/markusthoemmes).

<details>

Instructions for interacting with me using PR comments are available [here](https://git.k8s.io/community/contributors/guide/pull-requests.md).  If you have questions or suggestions related to my behavior, please file an issue against the [kubernetes/test-infra](https://github.com/kubernetes/test-infra/issues/new?title=Prow%20issue:) repository. I understand the commands that are listed [here](https://go.k8s.io/bot-commands).
</details>
<!-- test report -->

Patch:
diff --git a/OWNERS b/OWNERS
index 030df98f7..9c33a0f61 100644
--- a/OWNERS
+++ b/OWNERS
@@ -1,4 +1,12 @@
 # The OWNERS file is used by prow to automatically merge approved PRs.
 
 approvers:
-- pkg-approvers
+- technical-oversight-committee
+- dprotaso
+- grantr
+- markusthoemmes
+- mattmoor
+- tcnghia
+- vagababov
+- vaikas
+- n3wscott
diff --git a/OWNERS_ALIASES b/OWNERS_ALIASES
index c4aa3cf64..cabdef1c2 100644
--- a/OWNERS_ALIASES
+++ b/OWNERS_ALIASES
@@ -1,91 +1,248 @@
+# This file is auto-generated from peribolos
+
 aliases:
-  pkg-approvers:
+  api-core-wg-leads:
   - dprotaso
-  - evankanderson
-  - grantr
+  autoscaling-reviewers:
+  - taragu
+  autoscaling-wg-leads:
+  - markusthoemmes
+  - vagababov
+  autoscaling-writers:
+  - julz
   - markusthoemmes
-  - mattmoor
-  - tcnghia
   - vagababov
+  - yanweiguo
+  channel-wg-leads:
+  - matzew
+  - slinkydeveloper
+  client-reviewers:
+  - itsmurugappan
+  client-wg-leads:
+  - navidshaikh
+  - rhuss
+  client-writers:
+  - dsimansk
+  - maximilien
+  - navidshaikh
+  - rhuss
+  conformance-wg-leads:
+  - tayarani
+  conformance-writers:
+  - tayarani
+  docs-reviewers:
+  - RichardJJG
+  - jonatasbaldin
+  - mpetason
+  - omerbensaadon
+  - snneji
+  docs-wg-leads: []
+  docs-writers:
+  - abrennan89
+  - carieshmarie
+  - richieescarez
+  eventing-reviewers:
+  - aslom
+  - nlopezgi
+  - tayarani
+  - tommyreddad
+  eventing-triage:
+  - akashrv
+  - antoineco
+  - lberk
+  - n3wscott
+  - slinkydeveloper
+  - zhongduo
+  eventing-wg-leads:
+  - devguyio
+  - grantr
+  - lionelvillard
   - vaikas
+  eventing-writers:
+  - akashrv
+  - aliok
+  - antoineco
+  - devguyio
+  - grantr
+  - lberk
+  - lionelvillard
+  - matzew
   - n3wscott
-
-  apis-approvers:
-  - mattmoor
+  - pierDipi
+  - slinkydeveloper
+  - vaikas
+  - zhongduo
+  knative-admin:
+  - RichieEscarez
+  - bsnchan
+  - duglin
+  - evankanderson
+  - grantr
+  - knative-prow-releaser-robot
+  - knative-prow-robot
+  - knative-test-reporter-robot
+  - markusthoemmes
+  - mbehrendt
+  - pmorie
+  - rhuss
+  - ronavn
+  - thisisnotapril
   - vaikas
+  knative-milestone-maintainers:
+  - ImJasonH
+  - ZhiminXiang
+  - andrew-su
+  - aslom
+  - chaodaiG
+  - chizhg
+  - csantanapr
+  - evankanderson
+  - grantr
+  - igsong
+  - julz
+  - lionelvillard
+  - markusthoemmes
   - n3wscott
-  apis-reviewers:
-  - whaught
-
-  apis-duck-approvers:
-  - mattmoor
+  - nak3
+  - navidshaikh
+  - nlopezgi
+  - rhuss
+  - shashwathi
+  - slinkydeveloper
+  - tanzeeb
+  - tcnghia
+  - vagababov
   - vaikas
-  apis-duck-reviewers:
-  - whaught
-
-  codegen-approvers:
-  - mattmoor
+  knative-release-leads:
+  - RichieEscarez
+  - evankanderson
+  - markusthoemmes
+  knative-robots:
+  - knative-prow-releaser-robot
+  - knative-prow-robot
+  - knative-test-reporter-robot
+  networking-reviewers:
+  - JRBANCEL
+  - ZhiminXiang
+  - andrew-su
+  - arturenault
+  - markusthoemmes
+  - nak3
+  - shashwathi
+  - tcnghia
+  - vagababov
+  - yanweiguo
+  networking-wg-leads:
+  - ZhiminXiang
+  - nak3
+  - tcnghia
+  networking-writers:
+  - JRBANCEL
+  - ZhiminXiang
+  - nak3
+  - tcnghia
+  - vagababov
+  operations-reviewers:
+  - Cynocracy
+  - aliok
+  - houshengbo
+  - jcrossley3
+  - markusthoemmes
+  - matzew
   - n3wscott
-  codegen-reviewers:
-  - whaught
-
-  configmap-approvers:
+  - trshafer
+  operations-wg-leads:
+  - houshengbo
+  operations-writers:
+  - Cynocracy
+  - aliok
+  - houshengbo
+  - jcrossley3
+  - markusthoemmes
+  - matzew
+  - n3wscott
+  - trshafer
+  pkg-configmap-reviewers:
+  - dprotaso
   - mattmoor
   - mdemirhan
+  - vagababov
+  pkg-configmap-writers:
   - dprotaso
+  - mattmoor
+  - mdemirhan
   - vagababov
-
-  controller-approvers:
+  pkg-controller-reviewers:
+  - dprotaso
   - grantr
   - mattmoor
   - tcnghia
   - vagababov
-  controller-reviewers:
   - whaught
-
-  kflag-approvers:
-  - mattmoor
-  - vagababov
-
-  kmeta-approvers:
+  pkg-controller-writers:
+  - dprotaso
+  - grantr
   - mattmoor
+  - tcnghia
   - vagababov
-
-  logging-approvers:
-  - mdemirhan
+  productivity-reviewers:
+  - coryrc
+  - efiturri
+  - evankanderson
+  - peterfeifanchen
+  - steuhs
+  - yt3liu
+  productivity-wg-leads:
+  - chizhg
   - n3wscott
-  - yanweiguo
-
-  metrics-approvers:
+  productivity-writers:
+  - chaodaiG
+  - chizhg
+  - coryrc
+  - n3wscott
+  security-wg-leads:
+  - evankanderson
+  - julz
+  security-writers:
+  - evankanderson
+  - julz
+  serving-observability-reviewers:
   - mdemirhan
+  - skonto
   - yanweiguo
-
-  metrics-reviewers:
+  serving-observability-writers:
   - mdemirhan
   - yanweiguo
-  - skonto
-
-  network-approvers:
+  serving-reviewers:
+  - julz
+  - whaught
+  serving-writers:
+  - dprotaso
   - markusthoemmes
   - tcnghia
   - vagababov
-
-  productivity-approvers:
-  - chaodaiG
-  - chizhg
-  productivity-reviewers:
-  - chaodaiG
-  - coryrc
-  - chizhg
-  - steuhs
-
-  source-approvers:
+  source-wg-leads:
+  - lionelvillard
   - n3wscott
   - vaikas
-
-  webhook-approvers:
-  - dprotaso
-  - mattmoor
-  - tcnghia
-  webhook-reviewers:
-  - whaught
+  steering-committee:
+  - bsnchan
+  - mbehrendt
+  - pmorie
+  - thisisnotapril
+  - vaikas
+  technical-oversight-committee:
+  - evankanderson
+  - grantr
+  - markusthoemmes
+  - rhuss
+  trademark-committee:
+  - bsnchan
+  - duglin
+  - ronavn
+  ux-wg-leads:
+  - csantanapr
+  - omerbensaadon
+  ux-writers:
+  - csantanapr
+  - omerbensaadon
diff --git a/apis/OWNERS b/apis/OWNERS
index 1227b2b9e..82f0814cc 100644
--- a/apis/OWNERS
+++ b/apis/OWNERS
@@ -1,7 +1,9 @@
 # The OWNERS file is used by prow to automatically merge approved PRs.
 
 approvers:
-- apis-approvers
+- mattmoor
+- vaikas
+- n3wscott
 
 reviewers:
-- apis-reviewers
+- whaught
diff --git a/apis/duck/OWNERS b/apis/duck/OWNERS
index 8df611ba0..f6267f14f 100644
--- a/apis/duck/OWNERS
+++ b/apis/duck/OWNERS
@@ -1,7 +1,8 @@
 # The OWNERS file is used by prow to automatically merge approved PRs.
 
 approvers:
-- apis-duck-approvers
+- mattmoor
+- vaikas
 
 reviewers:
-- apis-duck-reviewers
+- whaught
diff --git a/client/injection/apiextensions/reconciler/apiextensions/v1/customresourcedefinition/reconciler.go b/client/injection/apiextensions/reconciler/apiextensions/v1/customresourcedefinition/reconciler.go
index 781c2ef87..fc0019d0a 100644
--- a/client/injection/apiextensions/reconciler/apiextensions/v1/customresourcedefinition/reconciler.go
+++ b/client/injection/apiextensions/reconciler/apiextensions/v1/customresourcedefinition/reconciler.go
@@ -88,13 +88,13 @@ type doReconcile func(ctx context.Context, o *v1.CustomResourceDefinition) recon
 
 // reconcilerImpl implements controller.Reconciler for v1.CustomResourceDefinition resources.
 type reconcilerImpl struct {
-	// LeaderAwareFuncs is inlined to help us implement reconciler.LeaderAware
+	// LeaderAwareFuncs is inlined to help us implement reconciler.LeaderAware.
 	reconciler.LeaderAwareFuncs
 
 	// Client is used to write back status updates.
 	Client clientset.Interface
 
-	// Listers index properties about resources
+	// Listers index properties about resources.
 	Lister apiextensionsv1.CustomResourceDefinitionLister
 
 	// Recorder is an event recorder for recording Event resources to the
@@ -116,7 +116,7 @@ type reconcilerImpl struct {
 	skipStatusUpdates bool
 }
 
-// Check that our Reconciler implements controller.Reconciler
+// Check that our Reconciler implements controller.Reconciler.
 var _ controller.Reconciler = (*reconcilerImpl)(nil)
 
 // Check that our generated Reconciler is always LeaderAware.
diff --git a/client/injection/apiextensions/reconciler/apiextensions/v1/customresourcedefinition/state.go b/client/injection/apiextensions/reconciler/apiextensions/v1/customresourcedefinition/state.go
index 01839c691..a0c4a3787 100644
--- a/client/injection/apiextensions/reconciler/apiextensions/v1/customresourcedefinition/state.go
+++ b/client/injection/apiextensions/reconciler/apiextensions/v1/customresourcedefinition/state.go
@@ -29,28 +29,28 @@ import (
 
 // state is used to track the state of a reconciler in a single run.
 type state struct {
-	// Key is the original reconciliation key from the queue.
+	// key is the original reconciliation key from the queue.
 	key string
-	// Namespace is the namespace split from the reconciliation key.
+	// namespace is the namespace split from the reconciliation key.
 	namespace string
-	// Namespace is the name split from the reconciliation key.
+	// name is the name split from the reconciliation key.
 	name string
 	// reconciler is the reconciler.
 	reconciler Interface
-	// rof is the read only interface cast of the reconciler.
+	// roi is the read only interface cast of the reconciler.
 	roi ReadOnlyInterface
-	// IsROI (Read Only Interface) the reconciler only observes reconciliation.
+	// isROI (Read Only Interface) the reconciler only observes reconciliation.
 	isROI bool
 	// rof is the read only finalizer cast of the reconciler.
 	rof ReadOnlyFinalizer
-	// IsROF (Read Only Finalizer) the reconciler only observes finalize.
+	// isROF (Read Only Finalizer) the reconciler only observes finalize.
 	isROF bool
-	// IsLeader the instance of the reconciler is the elected leader.
+	// isLeader the instance of the reconciler is the elected leader.
 	isLeader bool
 }
 
 func newState(key string, r *reconcilerImpl) (*state, error) {
-	// Convert the namespace/name string into a distinct namespace and name
+	// Convert the namespace/name string into a distinct namespace and name.
 	namespace, name, err := cache.SplitMetaNamespaceKey(key)
 	if err != nil {
 		return nil, fmt.Errorf("invalid resource key: %s", key)
diff --git a/client/injection/apiextensions/reconciler/apiextensions/v1beta1/customresourcedefinition/reconciler.go b/client/injection/apiextensions/reconciler/apiextensions/v1beta1/customresourcedefinition/reconciler.go
index 8cc3dc282..9d181fc84 100644
--- a/client/injection/apiextensions/reconciler/apiextensions/v1beta1/customresourcedefinition/reconciler.go
+++ b/client/injection/apiextensions/reconciler/apiextensions/v1beta1/customresourcedefinition/reconciler.go
@@ -88,13 +88,13 @@ type doReconcile func(ctx context.Context, o *v1beta1.CustomResourceDefinition)
 
 // reconcilerImpl implements controller.Reconciler for v1beta1.CustomResourceDefinition resources.
 type reconcilerImpl struct {
-	// LeaderAwareFuncs is inlined to help us implement reconciler.LeaderAware
+	// LeaderAwareFuncs is inlined to help us implement reconciler.LeaderAware.
 	reconciler.LeaderAwareFuncs
 
 	// Client is used to write back status updates.
 	Client clientset.Interface
 
-	// Listers index properties about resources
+	// Listers index properties about resources.
 	Lister apiextensionsv1beta1.CustomResourceDefinitionLister
 
 	// Recorder is an event recorder for recording Event resources to the
@@ -116,7 +116,7 @@ type reconcilerImpl struct {
 	skipStatusUpdates bool
 }
 
-// Check that our Reconciler implements controller.Reconciler
+// Check that our Reconciler implements controller.Reconciler.
 var _ controller.Reconciler = (*reconcilerImpl)(nil)
 
 // Check that our generated Reconciler is always LeaderAware.
diff --git a/client/injection/apiextensions/reconciler/apiextensions/v1beta1/customresourcedefinition/state.go b/client/injection/apiextensions/reconciler/apiextensions/v1beta1/customresourcedefinition/state.go
index 88a2306af..981ad8e8d 100644
--- a/client/injection/apiextensions/reconciler/apiextensions/v1beta1/customresourcedefinition/state.go
+++ b/client/injection/apiextensions/reconciler/apiextensions/v1beta1/customresourcedefinition/state.go
@@ -29,28 +29,28 @@ import (
 
 // state is used to track the state of a reconciler in a single run.
 type state struct {
-	// Key is the original reconciliation key from the queue.
+	// key is the original reconciliation key from the queue.
 	key string
-	// Namespace is the namespace split from the reconciliation key.
+	// namespace is the namespace split from the reconciliation key.
 	namespace string
-	// Namespace is the name split from the reconciliation key.
+	// name is the name split from the reconciliation key.
 	name string
 	// reconciler is the reconciler.
 	reconciler Interface
-	// rof is the read only interface cast of the reconciler.
+	// roi is the read only interface cast of the reconciler.
 	roi ReadOnlyInterface
-	// IsROI (Read Only Interface) the reconciler only observes reconciliation.
+	// isROI (Read Only Interface) the reconciler only observes reconciliation.
 	isROI bool
 	// rof is the read only finalizer cast of the reconciler.
 	rof ReadOnlyFinalizer
-	// IsROF (Read Only Finalizer) the reconciler only observes finalize.
+	// isROF (Read Only Finalizer) the reconciler only observes finalize.
 	isROF bool
-	// IsLeader the instance of the reconciler is the elected leader.
+	// isLeader the instance of the reconciler is the elected leader.
 	isLeader bool
 }
 
 func newState(key string, r *reconcilerImpl) (*state, error) {
-	// Convert the namespace/name string into a distinct namespace and name
+	// Convert the namespace/name string into a distinct namespace and name.
 	namespace, name, err := cache.SplitMetaNamespaceKey(key)
 	if err != nil {
 		return nil, fmt.Errorf("invalid resource key: %s", key)
diff --git a/client/injection/kube/reconciler/apps/v1/deployment/reconciler.go b/client/injection/kube/reconciler/apps/v1/deployment/reconciler.go
index 12149f3bc..93177fd07 100644
--- a/client/injection/kube/reconciler/apps/v1/deployment/reconciler.go
+++ b/client/injection/kube/reconciler/apps/v1/deployment/reconciler.go
@@ -88,13 +88,13 @@ type doReconcile func(ctx context.Context, o *v1.Deployment) reconciler.Event
 
 // reconcilerImpl implements controller.Reconciler for v1.Deployment resources.
 type reconcilerImpl struct {
-	// LeaderAwareFuncs is inlined to help us implement reconciler.LeaderAware
+	// LeaderAwareFuncs is inlined to help us implement reconciler.LeaderAware.
 	reconciler.LeaderAwareFuncs
 
 	// Client is used to write back status updates.
 	Client kubernetes.Interface
 
-	// Listers index properties about resources
+	// Listers index properties about resources.
 	Lister appsv1.DeploymentLister
 
 	// Recorder is an event recorder for recording Event resources to the
@@ -116,7 +116,7 @@ type reconcilerImpl struct {
 	skipStatusUpdates bool
 }
 
-// Check that our Reconciler implements controller.Reconciler
+// Check that our Reconciler implements controller.Reconciler.
 var _ controller.Reconciler = (*reconcilerImpl)(nil)
 
 // Check that our generated Reconciler is always LeaderAware.
diff --git a/client/injection/kube/reconciler/apps/v1/deployment/state.go b/client/injection/kube/reconciler/apps/v1/deployment/state.go
index ca67d9106..9893d4a6a 100644
--- a/client/injection/kube/reconciler/apps/v1/deployment/state.go
+++ b/client/injection/kube/reconciler/apps/v1/deployment/state.go
@@ -29,28 +29,28 @@ import (
 
 // state is used to track the state of a reconciler in a single run.
 type state struct {
-	// Key is the original reconciliation key from the queue.
+	// key is the original reconciliation key from the queue.
 	key string
-	// Namespace is the namespace split from the reconciliation key.
+	// namespace is the namespace split from the reconciliation key.
 	namespace string
-	// Namespace is the name split from the reconciliation key.
+	// name is the name split from the reconciliation key.
 	name string
 	// reconciler is the reconciler.
 	reconciler Interface
-	// rof is the read only interface cast of the reconciler.
+	// roi is the read only interface cast of the reconciler.
 	roi ReadOnlyInterface
-	// IsROI (Read Only Interface) the reconciler only observes reconciliation.
+	// isROI (Read Only Interface) the reconciler only observes reconciliation.
 	isROI bool
 	// rof is the read only finalizer cast of the reconciler.
 	rof ReadOnlyFinalizer
-	// IsROF (Read Only Finalizer) the reconciler only observes finalize.
+	// isROF (Read Only Finalizer) the reconciler only observes finalize.
 	isROF bool
-	// IsLeader the instance of the reconciler is the elected leader.
+	// isLeader the instance of the reconciler is the elected leader.
 	isLeader bool
 }
 
 func newState(key string, r *reconcilerImpl) (*state, error) {
-	// Convert the namespace/name string into a distinct namespace and name
+	// Convert the namespace/name string into a distinct namespace and name.
 	namespace, name, err := cache.SplitMetaNamespaceKey(key)
 	if err != nil {
 		return nil, fmt.Errorf("invalid resource key: %s", key)
diff --git a/client/injection/kube/reconciler/core/v1/namespace/reconciler.go b/client/injection/kube/reconciler/core/v1/namespace/reconciler.go
index 8dac191d5..6ffc0d132 100644
--- a/client/injection/kube/reconciler/core/v1/namespace/reconciler.go
+++ b/client/injection/kube/reconciler/core/v1/namespace/reconciler.go
@@ -87,13 +87,13 @@ type doReconcile func(ctx context.Context, o *v1.Namespace) reconciler.Event
 
 // reconcilerImpl implements controller.Reconciler for v1.Namespace resources.
 type reconcilerImpl struct {
-	// LeaderAwareFuncs is inlined to help us implement reconciler.LeaderAware
+	// LeaderAwareFuncs is inlined to help us implement reconciler.LeaderAware.
 	reconciler.LeaderAwareFuncs
 
 	// Client is used to write back status updates.
 	Client kubernetes.Interface
 
-	// Listers index properties about resources
+	// Listers index properties about resources.
 	Lister corev1.NamespaceLister
 
 	// Recorder is an event recorder for recording Event resources to the
@@ -115,7 +115,7 @@ type reconcilerImpl struct {
 	skipStatusUpdates bool
 }
 
-// Check that our Reconciler implements controller.Reconciler
+// Check that our Reconciler implements controller.Reconciler.
 var _ controller.Reconciler = (*reconcilerImpl)(nil)
 
 // Check that our generated Reconciler is always LeaderAware.
diff --git a/client/injection/kube/reconciler/core/v1/namespace/state.go b/client/injection/kube/reconciler/core/v1/namespace/state.go
index bc383a76b..24b5bfcb3 100644
--- a/client/injection/kube/reconciler/core/v1/namespace/state.go
+++ b/client/injection/kube/reconciler/core/v1/namespace/state.go
@@ -29,28 +29,28 @@ import (
 
 // state is used to track the state of a reconciler in a single run.
 type state struct {
-	// Key is the original reconciliation key from the queue.
+	// key is the original reconciliation key from the queue.
 	key string
-	// Namespace is the namespace split from the reconciliation key.
+	// namespace is the namespace split from the reconciliation key.
 	namespace string
-	// Namespace is the name split from the reconciliation key.
+	// name is the name split from the reconciliation key.
 	name string
 	// reconciler is the reconciler.
 	reconciler Interface
-	// rof is the read only interface cast of the reconciler.
+	// roi is the read only interface cast of the reconciler.
 	roi ReadOnlyInterface
-	// IsROI (Read Only Interface) the reconciler only observes reconciliation.
+	// isROI (Read Only Interface) the reconciler only observes reconciliation.
 	isROI bool
 	// rof is the read only finalizer cast of the reconciler.
 	rof ReadOnlyFinalizer
-	// IsROF (Read Only Finalizer) the reconciler only observes finalize.
+	// isROF (Read Only Finalizer) the reconciler only observes finalize.
 	isROF bool
-	// IsLeader the instance of the reconciler is the elected leader.
+	// isLeader the instance of the reconciler is the elected leader.
 	isLeader bool
 }
 
 func newState(key string, r *reconcilerImpl) (*state, error) {
-	// Convert the namespace/name string into a distinct namespace and name
+	// Convert the namespace/name string into a distinct namespace and name.
 	namespace, name, err := cache.SplitMetaNamespaceKey(key)
 	if err != nil {
 		return nil, fmt.Errorf("invalid resource key: %s", key)
diff --git a/client/injection/kube/reconciler/core/v1/secret/reconciler.go b/client/injection/kube/reconciler/core/v1/secret/reconciler.go
index 25230057a..57c3782f1 100644
--- a/client/injection/kube/reconciler/core/v1/secret/reconciler.go
+++ b/client/injection/kube/reconciler/core/v1/secret/reconciler.go
@@ -84,13 +84,13 @@ type doReconcile func(ctx context.Context, o *v1.Secret) reconciler.Event
 
 // reconcilerImpl implements controller.Reconciler for v1.Secret resources.
 type reconcilerImpl struct {
-	// LeaderAwareFuncs is inlined to help us implement reconciler.LeaderAware
+	// LeaderAwareFuncs is inlined to help us implement reconciler.LeaderAware.
 	reconciler.LeaderAwareFuncs
 
 	// Client is used to write back status updates.
 	Client kubernetes.Interface
 
-	// Listers index properties about resources
+	// Listers index properties about resources.
 	Lister corev1.SecretLister
 
 	// Recorder is an event recorder for recording Event resources to the
@@ -108,7 +108,7 @@ type reconcilerImpl struct {
 	finalizerName string
 }
 
-// Check that our Reconciler implements controller.Reconciler
+// Check that our Reconciler implements controller.Reconciler.
 var _ controller.Reconciler = (*reconcilerImpl)(nil)
 
 // Check that our generated Reconciler is always LeaderAware.
diff --git a/client/injection/kube/reconciler/core/v1/secret/state.go b/client/injection/kube/reconciler/core/v1/secret/state.go
index 23b0d48fd..62441ced6 100644
--- a/client/injection/kube/reconciler/core/v1/secret/state.go
+++ b/client/injection/kube/reconciler/core/v1/secret/state.go
@@ -29,28 +29,28 @@ import (
 
 // state is used to track the state of a reconciler in a single run.
 type state struct {
-	// Key is the original reconciliation key from the queue.
+	// key is the original reconciliation key from the queue.
 	key string
-	// Namespace is the namespace split from the reconciliation key.
+	// namespace is the namespace split from the reconciliation key.
 	namespace string
-	// Namespace is the name split from the reconciliation key.
+	// name is the name split from the reconciliation key.
 	name string
 	// reconciler is the reconciler.
 	reconciler Interface
-	// rof is the read only interface cast of the reconciler.
+	// roi is the read only interface cast of the reconciler.
 	roi ReadOnlyInterface
-	// IsROI (Read Only Interface) the reconciler only observes reconciliation.
+	// isROI (Read Only Interface) the reconciler only observes reconciliation.
 	isROI bool
 	// rof is the read only finalizer cast of the reconciler.
 	rof ReadOnlyFinalizer
-	// IsROF (Read Only Finalizer) the reconciler only observes finalize.
+	// isROF (Read Only Finalizer) the reconciler only observes finalize.
 	isROF bool
-	// IsLeader the instance of the reconciler is the elected leader.
+	// isLeader the instance of the reconciler is the elected leader.
 	isLeader bool
 }
 
 func newState(key string, r *reconcilerImpl) (*state, error) {
-	// Convert the namespace/name string into a distinct namespace and name
+	// Convert the namespace/name string into a distinct namespace and name.
 	namespace, name, err := cache.SplitMetaNamespaceKey(key)
 	if err != nil {
 		return nil, fmt.Errorf("invalid resource key: %s", key)
diff --git a/codegen/OWNERS b/codegen/OWNERS
index 9053435aa..6aaff7661 100644
--- a/codegen/OWNERS
+++ b/codegen/OWNERS
@@ -1,7 +1,8 @@
 # The OWNERS file is used by prow to automatically merge approved PRs.
 
 approvers:
-- codegen-approvers
+- mattmoor
+- n3wscott
 
 reviewers:
-- codegen-reviewers
+- whaught
diff --git a/codegen/cmd/injection-gen/generators/reconciler_reconciler.go b/codegen/cmd/injection-gen/generators/reconciler_reconciler.go
index cc6757da8..c193198b9 100644
--- a/codegen/cmd/injection-gen/generators/reconciler_reconciler.go
+++ b/codegen/cmd/injection-gen/generators/reconciler_reconciler.go
@@ -270,13 +270,13 @@ type doReconcile func(ctx {{.contextContext|raw}}, o *{{.type|raw}}) {{.reconcil
 
 // reconcilerImpl implements controller.Reconciler for {{.type|raw}} resources.
 type reconcilerImpl struct {
-	// LeaderAwareFuncs is inlined to help us implement {{.reconcilerLeaderAware|raw}}
+	// LeaderAwareFuncs is inlined to help us implement {{.reconcilerLeaderAware|raw}}.
 	{{.reconcilerLeaderAwareFuncs|raw}}
 
 	// Client is used to write back status updates.
 	Client {{.clientsetInterface|raw}}
 
-	// Listers index properties about resources
+	// Listers index properties about resources.
 	Lister {{.resourceLister|raw}}
 
 	// Recorder is an event recorder for recording Event resources to the
@@ -305,7 +305,7 @@ type reconcilerImpl struct {
 	{{end}}
 }
 
-// Check that our Reconciler implements controller.Reconciler
+// Check that our Reconciler implements controller.Reconciler.
 var _ controller.Reconciler = (*reconcilerImpl)(nil)
 // Check that our generated Reconciler is always LeaderAware.
 var _ {{.reconcilerLeaderAware|raw}}  = (*reconcilerImpl)(nil)
diff --git a/codegen/cmd/injection-gen/generators/reconciler_state.go b/codegen/cmd/injection-gen/generators/reconciler_state.go
index fb14cd899..db8334b40 100644
--- a/codegen/cmd/injection-gen/generators/reconciler_state.go
+++ b/codegen/cmd/injection-gen/generators/reconciler_state.go
@@ -99,28 +99,28 @@ func (g *reconcilerStateGenerator) GenerateType(c *generator.Context, t *types.T
 var reconcilerStateType = `
 // state is used to track the state of a reconciler in a single run.
 type state struct {
-	// Key is the original reconciliation key from the queue.
+	// key is the original reconciliation key from the queue.
 	key string
-	// Namespace is the namespace split from the reconciliation key.
+	// namespace is the namespace split from the reconciliation key.
 	namespace string
-	// Namespace is the name split from the reconciliation key.
+	// name is the name split from the reconciliation key.
 	name string
 	// reconciler is the reconciler.
 	reconciler Interface
-	// rof is the read only interface cast of the reconciler.
+	// roi is the read only interface cast of the reconciler.
 	roi ReadOnlyInterface
-	// IsROI (Read Only Interface) the reconciler only observes reconciliation.
+	// isROI (Read Only Interface) the reconciler only observes reconciliation.
 	isROI bool
 	// rof is the read only finalizer cast of the reconciler.
 	rof ReadOnlyFinalizer
-	// IsROF (Read Only Finalizer) the reconciler only observes finalize.
+	// isROF (Read Only Finalizer) the reconciler only observes finalize.
 	isROF bool
-	// IsLeader the instance of the reconciler is the elected leader.
+	// isLeader the instance of the reconciler is the elected leader.
 	isLeader bool
 }
 
 func newState(key string, r *reconcilerImpl) (*state, error) {
-	// Convert the namespace/name string into a distinct namespace and name
+	// Convert the namespace/name string into a distinct namespace and name.
 	namespace, name, err := {{.cacheSplitMetaNamespaceKey|raw}}(key)
 	if err != nil {
 		return nil, {{.fmtErrorf|raw}}("invalid resource key: %s", key)
diff --git a/configmap/OWNERS b/configmap/OWNERS
index 2480fc6d4..c3ff67e25 100644
--- a/configmap/OWNERS
+++ b/configmap/OWNERS
@@ -1,4 +1,6 @@
 # The OWNERS file is used by prow to automatically merge approved PRs.
 
 approvers:
-- configmap-approvers
+- pkg-configmap-writers
+reviewers:
+- pkg-configmap-reviewers
diff --git a/controller/OWNERS b/controller/OWNERS
index 0b270d53a..9c7a432ba 100644
--- a/controller/OWNERS
+++ b/controller/OWNERS
@@ -1,7 +1,7 @@
 # The OWNERS file is used by prow to automatically merge approved PRs.
 
 approvers:
-- controller-approvers
+- pkg-controller-writers
 
 reviewers:
-- controller-reviewers
+- pkg-controller-reviewers
diff --git a/hack/OWNERS b/hack/OWNERS
index c50adc849..65aa9e7b1 100644
--- a/hack/OWNERS
+++ b/hack/OWNERS
@@ -1,7 +1,7 @@
 # The OWNERS file is used by prow to automatically merge approved PRs.
 
 approvers:
-- productivity-approvers
+- productivity-writers
 
 reviewers:
 - productivity-reviewers
diff --git a/hash/OWNERS b/hash/OWNERS
index 0b270d53a..9c7a432ba 100644
--- a/hash/OWNERS
+++ b/hash/OWNERS
@@ -1,7 +1,7 @@
 # The OWNERS file is used by prow to automatically merge approved PRs.
 
 approvers:
-- controller-approvers
+- pkg-controller-writers
 
 reviewers:
-- controller-reviewers
+- pkg-controller-reviewers
diff --git a/kflag/OWNERS b/kflag/OWNERS
index 0222d3f38..a1e0f822a 100644
--- a/kflag/OWNERS
+++ b/kflag/OWNERS
@@ -1,4 +1,5 @@
 # The OWNERS file is used by prow to automatically merge approved PRs.
 
 approvers:
-- kflag-approvers
+- mattmoor
+- vagababov
diff --git a/kmeta/OWNERS b/kmeta/OWNERS
index 29b0d9f25..a1e0f822a 100644
--- a/kmeta/OWNERS
+++ b/kmeta/OWNERS
@@ -1,4 +1,5 @@
 # The OWNERS file is used by prow to automatically merge approved PRs.
 
 approvers:
-- kmeta-approvers
+- mattmoor
+- vagababov
diff --git a/logging/OWNERS b/logging/OWNERS
index fa4854ba0..f51b91be7 100644
--- a/logging/OWNERS
+++ b/logging/OWNERS
@@ -1,4 +1,6 @@
 # The OWNERS file is used by prow to automatically merge approved PRs.
 
 approvers:
-- logging-approvers
+- mdemirhan
+- n3wscott
+- yanweiguo
diff --git a/metrics/OWNERS b/metrics/OWNERS
index bd4290683..7cd699f27 100644
--- a/metrics/OWNERS
+++ b/metrics/OWNERS
@@ -1,7 +1,10 @@
 # The OWNERS file is used by prow to automatically merge approved PRs.
 
 approvers:
-- metrics-approvers
+- mdemirhan
+- yanweiguo
 
 reviewers:
-- metrics-reviewers
+- mdemirhan
+- yanweiguo
+- skonto
diff --git a/network/domain.go b/network/domain.go
index a205b4eec..ee571e0bc 100644
--- a/network/domain.go
+++ b/network/domain.go
@@ -26,8 +26,9 @@ import (
 )
 
 const (
-	resolverFileName  = "/etc/resolv.conf"
-	defaultDomainName = "cluster.local"
+	resolverFileName    = "/etc/resolv.conf"
+	clusterDomainEnvKey = "CLUSTER_DOMAIN"
+	defaultDomainName   = "cluster.local"
 )
 
 var (
@@ -55,6 +56,7 @@ func GetClusterDomainName() string {
 }
 
 func getClusterDomainName(r io.Reader) string {
+	// First look in the conf file.
 	for scanner := bufio.NewScanner(r); scanner.Scan(); {
 		elements := strings.Split(scanner.Text(), " ")
 		if elements[0] != "search" {
@@ -66,6 +68,12 @@ func getClusterDomainName(r io.Reader) string {
 			}
 		}
 	}
+
+	// Then look in the ENV.
+	if domain := os.Getenv(clusterDomainEnvKey); len(domain) > 0 {
+		return domain
+	}
+
 	// For all abnormal cases return default domain name.
 	return defaultDomainName
 }
diff --git a/pool/OWNERS b/pool/OWNERS
index 5c0a9d035..758a612a0 100644
--- a/pool/OWNERS
+++ b/pool/OWNERS
@@ -1,10 +1,10 @@
 # The OWNERS file is used by prow to automatically merge approved PRs.
 
 approvers:
-- controller-approvers
+- pkg-controller-writers
 
 reviewers:
-- controller-reviewers
+- pkg-controller-reviewers
 
 labels:
 - area/API
diff --git a/reconciler/OWNERS b/reconciler/OWNERS
index 0b270d53a..9c7a432ba 100644
--- a/reconciler/OWNERS
+++ b/reconciler/OWNERS
@@ -1,7 +1,7 @@
 # The OWNERS file is used by prow to automatically merge approved PRs.
 
 approvers:
-- controller-approvers
+- pkg-controller-writers
 
 reviewers:
-- controller-reviewers
+- pkg-controller-reviewers
diff --git a/source/OWNERS b/source/OWNERS
index 8d1691216..422377329 100644
--- a/source/OWNERS
+++ b/source/OWNERS
@@ -1,4 +1,5 @@
 # The OWNERS file is used by prow to automatically merge approved PRs.
 
 approvers:
-- source-approvers
+- n3wscott
+- vaikas
diff --git a/tracing/config/OWNERS b/tracing/config/OWNERS
index 2480fc6d4..c3ff67e25 100644
--- a/tracing/config/OWNERS
+++ b/tracing/config/OWNERS
@@ -1,4 +1,6 @@
 # The OWNERS file is used by prow to automatically merge approved PRs.
 
 approvers:
-- configmap-approvers
+- pkg-configmap-writers
+reviewers:
+- pkg-configmap-reviewers
diff --git a/webhook/OWNERS b/webhook/OWNERS
index 001df221f..c1d307e33 100644
--- a/webhook/OWNERS
+++ b/webhook/OWNERS
@@ -1,7 +1,9 @@
 # The OWNERS file is used by prow to automatically merge approved PRs.
 
 approvers:
-- webhook-approvers
+- dprotaso
+- mattmoor
+- tcnghia
 
 reviewers:
-- webhook-reviewers
+- whaught
diff --git a/websocket/OWNERS b/websocket/OWNERS
index c3fa6ca63..c25a9b709 100644
--- a/websocket/OWNERS
+++ b/websocket/OWNERS
@@ -1,4 +1,7 @@
 # The OWNERS file is used by prow to automatically merge approved PRs.
 
 approvers:
-- network-approvers
+  - markusthoemmes
+  - tcnghia
+  - vagababov
+


Test patch:
diff --git a/network/domain_test.go b/network/domain_test.go
index 6ce3ba3e6..e6a61d235 100644
--- a/network/domain_test.go
+++ b/network/domain_test.go
@@ -17,6 +17,7 @@ limitations under the License.
 package network
 
 import (
+	"os"
 	"strings"
 	"testing"
 )
@@ -24,46 +25,71 @@ import (
 func TestGetDomainName(t *testing.T) {
 	tests := []struct {
 		name       string
+		env        string
 		resolvConf string
 		want       string
-	}{
-		{
-			name: "all good",
-			resolvConf: `
+	}{{
+		name: "all good",
+		resolvConf: `
 nameserver 1.1.1.1
 search default.svc.abc.com svc.abc.com abc.com
 options ndots:5
 `,
-			want: "abc.com",
-		},
-		{
-			name: "all good with trailing dot",
-			resolvConf: `
+		want: "abc.com",
+	}, {
+		name: "all good with env set but ignored",
+		resolvConf: `
+nameserver 1.1.1.1
+search default.svc.abc.com svc.abc.com abc.com
+options ndots:5
+`,
+		env:  "ignored.com",
+		want: "abc.com",
+	}, {
+		name:       "all good from env",
+		resolvConf: ``,
+		env:        "abc.com",
+		want:       "abc.com",
+	}, {
+		name: "all good with trailing dot",
+		resolvConf: `
 nameserver 1.1.1.1
 search default.svc.abc.com. svc.abc.com. abc.com.
 options ndots:5
 `,
-			want: "abc.com",
-		},
-		{
-			name: "missing search line",
-			resolvConf: `
+		want: "abc.com",
+	}, {
+		name: "missing search line",
+		resolvConf: `
 nameserver 1.1.1.1
 options ndots:5
 `,
-			want: defaultDomainName,
-		},
-		{
-			name: "non k8s resolv.conf format",
-			resolvConf: `
+		want: defaultDomainName,
+	}, {
+		name: "non k8s resolv.conf format",
+		resolvConf: `
 nameserver 1.1.1.1
 search  abc.com xyz.com
 options ndots:5
 `,
-			want: defaultDomainName,
-		},
-	}
+		want: defaultDomainName,
+	}}
+
+	domainWas := os.Getenv(clusterDomainEnvKey)
+	t.Cleanup(func() {
+		if len(domainWas) > 0 {
+			_ = os.Setenv(clusterDomainEnvKey, domainWas)
+		} else {
+			_ = os.Unsetenv(clusterDomainEnvKey)
+		}
+	})
+
 	for _, tt := range tests {
+		if len(tt.env) > 0 {
+			_ = os.Setenv(clusterDomainEnvKey, tt.env)
+		} else {
+			_ = os.Unsetenv(clusterDomainEnvKey)
+		}
 		got := getClusterDomainName(strings.NewReader(tt.resolvConf))
 		if got != tt.want {
 			t.Errorf("Test %s failed expected: %s but got: %s", tt.name, tt.want, got)
diff --git a/test/OWNERS b/test/OWNERS
index c50adc849..65aa9e7b1 100644
--- a/test/OWNERS
+++ b/test/OWNERS
@@ -1,7 +1,7 @@
 # The OWNERS file is used by prow to automatically merge approved PRs.
 
 approvers:
-- productivity-approvers
+- productivity-writers
 
 reviewers:
 - productivity-reviewers