Auto-update dependencies (#211)

Produced via:
  `dep ensure -update knative.dev/test-infra knative.dev/pkg`
/assign n3wscott
/cc n3wscott
This commit is contained in:
Matt Moore 2020-02-24 07:21:08 -08:00 committed by GitHub
parent 926e84e7b9
commit d2c62d27bb
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
105 changed files with 372 additions and 265 deletions

6
Gopkg.lock generated
View File

@ -966,7 +966,7 @@
[[projects]] [[projects]]
branch = "master" branch = "master"
digest = "1:f44b87ebe4aefb51530107b1d09dce6b81fc35c45117e4025f1dbcb33315a4a8" digest = "1:cc94fa80f6e4903c1c5b2fc8673156762b2ab2dfe3be11486fea0307e9de71b8"
name = "knative.dev/pkg" name = "knative.dev/pkg"
packages = [ packages = [
"apis", "apis",
@ -986,7 +986,7 @@
"reconciler", "reconciler",
] ]
pruneopts = "T" pruneopts = "T"
revision = "d9a38f13e8b9aa736f714b793ee28788de1b30e0" revision = "a2e3b66654c1bcd82df07f8b4c45b19bad7ab21a"
[[projects]] [[projects]]
branch = "master" branch = "master"
@ -997,7 +997,7 @@
"tools/dep-collector", "tools/dep-collector",
] ]
pruneopts = "UT" pruneopts = "UT"
revision = "0a90cb89503890eab3452dac905b54c67c53145f" revision = "39583d93138a50f40291bbeb74dbacbfc4e7d4c7"
[[projects]] [[projects]]
digest = "1:8730e0150dfb2b7e173890c8b9868e7a273082ef8e39f4940e3506a481cf895c" digest = "1:8730e0150dfb2b7e173890c8b9868e7a273082ef8e39f4940e3506a481cf895c"

View File

@ -19,7 +19,7 @@ limitations under the License.
package client package client
import ( import (
"context" context "context"
rest "k8s.io/client-go/rest" rest "k8s.io/client-go/rest"
versioned "knative.dev/caching/pkg/client/clientset/versioned" versioned "knative.dev/caching/pkg/client/clientset/versioned"

View File

@ -19,10 +19,10 @@ limitations under the License.
package fake package fake
import ( import (
"context" context "context"
"k8s.io/apimachinery/pkg/runtime" runtime "k8s.io/apimachinery/pkg/runtime"
"k8s.io/client-go/rest" rest "k8s.io/client-go/rest"
fake "knative.dev/caching/pkg/client/clientset/versioned/fake" fake "knative.dev/caching/pkg/client/clientset/versioned/fake"
client "knative.dev/caching/pkg/client/injection/client" client "knative.dev/caching/pkg/client/injection/client"
injection "knative.dev/pkg/injection" injection "knative.dev/pkg/injection"

View File

@ -19,7 +19,7 @@ limitations under the License.
package fake package fake
import ( import (
"context" context "context"
image "knative.dev/caching/pkg/client/injection/informers/caching/v1alpha1/image" image "knative.dev/caching/pkg/client/injection/informers/caching/v1alpha1/image"
fake "knative.dev/caching/pkg/client/injection/informers/factory/fake" fake "knative.dev/caching/pkg/client/injection/informers/factory/fake"

View File

@ -19,7 +19,7 @@ limitations under the License.
package image package image
import ( import (
"context" context "context"
v1alpha1 "knative.dev/caching/pkg/client/informers/externalversions/caching/v1alpha1" v1alpha1 "knative.dev/caching/pkg/client/informers/externalversions/caching/v1alpha1"
factory "knative.dev/caching/pkg/client/injection/informers/factory" factory "knative.dev/caching/pkg/client/injection/informers/factory"

View File

@ -19,7 +19,7 @@ limitations under the License.
package factory package factory
import ( import (
"context" context "context"
externalversions "knative.dev/caching/pkg/client/informers/externalversions" externalversions "knative.dev/caching/pkg/client/informers/externalversions"
client "knative.dev/caching/pkg/client/injection/client" client "knative.dev/caching/pkg/client/injection/client"

View File

@ -19,7 +19,7 @@ limitations under the License.
package fake package fake
import ( import (
"context" context "context"
externalversions "knative.dev/caching/pkg/client/informers/externalversions" externalversions "knative.dev/caching/pkg/client/informers/externalversions"
fake "knative.dev/caching/pkg/client/injection/client/fake" fake "knative.dev/caching/pkg/client/injection/client/fake"

View File

@ -19,7 +19,7 @@ limitations under the License.
package client package client
import ( import (
"context" context "context"
clientset "k8s.io/apiextensions-apiserver/pkg/client/clientset/clientset" clientset "k8s.io/apiextensions-apiserver/pkg/client/clientset/clientset"
rest "k8s.io/client-go/rest" rest "k8s.io/client-go/rest"

View File

@ -19,11 +19,11 @@ limitations under the License.
package fake package fake
import ( import (
"context" context "context"
fake "k8s.io/apiextensions-apiserver/pkg/client/clientset/clientset/fake" fake "k8s.io/apiextensions-apiserver/pkg/client/clientset/clientset/fake"
"k8s.io/apimachinery/pkg/runtime" runtime "k8s.io/apimachinery/pkg/runtime"
"k8s.io/client-go/rest" rest "k8s.io/client-go/rest"
client "knative.dev/pkg/client/injection/apiextensions/client" client "knative.dev/pkg/client/injection/apiextensions/client"
injection "knative.dev/pkg/injection" injection "knative.dev/pkg/injection"
logging "knative.dev/pkg/logging" logging "knative.dev/pkg/logging"

View File

@ -19,7 +19,7 @@ limitations under the License.
package customresourcedefinition package customresourcedefinition
import ( import (
"context" context "context"
v1beta1 "k8s.io/apiextensions-apiserver/pkg/client/informers/externalversions/apiextensions/v1beta1" v1beta1 "k8s.io/apiextensions-apiserver/pkg/client/informers/externalversions/apiextensions/v1beta1"
factory "knative.dev/pkg/client/injection/apiextensions/informers/factory" factory "knative.dev/pkg/client/injection/apiextensions/informers/factory"

View File

@ -19,7 +19,7 @@ limitations under the License.
package fake package fake
import ( import (
"context" context "context"
customresourcedefinition "knative.dev/pkg/client/injection/apiextensions/informers/apiextensions/v1beta1/customresourcedefinition" customresourcedefinition "knative.dev/pkg/client/injection/apiextensions/informers/apiextensions/v1beta1/customresourcedefinition"
fake "knative.dev/pkg/client/injection/apiextensions/informers/factory/fake" fake "knative.dev/pkg/client/injection/apiextensions/informers/factory/fake"

View File

@ -19,7 +19,7 @@ limitations under the License.
package factory package factory
import ( import (
"context" context "context"
externalversions "k8s.io/apiextensions-apiserver/pkg/client/informers/externalversions" externalversions "k8s.io/apiextensions-apiserver/pkg/client/informers/externalversions"
client "knative.dev/pkg/client/injection/apiextensions/client" client "knative.dev/pkg/client/injection/apiextensions/client"

View File

@ -19,7 +19,7 @@ limitations under the License.
package fake package fake
import ( import (
"context" context "context"
externalversions "k8s.io/apiextensions-apiserver/pkg/client/informers/externalversions" externalversions "k8s.io/apiextensions-apiserver/pkg/client/informers/externalversions"
fake "knative.dev/pkg/client/injection/apiextensions/client/fake" fake "knative.dev/pkg/client/injection/apiextensions/client/fake"

View File

@ -19,7 +19,7 @@ limitations under the License.
package addressable package addressable
import ( import (
"context" context "context"
duck "knative.dev/pkg/apis/duck" duck "knative.dev/pkg/apis/duck"
v1 "knative.dev/pkg/apis/duck/v1" v1 "knative.dev/pkg/apis/duck/v1"

View File

@ -19,7 +19,7 @@ limitations under the License.
package conditions package conditions
import ( import (
"context" context "context"
duck "knative.dev/pkg/apis/duck" duck "knative.dev/pkg/apis/duck"
v1 "knative.dev/pkg/apis/duck/v1" v1 "knative.dev/pkg/apis/duck/v1"

View File

@ -19,7 +19,7 @@ limitations under the License.
package podspecable package podspecable
import ( import (
"context" context "context"
duck "knative.dev/pkg/apis/duck" duck "knative.dev/pkg/apis/duck"
v1 "knative.dev/pkg/apis/duck/v1" v1 "knative.dev/pkg/apis/duck/v1"

View File

@ -19,7 +19,7 @@ limitations under the License.
package source package source
import ( import (
"context" context "context"
duck "knative.dev/pkg/apis/duck" duck "knative.dev/pkg/apis/duck"
v1 "knative.dev/pkg/apis/duck/v1" v1 "knative.dev/pkg/apis/duck/v1"

View File

@ -19,7 +19,7 @@ limitations under the License.
package addressable package addressable
import ( import (
"context" context "context"
duck "knative.dev/pkg/apis/duck" duck "knative.dev/pkg/apis/duck"
v1alpha1 "knative.dev/pkg/apis/duck/v1alpha1" v1alpha1 "knative.dev/pkg/apis/duck/v1alpha1"

View File

@ -19,7 +19,7 @@ limitations under the License.
package binding package binding
import ( import (
"context" context "context"
duck "knative.dev/pkg/apis/duck" duck "knative.dev/pkg/apis/duck"
v1alpha1 "knative.dev/pkg/apis/duck/v1alpha1" v1alpha1 "knative.dev/pkg/apis/duck/v1alpha1"

View File

@ -19,7 +19,7 @@ limitations under the License.
package legacytargetable package legacytargetable
import ( import (
"context" context "context"
duck "knative.dev/pkg/apis/duck" duck "knative.dev/pkg/apis/duck"
v1alpha1 "knative.dev/pkg/apis/duck/v1alpha1" v1alpha1 "knative.dev/pkg/apis/duck/v1alpha1"

View File

@ -19,7 +19,7 @@ limitations under the License.
package targetable package targetable
import ( import (
"context" context "context"
duck "knative.dev/pkg/apis/duck" duck "knative.dev/pkg/apis/duck"
v1alpha1 "knative.dev/pkg/apis/duck/v1alpha1" v1alpha1 "knative.dev/pkg/apis/duck/v1alpha1"

View File

@ -19,7 +19,7 @@ limitations under the License.
package addressable package addressable
import ( import (
"context" context "context"
duck "knative.dev/pkg/apis/duck" duck "knative.dev/pkg/apis/duck"
v1beta1 "knative.dev/pkg/apis/duck/v1beta1" v1beta1 "knative.dev/pkg/apis/duck/v1beta1"

View File

@ -19,7 +19,7 @@ limitations under the License.
package conditions package conditions
import ( import (
"context" context "context"
duck "knative.dev/pkg/apis/duck" duck "knative.dev/pkg/apis/duck"
v1beta1 "knative.dev/pkg/apis/duck/v1beta1" v1beta1 "knative.dev/pkg/apis/duck/v1beta1"

View File

@ -19,7 +19,7 @@ limitations under the License.
package source package source
import ( import (
"context" context "context"
duck "knative.dev/pkg/apis/duck" duck "knative.dev/pkg/apis/duck"
v1beta1 "knative.dev/pkg/apis/duck/v1beta1" v1beta1 "knative.dev/pkg/apis/duck/v1beta1"

View File

@ -19,7 +19,7 @@ limitations under the License.
package client package client
import ( import (
"context" context "context"
kubernetes "k8s.io/client-go/kubernetes" kubernetes "k8s.io/client-go/kubernetes"
rest "k8s.io/client-go/rest" rest "k8s.io/client-go/rest"

View File

@ -19,11 +19,11 @@ limitations under the License.
package fake package fake
import ( import (
"context" context "context"
"k8s.io/apimachinery/pkg/runtime" runtime "k8s.io/apimachinery/pkg/runtime"
fake "k8s.io/client-go/kubernetes/fake" fake "k8s.io/client-go/kubernetes/fake"
"k8s.io/client-go/rest" rest "k8s.io/client-go/rest"
client "knative.dev/pkg/client/injection/kube/client" client "knative.dev/pkg/client/injection/kube/client"
injection "knative.dev/pkg/injection" injection "knative.dev/pkg/injection"
logging "knative.dev/pkg/logging" logging "knative.dev/pkg/logging"

View File

@ -19,7 +19,7 @@ limitations under the License.
package fake package fake
import ( import (
"context" context "context"
mutatingwebhookconfiguration "knative.dev/pkg/client/injection/kube/informers/admissionregistration/v1beta1/mutatingwebhookconfiguration" mutatingwebhookconfiguration "knative.dev/pkg/client/injection/kube/informers/admissionregistration/v1beta1/mutatingwebhookconfiguration"
fake "knative.dev/pkg/client/injection/kube/informers/factory/fake" fake "knative.dev/pkg/client/injection/kube/informers/factory/fake"

View File

@ -19,7 +19,7 @@ limitations under the License.
package mutatingwebhookconfiguration package mutatingwebhookconfiguration
import ( import (
"context" context "context"
v1beta1 "k8s.io/client-go/informers/admissionregistration/v1beta1" v1beta1 "k8s.io/client-go/informers/admissionregistration/v1beta1"
factory "knative.dev/pkg/client/injection/kube/informers/factory" factory "knative.dev/pkg/client/injection/kube/informers/factory"

View File

@ -19,7 +19,7 @@ limitations under the License.
package fake package fake
import ( import (
"context" context "context"
validatingwebhookconfiguration "knative.dev/pkg/client/injection/kube/informers/admissionregistration/v1beta1/validatingwebhookconfiguration" validatingwebhookconfiguration "knative.dev/pkg/client/injection/kube/informers/admissionregistration/v1beta1/validatingwebhookconfiguration"
fake "knative.dev/pkg/client/injection/kube/informers/factory/fake" fake "knative.dev/pkg/client/injection/kube/informers/factory/fake"

View File

@ -19,7 +19,7 @@ limitations under the License.
package validatingwebhookconfiguration package validatingwebhookconfiguration
import ( import (
"context" context "context"
v1beta1 "k8s.io/client-go/informers/admissionregistration/v1beta1" v1beta1 "k8s.io/client-go/informers/admissionregistration/v1beta1"
factory "knative.dev/pkg/client/injection/kube/informers/factory" factory "knative.dev/pkg/client/injection/kube/informers/factory"

View File

@ -19,7 +19,7 @@ limitations under the License.
package controllerrevision package controllerrevision
import ( import (
"context" context "context"
v1 "k8s.io/client-go/informers/apps/v1" v1 "k8s.io/client-go/informers/apps/v1"
factory "knative.dev/pkg/client/injection/kube/informers/factory" factory "knative.dev/pkg/client/injection/kube/informers/factory"

View File

@ -19,7 +19,7 @@ limitations under the License.
package fake package fake
import ( import (
"context" context "context"
controllerrevision "knative.dev/pkg/client/injection/kube/informers/apps/v1/controllerrevision" controllerrevision "knative.dev/pkg/client/injection/kube/informers/apps/v1/controllerrevision"
fake "knative.dev/pkg/client/injection/kube/informers/factory/fake" fake "knative.dev/pkg/client/injection/kube/informers/factory/fake"

View File

@ -19,7 +19,7 @@ limitations under the License.
package daemonset package daemonset
import ( import (
"context" context "context"
v1 "k8s.io/client-go/informers/apps/v1" v1 "k8s.io/client-go/informers/apps/v1"
factory "knative.dev/pkg/client/injection/kube/informers/factory" factory "knative.dev/pkg/client/injection/kube/informers/factory"

View File

@ -19,7 +19,7 @@ limitations under the License.
package fake package fake
import ( import (
"context" context "context"
daemonset "knative.dev/pkg/client/injection/kube/informers/apps/v1/daemonset" daemonset "knative.dev/pkg/client/injection/kube/informers/apps/v1/daemonset"
fake "knative.dev/pkg/client/injection/kube/informers/factory/fake" fake "knative.dev/pkg/client/injection/kube/informers/factory/fake"

View File

@ -19,7 +19,7 @@ limitations under the License.
package deployment package deployment
import ( import (
"context" context "context"
v1 "k8s.io/client-go/informers/apps/v1" v1 "k8s.io/client-go/informers/apps/v1"
factory "knative.dev/pkg/client/injection/kube/informers/factory" factory "knative.dev/pkg/client/injection/kube/informers/factory"

View File

@ -19,7 +19,7 @@ limitations under the License.
package fake package fake
import ( import (
"context" context "context"
deployment "knative.dev/pkg/client/injection/kube/informers/apps/v1/deployment" deployment "knative.dev/pkg/client/injection/kube/informers/apps/v1/deployment"
fake "knative.dev/pkg/client/injection/kube/informers/factory/fake" fake "knative.dev/pkg/client/injection/kube/informers/factory/fake"

View File

@ -19,7 +19,7 @@ limitations under the License.
package fake package fake
import ( import (
"context" context "context"
replicaset "knative.dev/pkg/client/injection/kube/informers/apps/v1/replicaset" replicaset "knative.dev/pkg/client/injection/kube/informers/apps/v1/replicaset"
fake "knative.dev/pkg/client/injection/kube/informers/factory/fake" fake "knative.dev/pkg/client/injection/kube/informers/factory/fake"

View File

@ -19,7 +19,7 @@ limitations under the License.
package replicaset package replicaset
import ( import (
"context" context "context"
v1 "k8s.io/client-go/informers/apps/v1" v1 "k8s.io/client-go/informers/apps/v1"
factory "knative.dev/pkg/client/injection/kube/informers/factory" factory "knative.dev/pkg/client/injection/kube/informers/factory"

View File

@ -19,7 +19,7 @@ limitations under the License.
package fake package fake
import ( import (
"context" context "context"
statefulset "knative.dev/pkg/client/injection/kube/informers/apps/v1/statefulset" statefulset "knative.dev/pkg/client/injection/kube/informers/apps/v1/statefulset"
fake "knative.dev/pkg/client/injection/kube/informers/factory/fake" fake "knative.dev/pkg/client/injection/kube/informers/factory/fake"

View File

@ -19,7 +19,7 @@ limitations under the License.
package statefulset package statefulset
import ( import (
"context" context "context"
v1 "k8s.io/client-go/informers/apps/v1" v1 "k8s.io/client-go/informers/apps/v1"
factory "knative.dev/pkg/client/injection/kube/informers/factory" factory "knative.dev/pkg/client/injection/kube/informers/factory"

View File

@ -19,7 +19,7 @@ limitations under the License.
package fake package fake
import ( import (
"context" context "context"
horizontalpodautoscaler "knative.dev/pkg/client/injection/kube/informers/autoscaling/v1/horizontalpodautoscaler" horizontalpodautoscaler "knative.dev/pkg/client/injection/kube/informers/autoscaling/v1/horizontalpodautoscaler"
fake "knative.dev/pkg/client/injection/kube/informers/factory/fake" fake "knative.dev/pkg/client/injection/kube/informers/factory/fake"

View File

@ -19,7 +19,7 @@ limitations under the License.
package horizontalpodautoscaler package horizontalpodautoscaler
import ( import (
"context" context "context"
v1 "k8s.io/client-go/informers/autoscaling/v1" v1 "k8s.io/client-go/informers/autoscaling/v1"
factory "knative.dev/pkg/client/injection/kube/informers/factory" factory "knative.dev/pkg/client/injection/kube/informers/factory"

View File

@ -19,7 +19,7 @@ limitations under the License.
package fake package fake
import ( import (
"context" context "context"
horizontalpodautoscaler "knative.dev/pkg/client/injection/kube/informers/autoscaling/v2beta1/horizontalpodautoscaler" horizontalpodautoscaler "knative.dev/pkg/client/injection/kube/informers/autoscaling/v2beta1/horizontalpodautoscaler"
fake "knative.dev/pkg/client/injection/kube/informers/factory/fake" fake "knative.dev/pkg/client/injection/kube/informers/factory/fake"

View File

@ -19,7 +19,7 @@ limitations under the License.
package horizontalpodautoscaler package horizontalpodautoscaler
import ( import (
"context" context "context"
v2beta1 "k8s.io/client-go/informers/autoscaling/v2beta1" v2beta1 "k8s.io/client-go/informers/autoscaling/v2beta1"
factory "knative.dev/pkg/client/injection/kube/informers/factory" factory "knative.dev/pkg/client/injection/kube/informers/factory"

View File

@ -19,7 +19,7 @@ limitations under the License.
package fake package fake
import ( import (
"context" context "context"
job "knative.dev/pkg/client/injection/kube/informers/batch/v1/job" job "knative.dev/pkg/client/injection/kube/informers/batch/v1/job"
fake "knative.dev/pkg/client/injection/kube/informers/factory/fake" fake "knative.dev/pkg/client/injection/kube/informers/factory/fake"

View File

@ -19,7 +19,7 @@ limitations under the License.
package job package job
import ( import (
"context" context "context"
v1 "k8s.io/client-go/informers/batch/v1" v1 "k8s.io/client-go/informers/batch/v1"
factory "knative.dev/pkg/client/injection/kube/informers/factory" factory "knative.dev/pkg/client/injection/kube/informers/factory"

View File

@ -19,7 +19,7 @@ limitations under the License.
package cronjob package cronjob
import ( import (
"context" context "context"
v1beta1 "k8s.io/client-go/informers/batch/v1beta1" v1beta1 "k8s.io/client-go/informers/batch/v1beta1"
factory "knative.dev/pkg/client/injection/kube/informers/factory" factory "knative.dev/pkg/client/injection/kube/informers/factory"

View File

@ -19,7 +19,7 @@ limitations under the License.
package fake package fake
import ( import (
"context" context "context"
cronjob "knative.dev/pkg/client/injection/kube/informers/batch/v1beta1/cronjob" cronjob "knative.dev/pkg/client/injection/kube/informers/batch/v1beta1/cronjob"
fake "knative.dev/pkg/client/injection/kube/informers/factory/fake" fake "knative.dev/pkg/client/injection/kube/informers/factory/fake"

View File

@ -19,7 +19,7 @@ limitations under the License.
package componentstatus package componentstatus
import ( import (
"context" context "context"
v1 "k8s.io/client-go/informers/core/v1" v1 "k8s.io/client-go/informers/core/v1"
factory "knative.dev/pkg/client/injection/kube/informers/factory" factory "knative.dev/pkg/client/injection/kube/informers/factory"

View File

@ -19,7 +19,7 @@ limitations under the License.
package fake package fake
import ( import (
"context" context "context"
componentstatus "knative.dev/pkg/client/injection/kube/informers/core/v1/componentstatus" componentstatus "knative.dev/pkg/client/injection/kube/informers/core/v1/componentstatus"
fake "knative.dev/pkg/client/injection/kube/informers/factory/fake" fake "knative.dev/pkg/client/injection/kube/informers/factory/fake"

View File

@ -19,7 +19,7 @@ limitations under the License.
package configmap package configmap
import ( import (
"context" context "context"
v1 "k8s.io/client-go/informers/core/v1" v1 "k8s.io/client-go/informers/core/v1"
factory "knative.dev/pkg/client/injection/kube/informers/factory" factory "knative.dev/pkg/client/injection/kube/informers/factory"

View File

@ -19,7 +19,7 @@ limitations under the License.
package fake package fake
import ( import (
"context" context "context"
configmap "knative.dev/pkg/client/injection/kube/informers/core/v1/configmap" configmap "knative.dev/pkg/client/injection/kube/informers/core/v1/configmap"
fake "knative.dev/pkg/client/injection/kube/informers/factory/fake" fake "knative.dev/pkg/client/injection/kube/informers/factory/fake"

View File

@ -19,7 +19,7 @@ limitations under the License.
package endpoints package endpoints
import ( import (
"context" context "context"
v1 "k8s.io/client-go/informers/core/v1" v1 "k8s.io/client-go/informers/core/v1"
factory "knative.dev/pkg/client/injection/kube/informers/factory" factory "knative.dev/pkg/client/injection/kube/informers/factory"

View File

@ -19,7 +19,7 @@ limitations under the License.
package fake package fake
import ( import (
"context" context "context"
endpoints "knative.dev/pkg/client/injection/kube/informers/core/v1/endpoints" endpoints "knative.dev/pkg/client/injection/kube/informers/core/v1/endpoints"
fake "knative.dev/pkg/client/injection/kube/informers/factory/fake" fake "knative.dev/pkg/client/injection/kube/informers/factory/fake"

View File

@ -19,7 +19,7 @@ limitations under the License.
package event package event
import ( import (
"context" context "context"
v1 "k8s.io/client-go/informers/core/v1" v1 "k8s.io/client-go/informers/core/v1"
factory "knative.dev/pkg/client/injection/kube/informers/factory" factory "knative.dev/pkg/client/injection/kube/informers/factory"

View File

@ -19,7 +19,7 @@ limitations under the License.
package fake package fake
import ( import (
"context" context "context"
event "knative.dev/pkg/client/injection/kube/informers/core/v1/event" event "knative.dev/pkg/client/injection/kube/informers/core/v1/event"
fake "knative.dev/pkg/client/injection/kube/informers/factory/fake" fake "knative.dev/pkg/client/injection/kube/informers/factory/fake"

View File

@ -19,7 +19,7 @@ limitations under the License.
package fake package fake
import ( import (
"context" context "context"
limitrange "knative.dev/pkg/client/injection/kube/informers/core/v1/limitrange" limitrange "knative.dev/pkg/client/injection/kube/informers/core/v1/limitrange"
fake "knative.dev/pkg/client/injection/kube/informers/factory/fake" fake "knative.dev/pkg/client/injection/kube/informers/factory/fake"

View File

@ -19,7 +19,7 @@ limitations under the License.
package limitrange package limitrange
import ( import (
"context" context "context"
v1 "k8s.io/client-go/informers/core/v1" v1 "k8s.io/client-go/informers/core/v1"
factory "knative.dev/pkg/client/injection/kube/informers/factory" factory "knative.dev/pkg/client/injection/kube/informers/factory"

View File

@ -19,7 +19,7 @@ limitations under the License.
package fake package fake
import ( import (
"context" context "context"
namespace "knative.dev/pkg/client/injection/kube/informers/core/v1/namespace" namespace "knative.dev/pkg/client/injection/kube/informers/core/v1/namespace"
fake "knative.dev/pkg/client/injection/kube/informers/factory/fake" fake "knative.dev/pkg/client/injection/kube/informers/factory/fake"

View File

@ -19,7 +19,7 @@ limitations under the License.
package namespace package namespace
import ( import (
"context" context "context"
v1 "k8s.io/client-go/informers/core/v1" v1 "k8s.io/client-go/informers/core/v1"
factory "knative.dev/pkg/client/injection/kube/informers/factory" factory "knative.dev/pkg/client/injection/kube/informers/factory"

View File

@ -19,7 +19,7 @@ limitations under the License.
package fake package fake
import ( import (
"context" context "context"
node "knative.dev/pkg/client/injection/kube/informers/core/v1/node" node "knative.dev/pkg/client/injection/kube/informers/core/v1/node"
fake "knative.dev/pkg/client/injection/kube/informers/factory/fake" fake "knative.dev/pkg/client/injection/kube/informers/factory/fake"

View File

@ -19,7 +19,7 @@ limitations under the License.
package node package node
import ( import (
"context" context "context"
v1 "k8s.io/client-go/informers/core/v1" v1 "k8s.io/client-go/informers/core/v1"
factory "knative.dev/pkg/client/injection/kube/informers/factory" factory "knative.dev/pkg/client/injection/kube/informers/factory"

View File

@ -19,7 +19,7 @@ limitations under the License.
package fake package fake
import ( import (
"context" context "context"
persistentvolume "knative.dev/pkg/client/injection/kube/informers/core/v1/persistentvolume" persistentvolume "knative.dev/pkg/client/injection/kube/informers/core/v1/persistentvolume"
fake "knative.dev/pkg/client/injection/kube/informers/factory/fake" fake "knative.dev/pkg/client/injection/kube/informers/factory/fake"

View File

@ -19,7 +19,7 @@ limitations under the License.
package persistentvolume package persistentvolume
import ( import (
"context" context "context"
v1 "k8s.io/client-go/informers/core/v1" v1 "k8s.io/client-go/informers/core/v1"
factory "knative.dev/pkg/client/injection/kube/informers/factory" factory "knative.dev/pkg/client/injection/kube/informers/factory"

View File

@ -19,7 +19,7 @@ limitations under the License.
package fake package fake
import ( import (
"context" context "context"
persistentvolumeclaim "knative.dev/pkg/client/injection/kube/informers/core/v1/persistentvolumeclaim" persistentvolumeclaim "knative.dev/pkg/client/injection/kube/informers/core/v1/persistentvolumeclaim"
fake "knative.dev/pkg/client/injection/kube/informers/factory/fake" fake "knative.dev/pkg/client/injection/kube/informers/factory/fake"

View File

@ -19,7 +19,7 @@ limitations under the License.
package persistentvolumeclaim package persistentvolumeclaim
import ( import (
"context" context "context"
v1 "k8s.io/client-go/informers/core/v1" v1 "k8s.io/client-go/informers/core/v1"
factory "knative.dev/pkg/client/injection/kube/informers/factory" factory "knative.dev/pkg/client/injection/kube/informers/factory"

View File

@ -19,7 +19,7 @@ limitations under the License.
package fake package fake
import ( import (
"context" context "context"
pod "knative.dev/pkg/client/injection/kube/informers/core/v1/pod" pod "knative.dev/pkg/client/injection/kube/informers/core/v1/pod"
fake "knative.dev/pkg/client/injection/kube/informers/factory/fake" fake "knative.dev/pkg/client/injection/kube/informers/factory/fake"

View File

@ -19,7 +19,7 @@ limitations under the License.
package pod package pod
import ( import (
"context" context "context"
v1 "k8s.io/client-go/informers/core/v1" v1 "k8s.io/client-go/informers/core/v1"
factory "knative.dev/pkg/client/injection/kube/informers/factory" factory "knative.dev/pkg/client/injection/kube/informers/factory"

View File

@ -19,7 +19,7 @@ limitations under the License.
package fake package fake
import ( import (
"context" context "context"
podtemplate "knative.dev/pkg/client/injection/kube/informers/core/v1/podtemplate" podtemplate "knative.dev/pkg/client/injection/kube/informers/core/v1/podtemplate"
fake "knative.dev/pkg/client/injection/kube/informers/factory/fake" fake "knative.dev/pkg/client/injection/kube/informers/factory/fake"

View File

@ -19,7 +19,7 @@ limitations under the License.
package podtemplate package podtemplate
import ( import (
"context" context "context"
v1 "k8s.io/client-go/informers/core/v1" v1 "k8s.io/client-go/informers/core/v1"
factory "knative.dev/pkg/client/injection/kube/informers/factory" factory "knative.dev/pkg/client/injection/kube/informers/factory"

View File

@ -19,7 +19,7 @@ limitations under the License.
package fake package fake
import ( import (
"context" context "context"
replicationcontroller "knative.dev/pkg/client/injection/kube/informers/core/v1/replicationcontroller" replicationcontroller "knative.dev/pkg/client/injection/kube/informers/core/v1/replicationcontroller"
fake "knative.dev/pkg/client/injection/kube/informers/factory/fake" fake "knative.dev/pkg/client/injection/kube/informers/factory/fake"

View File

@ -19,7 +19,7 @@ limitations under the License.
package replicationcontroller package replicationcontroller
import ( import (
"context" context "context"
v1 "k8s.io/client-go/informers/core/v1" v1 "k8s.io/client-go/informers/core/v1"
factory "knative.dev/pkg/client/injection/kube/informers/factory" factory "knative.dev/pkg/client/injection/kube/informers/factory"

View File

@ -19,7 +19,7 @@ limitations under the License.
package fake package fake
import ( import (
"context" context "context"
resourcequota "knative.dev/pkg/client/injection/kube/informers/core/v1/resourcequota" resourcequota "knative.dev/pkg/client/injection/kube/informers/core/v1/resourcequota"
fake "knative.dev/pkg/client/injection/kube/informers/factory/fake" fake "knative.dev/pkg/client/injection/kube/informers/factory/fake"

View File

@ -19,7 +19,7 @@ limitations under the License.
package resourcequota package resourcequota
import ( import (
"context" context "context"
v1 "k8s.io/client-go/informers/core/v1" v1 "k8s.io/client-go/informers/core/v1"
factory "knative.dev/pkg/client/injection/kube/informers/factory" factory "knative.dev/pkg/client/injection/kube/informers/factory"

View File

@ -19,7 +19,7 @@ limitations under the License.
package fake package fake
import ( import (
"context" context "context"
secret "knative.dev/pkg/client/injection/kube/informers/core/v1/secret" secret "knative.dev/pkg/client/injection/kube/informers/core/v1/secret"
fake "knative.dev/pkg/client/injection/kube/informers/factory/fake" fake "knative.dev/pkg/client/injection/kube/informers/factory/fake"

View File

@ -19,7 +19,7 @@ limitations under the License.
package secret package secret
import ( import (
"context" context "context"
v1 "k8s.io/client-go/informers/core/v1" v1 "k8s.io/client-go/informers/core/v1"
factory "knative.dev/pkg/client/injection/kube/informers/factory" factory "knative.dev/pkg/client/injection/kube/informers/factory"

View File

@ -19,7 +19,7 @@ limitations under the License.
package fake package fake
import ( import (
"context" context "context"
service "knative.dev/pkg/client/injection/kube/informers/core/v1/service" service "knative.dev/pkg/client/injection/kube/informers/core/v1/service"
fake "knative.dev/pkg/client/injection/kube/informers/factory/fake" fake "knative.dev/pkg/client/injection/kube/informers/factory/fake"

View File

@ -19,7 +19,7 @@ limitations under the License.
package service package service
import ( import (
"context" context "context"
v1 "k8s.io/client-go/informers/core/v1" v1 "k8s.io/client-go/informers/core/v1"
factory "knative.dev/pkg/client/injection/kube/informers/factory" factory "knative.dev/pkg/client/injection/kube/informers/factory"

View File

@ -19,7 +19,7 @@ limitations under the License.
package fake package fake
import ( import (
"context" context "context"
serviceaccount "knative.dev/pkg/client/injection/kube/informers/core/v1/serviceaccount" serviceaccount "knative.dev/pkg/client/injection/kube/informers/core/v1/serviceaccount"
fake "knative.dev/pkg/client/injection/kube/informers/factory/fake" fake "knative.dev/pkg/client/injection/kube/informers/factory/fake"

View File

@ -19,7 +19,7 @@ limitations under the License.
package serviceaccount package serviceaccount
import ( import (
"context" context "context"
v1 "k8s.io/client-go/informers/core/v1" v1 "k8s.io/client-go/informers/core/v1"
factory "knative.dev/pkg/client/injection/kube/informers/factory" factory "knative.dev/pkg/client/injection/kube/informers/factory"

View File

@ -19,7 +19,7 @@ limitations under the License.
package factory package factory
import ( import (
"context" context "context"
informers "k8s.io/client-go/informers" informers "k8s.io/client-go/informers"
client "knative.dev/pkg/client/injection/kube/client" client "knative.dev/pkg/client/injection/kube/client"

View File

@ -19,7 +19,7 @@ limitations under the License.
package fake package fake
import ( import (
"context" context "context"
informers "k8s.io/client-go/informers" informers "k8s.io/client-go/informers"
fake "knative.dev/pkg/client/injection/kube/client/fake" fake "knative.dev/pkg/client/injection/kube/client/fake"

View File

@ -19,7 +19,7 @@ limitations under the License.
package clusterrole package clusterrole
import ( import (
"context" context "context"
v1 "k8s.io/client-go/informers/rbac/v1" v1 "k8s.io/client-go/informers/rbac/v1"
factory "knative.dev/pkg/client/injection/kube/informers/factory" factory "knative.dev/pkg/client/injection/kube/informers/factory"

View File

@ -19,7 +19,7 @@ limitations under the License.
package fake package fake
import ( import (
"context" context "context"
fake "knative.dev/pkg/client/injection/kube/informers/factory/fake" fake "knative.dev/pkg/client/injection/kube/informers/factory/fake"
clusterrole "knative.dev/pkg/client/injection/kube/informers/rbac/v1/clusterrole" clusterrole "knative.dev/pkg/client/injection/kube/informers/rbac/v1/clusterrole"

View File

@ -19,7 +19,7 @@ limitations under the License.
package clusterrolebinding package clusterrolebinding
import ( import (
"context" context "context"
v1 "k8s.io/client-go/informers/rbac/v1" v1 "k8s.io/client-go/informers/rbac/v1"
factory "knative.dev/pkg/client/injection/kube/informers/factory" factory "knative.dev/pkg/client/injection/kube/informers/factory"

View File

@ -19,7 +19,7 @@ limitations under the License.
package fake package fake
import ( import (
"context" context "context"
fake "knative.dev/pkg/client/injection/kube/informers/factory/fake" fake "knative.dev/pkg/client/injection/kube/informers/factory/fake"
clusterrolebinding "knative.dev/pkg/client/injection/kube/informers/rbac/v1/clusterrolebinding" clusterrolebinding "knative.dev/pkg/client/injection/kube/informers/rbac/v1/clusterrolebinding"

View File

@ -19,7 +19,7 @@ limitations under the License.
package fake package fake
import ( import (
"context" context "context"
fake "knative.dev/pkg/client/injection/kube/informers/factory/fake" fake "knative.dev/pkg/client/injection/kube/informers/factory/fake"
role "knative.dev/pkg/client/injection/kube/informers/rbac/v1/role" role "knative.dev/pkg/client/injection/kube/informers/rbac/v1/role"

View File

@ -19,7 +19,7 @@ limitations under the License.
package role package role
import ( import (
"context" context "context"
v1 "k8s.io/client-go/informers/rbac/v1" v1 "k8s.io/client-go/informers/rbac/v1"
factory "knative.dev/pkg/client/injection/kube/informers/factory" factory "knative.dev/pkg/client/injection/kube/informers/factory"

View File

@ -19,7 +19,7 @@ limitations under the License.
package fake package fake
import ( import (
"context" context "context"
fake "knative.dev/pkg/client/injection/kube/informers/factory/fake" fake "knative.dev/pkg/client/injection/kube/informers/factory/fake"
rolebinding "knative.dev/pkg/client/injection/kube/informers/rbac/v1/rolebinding" rolebinding "knative.dev/pkg/client/injection/kube/informers/rbac/v1/rolebinding"

View File

@ -19,7 +19,7 @@ limitations under the License.
package rolebinding package rolebinding
import ( import (
"context" context "context"
v1 "k8s.io/client-go/informers/rbac/v1" v1 "k8s.io/client-go/informers/rbac/v1"
factory "knative.dev/pkg/client/injection/kube/informers/factory" factory "knative.dev/pkg/client/injection/kube/informers/factory"

View File

@ -71,6 +71,10 @@ func (g *clientGenerator) GenerateType(c *generator.Context, t *types.Type, w io
Package: "knative.dev/pkg/logging", Package: "knative.dev/pkg/logging",
Name: "FromContext", Name: "FromContext",
}), }),
"contextContext": c.Universe.Type(types.Name{
Package: "context",
Name: "Context",
}),
} }
sw.Do(injectionClient, m) sw.Do(injectionClient, m)
@ -86,12 +90,12 @@ func init() {
// Key is used as the key for associating information with a context.Context. // Key is used as the key for associating information with a context.Context.
type Key struct{} type Key struct{}
func withClient(ctx context.Context, cfg *{{.restConfig|raw}}) context.Context { func withClient(ctx {{.contextContext|raw}}, cfg *{{.restConfig|raw}}) context.Context {
return context.WithValue(ctx, Key{}, {{.clientSetNewForConfigOrDie|raw}}(cfg)) return context.WithValue(ctx, Key{}, {{.clientSetNewForConfigOrDie|raw}}(cfg))
} }
// Get extracts the {{.clientSetInterface|raw}} client from the context. // Get extracts the {{.clientSetInterface|raw}} client from the context.
func Get(ctx context.Context) {{.clientSetInterface|raw}} { func Get(ctx {{.contextContext|raw}}) {{.clientSetInterface|raw}} {
untyped := ctx.Value(Key{}) untyped := ctx.Value(Key{})
if untyped == nil { if untyped == nil {
{{.loggingFromContext|raw}}(ctx).Panic( {{.loggingFromContext|raw}}(ctx).Panic(

View File

@ -90,6 +90,10 @@ func (g *duckGenerator) GenerateType(c *generator.Context, t *types.Type, w io.W
Package: "knative.dev/pkg/logging", Package: "knative.dev/pkg/logging",
Name: "FromContext", Name: "FromContext",
}), }),
"contextContext": c.Universe.Type(types.Name{
Package: "context",
Name: "Context",
}),
} }
sw.Do(duckFactory, m) sw.Do(duckFactory, m)
@ -105,7 +109,7 @@ func init() {
// Key is used for associating the Informer inside the context.Context. // Key is used for associating the Informer inside the context.Context.
type Key struct{} type Key struct{}
func WithDuck(ctx context.Context) context.Context { func WithDuck(ctx {{.contextContext|raw}}) {{.contextContext|raw}} {
dc := {{.dynamicGet|raw}}(ctx) dc := {{.dynamicGet|raw}}(ctx)
dif := &{{.duckCachedInformerFactory|raw}}{ dif := &{{.duckCachedInformerFactory|raw}}{
Delegate: &{{.duckTypedInformerFactory|raw}}{ Delegate: &{{.duckTypedInformerFactory|raw}}{
@ -119,7 +123,7 @@ func WithDuck(ctx context.Context) context.Context {
} }
// Get extracts the typed informer from the context. // Get extracts the typed informer from the context.
func Get(ctx context.Context) {{.duckInformerFactory|raw}} { func Get(ctx {{.contextContext|raw}}) {{.duckInformerFactory|raw}} {
untyped := ctx.Value(Key{}) untyped := ctx.Value(Key{})
if untyped == nil { if untyped == nil {
{{.loggingFromContext|raw}}(ctx).Panic( {{.loggingFromContext|raw}}(ctx).Panic(

View File

@ -77,6 +77,10 @@ func (g *factoryGenerator) GenerateType(c *generator.Context, t *types.Type, w i
Package: "knative.dev/pkg/logging", Package: "knative.dev/pkg/logging",
Name: "FromContext", Name: "FromContext",
}), }),
"contextContext": c.Universe.Type(types.Name{
Package: "context",
Name: "Context",
}),
} }
sw.Do(injectionFactory, m) sw.Do(injectionFactory, m)
@ -92,7 +96,7 @@ func init() {
// Key is used as the key for associating information with a context.Context. // Key is used as the key for associating information with a context.Context.
type Key struct{} type Key struct{}
func withInformerFactory(ctx context.Context) context.Context { func withInformerFactory(ctx {{.contextContext|raw}}) {{.contextContext|raw}} {
c := {{.cachingClientGet|raw}}(ctx) c := {{.cachingClientGet|raw}}(ctx)
opts := make([]{{.informersSharedInformerOption|raw}}, 0, 1) opts := make([]{{.informersSharedInformerOption|raw}}, 0, 1)
if {{.injectionHasNamespace|raw}}(ctx) { if {{.injectionHasNamespace|raw}}(ctx) {
@ -103,7 +107,7 @@ func withInformerFactory(ctx context.Context) context.Context {
} }
// Get extracts the InformerFactory from the context. // Get extracts the InformerFactory from the context.
func Get(ctx context.Context) {{.informersSharedInformerFactory|raw}} { func Get(ctx {{.contextContext|raw}}) {{.informersSharedInformerFactory|raw}} {
untyped := ctx.Value(Key{}) untyped := ctx.Value(Key{})
if untyped == nil { if untyped == nil {
{{.loggingFromContext|raw}}(ctx).Panic( {{.loggingFromContext|raw}}(ctx).Panic(

View File

@ -75,6 +75,12 @@ func (g *fakeClientGenerator) GenerateType(c *generator.Context, t *types.Type,
Package: "knative.dev/pkg/logging", Package: "knative.dev/pkg/logging",
Name: "FromContext", Name: "FromContext",
}), }),
"contextContext": c.Universe.Type(types.Name{
Package: "context",
Name: "Context",
}),
"restConfig": c.Universe.Type(types.Name{Package: "k8s.io/client-go/rest", Name: "Config"}),
"runtimeObject": c.Universe.Type(types.Name{Package: "k8s.io/apimachinery/pkg/runtime", Name: "Object"}),
} }
sw.Do(injectionFakeClient, m) sw.Do(injectionFakeClient, m)
@ -87,18 +93,18 @@ func init() {
{{.injectionRegisterClient|raw}}(withClient) {{.injectionRegisterClient|raw}}(withClient)
} }
func withClient(ctx context.Context, cfg *rest.Config) context.Context { func withClient(ctx {{.contextContext|raw}}, cfg *{{.restConfig|raw}}) {{.contextContext|raw}} {
ctx, _ = With(ctx) ctx, _ = With(ctx)
return ctx return ctx
} }
func With(ctx context.Context, objects ...runtime.Object) (context.Context, *{{.fakeClient|raw}}) { func With(ctx {{.contextContext|raw}}, objects ...{{.runtimeObject|raw}}) ({{.contextContext|raw}}, *{{.fakeClient|raw}}) {
cs := fake.NewSimpleClientset(objects...) cs := fake.NewSimpleClientset(objects...)
return context.WithValue(ctx, {{.clientKey|raw}}{}, cs), cs return context.WithValue(ctx, {{.clientKey|raw}}{}, cs), cs
} }
// Get extracts the Kubernetes client from the context. // Get extracts the Kubernetes client from the context.
func Get(ctx context.Context) *{{.fakeClient|raw}} { func Get(ctx {{.contextContext|raw}}) *{{.fakeClient|raw}} {
untyped := ctx.Value({{.clientKey|raw}}{}) untyped := ctx.Value({{.clientKey|raw}}{})
if untyped == nil { if untyped == nil {
{{.loggingFromContext|raw}}(ctx).Panic( {{.loggingFromContext|raw}}(ctx).Panic(

View File

@ -79,6 +79,10 @@ func (g *fakeFactoryGenerator) GenerateType(c *generator.Context, t *types.Type,
"injectionHasNamespace": c.Universe.Type(types.Name{Package: "knative.dev/pkg/injection", Name: "HasNamespaceScope"}), "injectionHasNamespace": c.Universe.Type(types.Name{Package: "knative.dev/pkg/injection", Name: "HasNamespaceScope"}),
"injectionGetNamespace": c.Universe.Type(types.Name{Package: "knative.dev/pkg/injection", Name: "GetNamespaceScope"}), "injectionGetNamespace": c.Universe.Type(types.Name{Package: "knative.dev/pkg/injection", Name: "GetNamespaceScope"}),
"controllerGetResyncPeriod": c.Universe.Type(types.Name{Package: "knative.dev/pkg/controller", Name: "GetResyncPeriod"}), "controllerGetResyncPeriod": c.Universe.Type(types.Name{Package: "knative.dev/pkg/controller", Name: "GetResyncPeriod"}),
"contextContext": c.Universe.Type(types.Name{
Package: "context",
Name: "Context",
}),
} }
sw.Do(injectionFakeInformerFactory, m) sw.Do(injectionFakeInformerFactory, m)
@ -93,7 +97,7 @@ func init() {
{{.injectionRegisterInformerFactory|raw}}(withInformerFactory) {{.injectionRegisterInformerFactory|raw}}(withInformerFactory)
} }
func withInformerFactory(ctx context.Context) context.Context { func withInformerFactory(ctx {{.contextContext|raw}}) {{.contextContext|raw}} {
c := {{.clientGet|raw}}(ctx) c := {{.clientGet|raw}}(ctx)
opts := make([]{{.informersSharedInformerOption|raw}}, 0, 1) opts := make([]{{.informersSharedInformerOption|raw}}, 0, 1)
if {{.injectionHasNamespace|raw}}(ctx) { if {{.injectionHasNamespace|raw}}(ctx) {

View File

@ -91,6 +91,10 @@ func (g *fakeInformerGenerator) GenerateType(c *generator.Context, t *types.Type
Package: "knative.dev/pkg/injection", Package: "knative.dev/pkg/injection",
Name: "Fake.RegisterInformer", Name: "Fake.RegisterInformer",
}), }),
"contextContext": c.Universe.Type(types.Name{
Package: "context",
Name: "Context",
}),
} }
sw.Do(injectionFakeInformer, m) sw.Do(injectionFakeInformer, m)
@ -105,7 +109,7 @@ func init() {
{{.injectionRegisterInformer|raw}}(withInformer) {{.injectionRegisterInformer|raw}}(withInformer)
} }
func withInformer(ctx context.Context) (context.Context, {{.controllerInformer|raw}}) { func withInformer(ctx {{.contextContext|raw}}) ({{.contextContext|raw}}, {{.controllerInformer|raw}}) {
f := {{.factoryGet|raw}}(ctx) f := {{.factoryGet|raw}}(ctx)
inf := f.{{.group}}().{{.version}}().{{.type|publicPlural}}() inf := f.{{.group}}().{{.version}}().{{.type|publicPlural}}()
return context.WithValue(ctx, {{.informerKey|raw}}{}, inf), inf.Informer() return context.WithValue(ctx, {{.informerKey|raw}}{}, inf), inf.Informer()

View File

@ -90,6 +90,10 @@ func (g *injectionGenerator) GenerateType(c *generator.Context, t *types.Type, w
Package: "knative.dev/pkg/logging", Package: "knative.dev/pkg/logging",
Name: "FromContext", Name: "FromContext",
}), }),
"contextContext": c.Universe.Type(types.Name{
Package: "context",
Name: "Context",
}),
} }
sw.Do(injectionInformer, m) sw.Do(injectionInformer, m)
@ -105,14 +109,14 @@ func init() {
// Key is used for associating the Informer inside the context.Context. // Key is used for associating the Informer inside the context.Context.
type Key struct{} type Key struct{}
func withInformer(ctx context.Context) (context.Context, {{.controllerInformer|raw}}) { func withInformer(ctx {{.contextContext|raw}}) ({{.contextContext|raw}}, {{.controllerInformer|raw}}) {
f := {{.factoryGet|raw}}(ctx) f := {{.factoryGet|raw}}(ctx)
inf := f.{{.group}}().{{.version}}().{{.type|publicPlural}}() inf := f.{{.group}}().{{.version}}().{{.type|publicPlural}}()
return context.WithValue(ctx, Key{}, inf), inf.Informer() return context.WithValue(ctx, Key{}, inf), inf.Informer()
} }
// Get extracts the typed informer from the context. // Get extracts the typed informer from the context.
func Get(ctx context.Context) {{.informersTypedInformer|raw}} { func Get(ctx {{.contextContext|raw}}) {{.informersTypedInformer|raw}} {
untyped := ctx.Value(Key{}) untyped := ctx.Value(Key{})
if untyped == nil { if untyped == nil {
{{.loggingFromContext|raw}}(ctx).Panic( {{.loggingFromContext|raw}}(ctx).Panic(

View File

@ -93,120 +93,113 @@ func GetLoggingConfig(ctx context.Context) (*logging.Config, error) {
return logging.NewConfigFromConfigMap(loggingConfigMap) return logging.NewConfigFromConfigMap(loggingConfigMap)
} }
// Main runs the generic main flow for non-webhook controllers with a new
// context. Use WebhookMainWith* if you need to serve webhooks.
func Main(component string, ctors ...injection.ControllerConstructor) { func Main(component string, ctors ...injection.ControllerConstructor) {
// Set up signals so we handle the first shutdown signal gracefully. // Set up signals so we handle the first shutdown signal gracefully.
MainWithContext(signals.NewContext(), component, ctors...) MainWithContext(signals.NewContext(), component, ctors...)
} }
// MainWithContext runs the generic main flow for non-webhook controllers. Use
// WebhookMainWithContext if you need to serve webhooks.
func MainWithContext(ctx context.Context, component string, ctors ...injection.ControllerConstructor) { func MainWithContext(ctx context.Context, component string, ctors ...injection.ControllerConstructor) {
var ( MainWithConfig(ctx, component, ParseAndGetConfigOrDie(), ctors...)
masterURL = flag.String("master", "",
"The address of the Kubernetes API server. Overrides any value in kubeconfig. Only required if out-of-cluster.")
kubeconfig = flag.String("kubeconfig", "",
"Path to a kubeconfig. Only required if out-of-cluster.")
)
flag.Parse()
cfg, err := GetConfig(*masterURL, *kubeconfig)
if err != nil {
log.Fatalf("Error building kubeconfig: %v", err)
}
MainWithConfig(ctx, component, cfg, ctors...)
} }
// MainWithConfig runs the generic main flow for non-webhook controllers. Use
// WebhookMainWithConfig if you need to serve webhooks.
func MainWithConfig(ctx context.Context, component string, cfg *rest.Config, ctors ...injection.ControllerConstructor) { func MainWithConfig(ctx context.Context, component string, cfg *rest.Config, ctors ...injection.ControllerConstructor) {
log.Printf("Registering %d clients", len(injection.Default.GetClients())) log.Printf("Registering %d clients", len(injection.Default.GetClients()))
log.Printf("Registering %d informer factories", len(injection.Default.GetInformerFactories())) log.Printf("Registering %d informer factories", len(injection.Default.GetInformerFactories()))
log.Printf("Registering %d informers", len(injection.Default.GetInformers())) log.Printf("Registering %d informers", len(injection.Default.GetInformers()))
log.Printf("Registering %d controllers", len(ctors)) log.Printf("Registering %d controllers", len(ctors))
// Report stats on Go memory usage every 30 seconds. MemStatsOrDie(ctx)
msp := metrics.NewMemStatsAll()
msp.Start(ctx, 30*time.Second)
if err := view.Register(msp.DefaultViews()...); err != nil { // Adjust our client's rate limits based on the number of controllers we are running.
log.Fatalf("Error exporting go memstats view: %v", err)
}
// Adjust our client's rate limits based on the number of controller's we are running.
cfg.QPS = float32(len(ctors)) * rest.DefaultQPS cfg.QPS = float32(len(ctors)) * rest.DefaultQPS
cfg.Burst = len(ctors) * rest.DefaultBurst cfg.Burst = len(ctors) * rest.DefaultBurst
ctx, informers := injection.Default.SetupInformers(ctx, cfg) ctx, informers := injection.Default.SetupInformers(ctx, cfg)
// Set up our logger. logger, atomicLevel := SetupLoggerOrDie(ctx, component)
loggingConfig, err := GetLoggingConfig(ctx)
if err != nil {
log.Fatalf("Error reading/parsing logging configuration: %v", err)
}
logger, atomicLevel := logging.NewLoggerFromConfig(loggingConfig, component)
defer flush(logger) defer flush(logger)
ctx = logging.WithLogger(ctx, logger) ctx = logging.WithLogger(ctx, logger)
// Obtain K8s clientset.
kc := kubeclient.Get(ctx)
if err := version.CheckMinimumVersion(kc.Discovery()); err != nil {
logger.Fatalw("Version check failed", zap.Error(err))
}
// Create ConfigMaps watcher with optional label-based filter.
var cmLabelReqs []labels.Requirement
if cmLabel := system.ResourceLabel(); cmLabel != "" {
req, err := configmap.FilterConfigByLabelExists(cmLabel)
if err != nil {
logger.With(zap.Error(err)).Fatalf("Failed to generate requirement for label %q")
}
logger.Infof("Setting up ConfigMap watcher with label selector %q", req)
cmLabelReqs = append(cmLabelReqs, *req)
}
// TODO(mattmoor): This should itself take a context and be injection-based.
cmw := configmap.NewInformedWatcher(kc, system.Namespace(), cmLabelReqs...)
// Based on the reconcilers we have linked, build up the set of controllers to run.
controllers := make([]*controller.Impl, 0, len(ctors))
webhooks := make([]interface{}, 0)
for _, cf := range ctors {
ctrl := cf(ctx, cmw)
controllers = append(controllers, ctrl)
// Build a list of any reconcilers that implement webhook.AdmissionController
switch c := ctrl.Reconciler.(type) {
case webhook.AdmissionController, webhook.ConversionController:
webhooks = append(webhooks, c)
}
}
profilingHandler := profiling.NewHandler(logger, false) profilingHandler := profiling.NewHandler(logger, false)
// Watch the logging config map and dynamically update logging levels. CheckK8sClientMinimumVersionOrDie(ctx, logger)
if _, err := kubeclient.Get(ctx).CoreV1().ConfigMaps(system.Namespace()).Get(logging.ConfigMapName(), cmw := SetupConfigMapWatchOrDie(ctx, logger)
metav1.GetOptions{}); err == nil { controllers, _ := ControllersAndWebhooksFromCtors(ctx, cmw, ctors...)
cmw.Watch(logging.ConfigMapName(), logging.UpdateLevelFromConfigMap(logger, atomicLevel, component)) WatchLoggingConfigOrDie(ctx, cmw, logger, atomicLevel, component)
} else if !apierrors.IsNotFound(err) { WatchObservabilityConfigOrDie(ctx, cmw, profilingHandler, logger, component)
logger.With(zap.Error(err)).Fatalf("Error reading ConfigMap %q", logging.ConfigMapName())
}
// Watch the observability config map
if _, err := kubeclient.Get(ctx).CoreV1().ConfigMaps(system.Namespace()).Get(metrics.ConfigMapName(),
metav1.GetOptions{}); err == nil {
cmw.Watch(metrics.ConfigMapName(),
metrics.UpdateExporterFromConfigMap(component, logger),
profilingHandler.UpdateFromConfigMap)
} else if !apierrors.IsNotFound(err) {
logger.With(zap.Error(err)).Fatalf("Error reading ConfigMap %q", metrics.ConfigMapName())
}
logger.Info("Starting configuration manager...")
if err := cmw.Start(ctx.Done()); err != nil { if err := cmw.Start(ctx.Done()); err != nil {
logger.Fatalw("Failed to start configuration manager", zap.Error(err)) logger.Fatalw("Failed to start configuration manager", zap.Error(err))
} }
logger.Info("Starting informers...")
// Start all of the informers and wait for them to sync.
logger.Info("Starting informers.")
if err := controller.StartInformers(ctx.Done(), informers...); err != nil { if err := controller.StartInformers(ctx.Done(), informers...); err != nil {
logger.Fatalw("Failed to start informers", zap.Error(err)) logger.Fatalw("Failed to start informers", zap.Error(err))
} }
logger.Info("Starting controllers...")
go controller.StartAll(ctx.Done(), controllers...)
// Start all of the controllers. profilingServer := profiling.NewServer(profilingHandler)
eg, egCtx := errgroup.WithContext(ctx)
eg.Go(profilingServer.ListenAndServe)
// This will block until either a signal arrives or one of the grouped functions
// returns an error.
<-egCtx.Done()
profilingServer.Shutdown(context.Background())
// Don't forward ErrServerClosed as that indicates we're already shutting down.
if err := eg.Wait(); err != nil && err != http.ErrServerClosed {
logger.Errorw("Error while running server", zap.Error(err))
}
}
// WebhookMainWithContext runs the generic main flow for controllers and
// webhooks. Use MainWithContext if you do not need to serve webhooks.
func WebhookMainWithContext(ctx context.Context, component string, ctors ...injection.ControllerConstructor) {
WebhookMainWithConfig(ctx, component, ParseAndGetConfigOrDie(), ctors...)
}
// WebhookMainWithConfig runs the generic main flow for controllers and webhooks
// with the given config. Use MainWithConfig if you do not need to serve
// webhooks.
func WebhookMainWithConfig(ctx context.Context, component string, cfg *rest.Config, ctors ...injection.ControllerConstructor) {
log.Printf("Registering %d clients", len(injection.Default.GetClients()))
log.Printf("Registering %d informer factories", len(injection.Default.GetInformerFactories()))
log.Printf("Registering %d informers", len(injection.Default.GetInformers()))
log.Printf("Registering %d controllers", len(ctors))
MemStatsOrDie(ctx)
// Adjust our client's rate limits based on the number of controllers we are running.
cfg.QPS = float32(len(ctors)) * rest.DefaultQPS
cfg.Burst = len(ctors) * rest.DefaultBurst
ctx, informers := injection.Default.SetupInformers(ctx, cfg)
logger, atomicLevel := SetupLoggerOrDie(ctx, component)
defer flush(logger)
ctx = logging.WithLogger(ctx, logger)
profilingHandler := profiling.NewHandler(logger, false)
CheckK8sClientMinimumVersionOrDie(ctx, logger)
cmw := SetupConfigMapWatchOrDie(ctx, logger)
controllers, webhooks := ControllersAndWebhooksFromCtors(ctx, cmw, ctors...)
WatchLoggingConfigOrDie(ctx, cmw, logger, atomicLevel, component)
WatchObservabilityConfigOrDie(ctx, cmw, profilingHandler, logger, component)
logger.Info("Starting configuration manager...")
if err := cmw.Start(ctx.Done()); err != nil {
logger.Fatalw("Failed to start configuration manager", zap.Error(err))
}
logger.Info("Starting informers...")
if err := controller.StartInformers(ctx.Done(), informers...); err != nil {
logger.Fatalw("Failed to start informers", zap.Error(err))
}
logger.Info("Starting controllers...") logger.Info("Starting controllers...")
go controller.StartAll(ctx.Done(), controllers...) go controller.StartAll(ctx.Done(), controllers...)
@ -245,3 +238,117 @@ func flush(logger *zap.SugaredLogger) {
logger.Sync() logger.Sync()
metrics.FlushExporter() metrics.FlushExporter()
} }
// ParseAndGetConfigOrDie parses the rest config flags and creates a client or
// dies by calling log.Fatalf.
func ParseAndGetConfigOrDie() *rest.Config {
var (
masterURL = flag.String("master", "",
"The address of the Kubernetes API server. Overrides any value in kubeconfig. Only required if out-of-cluster.")
kubeconfig = flag.String("kubeconfig", "",
"Path to a kubeconfig. Only required if out-of-cluster.")
)
flag.Parse()
cfg, err := GetConfig(*masterURL, *kubeconfig)
if err != nil {
log.Fatalf("Error building kubeconfig: %v", err)
}
return cfg
}
// MemStatsOrDie sets up reporting on Go memory usage every 30 seconds or dies
// by calling log.Fatalf.
func MemStatsOrDie(ctx context.Context) {
msp := metrics.NewMemStatsAll()
msp.Start(ctx, 30*time.Second)
if err := view.Register(msp.DefaultViews()...); err != nil {
log.Fatalf("Error exporting go memstats view: %v", err)
}
}
// SetupLoggerOrDie sets up the logger using the config from the given context
// and returns a logger and atomic level, or dies by calling log.Fatalf.
func SetupLoggerOrDie(ctx context.Context, component string) (*zap.SugaredLogger, zap.AtomicLevel) {
loggingConfig, err := GetLoggingConfig(ctx)
if err != nil {
log.Fatalf("Error reading/parsing logging configuration: %v", err)
}
return logging.NewLoggerFromConfig(loggingConfig, component)
}
// CheckK8sClientMinimumVersionOrDie checks that the hosting Kubernetes cluster
// is at least the minimum allowable version or dies by calling log.Fatalf.
func CheckK8sClientMinimumVersionOrDie(ctx context.Context, logger *zap.SugaredLogger) {
kc := kubeclient.Get(ctx)
if err := version.CheckMinimumVersion(kc.Discovery()); err != nil {
logger.Fatalw("Version check failed", zap.Error(err))
}
}
// SetupConfigMapWatchOrDie establishes a watch of the configmaps in the system
// namespace that are labeled to be watched or dies by calling log.Fatalf.
func SetupConfigMapWatchOrDie(ctx context.Context, logger *zap.SugaredLogger) *configmap.InformedWatcher {
kc := kubeclient.Get(ctx)
// Create ConfigMaps watcher with optional label-based filter.
var cmLabelReqs []labels.Requirement
if cmLabel := system.ResourceLabel(); cmLabel != "" {
req, err := configmap.FilterConfigByLabelExists(cmLabel)
if err != nil {
logger.With(zap.Error(err)).Fatalf("Failed to generate requirement for label %q")
}
logger.Infof("Setting up ConfigMap watcher with label selector %q", req)
cmLabelReqs = append(cmLabelReqs, *req)
}
// TODO(mattmoor): This should itself take a context and be injection-based.
return configmap.NewInformedWatcher(kc, system.Namespace(), cmLabelReqs...)
}
// WatchLoggingConfigOrDie establishes a watch of the logging config or dies by
// calling log.Fatalf. Note, if the config does not exist, it will be defaulted
// and this method will not die.
func WatchLoggingConfigOrDie(ctx context.Context, cmw *configmap.InformedWatcher, logger *zap.SugaredLogger, atomicLevel zap.AtomicLevel, component string) {
if _, err := kubeclient.Get(ctx).CoreV1().ConfigMaps(system.Namespace()).Get(logging.ConfigMapName(),
metav1.GetOptions{}); err == nil {
cmw.Watch(logging.ConfigMapName(), logging.UpdateLevelFromConfigMap(logger, atomicLevel, component))
} else if !apierrors.IsNotFound(err) {
logger.With(zap.Error(err)).Fatalf("Error reading ConfigMap %q", logging.ConfigMapName())
}
}
// WatchObservabilityConfigOrDie establishes a watch of the logging config or
// dies by calling log.Fatalf. Note, if the config does not exist, it will be
// defaulted and this method will not die.
func WatchObservabilityConfigOrDie(ctx context.Context, cmw *configmap.InformedWatcher, profilingHandler *profiling.Handler, logger *zap.SugaredLogger, component string) {
if _, err := kubeclient.Get(ctx).CoreV1().ConfigMaps(system.Namespace()).Get(metrics.ConfigMapName(),
metav1.GetOptions{}); err == nil {
cmw.Watch(metrics.ConfigMapName(),
metrics.UpdateExporterFromConfigMap(component, logger),
profilingHandler.UpdateFromConfigMap)
} else if !apierrors.IsNotFound(err) {
logger.With(zap.Error(err)).Fatalf("Error reading ConfigMap %q", metrics.ConfigMapName())
}
}
// ControllersAndWebhooksFromCtors returns a list of the controllers and a list
// of the webhooks created from the given constructors.
func ControllersAndWebhooksFromCtors(ctx context.Context,
cmw *configmap.InformedWatcher,
ctors ...injection.ControllerConstructor) ([]*controller.Impl, []interface{}) {
controllers := make([]*controller.Impl, 0, len(ctors))
webhooks := make([]interface{}, 0)
for _, cf := range ctors {
ctrl := cf(ctx, cmw)
controllers = append(controllers, ctrl)
// Build a list of any reconcilers that implement webhook.AdmissionController
switch c := ctrl.Reconciler.(type) {
case webhook.AdmissionController, webhook.ConversionController:
webhooks = append(webhooks, c)
}
}
return controllers, webhooks
}

View File

@ -1,40 +0,0 @@
/*
Copyright 2019 The Knative Authors
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
*/
package testing
import (
"fmt"
"time"
)
// FakeStatsReporter is a fake implementation of StatsReporter
type FakeStatsReporter struct {
servicesReady map[string]int
}
func (r *FakeStatsReporter) ReportServiceReady(namespace, service string, d time.Duration) error {
key := fmt.Sprintf("%s/%s", namespace, service)
if r.servicesReady == nil {
r.servicesReady = make(map[string]int)
}
r.servicesReady[key]++
return nil
}
func (r *FakeStatsReporter) GetServiceReadyStats() map[string]int {
return r.servicesReady
}

View File

@ -79,9 +79,6 @@ type TableRow struct {
// WantEvents holds the ordered list of events we expect during reconciliation. // WantEvents holds the ordered list of events we expect during reconciliation.
WantEvents []string WantEvents []string
// WantServiceReadyStats holds the ServiceReady stats we expect during reconciliation.
WantServiceReadyStats map[string]int
// WithReactors is a set of functions that are installed as Reactors for the execution // WithReactors is a set of functions that are installed as Reactors for the execution
// of this row of the table-driven-test. // of this row of the table-driven-test.
WithReactors []clientgotesting.ReactionFunc WithReactors []clientgotesting.ReactionFunc
@ -123,15 +120,14 @@ func objKey(o runtime.Object) string {
return path.Join(typeOf, on.GetNamespace(), on.GetName()) return path.Join(typeOf, on.GetNamespace(), on.GetName())
} }
// Factory returns a Reconciler.Interface to perform reconciliation in table test, // Factory returns a Reconciler.Interface to perform reconciliation in table test, and
// ActionRecorderList/EventList to capture k8s actions/events produced during reconciliation // ActionRecorderList/EventList to capture k8s actions/events produced during reconciliation.
// and FakeStatsReporter to capture stats. type Factory func(*testing.T, *TableRow) (controller.Reconciler, ActionRecorderList, EventList)
type Factory func(*testing.T, *TableRow) (controller.Reconciler, ActionRecorderList, EventList, *FakeStatsReporter)
// Test executes the single table test. // Test executes the single table test.
func (r *TableRow) Test(t *testing.T, factory Factory) { func (r *TableRow) Test(t *testing.T, factory Factory) {
t.Helper() t.Helper()
c, recorderList, eventList, statsReporter := factory(t, r) c, recorderList, eventList := factory(t, r)
// Set the Reconciler for PostConditions to access it post-Reconcile() // Set the Reconciler for PostConditions to access it post-Reconcile()
r.Reconciler = c r.Reconciler = c
@ -355,11 +351,6 @@ func (r *TableRow) Test(t *testing.T, factory Factory) {
} }
} }
gotStats := statsReporter.GetServiceReadyStats()
if diff := cmp.Diff(r.WantServiceReadyStats, gotStats); diff != "" {
t.Errorf("Unexpected service ready stats (-want, +got): %s", diff)
}
for _, verify := range r.PostConditions { for _, verify := range r.PostConditions {
verify(t, r) verify(t, r)
} }

Some files were not shown because too many files have changed in this diff Show More