Use typed rate limiting queue (#3028)

* Use typed rate limiting queue
* update skaffold version
* Update code-generator to 1.31

---------

Signed-off-by: Sanket <sanketsudake@gmail.com>
This commit is contained in:
Sanket Sudake
2024-10-01 12:05:55 +05:30
committed by GitHub
parent 9bdac9a334
commit 15857b02d9
78 changed files with 3256 additions and 2719 deletions
+6 -6
View File
@@ -79,15 +79,15 @@ jobs:
- name: Install Skaffold - name: Install Skaffold
run: | run: |
curl -Lo skaffold https://storage.googleapis.com/skaffold/releases/v2.0.3/skaffold-linux-amd64 curl -Lo skaffold https://storage.googleapis.com/skaffold/releases/v2.13.2/skaffold-linux-amd64
sudo install skaffold /usr/local/bin/ sudo install skaffold /usr/local/bin/
skaffold version skaffold version
- name: Install GoReleaser - name: Install GoReleaser
uses: goreleaser/goreleaser-action@7ec5c2b0c6cdda6e8bbb49444bc797dd33d74dd8 # v5.0.0 uses: goreleaser/goreleaser-action@286f3b13b1b49da4ac219696163fb8c1c93e1200 # v6.0.0
with: with:
install-only: true install-only: true
version: "~> v1" version: "~> v2"
- name: Setup Prometheus Stack - name: Setup Prometheus Stack
run: | run: |
@@ -222,15 +222,15 @@ jobs:
- name: Install Skaffold - name: Install Skaffold
run: | run: |
curl -Lo skaffold https://storage.googleapis.com/skaffold/releases/v2.0.3/skaffold-linux-amd64 curl -Lo skaffold https://storage.googleapis.com/skaffold/releases/v2.13.2/skaffold-linux-amd64
sudo install skaffold /usr/local/bin/ sudo install skaffold /usr/local/bin/
skaffold version skaffold version
- name: Install GoReleaser - name: Install GoReleaser
uses: goreleaser/goreleaser-action@7ec5c2b0c6cdda6e8bbb49444bc797dd33d74dd8 # v5.0.0 uses: goreleaser/goreleaser-action@286f3b13b1b49da4ac219696163fb8c1c93e1200 # v6.0.0
with: with:
install-only: true install-only: true
version: "~> v1" version: "~> v2"
- name: Setup Prometheus Stack - name: Setup Prometheus Stack
run: | run: |
+4 -4
View File
@@ -30,10 +30,10 @@ jobs:
run: echo ::set-output name=VERSION::${GITHUB_REF/refs\/tags\//} run: echo ::set-output name=VERSION::${GITHUB_REF/refs\/tags\//}
- name: Install GoReleaser - name: Install GoReleaser
uses: goreleaser/goreleaser-action@7ec5c2b0c6cdda6e8bbb49444bc797dd33d74dd8 # v5.0.0 uses: goreleaser/goreleaser-action@286f3b13b1b49da4ac219696163fb8c1c93e1200 # v6.0.0
with: with:
install-only: true install-only: true
version: "~> v1" version: "~> v2"
- name: Kind Clutser - name: Kind Clutser
uses: helm/kind-action@0025e74a8c7512023d06dc019c617aa3cf561fde # v1.10.0 uses: helm/kind-action@0025e74a8c7512023d06dc019c617aa3cf561fde # v1.10.0
@@ -80,9 +80,9 @@ jobs:
shell: bash shell: bash
- name: Run GoReleaser - name: Run GoReleaser
uses: goreleaser/goreleaser-action@7ec5c2b0c6cdda6e8bbb49444bc797dd33d74dd8 # v5.0.0 uses: goreleaser/goreleaser-action@286f3b13b1b49da4ac219696163fb8c1c93e1200 # v6.0.0
with: with:
version: "~> v1" version: "~> v2"
args: release args: release
env: env:
COSIGN_PWD: ${{ secrets.COSIGN_PWD }} COSIGN_PWD: ${{ secrets.COSIGN_PWD }}
+2 -2
View File
@@ -58,10 +58,10 @@ jobs:
cluster_name: ${{ env.KIND_CLUSTER_NAME }} cluster_name: ${{ env.KIND_CLUSTER_NAME }}
- name: Install GoReleaser - name: Install GoReleaser
uses: goreleaser/goreleaser-action@7ec5c2b0c6cdda6e8bbb49444bc797dd33d74dd8 # v5.0.0 uses: goreleaser/goreleaser-action@286f3b13b1b49da4ac219696163fb8c1c93e1200 # v6.0.0
with: with:
install-only: true install-only: true
version: "~> v1" version: "~> v2"
- name: Setup kubectl & fetch node information - name: Setup kubectl & fetch node information
run: | run: |
+4 -2
View File
@@ -1,3 +1,5 @@
version: 2
project_name: fission project_name: fission
release: release:
github: github:
@@ -16,7 +18,7 @@ before:
hooks: hooks:
- go mod tidy - go mod tidy
snapshot: snapshot:
name_template: "{{ .Tag }}" version_template: "{{ .Tag }}"
builds: builds:
- &build-linux - &build-linux
id: builder id: builder
@@ -314,7 +316,7 @@ docker_manifests:
- fission/reporter:latest-amd64 - fission/reporter:latest-amd64
- fission/reporter:latest-arm64 - fission/reporter:latest-arm64
changelog: changelog:
skip: false disable: true
archives: archives:
- id: fission - id: fission
builds: builds:
+2 -2
View File
@@ -65,7 +65,7 @@ codegen: controller-gen-install
### CRDs ### CRDs
controller-gen-install: controller-gen-install:
go install sigs.k8s.io/controller-tools/cmd/controller-gen@v0.15.0 go install sigs.k8s.io/controller-tools/cmd/controller-gen@v0.16.3
generate-crds: controller-gen-install generate-crds: controller-gen-install
$(GOPATH)/bin/controller-gen crd \ $(GOPATH)/bin/controller-gen crd \
@@ -100,7 +100,7 @@ generate-cli-docs:
go run tools/cmd-docs/main.go -o "../fission.io/content/en/docs/reference/fission-cli" go run tools/cmd-docs/main.go -o "../fission.io/content/en/docs/reference/fission-cli"
install-crd-ref-docs: install-crd-ref-docs:
go install github.com/elastic/crd-ref-docs@v0.0.12 go install github.com/elastic/crd-ref-docs@v0.1.0
generate-crd-ref-docs: install-crd-ref-docs generate-crd-ref-docs: install-crd-ref-docs
# crd-ref-docs: https://github.com/elastic/crd-ref-docs # crd-ref-docs: https://github.com/elastic/crd-ref-docs
+1 -1
View File
@@ -3,7 +3,7 @@ apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition kind: CustomResourceDefinition
metadata: metadata:
annotations: annotations:
controller-gen.kubebuilder.io/version: v0.15.0 controller-gen.kubebuilder.io/version: v0.16.3
name: canaryconfigs.fission.io name: canaryconfigs.fission.io
spec: spec:
group: fission.io group: fission.io
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
+2 -5
View File
@@ -3,7 +3,7 @@ apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition kind: CustomResourceDefinition
metadata: metadata:
annotations: annotations:
controller-gen.kubebuilder.io/version: v0.15.0 controller-gen.kubebuilder.io/version: v0.16.3
name: httptriggers.fission.io name: httptriggers.fission.io
spec: spec:
group: fission.io group: fission.io
@@ -76,14 +76,11 @@ spec:
type: object type: object
host: host:
description: |- description: |-
TODO: remove this field since we have IngressConfig already
Deprecated: the original idea of this field is not for setting Ingress. Deprecated: the original idea of this field is not for setting Ingress.
Since we have IngressConfig now, remove Host after couple releases. Since we have IngressConfig now, remove Host after couple releases.
type: string type: string
ingressconfig: ingressconfig:
description: |- description: IngressConfig for router to set up Ingress.
TODO: make IngressConfig an independent Fission resource
IngressConfig for router to set up Ingress.
properties: properties:
annotations: annotations:
additionalProperties: additionalProperties:
@@ -3,7 +3,7 @@ apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition kind: CustomResourceDefinition
metadata: metadata:
annotations: annotations:
controller-gen.kubebuilder.io/version: v0.15.0 controller-gen.kubebuilder.io/version: v0.16.3
name: kuberneteswatchtriggers.fission.io name: kuberneteswatchtriggers.fission.io
spec: spec:
group: fission.io group: fission.io
File diff suppressed because it is too large Load Diff
+1 -1
View File
@@ -3,7 +3,7 @@ apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition kind: CustomResourceDefinition
metadata: metadata:
annotations: annotations:
controller-gen.kubebuilder.io/version: v0.15.0 controller-gen.kubebuilder.io/version: v0.16.3
name: packages.fission.io name: packages.fission.io
spec: spec:
group: fission.io group: fission.io
+1 -1
View File
@@ -3,7 +3,7 @@ apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition kind: CustomResourceDefinition
metadata: metadata:
annotations: annotations:
controller-gen.kubebuilder.io/version: v0.15.0 controller-gen.kubebuilder.io/version: v0.16.3
name: timetriggers.fission.io name: timetriggers.fission.io
spec: spec:
group: fission.io group: fission.io
+26 -24
View File
@@ -9,8 +9,8 @@ require (
github.com/dchest/uniuri v1.2.0 github.com/dchest/uniuri v1.2.0
github.com/docopt/docopt-go v0.0.0-20180111231733-ee0de3bc6815 github.com/docopt/docopt-go v0.0.0-20180111231733-ee0de3bc6815
github.com/dustin/go-humanize v1.0.1 github.com/dustin/go-humanize v1.0.1
github.com/elastic/crd-ref-docs v0.0.12 github.com/elastic/crd-ref-docs v0.1.0
github.com/fatih/color v1.16.0 github.com/fatih/color v1.17.0
github.com/fsnotify/fsnotify v1.7.0 github.com/fsnotify/fsnotify v1.7.0
github.com/go-git/go-git/v5 v5.12.0 github.com/go-git/go-git/v5 v5.12.0
github.com/go-logr/zapr v1.3.0 github.com/go-logr/zapr v1.3.0
@@ -22,7 +22,7 @@ require (
github.com/hashicorp/go-multierror v1.1.1 github.com/hashicorp/go-multierror v1.1.1
github.com/hashicorp/go-retryablehttp v0.7.7 github.com/hashicorp/go-retryablehttp v0.7.7
github.com/influxdata/influxdb v1.11.5 github.com/influxdata/influxdb v1.11.5
github.com/kedacore/keda/v2 v2.15.0 github.com/kedacore/keda/v2 v2.15.1
github.com/mholt/archiver/v3 v3.5.1 github.com/mholt/archiver/v3 v3.5.1
github.com/minio/minio-go v6.0.14+incompatible github.com/minio/minio-go v6.0.14+incompatible
github.com/ory/dockertest v3.3.5+incompatible github.com/ory/dockertest v3.3.5+incompatible
@@ -31,28 +31,28 @@ require (
github.com/prometheus/common v0.55.0 github.com/prometheus/common v0.55.0
github.com/robfig/cron/v3 v3.0.1 github.com/robfig/cron/v3 v3.0.1
github.com/sabhiram/go-gitignore v0.0.0-20210923224102-525f6e181f06 github.com/sabhiram/go-gitignore v0.0.0-20210923224102-525f6e181f06
github.com/spf13/cobra v1.8.0 github.com/spf13/cobra v1.8.1
github.com/spf13/pflag v1.0.5 github.com/spf13/pflag v1.0.5
github.com/stretchr/testify v1.9.0 github.com/stretchr/testify v1.9.0
github.com/wcharczuk/go-chart v2.0.1+incompatible github.com/wcharczuk/go-chart v2.0.1+incompatible
go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.51.0 go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.53.0
go.opentelemetry.io/contrib/propagators/autoprop v0.51.0 go.opentelemetry.io/contrib/propagators/autoprop v0.51.0
go.opentelemetry.io/otel v1.28.0 go.opentelemetry.io/otel v1.28.0
go.opentelemetry.io/otel/exporters/otlp/otlptrace v1.26.0 go.opentelemetry.io/otel/exporters/otlp/otlptrace v1.28.0
go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc v1.26.0 go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc v1.27.0
go.opentelemetry.io/otel/sdk v1.28.0 go.opentelemetry.io/otel/sdk v1.28.0
go.opentelemetry.io/otel/trace v1.28.0 go.opentelemetry.io/otel/trace v1.28.0
go.uber.org/zap v1.27.0 go.uber.org/zap v1.27.0
golang.org/x/net v0.27.0 golang.org/x/net v0.28.0
google.golang.org/grpc v1.65.0 google.golang.org/grpc v1.65.0
k8s.io/api v0.30.0 k8s.io/api v0.31.1
k8s.io/apiextensions-apiserver v0.30.0 k8s.io/apiextensions-apiserver v0.31.1
k8s.io/apimachinery v0.30.0 k8s.io/apimachinery v0.31.1
k8s.io/client-go v0.30.0 k8s.io/client-go v0.31.1
k8s.io/code-generator v0.30.0 k8s.io/code-generator v0.31.1
k8s.io/metrics v0.30.0 k8s.io/metrics v0.31.1
sigs.k8s.io/controller-runtime v0.18.2 sigs.k8s.io/controller-runtime v0.19.0
sigs.k8s.io/controller-tools v0.15.0 sigs.k8s.io/controller-tools v0.16.3
sigs.k8s.io/structured-merge-diff/v4 v4.4.1 sigs.k8s.io/structured-merge-diff/v4 v4.4.1
sigs.k8s.io/yaml v1.4.0 sigs.k8s.io/yaml v1.4.0
) )
@@ -74,7 +74,7 @@ require (
github.com/cespare/xxhash/v2 v2.3.0 // indirect github.com/cespare/xxhash/v2 v2.3.0 // indirect
github.com/cloudflare/circl v1.3.7 // indirect github.com/cloudflare/circl v1.3.7 // indirect
github.com/containerd/continuity v0.2.2 // indirect github.com/containerd/continuity v0.2.2 // indirect
github.com/cpuguy83/go-md2man/v2 v2.0.3 // indirect github.com/cpuguy83/go-md2man/v2 v2.0.4 // indirect
github.com/cyphar/filepath-securejoin v0.2.4 // indirect github.com/cyphar/filepath-securejoin v0.2.4 // indirect
github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc // indirect github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc // indirect
github.com/docker/go-connections v0.4.0 // indirect github.com/docker/go-connections v0.4.0 // indirect
@@ -85,10 +85,10 @@ require (
github.com/eapache/queue v1.1.0 // indirect github.com/eapache/queue v1.1.0 // indirect
github.com/emicklei/go-restful/v3 v3.12.0 // indirect github.com/emicklei/go-restful/v3 v3.12.0 // indirect
github.com/emirpasic/gods v1.18.1 // indirect github.com/emirpasic/gods v1.18.1 // indirect
github.com/evanphx/json-patch v5.8.1+incompatible // indirect
github.com/evanphx/json-patch/v5 v5.9.0 // indirect github.com/evanphx/json-patch/v5 v5.9.0 // indirect
github.com/expr-lang/expr v1.16.9 // indirect github.com/expr-lang/expr v1.16.9 // indirect
github.com/felixge/httpsnoop v1.0.4 // indirect github.com/felixge/httpsnoop v1.0.4 // indirect
github.com/fxamacker/cbor/v2 v2.7.0 // indirect
github.com/go-git/gcfg v1.5.1-0.20230307220236-3a3c6141e376 // indirect github.com/go-git/gcfg v1.5.1-0.20230307220236-3a3c6141e376 // indirect
github.com/go-git/go-billy/v5 v5.5.0 // indirect github.com/go-git/go-billy/v5 v5.5.0 // indirect
github.com/go-ini/ini v1.66.4 // indirect github.com/go-ini/ini v1.66.4 // indirect
@@ -154,6 +154,7 @@ require (
github.com/sirupsen/logrus v1.9.3 // indirect github.com/sirupsen/logrus v1.9.3 // indirect
github.com/skeema/knownhosts v1.2.2 // indirect github.com/skeema/knownhosts v1.2.2 // indirect
github.com/ulikunitz/xz v0.5.9 // indirect github.com/ulikunitz/xz v0.5.9 // indirect
github.com/x448/float16 v0.8.4 // indirect
github.com/xanzy/ssh-agent v0.3.3 // indirect github.com/xanzy/ssh-agent v0.3.3 // indirect
github.com/xi2/xz v0.0.0-20171230120015-48954b6210f8 // indirect github.com/xi2/xz v0.0.0-20171230120015-48954b6210f8 // indirect
go.opentelemetry.io/contrib/propagators/aws v1.26.0 // indirect go.opentelemetry.io/contrib/propagators/aws v1.26.0 // indirect
@@ -163,22 +164,23 @@ require (
go.opentelemetry.io/otel/metric v1.28.0 // indirect go.opentelemetry.io/otel/metric v1.28.0 // indirect
go.opentelemetry.io/proto/otlp v1.3.1 // indirect go.opentelemetry.io/proto/otlp v1.3.1 // indirect
go.uber.org/multierr v1.11.0 // indirect go.uber.org/multierr v1.11.0 // indirect
golang.org/x/crypto v0.25.0 // indirect golang.org/x/crypto v0.26.0 // indirect
golang.org/x/exp v0.0.0-20240719175910-8a7402abbf56 // indirect golang.org/x/exp v0.0.0-20240719175910-8a7402abbf56 // indirect
golang.org/x/image v0.18.0 // indirect golang.org/x/image v0.18.0 // indirect
golang.org/x/mod v0.19.0 // indirect golang.org/x/mod v0.20.0 // indirect
golang.org/x/oauth2 v0.22.0 // indirect golang.org/x/oauth2 v0.22.0 // indirect
golang.org/x/sync v0.8.0 // indirect golang.org/x/sync v0.8.0 // indirect
golang.org/x/sys v0.22.0 // indirect golang.org/x/sys v0.24.0 // indirect
golang.org/x/term v0.22.0 // indirect golang.org/x/term v0.23.0 // indirect
golang.org/x/text v0.16.0 // indirect golang.org/x/text v0.17.0 // indirect
golang.org/x/time v0.5.0 // indirect golang.org/x/time v0.5.0 // indirect
golang.org/x/tools v0.23.0 // indirect golang.org/x/tools v0.24.0 // indirect
golang.org/x/xerrors v0.0.0-20231012003039-104605ab7028 // indirect golang.org/x/xerrors v0.0.0-20231012003039-104605ab7028 // indirect
gomodules.xyz/jsonpatch/v2 v2.4.0 // indirect gomodules.xyz/jsonpatch/v2 v2.4.0 // indirect
google.golang.org/genproto/googleapis/api v0.0.0-20240725223205-93522f1f2a9f // indirect google.golang.org/genproto/googleapis/api v0.0.0-20240725223205-93522f1f2a9f // indirect
google.golang.org/genproto/googleapis/rpc v0.0.0-20240730163845-b1a4ccb954bf // indirect google.golang.org/genproto/googleapis/rpc v0.0.0-20240730163845-b1a4ccb954bf // indirect
google.golang.org/protobuf v1.34.2 // indirect google.golang.org/protobuf v1.34.2 // indirect
gopkg.in/evanphx/json-patch.v4 v4.12.0 // indirect
gopkg.in/inf.v0 v0.9.1 // indirect gopkg.in/inf.v0 v0.9.1 // indirect
gopkg.in/warnings.v0 v0.1.2 // indirect gopkg.in/warnings.v0 v0.1.2 // indirect
gopkg.in/yaml.v2 v2.4.0 // indirect gopkg.in/yaml.v2 v2.4.0 // indirect
+64 -58
View File
@@ -77,8 +77,8 @@ github.com/coreos/go-semver v0.2.0/go.mod h1:nnelYz7RCh+5ahJtPPxZlU+153eP4D4r3Ee
github.com/coreos/go-systemd v0.0.0-20190321100706-95778dfbb74e/go.mod h1:F5haX7vjVVG0kc13fIWeqUViNPyEJxv/OmvnBo0Yme4= github.com/coreos/go-systemd v0.0.0-20190321100706-95778dfbb74e/go.mod h1:F5haX7vjVVG0kc13fIWeqUViNPyEJxv/OmvnBo0Yme4=
github.com/coreos/pkg v0.0.0-20180928190104-399ea9e2e55f/go.mod h1:E3G3o1h8I7cfcXa63jLwjI0eiQQMgzzUDFVpN/nH/eA= github.com/coreos/pkg v0.0.0-20180928190104-399ea9e2e55f/go.mod h1:E3G3o1h8I7cfcXa63jLwjI0eiQQMgzzUDFVpN/nH/eA=
github.com/cpuguy83/go-md2man/v2 v2.0.0/go.mod h1:maD7wRr/U5Z6m/iR4s+kqSMx2CaBsrgA7czyZG/E6dU= github.com/cpuguy83/go-md2man/v2 v2.0.0/go.mod h1:maD7wRr/U5Z6m/iR4s+kqSMx2CaBsrgA7czyZG/E6dU=
github.com/cpuguy83/go-md2man/v2 v2.0.3 h1:qMCsGGgs+MAzDFyp9LpAe1Lqy/fY/qCovCm0qnXZOBM= github.com/cpuguy83/go-md2man/v2 v2.0.4 h1:wfIWP927BUkWJb2NmU/kNDYIBTh/ziUX91+lVfRxZq4=
github.com/cpuguy83/go-md2man/v2 v2.0.3/go.mod h1:tgQtvFlXSQOSOSIRvRPT7W67SCa46tRHOmNcaadrF8o= github.com/cpuguy83/go-md2man/v2 v2.0.4/go.mod h1:tgQtvFlXSQOSOSIRvRPT7W67SCa46tRHOmNcaadrF8o=
github.com/cyphar/filepath-securejoin v0.2.4 h1:Ugdm7cg7i6ZK6x3xDF1oEu1nfkyfH53EtKeQYTC3kyg= github.com/cyphar/filepath-securejoin v0.2.4 h1:Ugdm7cg7i6ZK6x3xDF1oEu1nfkyfH53EtKeQYTC3kyg=
github.com/cyphar/filepath-securejoin v0.2.4/go.mod h1:aPGpWjXOXUn2NCNjFvBE6aRxGGx79pTxQpKOJNYHHl4= github.com/cyphar/filepath-securejoin v0.2.4/go.mod h1:aPGpWjXOXUn2NCNjFvBE6aRxGGx79pTxQpKOJNYHHl4=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
@@ -108,8 +108,8 @@ github.com/eapache/go-xerial-snappy v0.0.0-20230731223053-c322873962e3 h1:Oy0F4A
github.com/eapache/go-xerial-snappy v0.0.0-20230731223053-c322873962e3/go.mod h1:YvSRo5mw33fLEx1+DlK6L2VV43tJt5Eyel9n9XBcR+0= github.com/eapache/go-xerial-snappy v0.0.0-20230731223053-c322873962e3/go.mod h1:YvSRo5mw33fLEx1+DlK6L2VV43tJt5Eyel9n9XBcR+0=
github.com/eapache/queue v1.1.0 h1:YOEu7KNc61ntiQlcEeUIoDTJ2o8mQznoNvUhiigpIqc= github.com/eapache/queue v1.1.0 h1:YOEu7KNc61ntiQlcEeUIoDTJ2o8mQznoNvUhiigpIqc=
github.com/eapache/queue v1.1.0/go.mod h1:6eCeP0CKFpHLu8blIFXhExK/dRa7WDZfr6jVFPTqq+I= github.com/eapache/queue v1.1.0/go.mod h1:6eCeP0CKFpHLu8blIFXhExK/dRa7WDZfr6jVFPTqq+I=
github.com/elastic/crd-ref-docs v0.0.12 h1:F3seyncbzUz3rT3d+caeYWhumb5ojYQ6Bl0Z+zOp16M= github.com/elastic/crd-ref-docs v0.1.0 h1:Cr5kz89QB3Iuuj7dhAfLMApCrChEGAaIBTxGk/xuRKw=
github.com/elastic/crd-ref-docs v0.0.12/go.mod h1:X83mMBdJt05heJUYiS3T0yJ/JkCuliuhSUNav5Gjo/U= github.com/elastic/crd-ref-docs v0.1.0/go.mod h1:X83mMBdJt05heJUYiS3T0yJ/JkCuliuhSUNav5Gjo/U=
github.com/elazarl/goproxy v0.0.0-20230808193330-2592e75ae04a h1:mATvB/9r/3gvcejNsXKSkQ6lcIaNec2nyfOdlTBR2lU= github.com/elazarl/goproxy v0.0.0-20230808193330-2592e75ae04a h1:mATvB/9r/3gvcejNsXKSkQ6lcIaNec2nyfOdlTBR2lU=
github.com/elazarl/goproxy v0.0.0-20230808193330-2592e75ae04a/go.mod h1:Ro8st/ElPeALwNFlcTpWmkr6IoMFfkjXAvTHpevnDsM= github.com/elazarl/goproxy v0.0.0-20230808193330-2592e75ae04a/go.mod h1:Ro8st/ElPeALwNFlcTpWmkr6IoMFfkjXAvTHpevnDsM=
github.com/emicklei/go-restful/v3 v3.12.0 h1:y2DdzBAURM29NFF94q6RaY4vjIH1rtwDapwQtU84iWk= github.com/emicklei/go-restful/v3 v3.12.0 h1:y2DdzBAURM29NFF94q6RaY4vjIH1rtwDapwQtU84iWk=
@@ -122,8 +122,8 @@ github.com/evanphx/json-patch/v5 v5.9.0 h1:kcBlZQbplgElYIlo/n1hJbls2z/1awpXxpRi0
github.com/evanphx/json-patch/v5 v5.9.0/go.mod h1:VNkHZ/282BpEyt/tObQO8s5CMPmYYq14uClGH4abBuQ= github.com/evanphx/json-patch/v5 v5.9.0/go.mod h1:VNkHZ/282BpEyt/tObQO8s5CMPmYYq14uClGH4abBuQ=
github.com/expr-lang/expr v1.16.9 h1:WUAzmR0JNI9JCiF0/ewwHB1gmcGw5wW7nWt8gc6PpCI= github.com/expr-lang/expr v1.16.9 h1:WUAzmR0JNI9JCiF0/ewwHB1gmcGw5wW7nWt8gc6PpCI=
github.com/expr-lang/expr v1.16.9/go.mod h1:8/vRC7+7HBzESEqt5kKpYXxrxkr31SaO8r40VO/1IT4= github.com/expr-lang/expr v1.16.9/go.mod h1:8/vRC7+7HBzESEqt5kKpYXxrxkr31SaO8r40VO/1IT4=
github.com/fatih/color v1.16.0 h1:zmkK9Ngbjj+K0yRhTVONQh1p/HknKYSlNT+vZCzyokM= github.com/fatih/color v1.17.0 h1:GlRw1BRJxkpqUCBKzKOw098ed57fEsKeNjpTe3cSjK4=
github.com/fatih/color v1.16.0/go.mod h1:fL2Sau1YI5c0pdGEVCbKQbLXB6edEj1ZgiY4NijnWvE= github.com/fatih/color v1.17.0/go.mod h1:YZ7TlrGPkiz6ku9fK3TLD/pl3CpsiFyu8N92HLgmosI=
github.com/felixge/httpsnoop v1.0.4 h1:NFTV2Zj1bL4mc9sqWACXbQFVBBg2W3GPvqp8/ESS2Wg= github.com/felixge/httpsnoop v1.0.4 h1:NFTV2Zj1bL4mc9sqWACXbQFVBBg2W3GPvqp8/ESS2Wg=
github.com/felixge/httpsnoop v1.0.4/go.mod h1:m8KPJKqk1gH5J9DgRY2ASl2lWCfGKXixSwevea8zH2U= github.com/felixge/httpsnoop v1.0.4/go.mod h1:m8KPJKqk1gH5J9DgRY2ASl2lWCfGKXixSwevea8zH2U=
github.com/fortytw2/leaktest v1.3.0 h1:u8491cBMTQ8ft8aeV+adlcytMZylmA5nnwwkRZjI8vw= github.com/fortytw2/leaktest v1.3.0 h1:u8491cBMTQ8ft8aeV+adlcytMZylmA5nnwwkRZjI8vw=
@@ -131,6 +131,8 @@ github.com/fortytw2/leaktest v1.3.0/go.mod h1:jDsjWgpAGjm2CA7WthBh/CdZYEPF31XHqu
github.com/fsnotify/fsnotify v1.4.7/go.mod h1:jwhsz4b93w/PPRr/qN1Yymfu8t87LnFCMoQvtojpjFo= github.com/fsnotify/fsnotify v1.4.7/go.mod h1:jwhsz4b93w/PPRr/qN1Yymfu8t87LnFCMoQvtojpjFo=
github.com/fsnotify/fsnotify v1.7.0 h1:8JEhPFa5W2WU7YfeZzPNqzMP6Lwt7L2715Ggo0nosvA= github.com/fsnotify/fsnotify v1.7.0 h1:8JEhPFa5W2WU7YfeZzPNqzMP6Lwt7L2715Ggo0nosvA=
github.com/fsnotify/fsnotify v1.7.0/go.mod h1:40Bi/Hjc2AVfZrqy+aj+yEI+/bRxZnMJyTJwOpGvigM= github.com/fsnotify/fsnotify v1.7.0/go.mod h1:40Bi/Hjc2AVfZrqy+aj+yEI+/bRxZnMJyTJwOpGvigM=
github.com/fxamacker/cbor/v2 v2.7.0 h1:iM5WgngdRBanHcxugY4JySA0nk1wZorNOpTgCMedv5E=
github.com/fxamacker/cbor/v2 v2.7.0/go.mod h1:pxXPTn3joSm21Gbwsv0w9OSA2y1HFR9qXEeXQVeNoDQ=
github.com/gabriel-vasile/mimetype v1.4.3 h1:in2uUcidCuFcDKtdcBxlR0rJ1+fsokWf+uqxgUFjbI0= github.com/gabriel-vasile/mimetype v1.4.3 h1:in2uUcidCuFcDKtdcBxlR0rJ1+fsokWf+uqxgUFjbI0=
github.com/gabriel-vasile/mimetype v1.4.3/go.mod h1:d8uq/6HKRL6CGdk+aubisF/M5GcPfT7nKyLpA0lbSSk= github.com/gabriel-vasile/mimetype v1.4.3/go.mod h1:d8uq/6HKRL6CGdk+aubisF/M5GcPfT7nKyLpA0lbSSk=
github.com/ghodss/yaml v1.0.0/go.mod h1:4dBDuWmgqj2HViK6kFavaiC9ZROes6MMH2rRYeMEF04= github.com/ghodss/yaml v1.0.0/go.mod h1:4dBDuWmgqj2HViK6kFavaiC9ZROes6MMH2rRYeMEF04=
@@ -166,11 +168,11 @@ github.com/go-playground/locales v0.14.1 h1:EWaQ/wswjilfKLTECiXz7Rh+3BjFhfDFKv/o
github.com/go-playground/locales v0.14.1/go.mod h1:hxrqLVvrK65+Rwrd5Fc6F2O76J/NuW9t0sjnWqG1slY= github.com/go-playground/locales v0.14.1/go.mod h1:hxrqLVvrK65+Rwrd5Fc6F2O76J/NuW9t0sjnWqG1slY=
github.com/go-playground/universal-translator v0.18.1 h1:Bcnm0ZwsGyWbCzImXv+pAJnYK9S473LQFuzCbDbfSFY= github.com/go-playground/universal-translator v0.18.1 h1:Bcnm0ZwsGyWbCzImXv+pAJnYK9S473LQFuzCbDbfSFY=
github.com/go-playground/universal-translator v0.18.1/go.mod h1:xekY+UJKNuX9WP91TpwSH2VMlDf28Uj24BCp08ZFTUY= github.com/go-playground/universal-translator v0.18.1/go.mod h1:xekY+UJKNuX9WP91TpwSH2VMlDf28Uj24BCp08ZFTUY=
github.com/go-playground/validator/v10 v10.19.0 h1:ol+5Fu+cSq9JD7SoSqe04GMI92cbn0+wvQ3bZ8b/AU4= github.com/go-playground/validator/v10 v10.22.0 h1:k6HsTZ0sTnROkhS//R0O+55JgM8C4Bx7ia+JlgcnOao=
github.com/go-playground/validator/v10 v10.19.0/go.mod h1:dbuPbCMFw/DrkbEynArYaCwl3amGuJotoKCe95atGMM= github.com/go-playground/validator/v10 v10.22.0/go.mod h1:dbuPbCMFw/DrkbEynArYaCwl3amGuJotoKCe95atGMM=
github.com/go-stack/stack v1.8.0/go.mod h1:v0f6uXyyMGvRgIKkXu+yp6POWl0qKG85gN/melR3HDY= github.com/go-stack/stack v1.8.0/go.mod h1:v0f6uXyyMGvRgIKkXu+yp6POWl0qKG85gN/melR3HDY=
github.com/go-task/slim-sprig v0.0.0-20230315185526-52ccab3ef572 h1:tfuBGBXKqDEevZMzYi5KSi8KkcZtzBcTgAUUtapy0OI= github.com/go-task/slim-sprig/v3 v3.0.0 h1:sUs3vkvUymDpBKi3qH1YSqBQk9+9D/8M2mN1vB6EwHI=
github.com/go-task/slim-sprig v0.0.0-20230315185526-52ccab3ef572/go.mod h1:9Pwr4B2jHnOSGXyyzV8ROjYa2ojvAY6HCGYYfMoC3Ls= github.com/go-task/slim-sprig/v3 v3.0.0/go.mod h1:W848ghGpv3Qj3dhTPRyJypKRiqCdHZiAzKg9hl15HA8=
github.com/gobuffalo/flect v1.0.2 h1:eqjPGSo2WmjgY2XlpGwo2NXgL3RucAKo4k4qQMNA5sA= github.com/gobuffalo/flect v1.0.2 h1:eqjPGSo2WmjgY2XlpGwo2NXgL3RucAKo4k4qQMNA5sA=
github.com/gobuffalo/flect v1.0.2/go.mod h1:A5msMlrHtLqh9umBSnvabjsMrCcCpAyzglnDvkbYKHs= github.com/gobuffalo/flect v1.0.2/go.mod h1:A5msMlrHtLqh9umBSnvabjsMrCcCpAyzglnDvkbYKHs=
github.com/goccy/go-yaml v1.11.3 h1:B3W9IdWbvrUu2OYQGwvU1nZtvMQJPBKgBUuweJjLj6I= github.com/goccy/go-yaml v1.11.3 h1:B3W9IdWbvrUu2OYQGwvU1nZtvMQJPBKgBUuweJjLj6I=
@@ -212,8 +214,8 @@ github.com/google/gofuzz v1.2.0 h1:xRy4A+RhZaiKjJ1bPfwQ8sedCA+YS2YcCHW6ec7JMi0=
github.com/google/gofuzz v1.2.0/go.mod h1:dBl0BpW6vV/+mYPU4Po3pmUjxk6FQPldtuIdl/M65Eg= github.com/google/gofuzz v1.2.0/go.mod h1:dBl0BpW6vV/+mYPU4Po3pmUjxk6FQPldtuIdl/M65Eg=
github.com/google/martian v2.1.0+incompatible/go.mod h1:9I4somxYTbIHy5NJKHRl3wXiIaQGbYVAs8BPL6v8lEs= github.com/google/martian v2.1.0+incompatible/go.mod h1:9I4somxYTbIHy5NJKHRl3wXiIaQGbYVAs8BPL6v8lEs=
github.com/google/pprof v0.0.0-20181206194817-3ea8567a2e57/go.mod h1:zfwlbNMJ+OItoe0UupaVj+oy1omPYYDuagoSzA8v9mc= github.com/google/pprof v0.0.0-20181206194817-3ea8567a2e57/go.mod h1:zfwlbNMJ+OItoe0UupaVj+oy1omPYYDuagoSzA8v9mc=
github.com/google/pprof v0.0.0-20231229205709-960ae82b1e42 h1:dHLYa5D8/Ta0aLR2XcPsrkpAgGeFs6thhMcQK0oQ0n8= github.com/google/pprof v0.0.0-20240525223248-4bfdf5a9a2af h1:kmjWCqn2qkEml422C2Rrd27c3VGxi6a/6HNq8QmHRKM=
github.com/google/pprof v0.0.0-20231229205709-960ae82b1e42/go.mod h1:czg5+yv1E0ZGTi6S6vVK1mke0fV+FaUhNGcd6VRS9Ik= github.com/google/pprof v0.0.0-20240525223248-4bfdf5a9a2af/go.mod h1:K1liHPHnj73Fdn/EKuT8nrFqBihUSKXoLYU0BuatOYo=
github.com/google/readahead v0.0.0-20161222183148-eaceba169032/go.mod h1:qYysrqQXuV4tzsizt4oOQ6mrBZQ0xnQXP3ylXX8Jk5Y= github.com/google/readahead v0.0.0-20161222183148-eaceba169032/go.mod h1:qYysrqQXuV4tzsizt4oOQ6mrBZQ0xnQXP3ylXX8Jk5Y=
github.com/google/uuid v1.6.0 h1:NIvaJDMOsjHA8n1jAhLSgzrAzy1Hgr+hNrb57e+94F0= github.com/google/uuid v1.6.0 h1:NIvaJDMOsjHA8n1jAhLSgzrAzy1Hgr+hNrb57e+94F0=
github.com/google/uuid v1.6.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= github.com/google/uuid v1.6.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo=
@@ -290,8 +292,8 @@ github.com/json-iterator/go v1.1.12 h1:PV8peI4a0ysnczrg+LtxykD8LfKY9ML6u2jnxaEnr
github.com/json-iterator/go v1.1.12/go.mod h1:e30LSqwooZae/UwlEbR2852Gd8hjQvJoHmT4TnhNGBo= github.com/json-iterator/go v1.1.12/go.mod h1:e30LSqwooZae/UwlEbR2852Gd8hjQvJoHmT4TnhNGBo=
github.com/jstemmer/go-junit-report v0.0.0-20190106144839-af01ea7f8024/go.mod h1:6v2b51hI/fHJwM22ozAgKL4VKDeJcHhJFhtBdhmNjmU= github.com/jstemmer/go-junit-report v0.0.0-20190106144839-af01ea7f8024/go.mod h1:6v2b51hI/fHJwM22ozAgKL4VKDeJcHhJFhtBdhmNjmU=
github.com/julienschmidt/httprouter v1.2.0/go.mod h1:SYymIcj16QtmaHHD7aYtjjsJG7VTCxuUUipMqKk8s4w= github.com/julienschmidt/httprouter v1.2.0/go.mod h1:SYymIcj16QtmaHHD7aYtjjsJG7VTCxuUUipMqKk8s4w=
github.com/kedacore/keda/v2 v2.15.0 h1:ojYxfn9+UAA7sG/YSJUcB65dIpyNHYEA2kzBm/QsR2o= github.com/kedacore/keda/v2 v2.15.1 h1:Kb3woYuCeCPICH037vTIcUopXgOYpdP2qa+CmHgV3SE=
github.com/kedacore/keda/v2 v2.15.0/go.mod h1:2iN+PpON10mBdPEdrPYmmmBlVZEiQ0VHWbn09hJBMjE= github.com/kedacore/keda/v2 v2.15.1/go.mod h1:2umVEoNgklKt0+q+7BEEbrSgxqh+KPjyh6vnKXt3sls=
github.com/kevinburke/ssh_config v1.2.0 h1:x584FjTGwHzMwvHx18PXxbBVzfnxogHaAReU4gf13a4= github.com/kevinburke/ssh_config v1.2.0 h1:x584FjTGwHzMwvHx18PXxbBVzfnxogHaAReU4gf13a4=
github.com/kevinburke/ssh_config v1.2.0/go.mod h1:CT57kijsi8u/K/BOFA39wgDQJ9CxiF4nAY/ojJ6r6mM= github.com/kevinburke/ssh_config v1.2.0/go.mod h1:CT57kijsi8u/K/BOFA39wgDQJ9CxiF4nAY/ojJ6r6mM=
github.com/kisielk/errcheck v1.1.0/go.mod h1:EZBBE59ingxPouuu3KfxchcWSUPOHkagtvWXihfKN4Q= github.com/kisielk/errcheck v1.1.0/go.mod h1:EZBBE59ingxPouuu3KfxchcWSUPOHkagtvWXihfKN4Q=
@@ -361,10 +363,10 @@ github.com/nxadm/tail v1.4.8/go.mod h1:+ncqLTQzXmGhMZNUePPaPqPvBxHAIsmXswZKocGu+
github.com/oklog/ulid v1.3.1/go.mod h1:CirwcVhetQ6Lv90oh/F+FBtV6XMibvdAFo93nm5qn4U= github.com/oklog/ulid v1.3.1/go.mod h1:CirwcVhetQ6Lv90oh/F+FBtV6XMibvdAFo93nm5qn4U=
github.com/onsi/ginkgo v1.16.5 h1:8xi0RTUf59SOSfEtZMvwTvXYMzG4gV23XVHOZiXNtnE= github.com/onsi/ginkgo v1.16.5 h1:8xi0RTUf59SOSfEtZMvwTvXYMzG4gV23XVHOZiXNtnE=
github.com/onsi/ginkgo v1.16.5/go.mod h1:+E8gABHa3K6zRBolWtd+ROzc/U5bkGt0FwiG042wbpU= github.com/onsi/ginkgo v1.16.5/go.mod h1:+E8gABHa3K6zRBolWtd+ROzc/U5bkGt0FwiG042wbpU=
github.com/onsi/ginkgo/v2 v2.17.1 h1:V++EzdbhI4ZV4ev0UTIj0PzhzOcReJFyJaLjtSF55M8= github.com/onsi/ginkgo/v2 v2.19.1 h1:QXgq3Z8Crl5EL1WBAC98A5sEBHARrAJNzAmMxzLcRF0=
github.com/onsi/ginkgo/v2 v2.17.1/go.mod h1:llBI3WDLL9Z6taip6f33H76YcWtJv+7R3HigUjbIBOs= github.com/onsi/ginkgo/v2 v2.19.1/go.mod h1:O3DtEWQkPa/F7fBMgmZQKKsluAy8pd3rEQdrjkPb9zA=
github.com/onsi/gomega v1.33.0 h1:snPCflnZrpMsy94p4lXVEkHo12lmPnc3vY5XBbreexE= github.com/onsi/gomega v1.34.2 h1:pNCwDkzrsv7MS9kpaQvVb1aVLahQXyJ/Tv5oAZMI3i8=
github.com/onsi/gomega v1.33.0/go.mod h1:+925n5YtiFsLzzafLUHzVMBpvvRAzrydIBiSIxjX3wY= github.com/onsi/gomega v1.34.2/go.mod h1:v1xfxRgk0KIsG+QOdm7p8UosrOzPYRo60fd3B/1Dukc=
github.com/opencontainers/go-digest v1.0.0 h1:apOUWs51W5PlhuyGyz9FCeeBIOUDA/6nW8Oi/yOhh5U= github.com/opencontainers/go-digest v1.0.0 h1:apOUWs51W5PlhuyGyz9FCeeBIOUDA/6nW8Oi/yOhh5U=
github.com/opencontainers/go-digest v1.0.0/go.mod h1:0JzlMkj0TRzQZfJkVvzbP0HBR3IKzErnv2BNG4W4MAM= github.com/opencontainers/go-digest v1.0.0/go.mod h1:0JzlMkj0TRzQZfJkVvzbP0HBR3IKzErnv2BNG4W4MAM=
github.com/opencontainers/image-spec v1.0.2 h1:9yCKha/T5XdGtO0q9Q9a6T5NUCsTn/DrBg0D7ufOcFM= github.com/opencontainers/image-spec v1.0.2 h1:9yCKha/T5XdGtO0q9Q9a6T5NUCsTn/DrBg0D7ufOcFM=
@@ -410,8 +412,8 @@ github.com/rcrowley/go-metrics v0.0.0-20201227073835-cf1acfcdf475/go.mod h1:bCqn
github.com/robfig/cron/v3 v3.0.1 h1:WdRxkvbJztn8LMz/QEvLN5sBU+xKpSqwwUO1Pjr4qDs= github.com/robfig/cron/v3 v3.0.1 h1:WdRxkvbJztn8LMz/QEvLN5sBU+xKpSqwwUO1Pjr4qDs=
github.com/robfig/cron/v3 v3.0.1/go.mod h1:eQICP3HwyT7UooqI/z+Ov+PtYAWygg1TEWWzGIFLtro= github.com/robfig/cron/v3 v3.0.1/go.mod h1:eQICP3HwyT7UooqI/z+Ov+PtYAWygg1TEWWzGIFLtro=
github.com/rogpeppe/fastuuid v0.0.0-20150106093220-6724a57986af/go.mod h1:XWv6SoW27p1b0cqNHllgS5HIMJraePCO15w5zCzIWYg= github.com/rogpeppe/fastuuid v0.0.0-20150106093220-6724a57986af/go.mod h1:XWv6SoW27p1b0cqNHllgS5HIMJraePCO15w5zCzIWYg=
github.com/rogpeppe/go-internal v1.11.0 h1:cWPaGQEPrBb5/AsnsZesgZZ9yb1OQ+GOISoDNXVBh4M= github.com/rogpeppe/go-internal v1.12.0 h1:exVL4IDcn6na9z1rAb56Vxr+CgyK3nn3O+epU5NdKM8=
github.com/rogpeppe/go-internal v1.11.0/go.mod h1:ddIwULY96R17DhadqLgMfk9H9tvdUzkipdSkR5nkCZA= github.com/rogpeppe/go-internal v1.12.0/go.mod h1:E+RYuTGaKKdloAfM02xzb0FW3Paa99yedzYV+kq4uf4=
github.com/russross/blackfriday/v2 v2.0.1/go.mod h1:+Rmxgy9KzJVeS9/2gXHxylqXiyQDYRxCVz55jmeOWTM= github.com/russross/blackfriday/v2 v2.0.1/go.mod h1:+Rmxgy9KzJVeS9/2gXHxylqXiyQDYRxCVz55jmeOWTM=
github.com/russross/blackfriday/v2 v2.1.0 h1:JIOH55/0cWyOuilr9/qlrm0BSXldqnqwMsf35Ld67mk= github.com/russross/blackfriday/v2 v2.1.0 h1:JIOH55/0cWyOuilr9/qlrm0BSXldqnqwMsf35Ld67mk=
github.com/russross/blackfriday/v2 v2.1.0/go.mod h1:+Rmxgy9KzJVeS9/2gXHxylqXiyQDYRxCVz55jmeOWTM= github.com/russross/blackfriday/v2 v2.1.0/go.mod h1:+Rmxgy9KzJVeS9/2gXHxylqXiyQDYRxCVz55jmeOWTM=
@@ -432,8 +434,8 @@ github.com/spaolacci/murmur3 v0.0.0-20180118202830-f09979ecbc72/go.mod h1:JwIasO
github.com/spf13/afero v1.1.2/go.mod h1:j4pytiNVoe2o6bmDsKpLACNPDBIoEAkihy7loJ1B0CQ= github.com/spf13/afero v1.1.2/go.mod h1:j4pytiNVoe2o6bmDsKpLACNPDBIoEAkihy7loJ1B0CQ=
github.com/spf13/cast v1.3.0/go.mod h1:Qx5cxh0v+4UWYiBimWS+eyWzqEqokIECu5etghLkUJE= github.com/spf13/cast v1.3.0/go.mod h1:Qx5cxh0v+4UWYiBimWS+eyWzqEqokIECu5etghLkUJE=
github.com/spf13/cobra v1.0.0/go.mod h1:/6GTrnGXV9HjY+aR4k0oJ5tcvakLuG6EuKReYlHNrgE= github.com/spf13/cobra v1.0.0/go.mod h1:/6GTrnGXV9HjY+aR4k0oJ5tcvakLuG6EuKReYlHNrgE=
github.com/spf13/cobra v1.8.0 h1:7aJaZx1B85qltLMc546zn58BxxfZdR/W22ej9CFoEf0= github.com/spf13/cobra v1.8.1 h1:e5/vxKd/rZsfSJMUX1agtjeTDf+qv1/JdBF8gg5k9ZM=
github.com/spf13/cobra v1.8.0/go.mod h1:WXLWApfZ71AjXPya3WOlMsY9yMs7YeiHhFVlvLyhcho= github.com/spf13/cobra v1.8.1/go.mod h1:wHxEcudfqmLYa8iTfL+OuZPbBZkmvliBWKIezN3kD9Y=
github.com/spf13/jwalterweatherman v1.0.0/go.mod h1:cQK4TGJAtQXfYWX+Ddv3mKDzgVb68N+wFjFa4jdeBTo= github.com/spf13/jwalterweatherman v1.0.0/go.mod h1:cQK4TGJAtQXfYWX+Ddv3mKDzgVb68N+wFjFa4jdeBTo=
github.com/spf13/pflag v1.0.3/go.mod h1:DYY7MBk1bdzusC3SYhjObp+wFpr4gzcvqqNjLnInEg4= github.com/spf13/pflag v1.0.3/go.mod h1:DYY7MBk1bdzusC3SYhjObp+wFpr4gzcvqqNjLnInEg4=
github.com/spf13/pflag v1.0.5 h1:iy+VFUOCP1a+8yFto/drg2CJ5u0yRoB7fZw3DKv/JXA= github.com/spf13/pflag v1.0.5 h1:iy+VFUOCP1a+8yFto/drg2CJ5u0yRoB7fZw3DKv/JXA=
@@ -461,6 +463,8 @@ github.com/ulikunitz/xz v0.5.9 h1:RsKRIA2MO8x56wkkcd3LbtcE/uMszhb6DpRf+3uwa3I=
github.com/ulikunitz/xz v0.5.9/go.mod h1:nbz6k7qbPmH4IRqmfOplQw/tblSgqTqBwxkY0oWt/14= github.com/ulikunitz/xz v0.5.9/go.mod h1:nbz6k7qbPmH4IRqmfOplQw/tblSgqTqBwxkY0oWt/14=
github.com/wcharczuk/go-chart v2.0.1+incompatible h1:0pz39ZAycJFF7ju/1mepnk26RLVLBCWz1STcD3doU0A= github.com/wcharczuk/go-chart v2.0.1+incompatible h1:0pz39ZAycJFF7ju/1mepnk26RLVLBCWz1STcD3doU0A=
github.com/wcharczuk/go-chart v2.0.1+incompatible/go.mod h1:PF5tmL4EIx/7Wf+hEkpCqYi5He4u90sw+0+6FhrryuE= github.com/wcharczuk/go-chart v2.0.1+incompatible/go.mod h1:PF5tmL4EIx/7Wf+hEkpCqYi5He4u90sw+0+6FhrryuE=
github.com/x448/float16 v0.8.4 h1:qLwI1I70+NjRFUR3zs1JPUCgaCXSh3SW62uAKT1mSBM=
github.com/x448/float16 v0.8.4/go.mod h1:14CWIYCyZA/cWjXOioeEpHeN/83MdbZDRQHoFcYsOfg=
github.com/xanzy/ssh-agent v0.3.3 h1:+/15pJfg/RsTxqYcX6fHqOXZwwMP+2VyYWJeWM2qQFM= github.com/xanzy/ssh-agent v0.3.3 h1:+/15pJfg/RsTxqYcX6fHqOXZwwMP+2VyYWJeWM2qQFM=
github.com/xanzy/ssh-agent v0.3.3/go.mod h1:6dzNDKs0J9rVPHPhaGCukekBHKqfl+L3KghI1Bc68Uw= github.com/xanzy/ssh-agent v0.3.3/go.mod h1:6dzNDKs0J9rVPHPhaGCukekBHKqfl+L3KghI1Bc68Uw=
github.com/xi2/xz v0.0.0-20171230120015-48954b6210f8 h1:nIPpBwaJSVYIxUFsDv3M8ofmx9yWTog9BfvIu0q41lo= github.com/xi2/xz v0.0.0-20171230120015-48954b6210f8 h1:nIPpBwaJSVYIxUFsDv3M8ofmx9yWTog9BfvIu0q41lo=
@@ -472,8 +476,8 @@ github.com/yuin/goldmark v1.2.1/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9dec
github.com/yuin/goldmark v1.4.13/go.mod h1:6yULJ656Px+3vBD8DxQVa3kxgyrAnzto9xy5taEt/CY= github.com/yuin/goldmark v1.4.13/go.mod h1:6yULJ656Px+3vBD8DxQVa3kxgyrAnzto9xy5taEt/CY=
go.etcd.io/bbolt v1.3.2/go.mod h1:IbVyRI1SCnLcuJnV2u8VeU0CEYM7e686BmAb1XKL+uU= go.etcd.io/bbolt v1.3.2/go.mod h1:IbVyRI1SCnLcuJnV2u8VeU0CEYM7e686BmAb1XKL+uU=
go.opencensus.io v0.21.0/go.mod h1:mSImk1erAIZhrmZN+AvHh14ztQfjbGwt4TtuofqLduU= go.opencensus.io v0.21.0/go.mod h1:mSImk1erAIZhrmZN+AvHh14ztQfjbGwt4TtuofqLduU=
go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.51.0 h1:Xs2Ncz0gNihqu9iosIZ5SkBbWo5T8JhhLJFMQL1qmLI= go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.53.0 h1:4K4tsIXefpVJtvA/8srF4V4y0akAoPHkIslgAkjixJA=
go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.51.0/go.mod h1:vy+2G/6NvVMpwGX/NyLqcC41fxepnuKHk16E6IZUcJc= go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.53.0/go.mod h1:jjdQuTGVsXV4vSs+CJ2qYDeDPf9yIJV23qlIzBm73Vg=
go.opentelemetry.io/contrib/propagators/autoprop v0.51.0 h1:wEmRHl5+a1MlWt/25I1s/ovHL1K2iN32TjkKKzygGYU= go.opentelemetry.io/contrib/propagators/autoprop v0.51.0 h1:wEmRHl5+a1MlWt/25I1s/ovHL1K2iN32TjkKKzygGYU=
go.opentelemetry.io/contrib/propagators/autoprop v0.51.0/go.mod h1:+EXaA8Om7tpv76LFtN6/qyZ7CN/+8Wa4MwgBMRvszAM= go.opentelemetry.io/contrib/propagators/autoprop v0.51.0/go.mod h1:+EXaA8Om7tpv76LFtN6/qyZ7CN/+8Wa4MwgBMRvszAM=
go.opentelemetry.io/contrib/propagators/aws v1.26.0 h1:8j2FXY19Tt39s3uoMlUPPtph6p7VKwBOSUfoGDlGbCI= go.opentelemetry.io/contrib/propagators/aws v1.26.0 h1:8j2FXY19Tt39s3uoMlUPPtph6p7VKwBOSUfoGDlGbCI=
@@ -486,10 +490,10 @@ go.opentelemetry.io/contrib/propagators/ot v1.26.0 h1:0nL54dpGaXTfFRakVrNufy2oY9
go.opentelemetry.io/contrib/propagators/ot v1.26.0/go.mod h1:x26bKgRaRt0drapcc1z2PpA40lCat3LAfQ8N/MXpvu4= go.opentelemetry.io/contrib/propagators/ot v1.26.0/go.mod h1:x26bKgRaRt0drapcc1z2PpA40lCat3LAfQ8N/MXpvu4=
go.opentelemetry.io/otel v1.28.0 h1:/SqNcYk+idO0CxKEUOtKQClMK/MimZihKYMruSMViUo= go.opentelemetry.io/otel v1.28.0 h1:/SqNcYk+idO0CxKEUOtKQClMK/MimZihKYMruSMViUo=
go.opentelemetry.io/otel v1.28.0/go.mod h1:q68ijF8Fc8CnMHKyzqL6akLO46ePnjkgfIMIjUIX9z4= go.opentelemetry.io/otel v1.28.0/go.mod h1:q68ijF8Fc8CnMHKyzqL6akLO46ePnjkgfIMIjUIX9z4=
go.opentelemetry.io/otel/exporters/otlp/otlptrace v1.26.0 h1:1u/AyyOqAWzy+SkPxDpahCNZParHV8Vid1RnI2clyDE= go.opentelemetry.io/otel/exporters/otlp/otlptrace v1.28.0 h1:3Q/xZUyC1BBkualc9ROb4G8qkH90LXEIICcs5zv1OYY=
go.opentelemetry.io/otel/exporters/otlp/otlptrace v1.26.0/go.mod h1:z46paqbJ9l7c9fIPCXTqTGwhQZ5XoTIsfeFYWboizjs= go.opentelemetry.io/otel/exporters/otlp/otlptrace v1.28.0/go.mod h1:s75jGIWA9OfCMzF0xr+ZgfrB5FEbbV7UuYo32ahUiFI=
go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc v1.26.0 h1:Waw9Wfpo/IXzOI8bCB7DIk+0JZcqqsyn1JFnAc+iam8= go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc v1.27.0 h1:qFffATk0X+HD+f1Z8lswGiOQYKHRlzfmdJm0wEaVrFA=
go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc v1.26.0/go.mod h1:wnJIG4fOqyynOnnQF/eQb4/16VlX2EJAHhHgqIqWfAo= go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc v1.27.0/go.mod h1:MOiCmryaYtc+V0Ei+Tx9o5S1ZjA7kzLucuVuyzBZloQ=
go.opentelemetry.io/otel/metric v1.28.0 h1:f0HGvSl1KRAU1DLgLGFjrwVyismPlnuU6JD6bOeuA5Q= go.opentelemetry.io/otel/metric v1.28.0 h1:f0HGvSl1KRAU1DLgLGFjrwVyismPlnuU6JD6bOeuA5Q=
go.opentelemetry.io/otel/metric v1.28.0/go.mod h1:Fb1eVBFZmLVTMb6PPohq3TO9IIhUisDsbJoL/+uQW4s= go.opentelemetry.io/otel/metric v1.28.0/go.mod h1:Fb1eVBFZmLVTMb6PPohq3TO9IIhUisDsbJoL/+uQW4s=
go.opentelemetry.io/otel/sdk v1.28.0 h1:b9d7hIry8yZsgtbmM0DKyPWMMUMlK9NEKuIG4aBqWyE= go.opentelemetry.io/otel/sdk v1.28.0 h1:b9d7hIry8yZsgtbmM0DKyPWMMUMlK9NEKuIG4aBqWyE=
@@ -517,8 +521,8 @@ golang.org/x/crypto v0.0.0-20220622213112-05595931fe9d/go.mod h1:IxCIyHEi3zRg3s0
golang.org/x/crypto v0.3.1-0.20221117191849-2c476679df9a/go.mod h1:hebNnKkNXi2UzZN1eVRvBB7co0a+JxK6XbPiWVs/3J4= golang.org/x/crypto v0.3.1-0.20221117191849-2c476679df9a/go.mod h1:hebNnKkNXi2UzZN1eVRvBB7co0a+JxK6XbPiWVs/3J4=
golang.org/x/crypto v0.6.0/go.mod h1:OFC/31mSvZgRz0V1QTNCzfAI1aIRzbiufJtkMIlEp58= golang.org/x/crypto v0.6.0/go.mod h1:OFC/31mSvZgRz0V1QTNCzfAI1aIRzbiufJtkMIlEp58=
golang.org/x/crypto v0.7.0/go.mod h1:pYwdfH91IfpZVANVyUOhSIPZaFoJGxTFbZhFTx+dXZU= golang.org/x/crypto v0.7.0/go.mod h1:pYwdfH91IfpZVANVyUOhSIPZaFoJGxTFbZhFTx+dXZU=
golang.org/x/crypto v0.25.0 h1:ypSNr+bnYL2YhwoMt2zPxHFmbAN1KZs/njMG3hxUp30= golang.org/x/crypto v0.26.0 h1:RrRspgV4mU+YwB4FYnuBoKsUapNIL5cohGAmSH3azsw=
golang.org/x/crypto v0.25.0/go.mod h1:T+wALwcMOSE0kXgUAnPAHqTLW+XHgcELELW8VaDgm/M= golang.org/x/crypto v0.26.0/go.mod h1:GY7jblb9wI+FOo5y8/S2oY4zWP07AkOJ4+jxCqdqn54=
golang.org/x/exp v0.0.0-20190121172915-509febef88a4/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA= golang.org/x/exp v0.0.0-20190121172915-509febef88a4/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA=
golang.org/x/exp v0.0.0-20240719175910-8a7402abbf56 h1:2dVuKD2vS7b0QIHQbpyTISPd0LeHDbnYEryqj5Q1ug8= golang.org/x/exp v0.0.0-20240719175910-8a7402abbf56 h1:2dVuKD2vS7b0QIHQbpyTISPd0LeHDbnYEryqj5Q1ug8=
golang.org/x/exp v0.0.0-20240719175910-8a7402abbf56/go.mod h1:M4RDyNAINzryxdtnbRXRL/OHtkFuWGRjvuhBJpk2IlY= golang.org/x/exp v0.0.0-20240719175910-8a7402abbf56/go.mod h1:M4RDyNAINzryxdtnbRXRL/OHtkFuWGRjvuhBJpk2IlY=
@@ -533,8 +537,8 @@ golang.org/x/mod v0.2.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA=
golang.org/x/mod v0.3.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= golang.org/x/mod v0.3.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA=
golang.org/x/mod v0.6.0-dev.0.20220419223038-86c51ed26bb4/go.mod h1:jJ57K6gSWd91VN4djpZkiMVwK6gcyfeH4XE8wZrZaV4= golang.org/x/mod v0.6.0-dev.0.20220419223038-86c51ed26bb4/go.mod h1:jJ57K6gSWd91VN4djpZkiMVwK6gcyfeH4XE8wZrZaV4=
golang.org/x/mod v0.8.0/go.mod h1:iBbtSCu2XBx23ZKBPSOrRkjjQPZFPuis4dIYUhu/chs= golang.org/x/mod v0.8.0/go.mod h1:iBbtSCu2XBx23ZKBPSOrRkjjQPZFPuis4dIYUhu/chs=
golang.org/x/mod v0.19.0 h1:fEdghXQSo20giMthA7cd28ZC+jts4amQ3YMXiP5oMQ8= golang.org/x/mod v0.20.0 h1:utOm6MM3R3dnawAiJgn0y+xvuYRsm1RKM/4giyfDgV0=
golang.org/x/mod v0.19.0/go.mod h1:hTbmBsO62+eylJbnUtE2MGJUyE7QWk4xUqPFrRgJ+7c= golang.org/x/mod v0.20.0/go.mod h1:hTbmBsO62+eylJbnUtE2MGJUyE7QWk4xUqPFrRgJ+7c=
golang.org/x/net v0.0.0-20180724234803-3673e40ba225/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= golang.org/x/net v0.0.0-20180724234803-3673e40ba225/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4=
golang.org/x/net v0.0.0-20180826012351-8a410e7b638d/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= golang.org/x/net v0.0.0-20180826012351-8a410e7b638d/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4=
golang.org/x/net v0.0.0-20181114220301-adae6a3d119a/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= golang.org/x/net v0.0.0-20181114220301-adae6a3d119a/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4=
@@ -558,8 +562,8 @@ golang.org/x/net v0.2.0/go.mod h1:KqCZLdyyvdV855qA2rE3GC2aiw5xGR5TEjj8smXukLY=
golang.org/x/net v0.6.0/go.mod h1:2Tu9+aMcznHK/AK1HMvgo6xiTLG5rD5rZLDS+rp2Bjs= golang.org/x/net v0.6.0/go.mod h1:2Tu9+aMcznHK/AK1HMvgo6xiTLG5rD5rZLDS+rp2Bjs=
golang.org/x/net v0.7.0/go.mod h1:2Tu9+aMcznHK/AK1HMvgo6xiTLG5rD5rZLDS+rp2Bjs= golang.org/x/net v0.7.0/go.mod h1:2Tu9+aMcznHK/AK1HMvgo6xiTLG5rD5rZLDS+rp2Bjs=
golang.org/x/net v0.8.0/go.mod h1:QVkue5JL9kW//ek3r6jTKnTFis1tRmNAW2P1shuFdJc= golang.org/x/net v0.8.0/go.mod h1:QVkue5JL9kW//ek3r6jTKnTFis1tRmNAW2P1shuFdJc=
golang.org/x/net v0.27.0 h1:5K3Njcw06/l2y9vpGCSdcxWOYHOUk3dVNGDXN+FvAys= golang.org/x/net v0.28.0 h1:a9JDOJc5GMUJ0+UDqmLT86WiEy7iWyIhz8gz8E4e5hE=
golang.org/x/net v0.27.0/go.mod h1:dDi0PyhWNoiUOrAS8uXv/vnScO4wnHQO4mj9fn/RytE= golang.org/x/net v0.28.0/go.mod h1:yqtgsTWOOnlGLG9GFRrK3++bGOUEkNBoHZc8MEDWPNg=
golang.org/x/oauth2 v0.0.0-20180821212333-d2e6202438be/go.mod h1:N/0e6XlmueqKjAGxoOufVs8QHGRruUQn6yWY3a++T0U= golang.org/x/oauth2 v0.0.0-20180821212333-d2e6202438be/go.mod h1:N/0e6XlmueqKjAGxoOufVs8QHGRruUQn6yWY3a++T0U=
golang.org/x/oauth2 v0.0.0-20190226205417-e64efc72b421/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw= golang.org/x/oauth2 v0.0.0-20190226205417-e64efc72b421/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw=
golang.org/x/oauth2 v0.0.0-20190604053449-0f29369cfe45/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw= golang.org/x/oauth2 v0.0.0-20190604053449-0f29369cfe45/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw=
@@ -600,15 +604,15 @@ golang.org/x/sys v0.2.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.3.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.3.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.5.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.5.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.6.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.6.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.22.0 h1:RI27ohtqKCnwULzJLqkv897zojh5/DwS/ENaMzUOaWI= golang.org/x/sys v0.24.0 h1:Twjiwq9dn6R1fQcyiK+wQyHWfaz/BJB+YIpzU/Cv3Xg=
golang.org/x/sys v0.22.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= golang.org/x/sys v0.24.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA=
golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo= golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo=
golang.org/x/term v0.0.0-20210927222741-03fcf44c2211/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8= golang.org/x/term v0.0.0-20210927222741-03fcf44c2211/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8=
golang.org/x/term v0.2.0/go.mod h1:TVmDHMZPmdnySmBfhjOoOdhjzdE1h4u1VwSiw2l1Nuc= golang.org/x/term v0.2.0/go.mod h1:TVmDHMZPmdnySmBfhjOoOdhjzdE1h4u1VwSiw2l1Nuc=
golang.org/x/term v0.5.0/go.mod h1:jMB1sMXY+tzblOD4FWmEbocvup2/aLOaQEp7JmGp78k= golang.org/x/term v0.5.0/go.mod h1:jMB1sMXY+tzblOD4FWmEbocvup2/aLOaQEp7JmGp78k=
golang.org/x/term v0.6.0/go.mod h1:m6U89DPEgQRMq3DNkDClhWw02AUbt2daBVO4cn4Hv9U= golang.org/x/term v0.6.0/go.mod h1:m6U89DPEgQRMq3DNkDClhWw02AUbt2daBVO4cn4Hv9U=
golang.org/x/term v0.22.0 h1:BbsgPEJULsl2fV/AT3v15Mjva5yXKQDyKf+TbDz7QJk= golang.org/x/term v0.23.0 h1:F6D4vR+EHoL9/sWAWgAR1H2DcHr4PareCbAaCo1RpuU=
golang.org/x/term v0.22.0/go.mod h1:F3qCibpT5AMpCRfhfT53vVJwhLtIVHhB9XDjfFvnMI4= golang.org/x/term v0.23.0/go.mod h1:DgV24QBUrK6jhZXl+20l6UWznPlwAHm1Q1mGHtydmSk=
golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ=
golang.org/x/text v0.3.1-0.20180807135948-17ff2d5776d2/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= golang.org/x/text v0.3.1-0.20180807135948-17ff2d5776d2/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ=
golang.org/x/text v0.3.2/go.mod h1:bEr9sfX3Q8Zfm5fL9x+3itogRgK3+ptLWKqgva+5dAk= golang.org/x/text v0.3.2/go.mod h1:bEr9sfX3Q8Zfm5fL9x+3itogRgK3+ptLWKqgva+5dAk=
@@ -618,8 +622,8 @@ golang.org/x/text v0.3.7/go.mod h1:u+2+/6zg+i71rQMx5EYifcz6MCKuco9NR6JIITiCfzQ=
golang.org/x/text v0.4.0/go.mod h1:mrYo+phRRbMaCq/xk9113O4dZlRixOauAjOtrjsXDZ8= golang.org/x/text v0.4.0/go.mod h1:mrYo+phRRbMaCq/xk9113O4dZlRixOauAjOtrjsXDZ8=
golang.org/x/text v0.7.0/go.mod h1:mrYo+phRRbMaCq/xk9113O4dZlRixOauAjOtrjsXDZ8= golang.org/x/text v0.7.0/go.mod h1:mrYo+phRRbMaCq/xk9113O4dZlRixOauAjOtrjsXDZ8=
golang.org/x/text v0.8.0/go.mod h1:e1OnstbJyHTd6l/uOt8jFFHp6TRDWZR/bV3emEE/zU8= golang.org/x/text v0.8.0/go.mod h1:e1OnstbJyHTd6l/uOt8jFFHp6TRDWZR/bV3emEE/zU8=
golang.org/x/text v0.16.0 h1:a94ExnEXNtEwYLGJSIUxnWoxoRz/ZcCsV63ROupILh4= golang.org/x/text v0.17.0 h1:XtiM5bkSOt+ewxlOE/aE/AKEHibwj/6gvWMl9Rsh0Qc=
golang.org/x/text v0.16.0/go.mod h1:GhwF1Be+LQoKShO3cGOHzqOgRrGaYc9AvblQOmPVHnI= golang.org/x/text v0.17.0/go.mod h1:BuEKDfySbSR4drPmRPG/7iBdf8hvFMuRexcpahXilzY=
golang.org/x/time v0.0.0-20181108054448-85acf8d2951c/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= golang.org/x/time v0.0.0-20181108054448-85acf8d2951c/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ=
golang.org/x/time v0.0.0-20190308202827-9d24e82272b4/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= golang.org/x/time v0.0.0-20190308202827-9d24e82272b4/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ=
golang.org/x/time v0.5.0 h1:o7cqy6amK/52YcAKIPlM3a+Fpj35zvRj2TP+e1xFSfk= golang.org/x/time v0.5.0 h1:o7cqy6amK/52YcAKIPlM3a+Fpj35zvRj2TP+e1xFSfk=
@@ -636,8 +640,8 @@ golang.org/x/tools v0.0.0-20200619180055-7c47624df98f/go.mod h1:EkVYQZoAsY45+roY
golang.org/x/tools v0.0.0-20210106214847-113979e3529a/go.mod h1:emZCQorbCU4vsT4fOWvOPXz4eW1wZW4PmDk9uLelYpA= golang.org/x/tools v0.0.0-20210106214847-113979e3529a/go.mod h1:emZCQorbCU4vsT4fOWvOPXz4eW1wZW4PmDk9uLelYpA=
golang.org/x/tools v0.1.12/go.mod h1:hNGJHUnrk76NpqgfD5Aqm5Crs+Hm0VOH/i9J2+nxYbc= golang.org/x/tools v0.1.12/go.mod h1:hNGJHUnrk76NpqgfD5Aqm5Crs+Hm0VOH/i9J2+nxYbc=
golang.org/x/tools v0.6.0/go.mod h1:Xwgl3UAJ/d3gWutnCtw505GrjyAbvKui8lOU390QaIU= golang.org/x/tools v0.6.0/go.mod h1:Xwgl3UAJ/d3gWutnCtw505GrjyAbvKui8lOU390QaIU=
golang.org/x/tools v0.23.0 h1:SGsXPZ+2l4JsgaCKkx+FQ9YZ5XEtA1GZYuoDjenLjvg= golang.org/x/tools v0.24.0 h1:J1shsA93PJUEVaUSaay7UXAyE8aimq3GW0pjlolpa24=
golang.org/x/tools v0.23.0/go.mod h1:pnu6ufv6vQkll6szChhK3C3L/ruaIv5eBeztNG8wtsI= golang.org/x/tools v0.24.0/go.mod h1:YhNqVBIfWHdzvTLs0d8LCuMhkKUgSUKldakyV7W/WDQ=
golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
golang.org/x/xerrors v0.0.0-20191011141410-1b5146add898/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20191011141410-1b5146add898/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
@@ -672,6 +676,8 @@ gopkg.in/check.v1 v1.0.0-20180628173108-788fd7840127/go.mod h1:Co6ibVJAznAaIkqp8
gopkg.in/check.v1 v1.0.0-20190902080502-41f04d3bba15/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= gopkg.in/check.v1 v1.0.0-20190902080502-41f04d3bba15/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c h1:Hei/4ADfdWqJk1ZMxUNpqntNwaWcugrBjAiHlqqRiVk= gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c h1:Hei/4ADfdWqJk1ZMxUNpqntNwaWcugrBjAiHlqqRiVk=
gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c/go.mod h1:JHkPIbrfpd72SG/EVd6muEfDQjcINNoR0C8j2r3qZ4Q= gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c/go.mod h1:JHkPIbrfpd72SG/EVd6muEfDQjcINNoR0C8j2r3qZ4Q=
gopkg.in/evanphx/json-patch.v4 v4.12.0 h1:n6jtcsulIzXPJaxegRbvFNNrZDjbij7ny3gmSPG+6V4=
gopkg.in/evanphx/json-patch.v4 v4.12.0/go.mod h1:p8EYWUEYMpynmqDbY58zCKCFZw8pRWMG4EsWvDvM72M=
gopkg.in/inf.v0 v0.9.1 h1:73M5CoZyi3ZLMOyDlQh031Cx6N9NDJ2Vvfl76EDAgDc= gopkg.in/inf.v0 v0.9.1 h1:73M5CoZyi3ZLMOyDlQh031Cx6N9NDJ2Vvfl76EDAgDc=
gopkg.in/inf.v0 v0.9.1/go.mod h1:cWUDdTG/fYaXco+Dcufb5Vnc6Gp2YChqWtbxRZE0mXw= gopkg.in/inf.v0 v0.9.1/go.mod h1:cWUDdTG/fYaXco+Dcufb5Vnc6Gp2YChqWtbxRZE0mXw=
gopkg.in/kothar/go-backblaze.v0 v0.0.0-20190520213052-702d4e7eb465/go.mod h1:zJ2QpyDCYo1KvLXlmdnFlQAyF/Qfth0fB8239Qg7BIE= gopkg.in/kothar/go-backblaze.v0 v0.0.0-20190520213052-702d4e7eb465/go.mod h1:zJ2QpyDCYo1KvLXlmdnFlQAyF/Qfth0fB8239Qg7BIE=
@@ -694,32 +700,32 @@ gotest.tools v2.2.0+incompatible/go.mod h1:DsYFclhRJ6vuDpmuTbkuFWG+y2sxOXAzmJt81
honnef.co/go/tools v0.0.0-20190102054323-c2f93a96b099/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4= honnef.co/go/tools v0.0.0-20190102054323-c2f93a96b099/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4=
honnef.co/go/tools v0.0.0-20190106161140-3f1c8253044a/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4= honnef.co/go/tools v0.0.0-20190106161140-3f1c8253044a/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4=
honnef.co/go/tools v0.0.0-20190418001031-e561f6794a2a/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4= honnef.co/go/tools v0.0.0-20190418001031-e561f6794a2a/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4=
k8s.io/api v0.30.0 h1:siWhRq7cNjy2iHssOB9SCGNCl2spiF1dO3dABqZ8niA= k8s.io/api v0.31.1 h1:Xe1hX/fPW3PXYYv8BlozYqw63ytA92snr96zMW9gWTU=
k8s.io/api v0.30.0/go.mod h1:OPlaYhoHs8EQ1ql0R/TsUgaRPhpKNxIMrKQfWUp8QSE= k8s.io/api v0.31.1/go.mod h1:sbN1g6eY6XVLeqNsZGLnI5FwVseTrZX7Fv3O26rhAaI=
k8s.io/apiextensions-apiserver v0.30.0 h1:jcZFKMqnICJfRxTgnC4E+Hpcq8UEhT8B2lhBcQ+6uAs= k8s.io/apiextensions-apiserver v0.31.1 h1:L+hwULvXx+nvTYX/MKM3kKMZyei+UiSXQWciX/N6E40=
k8s.io/apiextensions-apiserver v0.30.0/go.mod h1:N9ogQFGcrbWqAY9p2mUAL5mGxsLqwgtUce127VtRX5Y= k8s.io/apiextensions-apiserver v0.31.1/go.mod h1:tWMPR3sgW+jsl2xm9v7lAyRF1rYEK71i9G5dRtkknoQ=
k8s.io/apimachinery v0.30.0 h1:qxVPsyDM5XS96NIh9Oj6LavoVFYff/Pon9cZeDIkHHA= k8s.io/apimachinery v0.31.1 h1:mhcUBbj7KUjaVhyXILglcVjuS4nYXiwC+KKFBgIVy7U=
k8s.io/apimachinery v0.30.0/go.mod h1:iexa2somDaxdnj7bha06bhb43Zpa6eWH8N8dbqVjTUc= k8s.io/apimachinery v0.31.1/go.mod h1:rsPdaZJfTfLsNJSQzNHQvYoTmxhoOEofxtOsF3rtsMo=
k8s.io/client-go v0.30.0 h1:sB1AGGlhY/o7KCyCEQ0bPWzYDL0pwOZO4vAtTSh/gJQ= k8s.io/client-go v0.31.1 h1:f0ugtWSbWpxHR7sjVpQwuvw9a3ZKLXX0u0itkFXufb0=
k8s.io/client-go v0.30.0/go.mod h1:g7li5O5256qe6TYdAMyX/otJqMhIiGgTapdLchhmOaY= k8s.io/client-go v0.31.1/go.mod h1:sKI8871MJN2OyeqRlmA4W4KM9KBdBUpDLu/43eGemCg=
k8s.io/code-generator v0.30.0 h1:3VUVqHvWFSVSm9kqL/G6kD4ZwNdHF6J/jPyo3Jgjy3k= k8s.io/code-generator v0.31.1 h1:GvkRZEP2g2UnB2QKT2Dgc/kYxIkDxCHENv2Q1itioVs=
k8s.io/code-generator v0.30.0/go.mod h1:mBMZhfRR4IunJUh2+7LVmdcWwpouCH5+LNPkZ3t/v7Q= k8s.io/code-generator v0.31.1/go.mod h1:oL2ky46L48osNqqZAeOcWWy0S5BXj50vVdwOtTefqIs=
k8s.io/gengo/v2 v2.0.0-20240228010128-51d4e06bde70 h1:NGrVE502P0s0/1hudf8zjgwki1X/TByhmAoILTarmzo= k8s.io/gengo/v2 v2.0.0-20240228010128-51d4e06bde70 h1:NGrVE502P0s0/1hudf8zjgwki1X/TByhmAoILTarmzo=
k8s.io/gengo/v2 v2.0.0-20240228010128-51d4e06bde70/go.mod h1:VH3AT8AaQOqiGjMF9p0/IM1Dj+82ZwjfxUP1IxaHE+8= k8s.io/gengo/v2 v2.0.0-20240228010128-51d4e06bde70/go.mod h1:VH3AT8AaQOqiGjMF9p0/IM1Dj+82ZwjfxUP1IxaHE+8=
k8s.io/klog/v2 v2.130.1 h1:n9Xl7H1Xvksem4KFG4PYbdQCQxqc/tTUyrgXaOhHSzk= k8s.io/klog/v2 v2.130.1 h1:n9Xl7H1Xvksem4KFG4PYbdQCQxqc/tTUyrgXaOhHSzk=
k8s.io/klog/v2 v2.130.1/go.mod h1:3Jpz1GvMt720eyJH1ckRHK1EDfpxISzJ7I9OYgaDtPE= k8s.io/klog/v2 v2.130.1/go.mod h1:3Jpz1GvMt720eyJH1ckRHK1EDfpxISzJ7I9OYgaDtPE=
k8s.io/kube-openapi v0.0.0-20240228011516-70dd3763d340 h1:BZqlfIlq5YbRMFko6/PM7FjZpUb45WallggurYhKGag= k8s.io/kube-openapi v0.0.0-20240228011516-70dd3763d340 h1:BZqlfIlq5YbRMFko6/PM7FjZpUb45WallggurYhKGag=
k8s.io/kube-openapi v0.0.0-20240228011516-70dd3763d340/go.mod h1:yD4MZYeKMBwQKVht279WycxKyM84kkAx2DPrTXaeb98= k8s.io/kube-openapi v0.0.0-20240228011516-70dd3763d340/go.mod h1:yD4MZYeKMBwQKVht279WycxKyM84kkAx2DPrTXaeb98=
k8s.io/metrics v0.30.0 h1:tqB+T0GJY288KahaO3Eb41HaDVeLR18gBmyPo0R417s= k8s.io/metrics v0.31.1 h1:h4I4dakgh/zKflWYAOQhwf0EXaqy8LxAIyE/GBvxqRc=
k8s.io/metrics v0.30.0/go.mod h1:nSDA8V19WHhCTBhRYuyzJT9yPJBxSpqbyrGCCQ4jPj4= k8s.io/metrics v0.31.1/go.mod h1:JuH1S9tJiH9q1VCY0yzSCawi7kzNLsDzlWDJN4xR+iA=
k8s.io/utils v0.0.0-20240711033017-18e509b52bc8 h1:pUdcCO1Lk/tbT5ztQWOBi5HBgbBP1J8+AsQnQCKsi8A= k8s.io/utils v0.0.0-20240711033017-18e509b52bc8 h1:pUdcCO1Lk/tbT5ztQWOBi5HBgbBP1J8+AsQnQCKsi8A=
k8s.io/utils v0.0.0-20240711033017-18e509b52bc8/go.mod h1:OLgZIPagt7ERELqWJFomSt595RzquPNLL48iOWgYOg0= k8s.io/utils v0.0.0-20240711033017-18e509b52bc8/go.mod h1:OLgZIPagt7ERELqWJFomSt595RzquPNLL48iOWgYOg0=
knative.dev/pkg v0.0.0-20240805063731-c88d5dad9653 h1:VHUW124ZpkDn4EnIzMuGWvGuJte3ISIoHMmEw2kx0zU= knative.dev/pkg v0.0.0-20240805063731-c88d5dad9653 h1:VHUW124ZpkDn4EnIzMuGWvGuJte3ISIoHMmEw2kx0zU=
knative.dev/pkg v0.0.0-20240805063731-c88d5dad9653/go.mod h1:H+5rS2GEWpAZzrmQoXOEVq/1M77LLMhR7+4jZBMOQ24= knative.dev/pkg v0.0.0-20240805063731-c88d5dad9653/go.mod h1:H+5rS2GEWpAZzrmQoXOEVq/1M77LLMhR7+4jZBMOQ24=
sigs.k8s.io/controller-runtime v0.18.2 h1:RqVW6Kpeaji67CY5nPEfRz6ZfFMk0lWQlNrLqlNpx+Q= sigs.k8s.io/controller-runtime v0.19.0 h1:nWVM7aq+Il2ABxwiCizrVDSlmDcshi9llbaFbC0ji/Q=
sigs.k8s.io/controller-runtime v0.18.2/go.mod h1:tuAt1+wbVsXIT8lPtk5RURxqAnq7xkpv2Mhttslg7Hw= sigs.k8s.io/controller-runtime v0.19.0/go.mod h1:iRmWllt8IlaLjvTTDLhRBXIEtkCK6hwVBJJsYS9Ajf4=
sigs.k8s.io/controller-tools v0.15.0 h1:4dxdABXGDhIa68Fiwaif0vcu32xfwmgQ+w8p+5CxoAI= sigs.k8s.io/controller-tools v0.16.3 h1:z48C5/d4jCVQQvtiSBL5MYyZ3EO2eFIOXrIKMgHVhFY=
sigs.k8s.io/controller-tools v0.15.0/go.mod h1:8zUSS2T8Hx0APCNRhJWbS3CAQEbIxLa07khzh7pZmXM= sigs.k8s.io/controller-tools v0.16.3/go.mod h1:AEj6k+w1kYpLZv2einOH3mj52ips4W/6FUjnB5tkJGs=
sigs.k8s.io/json v0.0.0-20221116044647-bc3834ca7abd h1:EDPBXCAspyGV4jQlpZSudPeMmr1bNJefnuqLsRAsHZo= sigs.k8s.io/json v0.0.0-20221116044647-bc3834ca7abd h1:EDPBXCAspyGV4jQlpZSudPeMmr1bNJefnuqLsRAsHZo=
sigs.k8s.io/json v0.0.0-20221116044647-bc3834ca7abd/go.mod h1:B8JuhiUyNFVKdsE8h686QcCxMaH6HrOAZj4vswFpcB0= sigs.k8s.io/json v0.0.0-20221116044647-bc3834ca7abd/go.mod h1:B8JuhiUyNFVKdsE8h686QcCxMaH6HrOAZj4vswFpcB0=
sigs.k8s.io/structured-merge-diff/v4 v4.4.1 h1:150L+0vs/8DA78h1u02ooW1/fFq/Lwr+sGiqlzvrtq4= sigs.k8s.io/structured-merge-diff/v4 v4.4.1 h1:150L+0vs/8DA78h1u02ooW1/fFq/Lwr+sGiqlzvrtq4=
+2 -4
View File
@@ -75,7 +75,7 @@ type (
stopReadyPodControllerCh chan struct{} stopReadyPodControllerCh chan struct{}
readyPodLister corelisters.PodLister readyPodLister corelisters.PodLister
readyPodListerSynced cache.InformerSynced readyPodListerSynced cache.InformerSynced
readyPodQueue workqueue.DelayingInterface readyPodQueue workqueue.TypedDelayingInterface[string]
poolInstanceID string // small random string to uniquify pod names poolInstanceID string // small random string to uniquify pod names
instanceID string // poolmgr instance id instanceID string // poolmgr instance id
podSpecPatch *apiv1.PodSpec podSpecPatch *apiv1.PodSpec
@@ -265,15 +265,13 @@ func (gp *GenericPool) choosePod(ctx context.Context, newLabels map[string]strin
} }
var chosenPod *apiv1.Pod var chosenPod *apiv1.Pod
var key string
otelUtils.SpanTrackEvent(ctx, "waitForPod", otelUtils.MapToAttributes(newLabels)...) otelUtils.SpanTrackEvent(ctx, "waitForPod", otelUtils.MapToAttributes(newLabels)...)
item, quit := gp.readyPodQueue.Get() key, quit := gp.readyPodQueue.Get()
if quit { if quit {
logger.Error("readypod controller is not running") logger.Error("readypod controller is not running")
return "", nil, errors.New("readypod controller is not running") return "", nil, errors.New("readypod controller is not running")
} }
key = item.(string)
logger.Debug("got key from the queue", zap.String("key", key)) logger.Debug("got key from the queue", zap.String("key", key))
namespace, name, err := cache.SplitMetaNamespaceKey(key) namespace, name, err := cache.SplitMetaNamespaceKey(key)
if err != nil { if err != nil {
@@ -60,10 +60,10 @@ type (
// podListerSynced returns true if the pod store has been synced at least once. // podListerSynced returns true if the pod store has been synced at least once.
podListerSynced map[string]k8sCache.InformerSynced podListerSynced map[string]k8sCache.InformerSynced
envCreateUpdateQueue workqueue.RateLimitingInterface envCreateUpdateQueue workqueue.TypedRateLimitingInterface[string]
envDeleteQueue workqueue.RateLimitingInterface envDeleteQueue workqueue.TypedRateLimitingInterface[*fv1.Environment]
spCleanupPodQueue workqueue.RateLimitingInterface spCleanupPodQueue workqueue.TypedRateLimitingInterface[string]
gpm *GenericPoolManager gpm *GenericPoolManager
} }
@@ -84,9 +84,9 @@ func NewPoolPodController(ctx context.Context, logger *zap.Logger,
envListerSynced: make(map[string]k8sCache.InformerSynced, 0), envListerSynced: make(map[string]k8sCache.InformerSynced, 0),
podLister: make(map[string]corelisters.PodLister), podLister: make(map[string]corelisters.PodLister),
podListerSynced: make(map[string]k8sCache.InformerSynced), podListerSynced: make(map[string]k8sCache.InformerSynced),
envCreateUpdateQueue: workqueue.NewNamedRateLimitingQueue(workqueue.DefaultControllerRateLimiter(), "EnvAddUpdateQueue"), envCreateUpdateQueue: workqueue.NewTypedRateLimitingQueueWithConfig[string](workqueue.DefaultTypedControllerRateLimiter[string](), workqueue.TypedRateLimitingQueueConfig[string]{Name: "EnvAddUpdateQueue"}),
envDeleteQueue: workqueue.NewNamedRateLimitingQueue(workqueue.DefaultControllerRateLimiter(), "EnvDeleteQueue"), envDeleteQueue: workqueue.NewTypedRateLimitingQueueWithConfig[*fv1.Environment](workqueue.DefaultTypedControllerRateLimiter[*fv1.Environment](), workqueue.TypedRateLimitingQueueConfig[*fv1.Environment]{Name: "EnvDeleteQueue"}),
spCleanupPodQueue: workqueue.NewNamedRateLimitingQueue(workqueue.DefaultControllerRateLimiter(), "SpecializedPodCleanupQueue"), spCleanupPodQueue: workqueue.NewTypedRateLimitingQueueWithConfig[string](workqueue.DefaultTypedControllerRateLimiter[string](), workqueue.TypedRateLimitingQueueConfig[string]{Name: "SpecializedPodCleanupQueue"}),
} }
if p.enableIstio { if p.enableIstio {
for _, factory := range finformerFactory { for _, factory := range finformerFactory {
@@ -337,11 +337,10 @@ func (p *PoolPodController) envCreateUpdateQueueProcessFunc(ctx context.Context)
return nil return nil
} }
obj, quit := p.envCreateUpdateQueue.Get() key, quit := p.envCreateUpdateQueue.Get()
if quit { if quit {
return true return true
} }
key := obj.(string)
defer p.envCreateUpdateQueue.Done(key) defer p.envCreateUpdateQueue.Done(key)
namespace, name, err := k8sCache.SplitMetaNamespaceKey(key) namespace, name, err := k8sCache.SplitMetaNamespaceKey(key)
@@ -390,17 +389,11 @@ func (p *PoolPodController) envCreateUpdateQueueProcessFunc(ctx context.Context)
} }
func (p *PoolPodController) envDeleteQueueProcessFunc(ctx context.Context) bool { func (p *PoolPodController) envDeleteQueueProcessFunc(ctx context.Context) bool {
obj, quit := p.envDeleteQueue.Get() env, quit := p.envDeleteQueue.Get()
if quit { if quit {
return true return true
} }
defer p.envDeleteQueue.Done(obj) defer p.envDeleteQueue.Done(env)
env, ok := obj.(*fv1.Environment)
if !ok {
p.logger.Error("unexpected type when deleting env to pool pod controller", zap.Any("obj", obj))
p.envDeleteQueue.Forget(obj)
return false
}
p.logger.Debug("env delete request processing") p.logger.Debug("env delete request processing")
p.gpm.cleanupPool(ctx, env) p.gpm.cleanupPool(ctx, env)
specializePodLables := getSpecializedPodLabels(env) specializePodLables := getSpecializedPodLabels(env)
@@ -408,17 +401,17 @@ func (p *PoolPodController) envDeleteQueueProcessFunc(ctx context.Context) bool
podLister, ok := p.podLister[ns] podLister, ok := p.podLister[ns]
if !ok { if !ok {
p.logger.Error("no pod lister found for namespace", zap.String("namespace", ns)) p.logger.Error("no pod lister found for namespace", zap.String("namespace", ns))
p.envDeleteQueue.Forget(obj) p.envDeleteQueue.Forget(env)
return false return false
} }
specializedPods, err := podLister.Pods(ns).List(labels.SelectorFromSet(specializePodLables)) specializedPods, err := podLister.Pods(ns).List(labels.SelectorFromSet(specializePodLables))
if err != nil { if err != nil {
p.logger.Error("failed to list specialized pods", zap.Error(err)) p.logger.Error("failed to list specialized pods", zap.Error(err))
p.envDeleteQueue.Forget(obj) p.envDeleteQueue.Forget(env)
return false return false
} }
if len(specializedPods) == 0 { if len(specializedPods) == 0 {
p.envDeleteQueue.Forget(obj) p.envDeleteQueue.Forget(env)
return false return false
} }
p.logger.Info("specialized pods identified for cleanup after env delete", zap.String("env", env.ObjectMeta.Name), zap.String("namespace", env.ObjectMeta.Namespace), zap.Int("count", len(specializedPods))) p.logger.Info("specialized pods identified for cleanup after env delete", zap.String("env", env.ObjectMeta.Name), zap.String("namespace", env.ObjectMeta.Namespace), zap.Int("count", len(specializedPods)))
@@ -433,17 +426,16 @@ func (p *PoolPodController) envDeleteQueueProcessFunc(ctx context.Context) bool
} }
p.spCleanupPodQueue.Add(key) p.spCleanupPodQueue.Add(key)
} }
p.envDeleteQueue.Forget(obj) p.envDeleteQueue.Forget(env)
return false return false
} }
func (p *PoolPodController) spCleanupPodQueueProcessFunc(ctx context.Context) bool { func (p *PoolPodController) spCleanupPodQueueProcessFunc(ctx context.Context) bool {
maxRetries := 3 maxRetries := 3
obj, quit := p.spCleanupPodQueue.Get() key, quit := p.spCleanupPodQueue.Get()
if quit { if quit {
return true return true
} }
key := obj.(string)
defer p.spCleanupPodQueue.Done(key) defer p.spCleanupPodQueue.Done(key)
namespace, name, err := k8sCache.SplitMetaNamespaceKey(key) namespace, name, err := k8sCache.SplitMetaNamespaceKey(key)
if err != nil { if err != nil {
@@ -33,7 +33,7 @@ func (gp *GenericPool) setupReadyPodController() error {
// avoid concurrent access to gp.deployment // avoid concurrent access to gp.deployment
gp.lock.Lock() gp.lock.Lock()
defer gp.lock.Unlock() defer gp.lock.Unlock()
gp.readyPodQueue = workqueue.NewDelayingQueue() gp.readyPodQueue = workqueue.TypedNewDelayingQueue[string]()
informerFactory, err := utils.GetInformerFactoryByReadyPod(gp.kubernetesClient, gp.fnNamespace, gp.deployment.Spec.Selector) informerFactory, err := utils.GetInformerFactoryByReadyPod(gp.kubernetesClient, gp.fnNamespace, gp.deployment.Spec.Selector)
if err != nil { if err != nil {
return err return err
@@ -22,7 +22,7 @@ import (
v1 "github.com/fission/fission/pkg/apis/core/v1" v1 "github.com/fission/fission/pkg/apis/core/v1"
) )
// ArchiveApplyConfiguration represents an declarative configuration of the Archive type for use // ArchiveApplyConfiguration represents a declarative configuration of the Archive type for use
// with apply. // with apply.
type ArchiveApplyConfiguration struct { type ArchiveApplyConfiguration struct {
Type *v1.ArchiveType `json:"type,omitempty"` Type *v1.ArchiveType `json:"type,omitempty"`
@@ -31,7 +31,7 @@ type ArchiveApplyConfiguration struct {
Checksum *ChecksumApplyConfiguration `json:"checksum,omitempty"` Checksum *ChecksumApplyConfiguration `json:"checksum,omitempty"`
} }
// ArchiveApplyConfiguration constructs an declarative configuration of the Archive type for use with // ArchiveApplyConfiguration constructs a declarative configuration of the Archive type for use with
// apply. // apply.
func Archive() *ArchiveApplyConfiguration { func Archive() *ArchiveApplyConfiguration {
return &ArchiveApplyConfiguration{} return &ArchiveApplyConfiguration{}
@@ -22,7 +22,7 @@ import (
v1 "k8s.io/api/core/v1" v1 "k8s.io/api/core/v1"
) )
// BuilderApplyConfiguration represents an declarative configuration of the Builder type for use // BuilderApplyConfiguration represents a declarative configuration of the Builder type for use
// with apply. // with apply.
type BuilderApplyConfiguration struct { type BuilderApplyConfiguration struct {
Image *string `json:"image,omitempty"` Image *string `json:"image,omitempty"`
@@ -31,7 +31,7 @@ type BuilderApplyConfiguration struct {
PodSpec *v1.PodSpec `json:"podspec,omitempty"` PodSpec *v1.PodSpec `json:"podspec,omitempty"`
} }
// BuilderApplyConfiguration constructs an declarative configuration of the Builder type for use with // BuilderApplyConfiguration constructs a declarative configuration of the Builder type for use with
// apply. // apply.
func Builder() *BuilderApplyConfiguration { func Builder() *BuilderApplyConfiguration {
return &BuilderApplyConfiguration{} return &BuilderApplyConfiguration{}
@@ -24,7 +24,7 @@ import (
v1 "k8s.io/client-go/applyconfigurations/meta/v1" v1 "k8s.io/client-go/applyconfigurations/meta/v1"
) )
// CanaryConfigApplyConfiguration represents an declarative configuration of the CanaryConfig type for use // CanaryConfigApplyConfiguration represents a declarative configuration of the CanaryConfig type for use
// with apply. // with apply.
type CanaryConfigApplyConfiguration struct { type CanaryConfigApplyConfiguration struct {
v1.TypeMetaApplyConfiguration `json:",inline"` v1.TypeMetaApplyConfiguration `json:",inline"`
@@ -33,7 +33,7 @@ type CanaryConfigApplyConfiguration struct {
Status *CanaryConfigStatusApplyConfiguration `json:"status,omitempty"` Status *CanaryConfigStatusApplyConfiguration `json:"status,omitempty"`
} }
// CanaryConfig constructs an declarative configuration of the CanaryConfig type for use with // CanaryConfig constructs a declarative configuration of the CanaryConfig type for use with
// apply. // apply.
func CanaryConfig(name, namespace string) *CanaryConfigApplyConfiguration { func CanaryConfig(name, namespace string) *CanaryConfigApplyConfiguration {
b := &CanaryConfigApplyConfiguration{} b := &CanaryConfigApplyConfiguration{}
@@ -217,3 +217,9 @@ func (b *CanaryConfigApplyConfiguration) WithStatus(value *CanaryConfigStatusApp
b.Status = value b.Status = value
return b return b
} }
// GetName retrieves the value of the Name field in the declarative configuration.
func (b *CanaryConfigApplyConfiguration) GetName() *string {
b.ensureObjectMetaApplyConfigurationExists()
return b.Name
}
@@ -22,7 +22,7 @@ import (
v1 "github.com/fission/fission/pkg/apis/core/v1" v1 "github.com/fission/fission/pkg/apis/core/v1"
) )
// CanaryConfigSpecApplyConfiguration represents an declarative configuration of the CanaryConfigSpec type for use // CanaryConfigSpecApplyConfiguration represents a declarative configuration of the CanaryConfigSpec type for use
// with apply. // with apply.
type CanaryConfigSpecApplyConfiguration struct { type CanaryConfigSpecApplyConfiguration struct {
Trigger *string `json:"trigger,omitempty"` Trigger *string `json:"trigger,omitempty"`
@@ -34,7 +34,7 @@ type CanaryConfigSpecApplyConfiguration struct {
FailureType *v1.FailureType `json:"failureType,omitempty"` FailureType *v1.FailureType `json:"failureType,omitempty"`
} }
// CanaryConfigSpecApplyConfiguration constructs an declarative configuration of the CanaryConfigSpec type for use with // CanaryConfigSpecApplyConfiguration constructs a declarative configuration of the CanaryConfigSpec type for use with
// apply. // apply.
func CanaryConfigSpec() *CanaryConfigSpecApplyConfiguration { func CanaryConfigSpec() *CanaryConfigSpecApplyConfiguration {
return &CanaryConfigSpecApplyConfiguration{} return &CanaryConfigSpecApplyConfiguration{}
@@ -18,13 +18,13 @@ limitations under the License.
package v1 package v1
// CanaryConfigStatusApplyConfiguration represents an declarative configuration of the CanaryConfigStatus type for use // CanaryConfigStatusApplyConfiguration represents a declarative configuration of the CanaryConfigStatus type for use
// with apply. // with apply.
type CanaryConfigStatusApplyConfiguration struct { type CanaryConfigStatusApplyConfiguration struct {
Status *string `json:"status,omitempty"` Status *string `json:"status,omitempty"`
} }
// CanaryConfigStatusApplyConfiguration constructs an declarative configuration of the CanaryConfigStatus type for use with // CanaryConfigStatusApplyConfiguration constructs a declarative configuration of the CanaryConfigStatus type for use with
// apply. // apply.
func CanaryConfigStatus() *CanaryConfigStatusApplyConfiguration { func CanaryConfigStatus() *CanaryConfigStatusApplyConfiguration {
return &CanaryConfigStatusApplyConfiguration{} return &CanaryConfigStatusApplyConfiguration{}
@@ -22,14 +22,14 @@ import (
v1 "github.com/fission/fission/pkg/apis/core/v1" v1 "github.com/fission/fission/pkg/apis/core/v1"
) )
// ChecksumApplyConfiguration represents an declarative configuration of the Checksum type for use // ChecksumApplyConfiguration represents a declarative configuration of the Checksum type for use
// with apply. // with apply.
type ChecksumApplyConfiguration struct { type ChecksumApplyConfiguration struct {
Type *v1.ChecksumType `json:"type,omitempty"` Type *v1.ChecksumType `json:"type,omitempty"`
Sum *string `json:"sum,omitempty"` Sum *string `json:"sum,omitempty"`
} }
// ChecksumApplyConfiguration constructs an declarative configuration of the Checksum type for use with // ChecksumApplyConfiguration constructs a declarative configuration of the Checksum type for use with
// apply. // apply.
func Checksum() *ChecksumApplyConfiguration { func Checksum() *ChecksumApplyConfiguration {
return &ChecksumApplyConfiguration{} return &ChecksumApplyConfiguration{}
@@ -18,14 +18,14 @@ limitations under the License.
package v1 package v1
// ConfigMapReferenceApplyConfiguration represents an declarative configuration of the ConfigMapReference type for use // ConfigMapReferenceApplyConfiguration represents a declarative configuration of the ConfigMapReference type for use
// with apply. // with apply.
type ConfigMapReferenceApplyConfiguration struct { type ConfigMapReferenceApplyConfiguration struct {
Namespace *string `json:"namespace,omitempty"` Namespace *string `json:"namespace,omitempty"`
Name *string `json:"name,omitempty"` Name *string `json:"name,omitempty"`
} }
// ConfigMapReferenceApplyConfiguration constructs an declarative configuration of the ConfigMapReference type for use with // ConfigMapReferenceApplyConfiguration constructs a declarative configuration of the ConfigMapReference type for use with
// apply. // apply.
func ConfigMapReference() *ConfigMapReferenceApplyConfiguration { func ConfigMapReference() *ConfigMapReferenceApplyConfiguration {
return &ConfigMapReferenceApplyConfiguration{} return &ConfigMapReferenceApplyConfiguration{}
@@ -24,7 +24,7 @@ import (
v1 "k8s.io/client-go/applyconfigurations/meta/v1" v1 "k8s.io/client-go/applyconfigurations/meta/v1"
) )
// EnvironmentApplyConfiguration represents an declarative configuration of the Environment type for use // EnvironmentApplyConfiguration represents a declarative configuration of the Environment type for use
// with apply. // with apply.
type EnvironmentApplyConfiguration struct { type EnvironmentApplyConfiguration struct {
v1.TypeMetaApplyConfiguration `json:",inline"` v1.TypeMetaApplyConfiguration `json:",inline"`
@@ -32,7 +32,7 @@ type EnvironmentApplyConfiguration struct {
Spec *EnvironmentSpecApplyConfiguration `json:"spec,omitempty"` Spec *EnvironmentSpecApplyConfiguration `json:"spec,omitempty"`
} }
// Environment constructs an declarative configuration of the Environment type for use with // Environment constructs a declarative configuration of the Environment type for use with
// apply. // apply.
func Environment(name, namespace string) *EnvironmentApplyConfiguration { func Environment(name, namespace string) *EnvironmentApplyConfiguration {
b := &EnvironmentApplyConfiguration{} b := &EnvironmentApplyConfiguration{}
@@ -208,3 +208,9 @@ func (b *EnvironmentApplyConfiguration) WithSpec(value *EnvironmentSpecApplyConf
b.Spec = value b.Spec = value
return b return b
} }
// GetName retrieves the value of the Name field in the declarative configuration.
func (b *EnvironmentApplyConfiguration) GetName() *string {
b.ensureObjectMetaApplyConfigurationExists()
return b.Name
}
@@ -18,14 +18,14 @@ limitations under the License.
package v1 package v1
// EnvironmentReferenceApplyConfiguration represents an declarative configuration of the EnvironmentReference type for use // EnvironmentReferenceApplyConfiguration represents a declarative configuration of the EnvironmentReference type for use
// with apply. // with apply.
type EnvironmentReferenceApplyConfiguration struct { type EnvironmentReferenceApplyConfiguration struct {
Namespace *string `json:"namespace,omitempty"` Namespace *string `json:"namespace,omitempty"`
Name *string `json:"name,omitempty"` Name *string `json:"name,omitempty"`
} }
// EnvironmentReferenceApplyConfiguration constructs an declarative configuration of the EnvironmentReference type for use with // EnvironmentReferenceApplyConfiguration constructs a declarative configuration of the EnvironmentReference type for use with
// apply. // apply.
func EnvironmentReference() *EnvironmentReferenceApplyConfiguration { func EnvironmentReference() *EnvironmentReferenceApplyConfiguration {
return &EnvironmentReferenceApplyConfiguration{} return &EnvironmentReferenceApplyConfiguration{}
@@ -23,7 +23,7 @@ import (
apicorev1 "k8s.io/api/core/v1" apicorev1 "k8s.io/api/core/v1"
) )
// EnvironmentSpecApplyConfiguration represents an declarative configuration of the EnvironmentSpec type for use // EnvironmentSpecApplyConfiguration represents a declarative configuration of the EnvironmentSpec type for use
// with apply. // with apply.
type EnvironmentSpecApplyConfiguration struct { type EnvironmentSpecApplyConfiguration struct {
Version *int `json:"version,omitempty"` Version *int `json:"version,omitempty"`
@@ -38,7 +38,7 @@ type EnvironmentSpecApplyConfiguration struct {
ImagePullSecret *string `json:"imagepullsecret,omitempty"` ImagePullSecret *string `json:"imagepullsecret,omitempty"`
} }
// EnvironmentSpecApplyConfiguration constructs an declarative configuration of the EnvironmentSpec type for use with // EnvironmentSpecApplyConfiguration constructs a declarative configuration of the EnvironmentSpec type for use with
// apply. // apply.
func EnvironmentSpec() *EnvironmentSpecApplyConfiguration { func EnvironmentSpec() *EnvironmentSpecApplyConfiguration {
return &EnvironmentSpecApplyConfiguration{} return &EnvironmentSpecApplyConfiguration{}
@@ -23,7 +23,7 @@ import (
v2 "k8s.io/api/autoscaling/v2" v2 "k8s.io/api/autoscaling/v2"
) )
// ExecutionStrategyApplyConfiguration represents an declarative configuration of the ExecutionStrategy type for use // ExecutionStrategyApplyConfiguration represents a declarative configuration of the ExecutionStrategy type for use
// with apply. // with apply.
type ExecutionStrategyApplyConfiguration struct { type ExecutionStrategyApplyConfiguration struct {
ExecutorType *v1.ExecutorType `json:"ExecutorType,omitempty"` ExecutorType *v1.ExecutorType `json:"ExecutorType,omitempty"`
@@ -35,7 +35,7 @@ type ExecutionStrategyApplyConfiguration struct {
Behavior *v2.HorizontalPodAutoscalerBehavior `json:"hpaBehavior,omitempty"` Behavior *v2.HorizontalPodAutoscalerBehavior `json:"hpaBehavior,omitempty"`
} }
// ExecutionStrategyApplyConfiguration constructs an declarative configuration of the ExecutionStrategy type for use with // ExecutionStrategyApplyConfiguration constructs a declarative configuration of the ExecutionStrategy type for use with
// apply. // apply.
func ExecutionStrategy() *ExecutionStrategyApplyConfiguration { func ExecutionStrategy() *ExecutionStrategyApplyConfiguration {
return &ExecutionStrategyApplyConfiguration{} return &ExecutionStrategyApplyConfiguration{}
@@ -24,7 +24,7 @@ import (
v1 "k8s.io/client-go/applyconfigurations/meta/v1" v1 "k8s.io/client-go/applyconfigurations/meta/v1"
) )
// FunctionApplyConfiguration represents an declarative configuration of the Function type for use // FunctionApplyConfiguration represents a declarative configuration of the Function type for use
// with apply. // with apply.
type FunctionApplyConfiguration struct { type FunctionApplyConfiguration struct {
v1.TypeMetaApplyConfiguration `json:",inline"` v1.TypeMetaApplyConfiguration `json:",inline"`
@@ -32,7 +32,7 @@ type FunctionApplyConfiguration struct {
Spec *FunctionSpecApplyConfiguration `json:"spec,omitempty"` Spec *FunctionSpecApplyConfiguration `json:"spec,omitempty"`
} }
// Function constructs an declarative configuration of the Function type for use with // Function constructs a declarative configuration of the Function type for use with
// apply. // apply.
func Function(name, namespace string) *FunctionApplyConfiguration { func Function(name, namespace string) *FunctionApplyConfiguration {
b := &FunctionApplyConfiguration{} b := &FunctionApplyConfiguration{}
@@ -208,3 +208,9 @@ func (b *FunctionApplyConfiguration) WithSpec(value *FunctionSpecApplyConfigurat
b.Spec = value b.Spec = value
return b return b
} }
// GetName retrieves the value of the Name field in the declarative configuration.
func (b *FunctionApplyConfiguration) GetName() *string {
b.ensureObjectMetaApplyConfigurationExists()
return b.Name
}
@@ -18,14 +18,14 @@ limitations under the License.
package v1 package v1
// FunctionPackageRefApplyConfiguration represents an declarative configuration of the FunctionPackageRef type for use // FunctionPackageRefApplyConfiguration represents a declarative configuration of the FunctionPackageRef type for use
// with apply. // with apply.
type FunctionPackageRefApplyConfiguration struct { type FunctionPackageRefApplyConfiguration struct {
PackageRef *PackageRefApplyConfiguration `json:"packageref,omitempty"` PackageRef *PackageRefApplyConfiguration `json:"packageref,omitempty"`
FunctionName *string `json:"functionName,omitempty"` FunctionName *string `json:"functionName,omitempty"`
} }
// FunctionPackageRefApplyConfiguration constructs an declarative configuration of the FunctionPackageRef type for use with // FunctionPackageRefApplyConfiguration constructs a declarative configuration of the FunctionPackageRef type for use with
// apply. // apply.
func FunctionPackageRef() *FunctionPackageRefApplyConfiguration { func FunctionPackageRef() *FunctionPackageRefApplyConfiguration {
return &FunctionPackageRefApplyConfiguration{} return &FunctionPackageRefApplyConfiguration{}
@@ -22,7 +22,7 @@ import (
v1 "github.com/fission/fission/pkg/apis/core/v1" v1 "github.com/fission/fission/pkg/apis/core/v1"
) )
// FunctionReferenceApplyConfiguration represents an declarative configuration of the FunctionReference type for use // FunctionReferenceApplyConfiguration represents a declarative configuration of the FunctionReference type for use
// with apply. // with apply.
type FunctionReferenceApplyConfiguration struct { type FunctionReferenceApplyConfiguration struct {
Type *v1.FunctionReferenceType `json:"type,omitempty"` Type *v1.FunctionReferenceType `json:"type,omitempty"`
@@ -30,7 +30,7 @@ type FunctionReferenceApplyConfiguration struct {
FunctionWeights map[string]int `json:"functionweights,omitempty"` FunctionWeights map[string]int `json:"functionweights,omitempty"`
} }
// FunctionReferenceApplyConfiguration constructs an declarative configuration of the FunctionReference type for use with // FunctionReferenceApplyConfiguration constructs a declarative configuration of the FunctionReference type for use with
// apply. // apply.
func FunctionReference() *FunctionReferenceApplyConfiguration { func FunctionReference() *FunctionReferenceApplyConfiguration {
return &FunctionReferenceApplyConfiguration{} return &FunctionReferenceApplyConfiguration{}
@@ -22,7 +22,7 @@ import (
corev1 "k8s.io/api/core/v1" corev1 "k8s.io/api/core/v1"
) )
// FunctionSpecApplyConfiguration represents an declarative configuration of the FunctionSpec type for use // FunctionSpecApplyConfiguration represents a declarative configuration of the FunctionSpec type for use
// with apply. // with apply.
type FunctionSpecApplyConfiguration struct { type FunctionSpecApplyConfiguration struct {
Environment *EnvironmentReferenceApplyConfiguration `json:"environment,omitempty"` Environment *EnvironmentReferenceApplyConfiguration `json:"environment,omitempty"`
@@ -40,7 +40,7 @@ type FunctionSpecApplyConfiguration struct {
PodSpec *corev1.PodSpec `json:"podspec,omitempty"` PodSpec *corev1.PodSpec `json:"podspec,omitempty"`
} }
// FunctionSpecApplyConfiguration constructs an declarative configuration of the FunctionSpec type for use with // FunctionSpecApplyConfiguration constructs a declarative configuration of the FunctionSpec type for use with
// apply. // apply.
func FunctionSpec() *FunctionSpecApplyConfiguration { func FunctionSpec() *FunctionSpecApplyConfiguration {
return &FunctionSpecApplyConfiguration{} return &FunctionSpecApplyConfiguration{}
@@ -24,7 +24,7 @@ import (
v1 "k8s.io/client-go/applyconfigurations/meta/v1" v1 "k8s.io/client-go/applyconfigurations/meta/v1"
) )
// HTTPTriggerApplyConfiguration represents an declarative configuration of the HTTPTrigger type for use // HTTPTriggerApplyConfiguration represents a declarative configuration of the HTTPTrigger type for use
// with apply. // with apply.
type HTTPTriggerApplyConfiguration struct { type HTTPTriggerApplyConfiguration struct {
v1.TypeMetaApplyConfiguration `json:",inline"` v1.TypeMetaApplyConfiguration `json:",inline"`
@@ -32,7 +32,7 @@ type HTTPTriggerApplyConfiguration struct {
Spec *HTTPTriggerSpecApplyConfiguration `json:"spec,omitempty"` Spec *HTTPTriggerSpecApplyConfiguration `json:"spec,omitempty"`
} }
// HTTPTrigger constructs an declarative configuration of the HTTPTrigger type for use with // HTTPTrigger constructs a declarative configuration of the HTTPTrigger type for use with
// apply. // apply.
func HTTPTrigger(name, namespace string) *HTTPTriggerApplyConfiguration { func HTTPTrigger(name, namespace string) *HTTPTriggerApplyConfiguration {
b := &HTTPTriggerApplyConfiguration{} b := &HTTPTriggerApplyConfiguration{}
@@ -208,3 +208,9 @@ func (b *HTTPTriggerApplyConfiguration) WithSpec(value *HTTPTriggerSpecApplyConf
b.Spec = value b.Spec = value
return b return b
} }
// GetName retrieves the value of the Name field in the declarative configuration.
func (b *HTTPTriggerApplyConfiguration) GetName() *string {
b.ensureObjectMetaApplyConfigurationExists()
return b.Name
}
@@ -18,7 +18,7 @@ limitations under the License.
package v1 package v1
// HTTPTriggerSpecApplyConfiguration represents an declarative configuration of the HTTPTriggerSpec type for use // HTTPTriggerSpecApplyConfiguration represents a declarative configuration of the HTTPTriggerSpec type for use
// with apply. // with apply.
type HTTPTriggerSpecApplyConfiguration struct { type HTTPTriggerSpecApplyConfiguration struct {
Host *string `json:"host,omitempty"` Host *string `json:"host,omitempty"`
@@ -32,7 +32,7 @@ type HTTPTriggerSpecApplyConfiguration struct {
IngressConfig *IngressConfigApplyConfiguration `json:"ingressconfig,omitempty"` IngressConfig *IngressConfigApplyConfiguration `json:"ingressconfig,omitempty"`
} }
// HTTPTriggerSpecApplyConfiguration constructs an declarative configuration of the HTTPTriggerSpec type for use with // HTTPTriggerSpecApplyConfiguration constructs a declarative configuration of the HTTPTriggerSpec type for use with
// apply. // apply.
func HTTPTriggerSpec() *HTTPTriggerSpecApplyConfiguration { func HTTPTriggerSpec() *HTTPTriggerSpecApplyConfiguration {
return &HTTPTriggerSpecApplyConfiguration{} return &HTTPTriggerSpecApplyConfiguration{}
@@ -18,7 +18,7 @@ limitations under the License.
package v1 package v1
// IngressConfigApplyConfiguration represents an declarative configuration of the IngressConfig type for use // IngressConfigApplyConfiguration represents a declarative configuration of the IngressConfig type for use
// with apply. // with apply.
type IngressConfigApplyConfiguration struct { type IngressConfigApplyConfiguration struct {
Annotations map[string]string `json:"annotations,omitempty"` Annotations map[string]string `json:"annotations,omitempty"`
@@ -27,7 +27,7 @@ type IngressConfigApplyConfiguration struct {
TLS *string `json:"tls,omitempty"` TLS *string `json:"tls,omitempty"`
} }
// IngressConfigApplyConfiguration constructs an declarative configuration of the IngressConfig type for use with // IngressConfigApplyConfiguration constructs a declarative configuration of the IngressConfig type for use with
// apply. // apply.
func IngressConfig() *IngressConfigApplyConfiguration { func IngressConfig() *IngressConfigApplyConfiguration {
return &IngressConfigApplyConfiguration{} return &IngressConfigApplyConfiguration{}
@@ -22,14 +22,14 @@ import (
corev1 "github.com/fission/fission/pkg/apis/core/v1" corev1 "github.com/fission/fission/pkg/apis/core/v1"
) )
// InvokeStrategyApplyConfiguration represents an declarative configuration of the InvokeStrategy type for use // InvokeStrategyApplyConfiguration represents a declarative configuration of the InvokeStrategy type for use
// with apply. // with apply.
type InvokeStrategyApplyConfiguration struct { type InvokeStrategyApplyConfiguration struct {
ExecutionStrategy *ExecutionStrategyApplyConfiguration `json:"ExecutionStrategy,omitempty"` ExecutionStrategy *ExecutionStrategyApplyConfiguration `json:"ExecutionStrategy,omitempty"`
StrategyType *corev1.StrategyType `json:"StrategyType,omitempty"` StrategyType *corev1.StrategyType `json:"StrategyType,omitempty"`
} }
// InvokeStrategyApplyConfiguration constructs an declarative configuration of the InvokeStrategy type for use with // InvokeStrategyApplyConfiguration constructs a declarative configuration of the InvokeStrategy type for use with
// apply. // apply.
func InvokeStrategy() *InvokeStrategyApplyConfiguration { func InvokeStrategy() *InvokeStrategyApplyConfiguration {
return &InvokeStrategyApplyConfiguration{} return &InvokeStrategyApplyConfiguration{}
@@ -24,7 +24,7 @@ import (
v1 "k8s.io/client-go/applyconfigurations/meta/v1" v1 "k8s.io/client-go/applyconfigurations/meta/v1"
) )
// KubernetesWatchTriggerApplyConfiguration represents an declarative configuration of the KubernetesWatchTrigger type for use // KubernetesWatchTriggerApplyConfiguration represents a declarative configuration of the KubernetesWatchTrigger type for use
// with apply. // with apply.
type KubernetesWatchTriggerApplyConfiguration struct { type KubernetesWatchTriggerApplyConfiguration struct {
v1.TypeMetaApplyConfiguration `json:",inline"` v1.TypeMetaApplyConfiguration `json:",inline"`
@@ -32,7 +32,7 @@ type KubernetesWatchTriggerApplyConfiguration struct {
Spec *KubernetesWatchTriggerSpecApplyConfiguration `json:"spec,omitempty"` Spec *KubernetesWatchTriggerSpecApplyConfiguration `json:"spec,omitempty"`
} }
// KubernetesWatchTrigger constructs an declarative configuration of the KubernetesWatchTrigger type for use with // KubernetesWatchTrigger constructs a declarative configuration of the KubernetesWatchTrigger type for use with
// apply. // apply.
func KubernetesWatchTrigger(name, namespace string) *KubernetesWatchTriggerApplyConfiguration { func KubernetesWatchTrigger(name, namespace string) *KubernetesWatchTriggerApplyConfiguration {
b := &KubernetesWatchTriggerApplyConfiguration{} b := &KubernetesWatchTriggerApplyConfiguration{}
@@ -208,3 +208,9 @@ func (b *KubernetesWatchTriggerApplyConfiguration) WithSpec(value *KubernetesWat
b.Spec = value b.Spec = value
return b return b
} }
// GetName retrieves the value of the Name field in the declarative configuration.
func (b *KubernetesWatchTriggerApplyConfiguration) GetName() *string {
b.ensureObjectMetaApplyConfigurationExists()
return b.Name
}
@@ -18,7 +18,7 @@ limitations under the License.
package v1 package v1
// KubernetesWatchTriggerSpecApplyConfiguration represents an declarative configuration of the KubernetesWatchTriggerSpec type for use // KubernetesWatchTriggerSpecApplyConfiguration represents a declarative configuration of the KubernetesWatchTriggerSpec type for use
// with apply. // with apply.
type KubernetesWatchTriggerSpecApplyConfiguration struct { type KubernetesWatchTriggerSpecApplyConfiguration struct {
Namespace *string `json:"namespace,omitempty"` Namespace *string `json:"namespace,omitempty"`
@@ -27,7 +27,7 @@ type KubernetesWatchTriggerSpecApplyConfiguration struct {
FunctionReference *FunctionReferenceApplyConfiguration `json:"functionref,omitempty"` FunctionReference *FunctionReferenceApplyConfiguration `json:"functionref,omitempty"`
} }
// KubernetesWatchTriggerSpecApplyConfiguration constructs an declarative configuration of the KubernetesWatchTriggerSpec type for use with // KubernetesWatchTriggerSpecApplyConfiguration constructs a declarative configuration of the KubernetesWatchTriggerSpec type for use with
// apply. // apply.
func KubernetesWatchTriggerSpec() *KubernetesWatchTriggerSpecApplyConfiguration { func KubernetesWatchTriggerSpec() *KubernetesWatchTriggerSpecApplyConfiguration {
return &KubernetesWatchTriggerSpecApplyConfiguration{} return &KubernetesWatchTriggerSpecApplyConfiguration{}
@@ -24,7 +24,7 @@ import (
v1 "k8s.io/client-go/applyconfigurations/meta/v1" v1 "k8s.io/client-go/applyconfigurations/meta/v1"
) )
// MessageQueueTriggerApplyConfiguration represents an declarative configuration of the MessageQueueTrigger type for use // MessageQueueTriggerApplyConfiguration represents a declarative configuration of the MessageQueueTrigger type for use
// with apply. // with apply.
type MessageQueueTriggerApplyConfiguration struct { type MessageQueueTriggerApplyConfiguration struct {
v1.TypeMetaApplyConfiguration `json:",inline"` v1.TypeMetaApplyConfiguration `json:",inline"`
@@ -32,7 +32,7 @@ type MessageQueueTriggerApplyConfiguration struct {
Spec *MessageQueueTriggerSpecApplyConfiguration `json:"spec,omitempty"` Spec *MessageQueueTriggerSpecApplyConfiguration `json:"spec,omitempty"`
} }
// MessageQueueTrigger constructs an declarative configuration of the MessageQueueTrigger type for use with // MessageQueueTrigger constructs a declarative configuration of the MessageQueueTrigger type for use with
// apply. // apply.
func MessageQueueTrigger(name, namespace string) *MessageQueueTriggerApplyConfiguration { func MessageQueueTrigger(name, namespace string) *MessageQueueTriggerApplyConfiguration {
b := &MessageQueueTriggerApplyConfiguration{} b := &MessageQueueTriggerApplyConfiguration{}
@@ -208,3 +208,9 @@ func (b *MessageQueueTriggerApplyConfiguration) WithSpec(value *MessageQueueTrig
b.Spec = value b.Spec = value
return b return b
} }
// GetName retrieves the value of the Name field in the declarative configuration.
func (b *MessageQueueTriggerApplyConfiguration) GetName() *string {
b.ensureObjectMetaApplyConfigurationExists()
return b.Name
}
@@ -23,7 +23,7 @@ import (
apicorev1 "k8s.io/api/core/v1" apicorev1 "k8s.io/api/core/v1"
) )
// MessageQueueTriggerSpecApplyConfiguration represents an declarative configuration of the MessageQueueTriggerSpec type for use // MessageQueueTriggerSpecApplyConfiguration represents a declarative configuration of the MessageQueueTriggerSpec type for use
// with apply. // with apply.
type MessageQueueTriggerSpecApplyConfiguration struct { type MessageQueueTriggerSpecApplyConfiguration struct {
FunctionReference *FunctionReferenceApplyConfiguration `json:"functionref,omitempty"` FunctionReference *FunctionReferenceApplyConfiguration `json:"functionref,omitempty"`
@@ -43,7 +43,7 @@ type MessageQueueTriggerSpecApplyConfiguration struct {
PodSpec *apicorev1.PodSpec `json:"podspec,omitempty"` PodSpec *apicorev1.PodSpec `json:"podspec,omitempty"`
} }
// MessageQueueTriggerSpecApplyConfiguration constructs an declarative configuration of the MessageQueueTriggerSpec type for use with // MessageQueueTriggerSpecApplyConfiguration constructs a declarative configuration of the MessageQueueTriggerSpec type for use with
// apply. // apply.
func MessageQueueTriggerSpec() *MessageQueueTriggerSpecApplyConfiguration { func MessageQueueTriggerSpec() *MessageQueueTriggerSpecApplyConfiguration {
return &MessageQueueTriggerSpecApplyConfiguration{} return &MessageQueueTriggerSpecApplyConfiguration{}
@@ -24,7 +24,7 @@ import (
v1 "k8s.io/client-go/applyconfigurations/meta/v1" v1 "k8s.io/client-go/applyconfigurations/meta/v1"
) )
// PackageApplyConfiguration represents an declarative configuration of the Package type for use // PackageApplyConfiguration represents a declarative configuration of the Package type for use
// with apply. // with apply.
type PackageApplyConfiguration struct { type PackageApplyConfiguration struct {
v1.TypeMetaApplyConfiguration `json:",inline"` v1.TypeMetaApplyConfiguration `json:",inline"`
@@ -33,7 +33,7 @@ type PackageApplyConfiguration struct {
Status *PackageStatusApplyConfiguration `json:"status,omitempty"` Status *PackageStatusApplyConfiguration `json:"status,omitempty"`
} }
// Package constructs an declarative configuration of the Package type for use with // Package constructs a declarative configuration of the Package type for use with
// apply. // apply.
func Package(name, namespace string) *PackageApplyConfiguration { func Package(name, namespace string) *PackageApplyConfiguration {
b := &PackageApplyConfiguration{} b := &PackageApplyConfiguration{}
@@ -217,3 +217,9 @@ func (b *PackageApplyConfiguration) WithStatus(value *PackageStatusApplyConfigur
b.Status = value b.Status = value
return b return b
} }
// GetName retrieves the value of the Name field in the declarative configuration.
func (b *PackageApplyConfiguration) GetName() *string {
b.ensureObjectMetaApplyConfigurationExists()
return b.Name
}
@@ -18,7 +18,7 @@ limitations under the License.
package v1 package v1
// PackageRefApplyConfiguration represents an declarative configuration of the PackageRef type for use // PackageRefApplyConfiguration represents a declarative configuration of the PackageRef type for use
// with apply. // with apply.
type PackageRefApplyConfiguration struct { type PackageRefApplyConfiguration struct {
Namespace *string `json:"namespace,omitempty"` Namespace *string `json:"namespace,omitempty"`
@@ -26,7 +26,7 @@ type PackageRefApplyConfiguration struct {
ResourceVersion *string `json:"resourceversion,omitempty"` ResourceVersion *string `json:"resourceversion,omitempty"`
} }
// PackageRefApplyConfiguration constructs an declarative configuration of the PackageRef type for use with // PackageRefApplyConfiguration constructs a declarative configuration of the PackageRef type for use with
// apply. // apply.
func PackageRef() *PackageRefApplyConfiguration { func PackageRef() *PackageRefApplyConfiguration {
return &PackageRefApplyConfiguration{} return &PackageRefApplyConfiguration{}
@@ -18,7 +18,7 @@ limitations under the License.
package v1 package v1
// PackageSpecApplyConfiguration represents an declarative configuration of the PackageSpec type for use // PackageSpecApplyConfiguration represents a declarative configuration of the PackageSpec type for use
// with apply. // with apply.
type PackageSpecApplyConfiguration struct { type PackageSpecApplyConfiguration struct {
Environment *EnvironmentReferenceApplyConfiguration `json:"environment,omitempty"` Environment *EnvironmentReferenceApplyConfiguration `json:"environment,omitempty"`
@@ -27,7 +27,7 @@ type PackageSpecApplyConfiguration struct {
BuildCommand *string `json:"buildcmd,omitempty"` BuildCommand *string `json:"buildcmd,omitempty"`
} }
// PackageSpecApplyConfiguration constructs an declarative configuration of the PackageSpec type for use with // PackageSpecApplyConfiguration constructs a declarative configuration of the PackageSpec type for use with
// apply. // apply.
func PackageSpec() *PackageSpecApplyConfiguration { func PackageSpec() *PackageSpecApplyConfiguration {
return &PackageSpecApplyConfiguration{} return &PackageSpecApplyConfiguration{}
@@ -23,7 +23,7 @@ import (
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
) )
// PackageStatusApplyConfiguration represents an declarative configuration of the PackageStatus type for use // PackageStatusApplyConfiguration represents a declarative configuration of the PackageStatus type for use
// with apply. // with apply.
type PackageStatusApplyConfiguration struct { type PackageStatusApplyConfiguration struct {
BuildStatus *v1.BuildStatus `json:"buildstatus,omitempty"` BuildStatus *v1.BuildStatus `json:"buildstatus,omitempty"`
@@ -31,7 +31,7 @@ type PackageStatusApplyConfiguration struct {
LastUpdateTimestamp *metav1.Time `json:"lastUpdateTimestamp,omitempty"` LastUpdateTimestamp *metav1.Time `json:"lastUpdateTimestamp,omitempty"`
} }
// PackageStatusApplyConfiguration constructs an declarative configuration of the PackageStatus type for use with // PackageStatusApplyConfiguration constructs a declarative configuration of the PackageStatus type for use with
// apply. // apply.
func PackageStatus() *PackageStatusApplyConfiguration { func PackageStatus() *PackageStatusApplyConfiguration {
return &PackageStatusApplyConfiguration{} return &PackageStatusApplyConfiguration{}
@@ -22,7 +22,7 @@ import (
v1 "k8s.io/api/core/v1" v1 "k8s.io/api/core/v1"
) )
// RuntimeApplyConfiguration represents an declarative configuration of the Runtime type for use // RuntimeApplyConfiguration represents a declarative configuration of the Runtime type for use
// with apply. // with apply.
type RuntimeApplyConfiguration struct { type RuntimeApplyConfiguration struct {
Image *string `json:"image,omitempty"` Image *string `json:"image,omitempty"`
@@ -30,7 +30,7 @@ type RuntimeApplyConfiguration struct {
PodSpec *v1.PodSpec `json:"podspec,omitempty"` PodSpec *v1.PodSpec `json:"podspec,omitempty"`
} }
// RuntimeApplyConfiguration constructs an declarative configuration of the Runtime type for use with // RuntimeApplyConfiguration constructs a declarative configuration of the Runtime type for use with
// apply. // apply.
func Runtime() *RuntimeApplyConfiguration { func Runtime() *RuntimeApplyConfiguration {
return &RuntimeApplyConfiguration{} return &RuntimeApplyConfiguration{}
@@ -18,14 +18,14 @@ limitations under the License.
package v1 package v1
// SecretReferenceApplyConfiguration represents an declarative configuration of the SecretReference type for use // SecretReferenceApplyConfiguration represents a declarative configuration of the SecretReference type for use
// with apply. // with apply.
type SecretReferenceApplyConfiguration struct { type SecretReferenceApplyConfiguration struct {
Namespace *string `json:"namespace,omitempty"` Namespace *string `json:"namespace,omitempty"`
Name *string `json:"name,omitempty"` Name *string `json:"name,omitempty"`
} }
// SecretReferenceApplyConfiguration constructs an declarative configuration of the SecretReference type for use with // SecretReferenceApplyConfiguration constructs a declarative configuration of the SecretReference type for use with
// apply. // apply.
func SecretReference() *SecretReferenceApplyConfiguration { func SecretReference() *SecretReferenceApplyConfiguration {
return &SecretReferenceApplyConfiguration{} return &SecretReferenceApplyConfiguration{}
@@ -24,7 +24,7 @@ import (
v1 "k8s.io/client-go/applyconfigurations/meta/v1" v1 "k8s.io/client-go/applyconfigurations/meta/v1"
) )
// TimeTriggerApplyConfiguration represents an declarative configuration of the TimeTrigger type for use // TimeTriggerApplyConfiguration represents a declarative configuration of the TimeTrigger type for use
// with apply. // with apply.
type TimeTriggerApplyConfiguration struct { type TimeTriggerApplyConfiguration struct {
v1.TypeMetaApplyConfiguration `json:",inline"` v1.TypeMetaApplyConfiguration `json:",inline"`
@@ -32,7 +32,7 @@ type TimeTriggerApplyConfiguration struct {
Spec *TimeTriggerSpecApplyConfiguration `json:"spec,omitempty"` Spec *TimeTriggerSpecApplyConfiguration `json:"spec,omitempty"`
} }
// TimeTrigger constructs an declarative configuration of the TimeTrigger type for use with // TimeTrigger constructs a declarative configuration of the TimeTrigger type for use with
// apply. // apply.
func TimeTrigger(name, namespace string) *TimeTriggerApplyConfiguration { func TimeTrigger(name, namespace string) *TimeTriggerApplyConfiguration {
b := &TimeTriggerApplyConfiguration{} b := &TimeTriggerApplyConfiguration{}
@@ -208,3 +208,9 @@ func (b *TimeTriggerApplyConfiguration) WithSpec(value *TimeTriggerSpecApplyConf
b.Spec = value b.Spec = value
return b return b
} }
// GetName retrieves the value of the Name field in the declarative configuration.
func (b *TimeTriggerApplyConfiguration) GetName() *string {
b.ensureObjectMetaApplyConfigurationExists()
return b.Name
}
@@ -22,7 +22,7 @@ import (
corev1 "github.com/fission/fission/pkg/apis/core/v1" corev1 "github.com/fission/fission/pkg/apis/core/v1"
) )
// TimeTriggerSpecApplyConfiguration represents an declarative configuration of the TimeTriggerSpec type for use // TimeTriggerSpecApplyConfiguration represents a declarative configuration of the TimeTriggerSpec type for use
// with apply. // with apply.
type TimeTriggerSpecApplyConfiguration struct { type TimeTriggerSpecApplyConfiguration struct {
Cron *string `json:"cron,omitempty"` Cron *string `json:"cron,omitempty"`
@@ -31,7 +31,7 @@ type TimeTriggerSpecApplyConfiguration struct {
Subpath *string `json:"subpath,omitempty"` Subpath *string `json:"subpath,omitempty"`
} }
// TimeTriggerSpecApplyConfiguration constructs an declarative configuration of the TimeTriggerSpec type for use with // TimeTriggerSpecApplyConfiguration constructs a declarative configuration of the TimeTriggerSpec type for use with
// apply. // apply.
func TimeTriggerSpec() *TimeTriggerSpecApplyConfiguration { func TimeTriggerSpec() *TimeTriggerSpecApplyConfiguration {
return &TimeTriggerSpecApplyConfiguration{} return &TimeTriggerSpecApplyConfiguration{}
@@ -21,7 +21,10 @@ package applyconfiguration
import ( import (
v1 "github.com/fission/fission/pkg/apis/core/v1" v1 "github.com/fission/fission/pkg/apis/core/v1"
corev1 "github.com/fission/fission/pkg/generated/applyconfiguration/core/v1" corev1 "github.com/fission/fission/pkg/generated/applyconfiguration/core/v1"
internal "github.com/fission/fission/pkg/generated/applyconfiguration/internal"
runtime "k8s.io/apimachinery/pkg/runtime"
schema "k8s.io/apimachinery/pkg/runtime/schema" schema "k8s.io/apimachinery/pkg/runtime/schema"
testing "k8s.io/client-go/testing"
) )
// ForKind returns an apply configuration type for the given GroupVersionKind, or nil if no // ForKind returns an apply configuration type for the given GroupVersionKind, or nil if no
@@ -95,3 +98,7 @@ func ForKind(kind schema.GroupVersionKind) interface{} {
} }
return nil return nil
} }
func NewTypeConverter(scheme *runtime.Scheme) *testing.TypeConverter {
return &testing.TypeConverter{Scheme: scheme, TypeResolver: internal.Parser()}
}
@@ -19,6 +19,7 @@ limitations under the License.
package fake package fake
import ( import (
applyconfiguration "github.com/fission/fission/pkg/generated/applyconfiguration"
clientset "github.com/fission/fission/pkg/generated/clientset/versioned" clientset "github.com/fission/fission/pkg/generated/clientset/versioned"
corev1 "github.com/fission/fission/pkg/generated/clientset/versioned/typed/core/v1" corev1 "github.com/fission/fission/pkg/generated/clientset/versioned/typed/core/v1"
fakecorev1 "github.com/fission/fission/pkg/generated/clientset/versioned/typed/core/v1/fake" fakecorev1 "github.com/fission/fission/pkg/generated/clientset/versioned/typed/core/v1/fake"
@@ -31,8 +32,12 @@ import (
// NewSimpleClientset returns a clientset that will respond with the provided objects. // NewSimpleClientset returns a clientset that will respond with the provided objects.
// It's backed by a very simple object tracker that processes creates, updates and deletions as-is, // It's backed by a very simple object tracker that processes creates, updates and deletions as-is,
// without applying any validations and/or defaults. It shouldn't be considered a replacement // without applying any field management, validations and/or defaults. It shouldn't be considered a replacement
// for a real clientset and is mostly useful in simple unit tests. // for a real clientset and is mostly useful in simple unit tests.
//
// DEPRECATED: NewClientset replaces this with support for field management, which significantly improves
// server side apply testing. NewClientset is only available when apply configurations are generated (e.g.
// via --with-applyconfig).
func NewSimpleClientset(objects ...runtime.Object) *Clientset { func NewSimpleClientset(objects ...runtime.Object) *Clientset {
o := testing.NewObjectTracker(scheme, codecs.UniversalDecoder()) o := testing.NewObjectTracker(scheme, codecs.UniversalDecoder())
for _, obj := range objects { for _, obj := range objects {
@@ -74,6 +79,38 @@ func (c *Clientset) Tracker() testing.ObjectTracker {
return c.tracker return c.tracker
} }
// NewClientset returns a clientset that will respond with the provided objects.
// It's backed by a very simple object tracker that processes creates, updates and deletions as-is,
// without applying any validations and/or defaults. It shouldn't be considered a replacement
// for a real clientset and is mostly useful in simple unit tests.
func NewClientset(objects ...runtime.Object) *Clientset {
o := testing.NewFieldManagedObjectTracker(
scheme,
codecs.UniversalDecoder(),
applyconfiguration.NewTypeConverter(scheme),
)
for _, obj := range objects {
if err := o.Add(obj); err != nil {
panic(err)
}
}
cs := &Clientset{tracker: o}
cs.discovery = &fakediscovery.FakeDiscovery{Fake: &cs.Fake}
cs.AddReactor("*", "*", testing.ObjectReaction(o))
cs.AddWatchReactor("*", func(action testing.Action) (handled bool, ret watch.Interface, err error) {
gvr := action.GetResource()
ns := action.GetNamespace()
watch, err := o.Watch(gvr, ns)
if err != nil {
return false, nil, err
}
return true, watch, nil
})
return cs
}
var ( var (
_ clientset.Interface = &Clientset{} _ clientset.Interface = &Clientset{}
_ testing.FakeClient = &Clientset{} _ testing.FakeClient = &Clientset{}
@@ -20,9 +20,6 @@ package v1
import ( import (
"context" "context"
json "encoding/json"
"fmt"
"time"
v1 "github.com/fission/fission/pkg/apis/core/v1" v1 "github.com/fission/fission/pkg/apis/core/v1"
corev1 "github.com/fission/fission/pkg/generated/applyconfiguration/core/v1" corev1 "github.com/fission/fission/pkg/generated/applyconfiguration/core/v1"
@@ -30,7 +27,7 @@ import (
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
types "k8s.io/apimachinery/pkg/types" types "k8s.io/apimachinery/pkg/types"
watch "k8s.io/apimachinery/pkg/watch" watch "k8s.io/apimachinery/pkg/watch"
rest "k8s.io/client-go/rest" gentype "k8s.io/client-go/gentype"
) )
// CanaryConfigsGetter has a method to return a CanaryConfigInterface. // CanaryConfigsGetter has a method to return a CanaryConfigInterface.
@@ -43,6 +40,7 @@ type CanaryConfigsGetter interface {
type CanaryConfigInterface interface { type CanaryConfigInterface interface {
Create(ctx context.Context, _canaryConfig *v1.CanaryConfig, opts metav1.CreateOptions) (*v1.CanaryConfig, error) Create(ctx context.Context, _canaryConfig *v1.CanaryConfig, opts metav1.CreateOptions) (*v1.CanaryConfig, error)
Update(ctx context.Context, _canaryConfig *v1.CanaryConfig, opts metav1.UpdateOptions) (*v1.CanaryConfig, error) Update(ctx context.Context, _canaryConfig *v1.CanaryConfig, opts metav1.UpdateOptions) (*v1.CanaryConfig, error)
// Add a +genclient:noStatus comment above the type to avoid generating UpdateStatus().
UpdateStatus(ctx context.Context, _canaryConfig *v1.CanaryConfig, opts metav1.UpdateOptions) (*v1.CanaryConfig, error) UpdateStatus(ctx context.Context, _canaryConfig *v1.CanaryConfig, opts metav1.UpdateOptions) (*v1.CanaryConfig, error)
Delete(ctx context.Context, name string, opts metav1.DeleteOptions) error Delete(ctx context.Context, name string, opts metav1.DeleteOptions) error
DeleteCollection(ctx context.Context, opts metav1.DeleteOptions, listOpts metav1.ListOptions) error DeleteCollection(ctx context.Context, opts metav1.DeleteOptions, listOpts metav1.ListOptions) error
@@ -51,206 +49,25 @@ type CanaryConfigInterface interface {
Watch(ctx context.Context, opts metav1.ListOptions) (watch.Interface, error) Watch(ctx context.Context, opts metav1.ListOptions) (watch.Interface, error)
Patch(ctx context.Context, name string, pt types.PatchType, data []byte, opts metav1.PatchOptions, subresources ...string) (result *v1.CanaryConfig, err error) Patch(ctx context.Context, name string, pt types.PatchType, data []byte, opts metav1.PatchOptions, subresources ...string) (result *v1.CanaryConfig, err error)
Apply(ctx context.Context, _canaryConfig *corev1.CanaryConfigApplyConfiguration, opts metav1.ApplyOptions) (result *v1.CanaryConfig, err error) Apply(ctx context.Context, _canaryConfig *corev1.CanaryConfigApplyConfiguration, opts metav1.ApplyOptions) (result *v1.CanaryConfig, err error)
// Add a +genclient:noStatus comment above the type to avoid generating ApplyStatus().
ApplyStatus(ctx context.Context, _canaryConfig *corev1.CanaryConfigApplyConfiguration, opts metav1.ApplyOptions) (result *v1.CanaryConfig, err error) ApplyStatus(ctx context.Context, _canaryConfig *corev1.CanaryConfigApplyConfiguration, opts metav1.ApplyOptions) (result *v1.CanaryConfig, err error)
CanaryConfigExpansion CanaryConfigExpansion
} }
// canaryConfigs implements CanaryConfigInterface // canaryConfigs implements CanaryConfigInterface
type canaryConfigs struct { type canaryConfigs struct {
client rest.Interface *gentype.ClientWithListAndApply[*v1.CanaryConfig, *v1.CanaryConfigList, *corev1.CanaryConfigApplyConfiguration]
ns string
} }
// newCanaryConfigs returns a CanaryConfigs // newCanaryConfigs returns a CanaryConfigs
func newCanaryConfigs(c *CoreV1Client, namespace string) *canaryConfigs { func newCanaryConfigs(c *CoreV1Client, namespace string) *canaryConfigs {
return &canaryConfigs{ return &canaryConfigs{
client: c.RESTClient(), gentype.NewClientWithListAndApply[*v1.CanaryConfig, *v1.CanaryConfigList, *corev1.CanaryConfigApplyConfiguration](
ns: namespace, "canaryconfigs",
c.RESTClient(),
scheme.ParameterCodec,
namespace,
func() *v1.CanaryConfig { return &v1.CanaryConfig{} },
func() *v1.CanaryConfigList { return &v1.CanaryConfigList{} }),
} }
} }
// Get takes name of the _canaryConfig, and returns the corresponding canaryConfig object, and an error if there is any.
func (c *canaryConfigs) Get(ctx context.Context, name string, options metav1.GetOptions) (result *v1.CanaryConfig, err error) {
result = &v1.CanaryConfig{}
err = c.client.Get().
Namespace(c.ns).
Resource("canaryconfigs").
Name(name).
VersionedParams(&options, scheme.ParameterCodec).
Do(ctx).
Into(result)
return
}
// List takes label and field selectors, and returns the list of CanaryConfigs that match those selectors.
func (c *canaryConfigs) List(ctx context.Context, opts metav1.ListOptions) (result *v1.CanaryConfigList, err error) {
var timeout time.Duration
if opts.TimeoutSeconds != nil {
timeout = time.Duration(*opts.TimeoutSeconds) * time.Second
}
result = &v1.CanaryConfigList{}
err = c.client.Get().
Namespace(c.ns).
Resource("canaryconfigs").
VersionedParams(&opts, scheme.ParameterCodec).
Timeout(timeout).
Do(ctx).
Into(result)
return
}
// Watch returns a watch.Interface that watches the requested canaryConfigs.
func (c *canaryConfigs) Watch(ctx context.Context, opts metav1.ListOptions) (watch.Interface, error) {
var timeout time.Duration
if opts.TimeoutSeconds != nil {
timeout = time.Duration(*opts.TimeoutSeconds) * time.Second
}
opts.Watch = true
return c.client.Get().
Namespace(c.ns).
Resource("canaryconfigs").
VersionedParams(&opts, scheme.ParameterCodec).
Timeout(timeout).
Watch(ctx)
}
// Create takes the representation of a _canaryConfig and creates it. Returns the server's representation of the canaryConfig, and an error, if there is any.
func (c *canaryConfigs) Create(ctx context.Context, _canaryConfig *v1.CanaryConfig, opts metav1.CreateOptions) (result *v1.CanaryConfig, err error) {
result = &v1.CanaryConfig{}
err = c.client.Post().
Namespace(c.ns).
Resource("canaryconfigs").
VersionedParams(&opts, scheme.ParameterCodec).
Body(_canaryConfig).
Do(ctx).
Into(result)
return
}
// Update takes the representation of a _canaryConfig and updates it. Returns the server's representation of the canaryConfig, and an error, if there is any.
func (c *canaryConfigs) Update(ctx context.Context, _canaryConfig *v1.CanaryConfig, opts metav1.UpdateOptions) (result *v1.CanaryConfig, err error) {
result = &v1.CanaryConfig{}
err = c.client.Put().
Namespace(c.ns).
Resource("canaryconfigs").
Name(_canaryConfig.Name).
VersionedParams(&opts, scheme.ParameterCodec).
Body(_canaryConfig).
Do(ctx).
Into(result)
return
}
// UpdateStatus was generated because the type contains a Status member.
// Add a +genclient:noStatus comment above the type to avoid generating UpdateStatus().
func (c *canaryConfigs) UpdateStatus(ctx context.Context, _canaryConfig *v1.CanaryConfig, opts metav1.UpdateOptions) (result *v1.CanaryConfig, err error) {
result = &v1.CanaryConfig{}
err = c.client.Put().
Namespace(c.ns).
Resource("canaryconfigs").
Name(_canaryConfig.Name).
SubResource("status").
VersionedParams(&opts, scheme.ParameterCodec).
Body(_canaryConfig).
Do(ctx).
Into(result)
return
}
// Delete takes name of the _canaryConfig and deletes it. Returns an error if one occurs.
func (c *canaryConfigs) Delete(ctx context.Context, name string, opts metav1.DeleteOptions) error {
return c.client.Delete().
Namespace(c.ns).
Resource("canaryconfigs").
Name(name).
Body(&opts).
Do(ctx).
Error()
}
// DeleteCollection deletes a collection of objects.
func (c *canaryConfigs) DeleteCollection(ctx context.Context, opts metav1.DeleteOptions, listOpts metav1.ListOptions) error {
var timeout time.Duration
if listOpts.TimeoutSeconds != nil {
timeout = time.Duration(*listOpts.TimeoutSeconds) * time.Second
}
return c.client.Delete().
Namespace(c.ns).
Resource("canaryconfigs").
VersionedParams(&listOpts, scheme.ParameterCodec).
Timeout(timeout).
Body(&opts).
Do(ctx).
Error()
}
// Patch applies the patch and returns the patched canaryConfig.
func (c *canaryConfigs) Patch(ctx context.Context, name string, pt types.PatchType, data []byte, opts metav1.PatchOptions, subresources ...string) (result *v1.CanaryConfig, err error) {
result = &v1.CanaryConfig{}
err = c.client.Patch(pt).
Namespace(c.ns).
Resource("canaryconfigs").
Name(name).
SubResource(subresources...).
VersionedParams(&opts, scheme.ParameterCodec).
Body(data).
Do(ctx).
Into(result)
return
}
// Apply takes the given apply declarative configuration, applies it and returns the applied canaryConfig.
func (c *canaryConfigs) Apply(ctx context.Context, _canaryConfig *corev1.CanaryConfigApplyConfiguration, opts metav1.ApplyOptions) (result *v1.CanaryConfig, err error) {
if _canaryConfig == nil {
return nil, fmt.Errorf("_canaryConfig provided to Apply must not be nil")
}
patchOpts := opts.ToPatchOptions()
data, err := json.Marshal(_canaryConfig)
if err != nil {
return nil, err
}
name := _canaryConfig.Name
if name == nil {
return nil, fmt.Errorf("_canaryConfig.Name must be provided to Apply")
}
result = &v1.CanaryConfig{}
err = c.client.Patch(types.ApplyPatchType).
Namespace(c.ns).
Resource("canaryconfigs").
Name(*name).
VersionedParams(&patchOpts, scheme.ParameterCodec).
Body(data).
Do(ctx).
Into(result)
return
}
// ApplyStatus was generated because the type contains a Status member.
// Add a +genclient:noStatus comment above the type to avoid generating ApplyStatus().
func (c *canaryConfigs) ApplyStatus(ctx context.Context, _canaryConfig *corev1.CanaryConfigApplyConfiguration, opts metav1.ApplyOptions) (result *v1.CanaryConfig, err error) {
if _canaryConfig == nil {
return nil, fmt.Errorf("_canaryConfig provided to Apply must not be nil")
}
patchOpts := opts.ToPatchOptions()
data, err := json.Marshal(_canaryConfig)
if err != nil {
return nil, err
}
name := _canaryConfig.Name
if name == nil {
return nil, fmt.Errorf("_canaryConfig.Name must be provided to Apply")
}
result = &v1.CanaryConfig{}
err = c.client.Patch(types.ApplyPatchType).
Namespace(c.ns).
Resource("canaryconfigs").
Name(*name).
SubResource("status").
VersionedParams(&patchOpts, scheme.ParameterCodec).
Body(data).
Do(ctx).
Into(result)
return
}
@@ -20,9 +20,6 @@ package v1
import ( import (
"context" "context"
json "encoding/json"
"fmt"
"time"
v1 "github.com/fission/fission/pkg/apis/core/v1" v1 "github.com/fission/fission/pkg/apis/core/v1"
corev1 "github.com/fission/fission/pkg/generated/applyconfiguration/core/v1" corev1 "github.com/fission/fission/pkg/generated/applyconfiguration/core/v1"
@@ -30,7 +27,7 @@ import (
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
types "k8s.io/apimachinery/pkg/types" types "k8s.io/apimachinery/pkg/types"
watch "k8s.io/apimachinery/pkg/watch" watch "k8s.io/apimachinery/pkg/watch"
rest "k8s.io/client-go/rest" gentype "k8s.io/client-go/gentype"
) )
// EnvironmentsGetter has a method to return a EnvironmentInterface. // EnvironmentsGetter has a method to return a EnvironmentInterface.
@@ -55,154 +52,18 @@ type EnvironmentInterface interface {
// environments implements EnvironmentInterface // environments implements EnvironmentInterface
type environments struct { type environments struct {
client rest.Interface *gentype.ClientWithListAndApply[*v1.Environment, *v1.EnvironmentList, *corev1.EnvironmentApplyConfiguration]
ns string
} }
// newEnvironments returns a Environments // newEnvironments returns a Environments
func newEnvironments(c *CoreV1Client, namespace string) *environments { func newEnvironments(c *CoreV1Client, namespace string) *environments {
return &environments{ return &environments{
client: c.RESTClient(), gentype.NewClientWithListAndApply[*v1.Environment, *v1.EnvironmentList, *corev1.EnvironmentApplyConfiguration](
ns: namespace, "environments",
c.RESTClient(),
scheme.ParameterCodec,
namespace,
func() *v1.Environment { return &v1.Environment{} },
func() *v1.EnvironmentList { return &v1.EnvironmentList{} }),
} }
} }
// Get takes name of the _environment, and returns the corresponding environment object, and an error if there is any.
func (c *environments) Get(ctx context.Context, name string, options metav1.GetOptions) (result *v1.Environment, err error) {
result = &v1.Environment{}
err = c.client.Get().
Namespace(c.ns).
Resource("environments").
Name(name).
VersionedParams(&options, scheme.ParameterCodec).
Do(ctx).
Into(result)
return
}
// List takes label and field selectors, and returns the list of Environments that match those selectors.
func (c *environments) List(ctx context.Context, opts metav1.ListOptions) (result *v1.EnvironmentList, err error) {
var timeout time.Duration
if opts.TimeoutSeconds != nil {
timeout = time.Duration(*opts.TimeoutSeconds) * time.Second
}
result = &v1.EnvironmentList{}
err = c.client.Get().
Namespace(c.ns).
Resource("environments").
VersionedParams(&opts, scheme.ParameterCodec).
Timeout(timeout).
Do(ctx).
Into(result)
return
}
// Watch returns a watch.Interface that watches the requested environments.
func (c *environments) Watch(ctx context.Context, opts metav1.ListOptions) (watch.Interface, error) {
var timeout time.Duration
if opts.TimeoutSeconds != nil {
timeout = time.Duration(*opts.TimeoutSeconds) * time.Second
}
opts.Watch = true
return c.client.Get().
Namespace(c.ns).
Resource("environments").
VersionedParams(&opts, scheme.ParameterCodec).
Timeout(timeout).
Watch(ctx)
}
// Create takes the representation of a _environment and creates it. Returns the server's representation of the environment, and an error, if there is any.
func (c *environments) Create(ctx context.Context, _environment *v1.Environment, opts metav1.CreateOptions) (result *v1.Environment, err error) {
result = &v1.Environment{}
err = c.client.Post().
Namespace(c.ns).
Resource("environments").
VersionedParams(&opts, scheme.ParameterCodec).
Body(_environment).
Do(ctx).
Into(result)
return
}
// Update takes the representation of a _environment and updates it. Returns the server's representation of the environment, and an error, if there is any.
func (c *environments) Update(ctx context.Context, _environment *v1.Environment, opts metav1.UpdateOptions) (result *v1.Environment, err error) {
result = &v1.Environment{}
err = c.client.Put().
Namespace(c.ns).
Resource("environments").
Name(_environment.Name).
VersionedParams(&opts, scheme.ParameterCodec).
Body(_environment).
Do(ctx).
Into(result)
return
}
// Delete takes name of the _environment and deletes it. Returns an error if one occurs.
func (c *environments) Delete(ctx context.Context, name string, opts metav1.DeleteOptions) error {
return c.client.Delete().
Namespace(c.ns).
Resource("environments").
Name(name).
Body(&opts).
Do(ctx).
Error()
}
// DeleteCollection deletes a collection of objects.
func (c *environments) DeleteCollection(ctx context.Context, opts metav1.DeleteOptions, listOpts metav1.ListOptions) error {
var timeout time.Duration
if listOpts.TimeoutSeconds != nil {
timeout = time.Duration(*listOpts.TimeoutSeconds) * time.Second
}
return c.client.Delete().
Namespace(c.ns).
Resource("environments").
VersionedParams(&listOpts, scheme.ParameterCodec).
Timeout(timeout).
Body(&opts).
Do(ctx).
Error()
}
// Patch applies the patch and returns the patched environment.
func (c *environments) Patch(ctx context.Context, name string, pt types.PatchType, data []byte, opts metav1.PatchOptions, subresources ...string) (result *v1.Environment, err error) {
result = &v1.Environment{}
err = c.client.Patch(pt).
Namespace(c.ns).
Resource("environments").
Name(name).
SubResource(subresources...).
VersionedParams(&opts, scheme.ParameterCodec).
Body(data).
Do(ctx).
Into(result)
return
}
// Apply takes the given apply declarative configuration, applies it and returns the applied environment.
func (c *environments) Apply(ctx context.Context, _environment *corev1.EnvironmentApplyConfiguration, opts metav1.ApplyOptions) (result *v1.Environment, err error) {
if _environment == nil {
return nil, fmt.Errorf("_environment provided to Apply must not be nil")
}
patchOpts := opts.ToPatchOptions()
data, err := json.Marshal(_environment)
if err != nil {
return nil, err
}
name := _environment.Name
if name == nil {
return nil, fmt.Errorf("_environment.Name must be provided to Apply")
}
result = &v1.Environment{}
err = c.client.Patch(types.ApplyPatchType).
Namespace(c.ns).
Resource("environments").
Name(*name).
VersionedParams(&patchOpts, scheme.ParameterCodec).
Body(data).
Do(ctx).
Into(result)
return
}
@@ -44,22 +44,24 @@ var canaryconfigsKind = v1.SchemeGroupVersion.WithKind("CanaryConfig")
// Get takes name of the _canaryConfig, and returns the corresponding canaryConfig object, and an error if there is any. // Get takes name of the _canaryConfig, and returns the corresponding canaryConfig object, and an error if there is any.
func (c *FakeCanaryConfigs) Get(ctx context.Context, name string, options metav1.GetOptions) (result *v1.CanaryConfig, err error) { func (c *FakeCanaryConfigs) Get(ctx context.Context, name string, options metav1.GetOptions) (result *v1.CanaryConfig, err error) {
emptyResult := &v1.CanaryConfig{}
obj, err := c.Fake. obj, err := c.Fake.
Invokes(testing.NewGetAction(canaryconfigsResource, c.ns, name), &v1.CanaryConfig{}) Invokes(testing.NewGetActionWithOptions(canaryconfigsResource, c.ns, name, options), emptyResult)
if obj == nil { if obj == nil {
return nil, err return emptyResult, err
} }
return obj.(*v1.CanaryConfig), err return obj.(*v1.CanaryConfig), err
} }
// List takes label and field selectors, and returns the list of CanaryConfigs that match those selectors. // List takes label and field selectors, and returns the list of CanaryConfigs that match those selectors.
func (c *FakeCanaryConfigs) List(ctx context.Context, opts metav1.ListOptions) (result *v1.CanaryConfigList, err error) { func (c *FakeCanaryConfigs) List(ctx context.Context, opts metav1.ListOptions) (result *v1.CanaryConfigList, err error) {
emptyResult := &v1.CanaryConfigList{}
obj, err := c.Fake. obj, err := c.Fake.
Invokes(testing.NewListAction(canaryconfigsResource, canaryconfigsKind, c.ns, opts), &v1.CanaryConfigList{}) Invokes(testing.NewListActionWithOptions(canaryconfigsResource, canaryconfigsKind, c.ns, opts), emptyResult)
if obj == nil { if obj == nil {
return nil, err return emptyResult, err
} }
label, _, _ := testing.ExtractFromListOptions(opts) label, _, _ := testing.ExtractFromListOptions(opts)
@@ -78,40 +80,43 @@ func (c *FakeCanaryConfigs) List(ctx context.Context, opts metav1.ListOptions) (
// Watch returns a watch.Interface that watches the requested canaryConfigs. // Watch returns a watch.Interface that watches the requested canaryConfigs.
func (c *FakeCanaryConfigs) Watch(ctx context.Context, opts metav1.ListOptions) (watch.Interface, error) { func (c *FakeCanaryConfigs) Watch(ctx context.Context, opts metav1.ListOptions) (watch.Interface, error) {
return c.Fake. return c.Fake.
InvokesWatch(testing.NewWatchAction(canaryconfigsResource, c.ns, opts)) InvokesWatch(testing.NewWatchActionWithOptions(canaryconfigsResource, c.ns, opts))
} }
// Create takes the representation of a _canaryConfig and creates it. Returns the server's representation of the canaryConfig, and an error, if there is any. // Create takes the representation of a _canaryConfig and creates it. Returns the server's representation of the canaryConfig, and an error, if there is any.
func (c *FakeCanaryConfigs) Create(ctx context.Context, _canaryConfig *v1.CanaryConfig, opts metav1.CreateOptions) (result *v1.CanaryConfig, err error) { func (c *FakeCanaryConfigs) Create(ctx context.Context, _canaryConfig *v1.CanaryConfig, opts metav1.CreateOptions) (result *v1.CanaryConfig, err error) {
emptyResult := &v1.CanaryConfig{}
obj, err := c.Fake. obj, err := c.Fake.
Invokes(testing.NewCreateAction(canaryconfigsResource, c.ns, _canaryConfig), &v1.CanaryConfig{}) Invokes(testing.NewCreateActionWithOptions(canaryconfigsResource, c.ns, _canaryConfig, opts), emptyResult)
if obj == nil { if obj == nil {
return nil, err return emptyResult, err
} }
return obj.(*v1.CanaryConfig), err return obj.(*v1.CanaryConfig), err
} }
// Update takes the representation of a _canaryConfig and updates it. Returns the server's representation of the canaryConfig, and an error, if there is any. // Update takes the representation of a _canaryConfig and updates it. Returns the server's representation of the canaryConfig, and an error, if there is any.
func (c *FakeCanaryConfigs) Update(ctx context.Context, _canaryConfig *v1.CanaryConfig, opts metav1.UpdateOptions) (result *v1.CanaryConfig, err error) { func (c *FakeCanaryConfigs) Update(ctx context.Context, _canaryConfig *v1.CanaryConfig, opts metav1.UpdateOptions) (result *v1.CanaryConfig, err error) {
emptyResult := &v1.CanaryConfig{}
obj, err := c.Fake. obj, err := c.Fake.
Invokes(testing.NewUpdateAction(canaryconfigsResource, c.ns, _canaryConfig), &v1.CanaryConfig{}) Invokes(testing.NewUpdateActionWithOptions(canaryconfigsResource, c.ns, _canaryConfig, opts), emptyResult)
if obj == nil { if obj == nil {
return nil, err return emptyResult, err
} }
return obj.(*v1.CanaryConfig), err return obj.(*v1.CanaryConfig), err
} }
// UpdateStatus was generated because the type contains a Status member. // UpdateStatus was generated because the type contains a Status member.
// Add a +genclient:noStatus comment above the type to avoid generating UpdateStatus(). // Add a +genclient:noStatus comment above the type to avoid generating UpdateStatus().
func (c *FakeCanaryConfigs) UpdateStatus(ctx context.Context, _canaryConfig *v1.CanaryConfig, opts metav1.UpdateOptions) (*v1.CanaryConfig, error) { func (c *FakeCanaryConfigs) UpdateStatus(ctx context.Context, _canaryConfig *v1.CanaryConfig, opts metav1.UpdateOptions) (result *v1.CanaryConfig, err error) {
emptyResult := &v1.CanaryConfig{}
obj, err := c.Fake. obj, err := c.Fake.
Invokes(testing.NewUpdateSubresourceAction(canaryconfigsResource, "status", c.ns, _canaryConfig), &v1.CanaryConfig{}) Invokes(testing.NewUpdateSubresourceActionWithOptions(canaryconfigsResource, "status", c.ns, _canaryConfig, opts), emptyResult)
if obj == nil { if obj == nil {
return nil, err return emptyResult, err
} }
return obj.(*v1.CanaryConfig), err return obj.(*v1.CanaryConfig), err
} }
@@ -126,7 +131,7 @@ func (c *FakeCanaryConfigs) Delete(ctx context.Context, name string, opts metav1
// DeleteCollection deletes a collection of objects. // DeleteCollection deletes a collection of objects.
func (c *FakeCanaryConfigs) DeleteCollection(ctx context.Context, opts metav1.DeleteOptions, listOpts metav1.ListOptions) error { func (c *FakeCanaryConfigs) DeleteCollection(ctx context.Context, opts metav1.DeleteOptions, listOpts metav1.ListOptions) error {
action := testing.NewDeleteCollectionAction(canaryconfigsResource, c.ns, listOpts) action := testing.NewDeleteCollectionActionWithOptions(canaryconfigsResource, c.ns, opts, listOpts)
_, err := c.Fake.Invokes(action, &v1.CanaryConfigList{}) _, err := c.Fake.Invokes(action, &v1.CanaryConfigList{})
return err return err
@@ -134,11 +139,12 @@ func (c *FakeCanaryConfigs) DeleteCollection(ctx context.Context, opts metav1.De
// Patch applies the patch and returns the patched canaryConfig. // Patch applies the patch and returns the patched canaryConfig.
func (c *FakeCanaryConfigs) Patch(ctx context.Context, name string, pt types.PatchType, data []byte, opts metav1.PatchOptions, subresources ...string) (result *v1.CanaryConfig, err error) { func (c *FakeCanaryConfigs) Patch(ctx context.Context, name string, pt types.PatchType, data []byte, opts metav1.PatchOptions, subresources ...string) (result *v1.CanaryConfig, err error) {
emptyResult := &v1.CanaryConfig{}
obj, err := c.Fake. obj, err := c.Fake.
Invokes(testing.NewPatchSubresourceAction(canaryconfigsResource, c.ns, name, pt, data, subresources...), &v1.CanaryConfig{}) Invokes(testing.NewPatchSubresourceActionWithOptions(canaryconfigsResource, c.ns, name, pt, data, opts, subresources...), emptyResult)
if obj == nil { if obj == nil {
return nil, err return emptyResult, err
} }
return obj.(*v1.CanaryConfig), err return obj.(*v1.CanaryConfig), err
} }
@@ -156,11 +162,12 @@ func (c *FakeCanaryConfigs) Apply(ctx context.Context, _canaryConfig *corev1.Can
if name == nil { if name == nil {
return nil, fmt.Errorf("_canaryConfig.Name must be provided to Apply") return nil, fmt.Errorf("_canaryConfig.Name must be provided to Apply")
} }
emptyResult := &v1.CanaryConfig{}
obj, err := c.Fake. obj, err := c.Fake.
Invokes(testing.NewPatchSubresourceAction(canaryconfigsResource, c.ns, *name, types.ApplyPatchType, data), &v1.CanaryConfig{}) Invokes(testing.NewPatchSubresourceActionWithOptions(canaryconfigsResource, c.ns, *name, types.ApplyPatchType, data, opts.ToPatchOptions()), emptyResult)
if obj == nil { if obj == nil {
return nil, err return emptyResult, err
} }
return obj.(*v1.CanaryConfig), err return obj.(*v1.CanaryConfig), err
} }
@@ -179,11 +186,12 @@ func (c *FakeCanaryConfigs) ApplyStatus(ctx context.Context, _canaryConfig *core
if name == nil { if name == nil {
return nil, fmt.Errorf("_canaryConfig.Name must be provided to Apply") return nil, fmt.Errorf("_canaryConfig.Name must be provided to Apply")
} }
emptyResult := &v1.CanaryConfig{}
obj, err := c.Fake. obj, err := c.Fake.
Invokes(testing.NewPatchSubresourceAction(canaryconfigsResource, c.ns, *name, types.ApplyPatchType, data, "status"), &v1.CanaryConfig{}) Invokes(testing.NewPatchSubresourceActionWithOptions(canaryconfigsResource, c.ns, *name, types.ApplyPatchType, data, opts.ToPatchOptions(), "status"), emptyResult)
if obj == nil { if obj == nil {
return nil, err return emptyResult, err
} }
return obj.(*v1.CanaryConfig), err return obj.(*v1.CanaryConfig), err
} }
@@ -44,22 +44,24 @@ var environmentsKind = v1.SchemeGroupVersion.WithKind("Environment")
// Get takes name of the _environment, and returns the corresponding environment object, and an error if there is any. // Get takes name of the _environment, and returns the corresponding environment object, and an error if there is any.
func (c *FakeEnvironments) Get(ctx context.Context, name string, options metav1.GetOptions) (result *v1.Environment, err error) { func (c *FakeEnvironments) Get(ctx context.Context, name string, options metav1.GetOptions) (result *v1.Environment, err error) {
emptyResult := &v1.Environment{}
obj, err := c.Fake. obj, err := c.Fake.
Invokes(testing.NewGetAction(environmentsResource, c.ns, name), &v1.Environment{}) Invokes(testing.NewGetActionWithOptions(environmentsResource, c.ns, name, options), emptyResult)
if obj == nil { if obj == nil {
return nil, err return emptyResult, err
} }
return obj.(*v1.Environment), err return obj.(*v1.Environment), err
} }
// List takes label and field selectors, and returns the list of Environments that match those selectors. // List takes label and field selectors, and returns the list of Environments that match those selectors.
func (c *FakeEnvironments) List(ctx context.Context, opts metav1.ListOptions) (result *v1.EnvironmentList, err error) { func (c *FakeEnvironments) List(ctx context.Context, opts metav1.ListOptions) (result *v1.EnvironmentList, err error) {
emptyResult := &v1.EnvironmentList{}
obj, err := c.Fake. obj, err := c.Fake.
Invokes(testing.NewListAction(environmentsResource, environmentsKind, c.ns, opts), &v1.EnvironmentList{}) Invokes(testing.NewListActionWithOptions(environmentsResource, environmentsKind, c.ns, opts), emptyResult)
if obj == nil { if obj == nil {
return nil, err return emptyResult, err
} }
label, _, _ := testing.ExtractFromListOptions(opts) label, _, _ := testing.ExtractFromListOptions(opts)
@@ -78,28 +80,30 @@ func (c *FakeEnvironments) List(ctx context.Context, opts metav1.ListOptions) (r
// Watch returns a watch.Interface that watches the requested environments. // Watch returns a watch.Interface that watches the requested environments.
func (c *FakeEnvironments) Watch(ctx context.Context, opts metav1.ListOptions) (watch.Interface, error) { func (c *FakeEnvironments) Watch(ctx context.Context, opts metav1.ListOptions) (watch.Interface, error) {
return c.Fake. return c.Fake.
InvokesWatch(testing.NewWatchAction(environmentsResource, c.ns, opts)) InvokesWatch(testing.NewWatchActionWithOptions(environmentsResource, c.ns, opts))
} }
// Create takes the representation of a _environment and creates it. Returns the server's representation of the environment, and an error, if there is any. // Create takes the representation of a _environment and creates it. Returns the server's representation of the environment, and an error, if there is any.
func (c *FakeEnvironments) Create(ctx context.Context, _environment *v1.Environment, opts metav1.CreateOptions) (result *v1.Environment, err error) { func (c *FakeEnvironments) Create(ctx context.Context, _environment *v1.Environment, opts metav1.CreateOptions) (result *v1.Environment, err error) {
emptyResult := &v1.Environment{}
obj, err := c.Fake. obj, err := c.Fake.
Invokes(testing.NewCreateAction(environmentsResource, c.ns, _environment), &v1.Environment{}) Invokes(testing.NewCreateActionWithOptions(environmentsResource, c.ns, _environment, opts), emptyResult)
if obj == nil { if obj == nil {
return nil, err return emptyResult, err
} }
return obj.(*v1.Environment), err return obj.(*v1.Environment), err
} }
// Update takes the representation of a _environment and updates it. Returns the server's representation of the environment, and an error, if there is any. // Update takes the representation of a _environment and updates it. Returns the server's representation of the environment, and an error, if there is any.
func (c *FakeEnvironments) Update(ctx context.Context, _environment *v1.Environment, opts metav1.UpdateOptions) (result *v1.Environment, err error) { func (c *FakeEnvironments) Update(ctx context.Context, _environment *v1.Environment, opts metav1.UpdateOptions) (result *v1.Environment, err error) {
emptyResult := &v1.Environment{}
obj, err := c.Fake. obj, err := c.Fake.
Invokes(testing.NewUpdateAction(environmentsResource, c.ns, _environment), &v1.Environment{}) Invokes(testing.NewUpdateActionWithOptions(environmentsResource, c.ns, _environment, opts), emptyResult)
if obj == nil { if obj == nil {
return nil, err return emptyResult, err
} }
return obj.(*v1.Environment), err return obj.(*v1.Environment), err
} }
@@ -114,7 +118,7 @@ func (c *FakeEnvironments) Delete(ctx context.Context, name string, opts metav1.
// DeleteCollection deletes a collection of objects. // DeleteCollection deletes a collection of objects.
func (c *FakeEnvironments) DeleteCollection(ctx context.Context, opts metav1.DeleteOptions, listOpts metav1.ListOptions) error { func (c *FakeEnvironments) DeleteCollection(ctx context.Context, opts metav1.DeleteOptions, listOpts metav1.ListOptions) error {
action := testing.NewDeleteCollectionAction(environmentsResource, c.ns, listOpts) action := testing.NewDeleteCollectionActionWithOptions(environmentsResource, c.ns, opts, listOpts)
_, err := c.Fake.Invokes(action, &v1.EnvironmentList{}) _, err := c.Fake.Invokes(action, &v1.EnvironmentList{})
return err return err
@@ -122,11 +126,12 @@ func (c *FakeEnvironments) DeleteCollection(ctx context.Context, opts metav1.Del
// Patch applies the patch and returns the patched environment. // Patch applies the patch and returns the patched environment.
func (c *FakeEnvironments) Patch(ctx context.Context, name string, pt types.PatchType, data []byte, opts metav1.PatchOptions, subresources ...string) (result *v1.Environment, err error) { func (c *FakeEnvironments) Patch(ctx context.Context, name string, pt types.PatchType, data []byte, opts metav1.PatchOptions, subresources ...string) (result *v1.Environment, err error) {
emptyResult := &v1.Environment{}
obj, err := c.Fake. obj, err := c.Fake.
Invokes(testing.NewPatchSubresourceAction(environmentsResource, c.ns, name, pt, data, subresources...), &v1.Environment{}) Invokes(testing.NewPatchSubresourceActionWithOptions(environmentsResource, c.ns, name, pt, data, opts, subresources...), emptyResult)
if obj == nil { if obj == nil {
return nil, err return emptyResult, err
} }
return obj.(*v1.Environment), err return obj.(*v1.Environment), err
} }
@@ -144,11 +149,12 @@ func (c *FakeEnvironments) Apply(ctx context.Context, _environment *corev1.Envir
if name == nil { if name == nil {
return nil, fmt.Errorf("_environment.Name must be provided to Apply") return nil, fmt.Errorf("_environment.Name must be provided to Apply")
} }
emptyResult := &v1.Environment{}
obj, err := c.Fake. obj, err := c.Fake.
Invokes(testing.NewPatchSubresourceAction(environmentsResource, c.ns, *name, types.ApplyPatchType, data), &v1.Environment{}) Invokes(testing.NewPatchSubresourceActionWithOptions(environmentsResource, c.ns, *name, types.ApplyPatchType, data, opts.ToPatchOptions()), emptyResult)
if obj == nil { if obj == nil {
return nil, err return emptyResult, err
} }
return obj.(*v1.Environment), err return obj.(*v1.Environment), err
} }
@@ -44,22 +44,24 @@ var functionsKind = v1.SchemeGroupVersion.WithKind("Function")
// Get takes name of the _function, and returns the corresponding function object, and an error if there is any. // Get takes name of the _function, and returns the corresponding function object, and an error if there is any.
func (c *FakeFunctions) Get(ctx context.Context, name string, options metav1.GetOptions) (result *v1.Function, err error) { func (c *FakeFunctions) Get(ctx context.Context, name string, options metav1.GetOptions) (result *v1.Function, err error) {
emptyResult := &v1.Function{}
obj, err := c.Fake. obj, err := c.Fake.
Invokes(testing.NewGetAction(functionsResource, c.ns, name), &v1.Function{}) Invokes(testing.NewGetActionWithOptions(functionsResource, c.ns, name, options), emptyResult)
if obj == nil { if obj == nil {
return nil, err return emptyResult, err
} }
return obj.(*v1.Function), err return obj.(*v1.Function), err
} }
// List takes label and field selectors, and returns the list of Functions that match those selectors. // List takes label and field selectors, and returns the list of Functions that match those selectors.
func (c *FakeFunctions) List(ctx context.Context, opts metav1.ListOptions) (result *v1.FunctionList, err error) { func (c *FakeFunctions) List(ctx context.Context, opts metav1.ListOptions) (result *v1.FunctionList, err error) {
emptyResult := &v1.FunctionList{}
obj, err := c.Fake. obj, err := c.Fake.
Invokes(testing.NewListAction(functionsResource, functionsKind, c.ns, opts), &v1.FunctionList{}) Invokes(testing.NewListActionWithOptions(functionsResource, functionsKind, c.ns, opts), emptyResult)
if obj == nil { if obj == nil {
return nil, err return emptyResult, err
} }
label, _, _ := testing.ExtractFromListOptions(opts) label, _, _ := testing.ExtractFromListOptions(opts)
@@ -78,28 +80,30 @@ func (c *FakeFunctions) List(ctx context.Context, opts metav1.ListOptions) (resu
// Watch returns a watch.Interface that watches the requested functions. // Watch returns a watch.Interface that watches the requested functions.
func (c *FakeFunctions) Watch(ctx context.Context, opts metav1.ListOptions) (watch.Interface, error) { func (c *FakeFunctions) Watch(ctx context.Context, opts metav1.ListOptions) (watch.Interface, error) {
return c.Fake. return c.Fake.
InvokesWatch(testing.NewWatchAction(functionsResource, c.ns, opts)) InvokesWatch(testing.NewWatchActionWithOptions(functionsResource, c.ns, opts))
} }
// Create takes the representation of a _function and creates it. Returns the server's representation of the function, and an error, if there is any. // Create takes the representation of a _function and creates it. Returns the server's representation of the function, and an error, if there is any.
func (c *FakeFunctions) Create(ctx context.Context, _function *v1.Function, opts metav1.CreateOptions) (result *v1.Function, err error) { func (c *FakeFunctions) Create(ctx context.Context, _function *v1.Function, opts metav1.CreateOptions) (result *v1.Function, err error) {
emptyResult := &v1.Function{}
obj, err := c.Fake. obj, err := c.Fake.
Invokes(testing.NewCreateAction(functionsResource, c.ns, _function), &v1.Function{}) Invokes(testing.NewCreateActionWithOptions(functionsResource, c.ns, _function, opts), emptyResult)
if obj == nil { if obj == nil {
return nil, err return emptyResult, err
} }
return obj.(*v1.Function), err return obj.(*v1.Function), err
} }
// Update takes the representation of a _function and updates it. Returns the server's representation of the function, and an error, if there is any. // Update takes the representation of a _function and updates it. Returns the server's representation of the function, and an error, if there is any.
func (c *FakeFunctions) Update(ctx context.Context, _function *v1.Function, opts metav1.UpdateOptions) (result *v1.Function, err error) { func (c *FakeFunctions) Update(ctx context.Context, _function *v1.Function, opts metav1.UpdateOptions) (result *v1.Function, err error) {
emptyResult := &v1.Function{}
obj, err := c.Fake. obj, err := c.Fake.
Invokes(testing.NewUpdateAction(functionsResource, c.ns, _function), &v1.Function{}) Invokes(testing.NewUpdateActionWithOptions(functionsResource, c.ns, _function, opts), emptyResult)
if obj == nil { if obj == nil {
return nil, err return emptyResult, err
} }
return obj.(*v1.Function), err return obj.(*v1.Function), err
} }
@@ -114,7 +118,7 @@ func (c *FakeFunctions) Delete(ctx context.Context, name string, opts metav1.Del
// DeleteCollection deletes a collection of objects. // DeleteCollection deletes a collection of objects.
func (c *FakeFunctions) DeleteCollection(ctx context.Context, opts metav1.DeleteOptions, listOpts metav1.ListOptions) error { func (c *FakeFunctions) DeleteCollection(ctx context.Context, opts metav1.DeleteOptions, listOpts metav1.ListOptions) error {
action := testing.NewDeleteCollectionAction(functionsResource, c.ns, listOpts) action := testing.NewDeleteCollectionActionWithOptions(functionsResource, c.ns, opts, listOpts)
_, err := c.Fake.Invokes(action, &v1.FunctionList{}) _, err := c.Fake.Invokes(action, &v1.FunctionList{})
return err return err
@@ -122,11 +126,12 @@ func (c *FakeFunctions) DeleteCollection(ctx context.Context, opts metav1.Delete
// Patch applies the patch and returns the patched function. // Patch applies the patch and returns the patched function.
func (c *FakeFunctions) Patch(ctx context.Context, name string, pt types.PatchType, data []byte, opts metav1.PatchOptions, subresources ...string) (result *v1.Function, err error) { func (c *FakeFunctions) Patch(ctx context.Context, name string, pt types.PatchType, data []byte, opts metav1.PatchOptions, subresources ...string) (result *v1.Function, err error) {
emptyResult := &v1.Function{}
obj, err := c.Fake. obj, err := c.Fake.
Invokes(testing.NewPatchSubresourceAction(functionsResource, c.ns, name, pt, data, subresources...), &v1.Function{}) Invokes(testing.NewPatchSubresourceActionWithOptions(functionsResource, c.ns, name, pt, data, opts, subresources...), emptyResult)
if obj == nil { if obj == nil {
return nil, err return emptyResult, err
} }
return obj.(*v1.Function), err return obj.(*v1.Function), err
} }
@@ -144,11 +149,12 @@ func (c *FakeFunctions) Apply(ctx context.Context, _function *corev1.FunctionApp
if name == nil { if name == nil {
return nil, fmt.Errorf("_function.Name must be provided to Apply") return nil, fmt.Errorf("_function.Name must be provided to Apply")
} }
emptyResult := &v1.Function{}
obj, err := c.Fake. obj, err := c.Fake.
Invokes(testing.NewPatchSubresourceAction(functionsResource, c.ns, *name, types.ApplyPatchType, data), &v1.Function{}) Invokes(testing.NewPatchSubresourceActionWithOptions(functionsResource, c.ns, *name, types.ApplyPatchType, data, opts.ToPatchOptions()), emptyResult)
if obj == nil { if obj == nil {
return nil, err return emptyResult, err
} }
return obj.(*v1.Function), err return obj.(*v1.Function), err
} }
@@ -44,22 +44,24 @@ var httptriggersKind = v1.SchemeGroupVersion.WithKind("HTTPTrigger")
// Get takes name of the _hTTPTrigger, and returns the corresponding hTTPTrigger object, and an error if there is any. // Get takes name of the _hTTPTrigger, and returns the corresponding hTTPTrigger object, and an error if there is any.
func (c *FakeHTTPTriggers) Get(ctx context.Context, name string, options metav1.GetOptions) (result *v1.HTTPTrigger, err error) { func (c *FakeHTTPTriggers) Get(ctx context.Context, name string, options metav1.GetOptions) (result *v1.HTTPTrigger, err error) {
emptyResult := &v1.HTTPTrigger{}
obj, err := c.Fake. obj, err := c.Fake.
Invokes(testing.NewGetAction(httptriggersResource, c.ns, name), &v1.HTTPTrigger{}) Invokes(testing.NewGetActionWithOptions(httptriggersResource, c.ns, name, options), emptyResult)
if obj == nil { if obj == nil {
return nil, err return emptyResult, err
} }
return obj.(*v1.HTTPTrigger), err return obj.(*v1.HTTPTrigger), err
} }
// List takes label and field selectors, and returns the list of HTTPTriggers that match those selectors. // List takes label and field selectors, and returns the list of HTTPTriggers that match those selectors.
func (c *FakeHTTPTriggers) List(ctx context.Context, opts metav1.ListOptions) (result *v1.HTTPTriggerList, err error) { func (c *FakeHTTPTriggers) List(ctx context.Context, opts metav1.ListOptions) (result *v1.HTTPTriggerList, err error) {
emptyResult := &v1.HTTPTriggerList{}
obj, err := c.Fake. obj, err := c.Fake.
Invokes(testing.NewListAction(httptriggersResource, httptriggersKind, c.ns, opts), &v1.HTTPTriggerList{}) Invokes(testing.NewListActionWithOptions(httptriggersResource, httptriggersKind, c.ns, opts), emptyResult)
if obj == nil { if obj == nil {
return nil, err return emptyResult, err
} }
label, _, _ := testing.ExtractFromListOptions(opts) label, _, _ := testing.ExtractFromListOptions(opts)
@@ -78,28 +80,30 @@ func (c *FakeHTTPTriggers) List(ctx context.Context, opts metav1.ListOptions) (r
// Watch returns a watch.Interface that watches the requested hTTPTriggers. // Watch returns a watch.Interface that watches the requested hTTPTriggers.
func (c *FakeHTTPTriggers) Watch(ctx context.Context, opts metav1.ListOptions) (watch.Interface, error) { func (c *FakeHTTPTriggers) Watch(ctx context.Context, opts metav1.ListOptions) (watch.Interface, error) {
return c.Fake. return c.Fake.
InvokesWatch(testing.NewWatchAction(httptriggersResource, c.ns, opts)) InvokesWatch(testing.NewWatchActionWithOptions(httptriggersResource, c.ns, opts))
} }
// Create takes the representation of a _hTTPTrigger and creates it. Returns the server's representation of the hTTPTrigger, and an error, if there is any. // Create takes the representation of a _hTTPTrigger and creates it. Returns the server's representation of the hTTPTrigger, and an error, if there is any.
func (c *FakeHTTPTriggers) Create(ctx context.Context, _hTTPTrigger *v1.HTTPTrigger, opts metav1.CreateOptions) (result *v1.HTTPTrigger, err error) { func (c *FakeHTTPTriggers) Create(ctx context.Context, _hTTPTrigger *v1.HTTPTrigger, opts metav1.CreateOptions) (result *v1.HTTPTrigger, err error) {
emptyResult := &v1.HTTPTrigger{}
obj, err := c.Fake. obj, err := c.Fake.
Invokes(testing.NewCreateAction(httptriggersResource, c.ns, _hTTPTrigger), &v1.HTTPTrigger{}) Invokes(testing.NewCreateActionWithOptions(httptriggersResource, c.ns, _hTTPTrigger, opts), emptyResult)
if obj == nil { if obj == nil {
return nil, err return emptyResult, err
} }
return obj.(*v1.HTTPTrigger), err return obj.(*v1.HTTPTrigger), err
} }
// Update takes the representation of a _hTTPTrigger and updates it. Returns the server's representation of the hTTPTrigger, and an error, if there is any. // Update takes the representation of a _hTTPTrigger and updates it. Returns the server's representation of the hTTPTrigger, and an error, if there is any.
func (c *FakeHTTPTriggers) Update(ctx context.Context, _hTTPTrigger *v1.HTTPTrigger, opts metav1.UpdateOptions) (result *v1.HTTPTrigger, err error) { func (c *FakeHTTPTriggers) Update(ctx context.Context, _hTTPTrigger *v1.HTTPTrigger, opts metav1.UpdateOptions) (result *v1.HTTPTrigger, err error) {
emptyResult := &v1.HTTPTrigger{}
obj, err := c.Fake. obj, err := c.Fake.
Invokes(testing.NewUpdateAction(httptriggersResource, c.ns, _hTTPTrigger), &v1.HTTPTrigger{}) Invokes(testing.NewUpdateActionWithOptions(httptriggersResource, c.ns, _hTTPTrigger, opts), emptyResult)
if obj == nil { if obj == nil {
return nil, err return emptyResult, err
} }
return obj.(*v1.HTTPTrigger), err return obj.(*v1.HTTPTrigger), err
} }
@@ -114,7 +118,7 @@ func (c *FakeHTTPTriggers) Delete(ctx context.Context, name string, opts metav1.
// DeleteCollection deletes a collection of objects. // DeleteCollection deletes a collection of objects.
func (c *FakeHTTPTriggers) DeleteCollection(ctx context.Context, opts metav1.DeleteOptions, listOpts metav1.ListOptions) error { func (c *FakeHTTPTriggers) DeleteCollection(ctx context.Context, opts metav1.DeleteOptions, listOpts metav1.ListOptions) error {
action := testing.NewDeleteCollectionAction(httptriggersResource, c.ns, listOpts) action := testing.NewDeleteCollectionActionWithOptions(httptriggersResource, c.ns, opts, listOpts)
_, err := c.Fake.Invokes(action, &v1.HTTPTriggerList{}) _, err := c.Fake.Invokes(action, &v1.HTTPTriggerList{})
return err return err
@@ -122,11 +126,12 @@ func (c *FakeHTTPTriggers) DeleteCollection(ctx context.Context, opts metav1.Del
// Patch applies the patch and returns the patched hTTPTrigger. // Patch applies the patch and returns the patched hTTPTrigger.
func (c *FakeHTTPTriggers) Patch(ctx context.Context, name string, pt types.PatchType, data []byte, opts metav1.PatchOptions, subresources ...string) (result *v1.HTTPTrigger, err error) { func (c *FakeHTTPTriggers) Patch(ctx context.Context, name string, pt types.PatchType, data []byte, opts metav1.PatchOptions, subresources ...string) (result *v1.HTTPTrigger, err error) {
emptyResult := &v1.HTTPTrigger{}
obj, err := c.Fake. obj, err := c.Fake.
Invokes(testing.NewPatchSubresourceAction(httptriggersResource, c.ns, name, pt, data, subresources...), &v1.HTTPTrigger{}) Invokes(testing.NewPatchSubresourceActionWithOptions(httptriggersResource, c.ns, name, pt, data, opts, subresources...), emptyResult)
if obj == nil { if obj == nil {
return nil, err return emptyResult, err
} }
return obj.(*v1.HTTPTrigger), err return obj.(*v1.HTTPTrigger), err
} }
@@ -144,11 +149,12 @@ func (c *FakeHTTPTriggers) Apply(ctx context.Context, _hTTPTrigger *corev1.HTTPT
if name == nil { if name == nil {
return nil, fmt.Errorf("_hTTPTrigger.Name must be provided to Apply") return nil, fmt.Errorf("_hTTPTrigger.Name must be provided to Apply")
} }
emptyResult := &v1.HTTPTrigger{}
obj, err := c.Fake. obj, err := c.Fake.
Invokes(testing.NewPatchSubresourceAction(httptriggersResource, c.ns, *name, types.ApplyPatchType, data), &v1.HTTPTrigger{}) Invokes(testing.NewPatchSubresourceActionWithOptions(httptriggersResource, c.ns, *name, types.ApplyPatchType, data, opts.ToPatchOptions()), emptyResult)
if obj == nil { if obj == nil {
return nil, err return emptyResult, err
} }
return obj.(*v1.HTTPTrigger), err return obj.(*v1.HTTPTrigger), err
} }
@@ -44,22 +44,24 @@ var kuberneteswatchtriggersKind = v1.SchemeGroupVersion.WithKind("KubernetesWatc
// Get takes name of the _kubernetesWatchTrigger, and returns the corresponding kubernetesWatchTrigger object, and an error if there is any. // Get takes name of the _kubernetesWatchTrigger, and returns the corresponding kubernetesWatchTrigger object, and an error if there is any.
func (c *FakeKubernetesWatchTriggers) Get(ctx context.Context, name string, options metav1.GetOptions) (result *v1.KubernetesWatchTrigger, err error) { func (c *FakeKubernetesWatchTriggers) Get(ctx context.Context, name string, options metav1.GetOptions) (result *v1.KubernetesWatchTrigger, err error) {
emptyResult := &v1.KubernetesWatchTrigger{}
obj, err := c.Fake. obj, err := c.Fake.
Invokes(testing.NewGetAction(kuberneteswatchtriggersResource, c.ns, name), &v1.KubernetesWatchTrigger{}) Invokes(testing.NewGetActionWithOptions(kuberneteswatchtriggersResource, c.ns, name, options), emptyResult)
if obj == nil { if obj == nil {
return nil, err return emptyResult, err
} }
return obj.(*v1.KubernetesWatchTrigger), err return obj.(*v1.KubernetesWatchTrigger), err
} }
// List takes label and field selectors, and returns the list of KubernetesWatchTriggers that match those selectors. // List takes label and field selectors, and returns the list of KubernetesWatchTriggers that match those selectors.
func (c *FakeKubernetesWatchTriggers) List(ctx context.Context, opts metav1.ListOptions) (result *v1.KubernetesWatchTriggerList, err error) { func (c *FakeKubernetesWatchTriggers) List(ctx context.Context, opts metav1.ListOptions) (result *v1.KubernetesWatchTriggerList, err error) {
emptyResult := &v1.KubernetesWatchTriggerList{}
obj, err := c.Fake. obj, err := c.Fake.
Invokes(testing.NewListAction(kuberneteswatchtriggersResource, kuberneteswatchtriggersKind, c.ns, opts), &v1.KubernetesWatchTriggerList{}) Invokes(testing.NewListActionWithOptions(kuberneteswatchtriggersResource, kuberneteswatchtriggersKind, c.ns, opts), emptyResult)
if obj == nil { if obj == nil {
return nil, err return emptyResult, err
} }
label, _, _ := testing.ExtractFromListOptions(opts) label, _, _ := testing.ExtractFromListOptions(opts)
@@ -78,28 +80,30 @@ func (c *FakeKubernetesWatchTriggers) List(ctx context.Context, opts metav1.List
// Watch returns a watch.Interface that watches the requested kubernetesWatchTriggers. // Watch returns a watch.Interface that watches the requested kubernetesWatchTriggers.
func (c *FakeKubernetesWatchTriggers) Watch(ctx context.Context, opts metav1.ListOptions) (watch.Interface, error) { func (c *FakeKubernetesWatchTriggers) Watch(ctx context.Context, opts metav1.ListOptions) (watch.Interface, error) {
return c.Fake. return c.Fake.
InvokesWatch(testing.NewWatchAction(kuberneteswatchtriggersResource, c.ns, opts)) InvokesWatch(testing.NewWatchActionWithOptions(kuberneteswatchtriggersResource, c.ns, opts))
} }
// Create takes the representation of a _kubernetesWatchTrigger and creates it. Returns the server's representation of the kubernetesWatchTrigger, and an error, if there is any. // Create takes the representation of a _kubernetesWatchTrigger and creates it. Returns the server's representation of the kubernetesWatchTrigger, and an error, if there is any.
func (c *FakeKubernetesWatchTriggers) Create(ctx context.Context, _kubernetesWatchTrigger *v1.KubernetesWatchTrigger, opts metav1.CreateOptions) (result *v1.KubernetesWatchTrigger, err error) { func (c *FakeKubernetesWatchTriggers) Create(ctx context.Context, _kubernetesWatchTrigger *v1.KubernetesWatchTrigger, opts metav1.CreateOptions) (result *v1.KubernetesWatchTrigger, err error) {
emptyResult := &v1.KubernetesWatchTrigger{}
obj, err := c.Fake. obj, err := c.Fake.
Invokes(testing.NewCreateAction(kuberneteswatchtriggersResource, c.ns, _kubernetesWatchTrigger), &v1.KubernetesWatchTrigger{}) Invokes(testing.NewCreateActionWithOptions(kuberneteswatchtriggersResource, c.ns, _kubernetesWatchTrigger, opts), emptyResult)
if obj == nil { if obj == nil {
return nil, err return emptyResult, err
} }
return obj.(*v1.KubernetesWatchTrigger), err return obj.(*v1.KubernetesWatchTrigger), err
} }
// Update takes the representation of a _kubernetesWatchTrigger and updates it. Returns the server's representation of the kubernetesWatchTrigger, and an error, if there is any. // Update takes the representation of a _kubernetesWatchTrigger and updates it. Returns the server's representation of the kubernetesWatchTrigger, and an error, if there is any.
func (c *FakeKubernetesWatchTriggers) Update(ctx context.Context, _kubernetesWatchTrigger *v1.KubernetesWatchTrigger, opts metav1.UpdateOptions) (result *v1.KubernetesWatchTrigger, err error) { func (c *FakeKubernetesWatchTriggers) Update(ctx context.Context, _kubernetesWatchTrigger *v1.KubernetesWatchTrigger, opts metav1.UpdateOptions) (result *v1.KubernetesWatchTrigger, err error) {
emptyResult := &v1.KubernetesWatchTrigger{}
obj, err := c.Fake. obj, err := c.Fake.
Invokes(testing.NewUpdateAction(kuberneteswatchtriggersResource, c.ns, _kubernetesWatchTrigger), &v1.KubernetesWatchTrigger{}) Invokes(testing.NewUpdateActionWithOptions(kuberneteswatchtriggersResource, c.ns, _kubernetesWatchTrigger, opts), emptyResult)
if obj == nil { if obj == nil {
return nil, err return emptyResult, err
} }
return obj.(*v1.KubernetesWatchTrigger), err return obj.(*v1.KubernetesWatchTrigger), err
} }
@@ -114,7 +118,7 @@ func (c *FakeKubernetesWatchTriggers) Delete(ctx context.Context, name string, o
// DeleteCollection deletes a collection of objects. // DeleteCollection deletes a collection of objects.
func (c *FakeKubernetesWatchTriggers) DeleteCollection(ctx context.Context, opts metav1.DeleteOptions, listOpts metav1.ListOptions) error { func (c *FakeKubernetesWatchTriggers) DeleteCollection(ctx context.Context, opts metav1.DeleteOptions, listOpts metav1.ListOptions) error {
action := testing.NewDeleteCollectionAction(kuberneteswatchtriggersResource, c.ns, listOpts) action := testing.NewDeleteCollectionActionWithOptions(kuberneteswatchtriggersResource, c.ns, opts, listOpts)
_, err := c.Fake.Invokes(action, &v1.KubernetesWatchTriggerList{}) _, err := c.Fake.Invokes(action, &v1.KubernetesWatchTriggerList{})
return err return err
@@ -122,11 +126,12 @@ func (c *FakeKubernetesWatchTriggers) DeleteCollection(ctx context.Context, opts
// Patch applies the patch and returns the patched kubernetesWatchTrigger. // Patch applies the patch and returns the patched kubernetesWatchTrigger.
func (c *FakeKubernetesWatchTriggers) Patch(ctx context.Context, name string, pt types.PatchType, data []byte, opts metav1.PatchOptions, subresources ...string) (result *v1.KubernetesWatchTrigger, err error) { func (c *FakeKubernetesWatchTriggers) Patch(ctx context.Context, name string, pt types.PatchType, data []byte, opts metav1.PatchOptions, subresources ...string) (result *v1.KubernetesWatchTrigger, err error) {
emptyResult := &v1.KubernetesWatchTrigger{}
obj, err := c.Fake. obj, err := c.Fake.
Invokes(testing.NewPatchSubresourceAction(kuberneteswatchtriggersResource, c.ns, name, pt, data, subresources...), &v1.KubernetesWatchTrigger{}) Invokes(testing.NewPatchSubresourceActionWithOptions(kuberneteswatchtriggersResource, c.ns, name, pt, data, opts, subresources...), emptyResult)
if obj == nil { if obj == nil {
return nil, err return emptyResult, err
} }
return obj.(*v1.KubernetesWatchTrigger), err return obj.(*v1.KubernetesWatchTrigger), err
} }
@@ -144,11 +149,12 @@ func (c *FakeKubernetesWatchTriggers) Apply(ctx context.Context, _kubernetesWatc
if name == nil { if name == nil {
return nil, fmt.Errorf("_kubernetesWatchTrigger.Name must be provided to Apply") return nil, fmt.Errorf("_kubernetesWatchTrigger.Name must be provided to Apply")
} }
emptyResult := &v1.KubernetesWatchTrigger{}
obj, err := c.Fake. obj, err := c.Fake.
Invokes(testing.NewPatchSubresourceAction(kuberneteswatchtriggersResource, c.ns, *name, types.ApplyPatchType, data), &v1.KubernetesWatchTrigger{}) Invokes(testing.NewPatchSubresourceActionWithOptions(kuberneteswatchtriggersResource, c.ns, *name, types.ApplyPatchType, data, opts.ToPatchOptions()), emptyResult)
if obj == nil { if obj == nil {
return nil, err return emptyResult, err
} }
return obj.(*v1.KubernetesWatchTrigger), err return obj.(*v1.KubernetesWatchTrigger), err
} }
@@ -44,22 +44,24 @@ var messagequeuetriggersKind = v1.SchemeGroupVersion.WithKind("MessageQueueTrigg
// Get takes name of the _messageQueueTrigger, and returns the corresponding messageQueueTrigger object, and an error if there is any. // Get takes name of the _messageQueueTrigger, and returns the corresponding messageQueueTrigger object, and an error if there is any.
func (c *FakeMessageQueueTriggers) Get(ctx context.Context, name string, options metav1.GetOptions) (result *v1.MessageQueueTrigger, err error) { func (c *FakeMessageQueueTriggers) Get(ctx context.Context, name string, options metav1.GetOptions) (result *v1.MessageQueueTrigger, err error) {
emptyResult := &v1.MessageQueueTrigger{}
obj, err := c.Fake. obj, err := c.Fake.
Invokes(testing.NewGetAction(messagequeuetriggersResource, c.ns, name), &v1.MessageQueueTrigger{}) Invokes(testing.NewGetActionWithOptions(messagequeuetriggersResource, c.ns, name, options), emptyResult)
if obj == nil { if obj == nil {
return nil, err return emptyResult, err
} }
return obj.(*v1.MessageQueueTrigger), err return obj.(*v1.MessageQueueTrigger), err
} }
// List takes label and field selectors, and returns the list of MessageQueueTriggers that match those selectors. // List takes label and field selectors, and returns the list of MessageQueueTriggers that match those selectors.
func (c *FakeMessageQueueTriggers) List(ctx context.Context, opts metav1.ListOptions) (result *v1.MessageQueueTriggerList, err error) { func (c *FakeMessageQueueTriggers) List(ctx context.Context, opts metav1.ListOptions) (result *v1.MessageQueueTriggerList, err error) {
emptyResult := &v1.MessageQueueTriggerList{}
obj, err := c.Fake. obj, err := c.Fake.
Invokes(testing.NewListAction(messagequeuetriggersResource, messagequeuetriggersKind, c.ns, opts), &v1.MessageQueueTriggerList{}) Invokes(testing.NewListActionWithOptions(messagequeuetriggersResource, messagequeuetriggersKind, c.ns, opts), emptyResult)
if obj == nil { if obj == nil {
return nil, err return emptyResult, err
} }
label, _, _ := testing.ExtractFromListOptions(opts) label, _, _ := testing.ExtractFromListOptions(opts)
@@ -78,28 +80,30 @@ func (c *FakeMessageQueueTriggers) List(ctx context.Context, opts metav1.ListOpt
// Watch returns a watch.Interface that watches the requested messageQueueTriggers. // Watch returns a watch.Interface that watches the requested messageQueueTriggers.
func (c *FakeMessageQueueTriggers) Watch(ctx context.Context, opts metav1.ListOptions) (watch.Interface, error) { func (c *FakeMessageQueueTriggers) Watch(ctx context.Context, opts metav1.ListOptions) (watch.Interface, error) {
return c.Fake. return c.Fake.
InvokesWatch(testing.NewWatchAction(messagequeuetriggersResource, c.ns, opts)) InvokesWatch(testing.NewWatchActionWithOptions(messagequeuetriggersResource, c.ns, opts))
} }
// Create takes the representation of a _messageQueueTrigger and creates it. Returns the server's representation of the messageQueueTrigger, and an error, if there is any. // Create takes the representation of a _messageQueueTrigger and creates it. Returns the server's representation of the messageQueueTrigger, and an error, if there is any.
func (c *FakeMessageQueueTriggers) Create(ctx context.Context, _messageQueueTrigger *v1.MessageQueueTrigger, opts metav1.CreateOptions) (result *v1.MessageQueueTrigger, err error) { func (c *FakeMessageQueueTriggers) Create(ctx context.Context, _messageQueueTrigger *v1.MessageQueueTrigger, opts metav1.CreateOptions) (result *v1.MessageQueueTrigger, err error) {
emptyResult := &v1.MessageQueueTrigger{}
obj, err := c.Fake. obj, err := c.Fake.
Invokes(testing.NewCreateAction(messagequeuetriggersResource, c.ns, _messageQueueTrigger), &v1.MessageQueueTrigger{}) Invokes(testing.NewCreateActionWithOptions(messagequeuetriggersResource, c.ns, _messageQueueTrigger, opts), emptyResult)
if obj == nil { if obj == nil {
return nil, err return emptyResult, err
} }
return obj.(*v1.MessageQueueTrigger), err return obj.(*v1.MessageQueueTrigger), err
} }
// Update takes the representation of a _messageQueueTrigger and updates it. Returns the server's representation of the messageQueueTrigger, and an error, if there is any. // Update takes the representation of a _messageQueueTrigger and updates it. Returns the server's representation of the messageQueueTrigger, and an error, if there is any.
func (c *FakeMessageQueueTriggers) Update(ctx context.Context, _messageQueueTrigger *v1.MessageQueueTrigger, opts metav1.UpdateOptions) (result *v1.MessageQueueTrigger, err error) { func (c *FakeMessageQueueTriggers) Update(ctx context.Context, _messageQueueTrigger *v1.MessageQueueTrigger, opts metav1.UpdateOptions) (result *v1.MessageQueueTrigger, err error) {
emptyResult := &v1.MessageQueueTrigger{}
obj, err := c.Fake. obj, err := c.Fake.
Invokes(testing.NewUpdateAction(messagequeuetriggersResource, c.ns, _messageQueueTrigger), &v1.MessageQueueTrigger{}) Invokes(testing.NewUpdateActionWithOptions(messagequeuetriggersResource, c.ns, _messageQueueTrigger, opts), emptyResult)
if obj == nil { if obj == nil {
return nil, err return emptyResult, err
} }
return obj.(*v1.MessageQueueTrigger), err return obj.(*v1.MessageQueueTrigger), err
} }
@@ -114,7 +118,7 @@ func (c *FakeMessageQueueTriggers) Delete(ctx context.Context, name string, opts
// DeleteCollection deletes a collection of objects. // DeleteCollection deletes a collection of objects.
func (c *FakeMessageQueueTriggers) DeleteCollection(ctx context.Context, opts metav1.DeleteOptions, listOpts metav1.ListOptions) error { func (c *FakeMessageQueueTriggers) DeleteCollection(ctx context.Context, opts metav1.DeleteOptions, listOpts metav1.ListOptions) error {
action := testing.NewDeleteCollectionAction(messagequeuetriggersResource, c.ns, listOpts) action := testing.NewDeleteCollectionActionWithOptions(messagequeuetriggersResource, c.ns, opts, listOpts)
_, err := c.Fake.Invokes(action, &v1.MessageQueueTriggerList{}) _, err := c.Fake.Invokes(action, &v1.MessageQueueTriggerList{})
return err return err
@@ -122,11 +126,12 @@ func (c *FakeMessageQueueTriggers) DeleteCollection(ctx context.Context, opts me
// Patch applies the patch and returns the patched messageQueueTrigger. // Patch applies the patch and returns the patched messageQueueTrigger.
func (c *FakeMessageQueueTriggers) Patch(ctx context.Context, name string, pt types.PatchType, data []byte, opts metav1.PatchOptions, subresources ...string) (result *v1.MessageQueueTrigger, err error) { func (c *FakeMessageQueueTriggers) Patch(ctx context.Context, name string, pt types.PatchType, data []byte, opts metav1.PatchOptions, subresources ...string) (result *v1.MessageQueueTrigger, err error) {
emptyResult := &v1.MessageQueueTrigger{}
obj, err := c.Fake. obj, err := c.Fake.
Invokes(testing.NewPatchSubresourceAction(messagequeuetriggersResource, c.ns, name, pt, data, subresources...), &v1.MessageQueueTrigger{}) Invokes(testing.NewPatchSubresourceActionWithOptions(messagequeuetriggersResource, c.ns, name, pt, data, opts, subresources...), emptyResult)
if obj == nil { if obj == nil {
return nil, err return emptyResult, err
} }
return obj.(*v1.MessageQueueTrigger), err return obj.(*v1.MessageQueueTrigger), err
} }
@@ -144,11 +149,12 @@ func (c *FakeMessageQueueTriggers) Apply(ctx context.Context, _messageQueueTrigg
if name == nil { if name == nil {
return nil, fmt.Errorf("_messageQueueTrigger.Name must be provided to Apply") return nil, fmt.Errorf("_messageQueueTrigger.Name must be provided to Apply")
} }
emptyResult := &v1.MessageQueueTrigger{}
obj, err := c.Fake. obj, err := c.Fake.
Invokes(testing.NewPatchSubresourceAction(messagequeuetriggersResource, c.ns, *name, types.ApplyPatchType, data), &v1.MessageQueueTrigger{}) Invokes(testing.NewPatchSubresourceActionWithOptions(messagequeuetriggersResource, c.ns, *name, types.ApplyPatchType, data, opts.ToPatchOptions()), emptyResult)
if obj == nil { if obj == nil {
return nil, err return emptyResult, err
} }
return obj.(*v1.MessageQueueTrigger), err return obj.(*v1.MessageQueueTrigger), err
} }
@@ -44,22 +44,24 @@ var packagesKind = v1.SchemeGroupVersion.WithKind("Package")
// Get takes name of the _package, and returns the corresponding package object, and an error if there is any. // Get takes name of the _package, and returns the corresponding package object, and an error if there is any.
func (c *FakePackages) Get(ctx context.Context, name string, options metav1.GetOptions) (result *v1.Package, err error) { func (c *FakePackages) Get(ctx context.Context, name string, options metav1.GetOptions) (result *v1.Package, err error) {
emptyResult := &v1.Package{}
obj, err := c.Fake. obj, err := c.Fake.
Invokes(testing.NewGetAction(packagesResource, c.ns, name), &v1.Package{}) Invokes(testing.NewGetActionWithOptions(packagesResource, c.ns, name, options), emptyResult)
if obj == nil { if obj == nil {
return nil, err return emptyResult, err
} }
return obj.(*v1.Package), err return obj.(*v1.Package), err
} }
// List takes label and field selectors, and returns the list of Packages that match those selectors. // List takes label and field selectors, and returns the list of Packages that match those selectors.
func (c *FakePackages) List(ctx context.Context, opts metav1.ListOptions) (result *v1.PackageList, err error) { func (c *FakePackages) List(ctx context.Context, opts metav1.ListOptions) (result *v1.PackageList, err error) {
emptyResult := &v1.PackageList{}
obj, err := c.Fake. obj, err := c.Fake.
Invokes(testing.NewListAction(packagesResource, packagesKind, c.ns, opts), &v1.PackageList{}) Invokes(testing.NewListActionWithOptions(packagesResource, packagesKind, c.ns, opts), emptyResult)
if obj == nil { if obj == nil {
return nil, err return emptyResult, err
} }
label, _, _ := testing.ExtractFromListOptions(opts) label, _, _ := testing.ExtractFromListOptions(opts)
@@ -78,40 +80,43 @@ func (c *FakePackages) List(ctx context.Context, opts metav1.ListOptions) (resul
// Watch returns a watch.Interface that watches the requested packages. // Watch returns a watch.Interface that watches the requested packages.
func (c *FakePackages) Watch(ctx context.Context, opts metav1.ListOptions) (watch.Interface, error) { func (c *FakePackages) Watch(ctx context.Context, opts metav1.ListOptions) (watch.Interface, error) {
return c.Fake. return c.Fake.
InvokesWatch(testing.NewWatchAction(packagesResource, c.ns, opts)) InvokesWatch(testing.NewWatchActionWithOptions(packagesResource, c.ns, opts))
} }
// Create takes the representation of a _package and creates it. Returns the server's representation of the package, and an error, if there is any. // Create takes the representation of a _package and creates it. Returns the server's representation of the package, and an error, if there is any.
func (c *FakePackages) Create(ctx context.Context, _package *v1.Package, opts metav1.CreateOptions) (result *v1.Package, err error) { func (c *FakePackages) Create(ctx context.Context, _package *v1.Package, opts metav1.CreateOptions) (result *v1.Package, err error) {
emptyResult := &v1.Package{}
obj, err := c.Fake. obj, err := c.Fake.
Invokes(testing.NewCreateAction(packagesResource, c.ns, _package), &v1.Package{}) Invokes(testing.NewCreateActionWithOptions(packagesResource, c.ns, _package, opts), emptyResult)
if obj == nil { if obj == nil {
return nil, err return emptyResult, err
} }
return obj.(*v1.Package), err return obj.(*v1.Package), err
} }
// Update takes the representation of a _package and updates it. Returns the server's representation of the package, and an error, if there is any. // Update takes the representation of a _package and updates it. Returns the server's representation of the package, and an error, if there is any.
func (c *FakePackages) Update(ctx context.Context, _package *v1.Package, opts metav1.UpdateOptions) (result *v1.Package, err error) { func (c *FakePackages) Update(ctx context.Context, _package *v1.Package, opts metav1.UpdateOptions) (result *v1.Package, err error) {
emptyResult := &v1.Package{}
obj, err := c.Fake. obj, err := c.Fake.
Invokes(testing.NewUpdateAction(packagesResource, c.ns, _package), &v1.Package{}) Invokes(testing.NewUpdateActionWithOptions(packagesResource, c.ns, _package, opts), emptyResult)
if obj == nil { if obj == nil {
return nil, err return emptyResult, err
} }
return obj.(*v1.Package), err return obj.(*v1.Package), err
} }
// UpdateStatus was generated because the type contains a Status member. // UpdateStatus was generated because the type contains a Status member.
// Add a +genclient:noStatus comment above the type to avoid generating UpdateStatus(). // Add a +genclient:noStatus comment above the type to avoid generating UpdateStatus().
func (c *FakePackages) UpdateStatus(ctx context.Context, _package *v1.Package, opts metav1.UpdateOptions) (*v1.Package, error) { func (c *FakePackages) UpdateStatus(ctx context.Context, _package *v1.Package, opts metav1.UpdateOptions) (result *v1.Package, err error) {
emptyResult := &v1.Package{}
obj, err := c.Fake. obj, err := c.Fake.
Invokes(testing.NewUpdateSubresourceAction(packagesResource, "status", c.ns, _package), &v1.Package{}) Invokes(testing.NewUpdateSubresourceActionWithOptions(packagesResource, "status", c.ns, _package, opts), emptyResult)
if obj == nil { if obj == nil {
return nil, err return emptyResult, err
} }
return obj.(*v1.Package), err return obj.(*v1.Package), err
} }
@@ -126,7 +131,7 @@ func (c *FakePackages) Delete(ctx context.Context, name string, opts metav1.Dele
// DeleteCollection deletes a collection of objects. // DeleteCollection deletes a collection of objects.
func (c *FakePackages) DeleteCollection(ctx context.Context, opts metav1.DeleteOptions, listOpts metav1.ListOptions) error { func (c *FakePackages) DeleteCollection(ctx context.Context, opts metav1.DeleteOptions, listOpts metav1.ListOptions) error {
action := testing.NewDeleteCollectionAction(packagesResource, c.ns, listOpts) action := testing.NewDeleteCollectionActionWithOptions(packagesResource, c.ns, opts, listOpts)
_, err := c.Fake.Invokes(action, &v1.PackageList{}) _, err := c.Fake.Invokes(action, &v1.PackageList{})
return err return err
@@ -134,11 +139,12 @@ func (c *FakePackages) DeleteCollection(ctx context.Context, opts metav1.DeleteO
// Patch applies the patch and returns the patched package. // Patch applies the patch and returns the patched package.
func (c *FakePackages) Patch(ctx context.Context, name string, pt types.PatchType, data []byte, opts metav1.PatchOptions, subresources ...string) (result *v1.Package, err error) { func (c *FakePackages) Patch(ctx context.Context, name string, pt types.PatchType, data []byte, opts metav1.PatchOptions, subresources ...string) (result *v1.Package, err error) {
emptyResult := &v1.Package{}
obj, err := c.Fake. obj, err := c.Fake.
Invokes(testing.NewPatchSubresourceAction(packagesResource, c.ns, name, pt, data, subresources...), &v1.Package{}) Invokes(testing.NewPatchSubresourceActionWithOptions(packagesResource, c.ns, name, pt, data, opts, subresources...), emptyResult)
if obj == nil { if obj == nil {
return nil, err return emptyResult, err
} }
return obj.(*v1.Package), err return obj.(*v1.Package), err
} }
@@ -156,11 +162,12 @@ func (c *FakePackages) Apply(ctx context.Context, _package *corev1.PackageApplyC
if name == nil { if name == nil {
return nil, fmt.Errorf("_package.Name must be provided to Apply") return nil, fmt.Errorf("_package.Name must be provided to Apply")
} }
emptyResult := &v1.Package{}
obj, err := c.Fake. obj, err := c.Fake.
Invokes(testing.NewPatchSubresourceAction(packagesResource, c.ns, *name, types.ApplyPatchType, data), &v1.Package{}) Invokes(testing.NewPatchSubresourceActionWithOptions(packagesResource, c.ns, *name, types.ApplyPatchType, data, opts.ToPatchOptions()), emptyResult)
if obj == nil { if obj == nil {
return nil, err return emptyResult, err
} }
return obj.(*v1.Package), err return obj.(*v1.Package), err
} }
@@ -179,11 +186,12 @@ func (c *FakePackages) ApplyStatus(ctx context.Context, _package *corev1.Package
if name == nil { if name == nil {
return nil, fmt.Errorf("_package.Name must be provided to Apply") return nil, fmt.Errorf("_package.Name must be provided to Apply")
} }
emptyResult := &v1.Package{}
obj, err := c.Fake. obj, err := c.Fake.
Invokes(testing.NewPatchSubresourceAction(packagesResource, c.ns, *name, types.ApplyPatchType, data, "status"), &v1.Package{}) Invokes(testing.NewPatchSubresourceActionWithOptions(packagesResource, c.ns, *name, types.ApplyPatchType, data, opts.ToPatchOptions(), "status"), emptyResult)
if obj == nil { if obj == nil {
return nil, err return emptyResult, err
} }
return obj.(*v1.Package), err return obj.(*v1.Package), err
} }
@@ -44,22 +44,24 @@ var timetriggersKind = v1.SchemeGroupVersion.WithKind("TimeTrigger")
// Get takes name of the _timeTrigger, and returns the corresponding timeTrigger object, and an error if there is any. // Get takes name of the _timeTrigger, and returns the corresponding timeTrigger object, and an error if there is any.
func (c *FakeTimeTriggers) Get(ctx context.Context, name string, options metav1.GetOptions) (result *v1.TimeTrigger, err error) { func (c *FakeTimeTriggers) Get(ctx context.Context, name string, options metav1.GetOptions) (result *v1.TimeTrigger, err error) {
emptyResult := &v1.TimeTrigger{}
obj, err := c.Fake. obj, err := c.Fake.
Invokes(testing.NewGetAction(timetriggersResource, c.ns, name), &v1.TimeTrigger{}) Invokes(testing.NewGetActionWithOptions(timetriggersResource, c.ns, name, options), emptyResult)
if obj == nil { if obj == nil {
return nil, err return emptyResult, err
} }
return obj.(*v1.TimeTrigger), err return obj.(*v1.TimeTrigger), err
} }
// List takes label and field selectors, and returns the list of TimeTriggers that match those selectors. // List takes label and field selectors, and returns the list of TimeTriggers that match those selectors.
func (c *FakeTimeTriggers) List(ctx context.Context, opts metav1.ListOptions) (result *v1.TimeTriggerList, err error) { func (c *FakeTimeTriggers) List(ctx context.Context, opts metav1.ListOptions) (result *v1.TimeTriggerList, err error) {
emptyResult := &v1.TimeTriggerList{}
obj, err := c.Fake. obj, err := c.Fake.
Invokes(testing.NewListAction(timetriggersResource, timetriggersKind, c.ns, opts), &v1.TimeTriggerList{}) Invokes(testing.NewListActionWithOptions(timetriggersResource, timetriggersKind, c.ns, opts), emptyResult)
if obj == nil { if obj == nil {
return nil, err return emptyResult, err
} }
label, _, _ := testing.ExtractFromListOptions(opts) label, _, _ := testing.ExtractFromListOptions(opts)
@@ -78,28 +80,30 @@ func (c *FakeTimeTriggers) List(ctx context.Context, opts metav1.ListOptions) (r
// Watch returns a watch.Interface that watches the requested timeTriggers. // Watch returns a watch.Interface that watches the requested timeTriggers.
func (c *FakeTimeTriggers) Watch(ctx context.Context, opts metav1.ListOptions) (watch.Interface, error) { func (c *FakeTimeTriggers) Watch(ctx context.Context, opts metav1.ListOptions) (watch.Interface, error) {
return c.Fake. return c.Fake.
InvokesWatch(testing.NewWatchAction(timetriggersResource, c.ns, opts)) InvokesWatch(testing.NewWatchActionWithOptions(timetriggersResource, c.ns, opts))
} }
// Create takes the representation of a _timeTrigger and creates it. Returns the server's representation of the timeTrigger, and an error, if there is any. // Create takes the representation of a _timeTrigger and creates it. Returns the server's representation of the timeTrigger, and an error, if there is any.
func (c *FakeTimeTriggers) Create(ctx context.Context, _timeTrigger *v1.TimeTrigger, opts metav1.CreateOptions) (result *v1.TimeTrigger, err error) { func (c *FakeTimeTriggers) Create(ctx context.Context, _timeTrigger *v1.TimeTrigger, opts metav1.CreateOptions) (result *v1.TimeTrigger, err error) {
emptyResult := &v1.TimeTrigger{}
obj, err := c.Fake. obj, err := c.Fake.
Invokes(testing.NewCreateAction(timetriggersResource, c.ns, _timeTrigger), &v1.TimeTrigger{}) Invokes(testing.NewCreateActionWithOptions(timetriggersResource, c.ns, _timeTrigger, opts), emptyResult)
if obj == nil { if obj == nil {
return nil, err return emptyResult, err
} }
return obj.(*v1.TimeTrigger), err return obj.(*v1.TimeTrigger), err
} }
// Update takes the representation of a _timeTrigger and updates it. Returns the server's representation of the timeTrigger, and an error, if there is any. // Update takes the representation of a _timeTrigger and updates it. Returns the server's representation of the timeTrigger, and an error, if there is any.
func (c *FakeTimeTriggers) Update(ctx context.Context, _timeTrigger *v1.TimeTrigger, opts metav1.UpdateOptions) (result *v1.TimeTrigger, err error) { func (c *FakeTimeTriggers) Update(ctx context.Context, _timeTrigger *v1.TimeTrigger, opts metav1.UpdateOptions) (result *v1.TimeTrigger, err error) {
emptyResult := &v1.TimeTrigger{}
obj, err := c.Fake. obj, err := c.Fake.
Invokes(testing.NewUpdateAction(timetriggersResource, c.ns, _timeTrigger), &v1.TimeTrigger{}) Invokes(testing.NewUpdateActionWithOptions(timetriggersResource, c.ns, _timeTrigger, opts), emptyResult)
if obj == nil { if obj == nil {
return nil, err return emptyResult, err
} }
return obj.(*v1.TimeTrigger), err return obj.(*v1.TimeTrigger), err
} }
@@ -114,7 +118,7 @@ func (c *FakeTimeTriggers) Delete(ctx context.Context, name string, opts metav1.
// DeleteCollection deletes a collection of objects. // DeleteCollection deletes a collection of objects.
func (c *FakeTimeTriggers) DeleteCollection(ctx context.Context, opts metav1.DeleteOptions, listOpts metav1.ListOptions) error { func (c *FakeTimeTriggers) DeleteCollection(ctx context.Context, opts metav1.DeleteOptions, listOpts metav1.ListOptions) error {
action := testing.NewDeleteCollectionAction(timetriggersResource, c.ns, listOpts) action := testing.NewDeleteCollectionActionWithOptions(timetriggersResource, c.ns, opts, listOpts)
_, err := c.Fake.Invokes(action, &v1.TimeTriggerList{}) _, err := c.Fake.Invokes(action, &v1.TimeTriggerList{})
return err return err
@@ -122,11 +126,12 @@ func (c *FakeTimeTriggers) DeleteCollection(ctx context.Context, opts metav1.Del
// Patch applies the patch and returns the patched timeTrigger. // Patch applies the patch and returns the patched timeTrigger.
func (c *FakeTimeTriggers) Patch(ctx context.Context, name string, pt types.PatchType, data []byte, opts metav1.PatchOptions, subresources ...string) (result *v1.TimeTrigger, err error) { func (c *FakeTimeTriggers) Patch(ctx context.Context, name string, pt types.PatchType, data []byte, opts metav1.PatchOptions, subresources ...string) (result *v1.TimeTrigger, err error) {
emptyResult := &v1.TimeTrigger{}
obj, err := c.Fake. obj, err := c.Fake.
Invokes(testing.NewPatchSubresourceAction(timetriggersResource, c.ns, name, pt, data, subresources...), &v1.TimeTrigger{}) Invokes(testing.NewPatchSubresourceActionWithOptions(timetriggersResource, c.ns, name, pt, data, opts, subresources...), emptyResult)
if obj == nil { if obj == nil {
return nil, err return emptyResult, err
} }
return obj.(*v1.TimeTrigger), err return obj.(*v1.TimeTrigger), err
} }
@@ -144,11 +149,12 @@ func (c *FakeTimeTriggers) Apply(ctx context.Context, _timeTrigger *corev1.TimeT
if name == nil { if name == nil {
return nil, fmt.Errorf("_timeTrigger.Name must be provided to Apply") return nil, fmt.Errorf("_timeTrigger.Name must be provided to Apply")
} }
emptyResult := &v1.TimeTrigger{}
obj, err := c.Fake. obj, err := c.Fake.
Invokes(testing.NewPatchSubresourceAction(timetriggersResource, c.ns, *name, types.ApplyPatchType, data), &v1.TimeTrigger{}) Invokes(testing.NewPatchSubresourceActionWithOptions(timetriggersResource, c.ns, *name, types.ApplyPatchType, data, opts.ToPatchOptions()), emptyResult)
if obj == nil { if obj == nil {
return nil, err return emptyResult, err
} }
return obj.(*v1.TimeTrigger), err return obj.(*v1.TimeTrigger), err
} }
@@ -20,9 +20,6 @@ package v1
import ( import (
"context" "context"
json "encoding/json"
"fmt"
"time"
v1 "github.com/fission/fission/pkg/apis/core/v1" v1 "github.com/fission/fission/pkg/apis/core/v1"
corev1 "github.com/fission/fission/pkg/generated/applyconfiguration/core/v1" corev1 "github.com/fission/fission/pkg/generated/applyconfiguration/core/v1"
@@ -30,7 +27,7 @@ import (
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
types "k8s.io/apimachinery/pkg/types" types "k8s.io/apimachinery/pkg/types"
watch "k8s.io/apimachinery/pkg/watch" watch "k8s.io/apimachinery/pkg/watch"
rest "k8s.io/client-go/rest" gentype "k8s.io/client-go/gentype"
) )
// FunctionsGetter has a method to return a FunctionInterface. // FunctionsGetter has a method to return a FunctionInterface.
@@ -55,154 +52,18 @@ type FunctionInterface interface {
// functions implements FunctionInterface // functions implements FunctionInterface
type functions struct { type functions struct {
client rest.Interface *gentype.ClientWithListAndApply[*v1.Function, *v1.FunctionList, *corev1.FunctionApplyConfiguration]
ns string
} }
// newFunctions returns a Functions // newFunctions returns a Functions
func newFunctions(c *CoreV1Client, namespace string) *functions { func newFunctions(c *CoreV1Client, namespace string) *functions {
return &functions{ return &functions{
client: c.RESTClient(), gentype.NewClientWithListAndApply[*v1.Function, *v1.FunctionList, *corev1.FunctionApplyConfiguration](
ns: namespace, "functions",
c.RESTClient(),
scheme.ParameterCodec,
namespace,
func() *v1.Function { return &v1.Function{} },
func() *v1.FunctionList { return &v1.FunctionList{} }),
} }
} }
// Get takes name of the _function, and returns the corresponding function object, and an error if there is any.
func (c *functions) Get(ctx context.Context, name string, options metav1.GetOptions) (result *v1.Function, err error) {
result = &v1.Function{}
err = c.client.Get().
Namespace(c.ns).
Resource("functions").
Name(name).
VersionedParams(&options, scheme.ParameterCodec).
Do(ctx).
Into(result)
return
}
// List takes label and field selectors, and returns the list of Functions that match those selectors.
func (c *functions) List(ctx context.Context, opts metav1.ListOptions) (result *v1.FunctionList, err error) {
var timeout time.Duration
if opts.TimeoutSeconds != nil {
timeout = time.Duration(*opts.TimeoutSeconds) * time.Second
}
result = &v1.FunctionList{}
err = c.client.Get().
Namespace(c.ns).
Resource("functions").
VersionedParams(&opts, scheme.ParameterCodec).
Timeout(timeout).
Do(ctx).
Into(result)
return
}
// Watch returns a watch.Interface that watches the requested functions.
func (c *functions) Watch(ctx context.Context, opts metav1.ListOptions) (watch.Interface, error) {
var timeout time.Duration
if opts.TimeoutSeconds != nil {
timeout = time.Duration(*opts.TimeoutSeconds) * time.Second
}
opts.Watch = true
return c.client.Get().
Namespace(c.ns).
Resource("functions").
VersionedParams(&opts, scheme.ParameterCodec).
Timeout(timeout).
Watch(ctx)
}
// Create takes the representation of a _function and creates it. Returns the server's representation of the function, and an error, if there is any.
func (c *functions) Create(ctx context.Context, _function *v1.Function, opts metav1.CreateOptions) (result *v1.Function, err error) {
result = &v1.Function{}
err = c.client.Post().
Namespace(c.ns).
Resource("functions").
VersionedParams(&opts, scheme.ParameterCodec).
Body(_function).
Do(ctx).
Into(result)
return
}
// Update takes the representation of a _function and updates it. Returns the server's representation of the function, and an error, if there is any.
func (c *functions) Update(ctx context.Context, _function *v1.Function, opts metav1.UpdateOptions) (result *v1.Function, err error) {
result = &v1.Function{}
err = c.client.Put().
Namespace(c.ns).
Resource("functions").
Name(_function.Name).
VersionedParams(&opts, scheme.ParameterCodec).
Body(_function).
Do(ctx).
Into(result)
return
}
// Delete takes name of the _function and deletes it. Returns an error if one occurs.
func (c *functions) Delete(ctx context.Context, name string, opts metav1.DeleteOptions) error {
return c.client.Delete().
Namespace(c.ns).
Resource("functions").
Name(name).
Body(&opts).
Do(ctx).
Error()
}
// DeleteCollection deletes a collection of objects.
func (c *functions) DeleteCollection(ctx context.Context, opts metav1.DeleteOptions, listOpts metav1.ListOptions) error {
var timeout time.Duration
if listOpts.TimeoutSeconds != nil {
timeout = time.Duration(*listOpts.TimeoutSeconds) * time.Second
}
return c.client.Delete().
Namespace(c.ns).
Resource("functions").
VersionedParams(&listOpts, scheme.ParameterCodec).
Timeout(timeout).
Body(&opts).
Do(ctx).
Error()
}
// Patch applies the patch and returns the patched function.
func (c *functions) Patch(ctx context.Context, name string, pt types.PatchType, data []byte, opts metav1.PatchOptions, subresources ...string) (result *v1.Function, err error) {
result = &v1.Function{}
err = c.client.Patch(pt).
Namespace(c.ns).
Resource("functions").
Name(name).
SubResource(subresources...).
VersionedParams(&opts, scheme.ParameterCodec).
Body(data).
Do(ctx).
Into(result)
return
}
// Apply takes the given apply declarative configuration, applies it and returns the applied function.
func (c *functions) Apply(ctx context.Context, _function *corev1.FunctionApplyConfiguration, opts metav1.ApplyOptions) (result *v1.Function, err error) {
if _function == nil {
return nil, fmt.Errorf("_function provided to Apply must not be nil")
}
patchOpts := opts.ToPatchOptions()
data, err := json.Marshal(_function)
if err != nil {
return nil, err
}
name := _function.Name
if name == nil {
return nil, fmt.Errorf("_function.Name must be provided to Apply")
}
result = &v1.Function{}
err = c.client.Patch(types.ApplyPatchType).
Namespace(c.ns).
Resource("functions").
Name(*name).
VersionedParams(&patchOpts, scheme.ParameterCodec).
Body(data).
Do(ctx).
Into(result)
return
}
@@ -20,9 +20,6 @@ package v1
import ( import (
"context" "context"
json "encoding/json"
"fmt"
"time"
v1 "github.com/fission/fission/pkg/apis/core/v1" v1 "github.com/fission/fission/pkg/apis/core/v1"
corev1 "github.com/fission/fission/pkg/generated/applyconfiguration/core/v1" corev1 "github.com/fission/fission/pkg/generated/applyconfiguration/core/v1"
@@ -30,7 +27,7 @@ import (
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
types "k8s.io/apimachinery/pkg/types" types "k8s.io/apimachinery/pkg/types"
watch "k8s.io/apimachinery/pkg/watch" watch "k8s.io/apimachinery/pkg/watch"
rest "k8s.io/client-go/rest" gentype "k8s.io/client-go/gentype"
) )
// HTTPTriggersGetter has a method to return a HTTPTriggerInterface. // HTTPTriggersGetter has a method to return a HTTPTriggerInterface.
@@ -55,154 +52,18 @@ type HTTPTriggerInterface interface {
// hTTPTriggers implements HTTPTriggerInterface // hTTPTriggers implements HTTPTriggerInterface
type hTTPTriggers struct { type hTTPTriggers struct {
client rest.Interface *gentype.ClientWithListAndApply[*v1.HTTPTrigger, *v1.HTTPTriggerList, *corev1.HTTPTriggerApplyConfiguration]
ns string
} }
// newHTTPTriggers returns a HTTPTriggers // newHTTPTriggers returns a HTTPTriggers
func newHTTPTriggers(c *CoreV1Client, namespace string) *hTTPTriggers { func newHTTPTriggers(c *CoreV1Client, namespace string) *hTTPTriggers {
return &hTTPTriggers{ return &hTTPTriggers{
client: c.RESTClient(), gentype.NewClientWithListAndApply[*v1.HTTPTrigger, *v1.HTTPTriggerList, *corev1.HTTPTriggerApplyConfiguration](
ns: namespace, "httptriggers",
c.RESTClient(),
scheme.ParameterCodec,
namespace,
func() *v1.HTTPTrigger { return &v1.HTTPTrigger{} },
func() *v1.HTTPTriggerList { return &v1.HTTPTriggerList{} }),
} }
} }
// Get takes name of the _hTTPTrigger, and returns the corresponding hTTPTrigger object, and an error if there is any.
func (c *hTTPTriggers) Get(ctx context.Context, name string, options metav1.GetOptions) (result *v1.HTTPTrigger, err error) {
result = &v1.HTTPTrigger{}
err = c.client.Get().
Namespace(c.ns).
Resource("httptriggers").
Name(name).
VersionedParams(&options, scheme.ParameterCodec).
Do(ctx).
Into(result)
return
}
// List takes label and field selectors, and returns the list of HTTPTriggers that match those selectors.
func (c *hTTPTriggers) List(ctx context.Context, opts metav1.ListOptions) (result *v1.HTTPTriggerList, err error) {
var timeout time.Duration
if opts.TimeoutSeconds != nil {
timeout = time.Duration(*opts.TimeoutSeconds) * time.Second
}
result = &v1.HTTPTriggerList{}
err = c.client.Get().
Namespace(c.ns).
Resource("httptriggers").
VersionedParams(&opts, scheme.ParameterCodec).
Timeout(timeout).
Do(ctx).
Into(result)
return
}
// Watch returns a watch.Interface that watches the requested hTTPTriggers.
func (c *hTTPTriggers) Watch(ctx context.Context, opts metav1.ListOptions) (watch.Interface, error) {
var timeout time.Duration
if opts.TimeoutSeconds != nil {
timeout = time.Duration(*opts.TimeoutSeconds) * time.Second
}
opts.Watch = true
return c.client.Get().
Namespace(c.ns).
Resource("httptriggers").
VersionedParams(&opts, scheme.ParameterCodec).
Timeout(timeout).
Watch(ctx)
}
// Create takes the representation of a _hTTPTrigger and creates it. Returns the server's representation of the hTTPTrigger, and an error, if there is any.
func (c *hTTPTriggers) Create(ctx context.Context, _hTTPTrigger *v1.HTTPTrigger, opts metav1.CreateOptions) (result *v1.HTTPTrigger, err error) {
result = &v1.HTTPTrigger{}
err = c.client.Post().
Namespace(c.ns).
Resource("httptriggers").
VersionedParams(&opts, scheme.ParameterCodec).
Body(_hTTPTrigger).
Do(ctx).
Into(result)
return
}
// Update takes the representation of a _hTTPTrigger and updates it. Returns the server's representation of the hTTPTrigger, and an error, if there is any.
func (c *hTTPTriggers) Update(ctx context.Context, _hTTPTrigger *v1.HTTPTrigger, opts metav1.UpdateOptions) (result *v1.HTTPTrigger, err error) {
result = &v1.HTTPTrigger{}
err = c.client.Put().
Namespace(c.ns).
Resource("httptriggers").
Name(_hTTPTrigger.Name).
VersionedParams(&opts, scheme.ParameterCodec).
Body(_hTTPTrigger).
Do(ctx).
Into(result)
return
}
// Delete takes name of the _hTTPTrigger and deletes it. Returns an error if one occurs.
func (c *hTTPTriggers) Delete(ctx context.Context, name string, opts metav1.DeleteOptions) error {
return c.client.Delete().
Namespace(c.ns).
Resource("httptriggers").
Name(name).
Body(&opts).
Do(ctx).
Error()
}
// DeleteCollection deletes a collection of objects.
func (c *hTTPTriggers) DeleteCollection(ctx context.Context, opts metav1.DeleteOptions, listOpts metav1.ListOptions) error {
var timeout time.Duration
if listOpts.TimeoutSeconds != nil {
timeout = time.Duration(*listOpts.TimeoutSeconds) * time.Second
}
return c.client.Delete().
Namespace(c.ns).
Resource("httptriggers").
VersionedParams(&listOpts, scheme.ParameterCodec).
Timeout(timeout).
Body(&opts).
Do(ctx).
Error()
}
// Patch applies the patch and returns the patched hTTPTrigger.
func (c *hTTPTriggers) Patch(ctx context.Context, name string, pt types.PatchType, data []byte, opts metav1.PatchOptions, subresources ...string) (result *v1.HTTPTrigger, err error) {
result = &v1.HTTPTrigger{}
err = c.client.Patch(pt).
Namespace(c.ns).
Resource("httptriggers").
Name(name).
SubResource(subresources...).
VersionedParams(&opts, scheme.ParameterCodec).
Body(data).
Do(ctx).
Into(result)
return
}
// Apply takes the given apply declarative configuration, applies it and returns the applied hTTPTrigger.
func (c *hTTPTriggers) Apply(ctx context.Context, _hTTPTrigger *corev1.HTTPTriggerApplyConfiguration, opts metav1.ApplyOptions) (result *v1.HTTPTrigger, err error) {
if _hTTPTrigger == nil {
return nil, fmt.Errorf("_hTTPTrigger provided to Apply must not be nil")
}
patchOpts := opts.ToPatchOptions()
data, err := json.Marshal(_hTTPTrigger)
if err != nil {
return nil, err
}
name := _hTTPTrigger.Name
if name == nil {
return nil, fmt.Errorf("_hTTPTrigger.Name must be provided to Apply")
}
result = &v1.HTTPTrigger{}
err = c.client.Patch(types.ApplyPatchType).
Namespace(c.ns).
Resource("httptriggers").
Name(*name).
VersionedParams(&patchOpts, scheme.ParameterCodec).
Body(data).
Do(ctx).
Into(result)
return
}
@@ -20,9 +20,6 @@ package v1
import ( import (
"context" "context"
json "encoding/json"
"fmt"
"time"
v1 "github.com/fission/fission/pkg/apis/core/v1" v1 "github.com/fission/fission/pkg/apis/core/v1"
corev1 "github.com/fission/fission/pkg/generated/applyconfiguration/core/v1" corev1 "github.com/fission/fission/pkg/generated/applyconfiguration/core/v1"
@@ -30,7 +27,7 @@ import (
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
types "k8s.io/apimachinery/pkg/types" types "k8s.io/apimachinery/pkg/types"
watch "k8s.io/apimachinery/pkg/watch" watch "k8s.io/apimachinery/pkg/watch"
rest "k8s.io/client-go/rest" gentype "k8s.io/client-go/gentype"
) )
// KubernetesWatchTriggersGetter has a method to return a KubernetesWatchTriggerInterface. // KubernetesWatchTriggersGetter has a method to return a KubernetesWatchTriggerInterface.
@@ -55,154 +52,18 @@ type KubernetesWatchTriggerInterface interface {
// kubernetesWatchTriggers implements KubernetesWatchTriggerInterface // kubernetesWatchTriggers implements KubernetesWatchTriggerInterface
type kubernetesWatchTriggers struct { type kubernetesWatchTriggers struct {
client rest.Interface *gentype.ClientWithListAndApply[*v1.KubernetesWatchTrigger, *v1.KubernetesWatchTriggerList, *corev1.KubernetesWatchTriggerApplyConfiguration]
ns string
} }
// newKubernetesWatchTriggers returns a KubernetesWatchTriggers // newKubernetesWatchTriggers returns a KubernetesWatchTriggers
func newKubernetesWatchTriggers(c *CoreV1Client, namespace string) *kubernetesWatchTriggers { func newKubernetesWatchTriggers(c *CoreV1Client, namespace string) *kubernetesWatchTriggers {
return &kubernetesWatchTriggers{ return &kubernetesWatchTriggers{
client: c.RESTClient(), gentype.NewClientWithListAndApply[*v1.KubernetesWatchTrigger, *v1.KubernetesWatchTriggerList, *corev1.KubernetesWatchTriggerApplyConfiguration](
ns: namespace, "kuberneteswatchtriggers",
c.RESTClient(),
scheme.ParameterCodec,
namespace,
func() *v1.KubernetesWatchTrigger { return &v1.KubernetesWatchTrigger{} },
func() *v1.KubernetesWatchTriggerList { return &v1.KubernetesWatchTriggerList{} }),
} }
} }
// Get takes name of the _kubernetesWatchTrigger, and returns the corresponding kubernetesWatchTrigger object, and an error if there is any.
func (c *kubernetesWatchTriggers) Get(ctx context.Context, name string, options metav1.GetOptions) (result *v1.KubernetesWatchTrigger, err error) {
result = &v1.KubernetesWatchTrigger{}
err = c.client.Get().
Namespace(c.ns).
Resource("kuberneteswatchtriggers").
Name(name).
VersionedParams(&options, scheme.ParameterCodec).
Do(ctx).
Into(result)
return
}
// List takes label and field selectors, and returns the list of KubernetesWatchTriggers that match those selectors.
func (c *kubernetesWatchTriggers) List(ctx context.Context, opts metav1.ListOptions) (result *v1.KubernetesWatchTriggerList, err error) {
var timeout time.Duration
if opts.TimeoutSeconds != nil {
timeout = time.Duration(*opts.TimeoutSeconds) * time.Second
}
result = &v1.KubernetesWatchTriggerList{}
err = c.client.Get().
Namespace(c.ns).
Resource("kuberneteswatchtriggers").
VersionedParams(&opts, scheme.ParameterCodec).
Timeout(timeout).
Do(ctx).
Into(result)
return
}
// Watch returns a watch.Interface that watches the requested kubernetesWatchTriggers.
func (c *kubernetesWatchTriggers) Watch(ctx context.Context, opts metav1.ListOptions) (watch.Interface, error) {
var timeout time.Duration
if opts.TimeoutSeconds != nil {
timeout = time.Duration(*opts.TimeoutSeconds) * time.Second
}
opts.Watch = true
return c.client.Get().
Namespace(c.ns).
Resource("kuberneteswatchtriggers").
VersionedParams(&opts, scheme.ParameterCodec).
Timeout(timeout).
Watch(ctx)
}
// Create takes the representation of a _kubernetesWatchTrigger and creates it. Returns the server's representation of the kubernetesWatchTrigger, and an error, if there is any.
func (c *kubernetesWatchTriggers) Create(ctx context.Context, _kubernetesWatchTrigger *v1.KubernetesWatchTrigger, opts metav1.CreateOptions) (result *v1.KubernetesWatchTrigger, err error) {
result = &v1.KubernetesWatchTrigger{}
err = c.client.Post().
Namespace(c.ns).
Resource("kuberneteswatchtriggers").
VersionedParams(&opts, scheme.ParameterCodec).
Body(_kubernetesWatchTrigger).
Do(ctx).
Into(result)
return
}
// Update takes the representation of a _kubernetesWatchTrigger and updates it. Returns the server's representation of the kubernetesWatchTrigger, and an error, if there is any.
func (c *kubernetesWatchTriggers) Update(ctx context.Context, _kubernetesWatchTrigger *v1.KubernetesWatchTrigger, opts metav1.UpdateOptions) (result *v1.KubernetesWatchTrigger, err error) {
result = &v1.KubernetesWatchTrigger{}
err = c.client.Put().
Namespace(c.ns).
Resource("kuberneteswatchtriggers").
Name(_kubernetesWatchTrigger.Name).
VersionedParams(&opts, scheme.ParameterCodec).
Body(_kubernetesWatchTrigger).
Do(ctx).
Into(result)
return
}
// Delete takes name of the _kubernetesWatchTrigger and deletes it. Returns an error if one occurs.
func (c *kubernetesWatchTriggers) Delete(ctx context.Context, name string, opts metav1.DeleteOptions) error {
return c.client.Delete().
Namespace(c.ns).
Resource("kuberneteswatchtriggers").
Name(name).
Body(&opts).
Do(ctx).
Error()
}
// DeleteCollection deletes a collection of objects.
func (c *kubernetesWatchTriggers) DeleteCollection(ctx context.Context, opts metav1.DeleteOptions, listOpts metav1.ListOptions) error {
var timeout time.Duration
if listOpts.TimeoutSeconds != nil {
timeout = time.Duration(*listOpts.TimeoutSeconds) * time.Second
}
return c.client.Delete().
Namespace(c.ns).
Resource("kuberneteswatchtriggers").
VersionedParams(&listOpts, scheme.ParameterCodec).
Timeout(timeout).
Body(&opts).
Do(ctx).
Error()
}
// Patch applies the patch and returns the patched kubernetesWatchTrigger.
func (c *kubernetesWatchTriggers) Patch(ctx context.Context, name string, pt types.PatchType, data []byte, opts metav1.PatchOptions, subresources ...string) (result *v1.KubernetesWatchTrigger, err error) {
result = &v1.KubernetesWatchTrigger{}
err = c.client.Patch(pt).
Namespace(c.ns).
Resource("kuberneteswatchtriggers").
Name(name).
SubResource(subresources...).
VersionedParams(&opts, scheme.ParameterCodec).
Body(data).
Do(ctx).
Into(result)
return
}
// Apply takes the given apply declarative configuration, applies it and returns the applied kubernetesWatchTrigger.
func (c *kubernetesWatchTriggers) Apply(ctx context.Context, _kubernetesWatchTrigger *corev1.KubernetesWatchTriggerApplyConfiguration, opts metav1.ApplyOptions) (result *v1.KubernetesWatchTrigger, err error) {
if _kubernetesWatchTrigger == nil {
return nil, fmt.Errorf("_kubernetesWatchTrigger provided to Apply must not be nil")
}
patchOpts := opts.ToPatchOptions()
data, err := json.Marshal(_kubernetesWatchTrigger)
if err != nil {
return nil, err
}
name := _kubernetesWatchTrigger.Name
if name == nil {
return nil, fmt.Errorf("_kubernetesWatchTrigger.Name must be provided to Apply")
}
result = &v1.KubernetesWatchTrigger{}
err = c.client.Patch(types.ApplyPatchType).
Namespace(c.ns).
Resource("kuberneteswatchtriggers").
Name(*name).
VersionedParams(&patchOpts, scheme.ParameterCodec).
Body(data).
Do(ctx).
Into(result)
return
}
@@ -20,9 +20,6 @@ package v1
import ( import (
"context" "context"
json "encoding/json"
"fmt"
"time"
v1 "github.com/fission/fission/pkg/apis/core/v1" v1 "github.com/fission/fission/pkg/apis/core/v1"
corev1 "github.com/fission/fission/pkg/generated/applyconfiguration/core/v1" corev1 "github.com/fission/fission/pkg/generated/applyconfiguration/core/v1"
@@ -30,7 +27,7 @@ import (
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
types "k8s.io/apimachinery/pkg/types" types "k8s.io/apimachinery/pkg/types"
watch "k8s.io/apimachinery/pkg/watch" watch "k8s.io/apimachinery/pkg/watch"
rest "k8s.io/client-go/rest" gentype "k8s.io/client-go/gentype"
) )
// MessageQueueTriggersGetter has a method to return a MessageQueueTriggerInterface. // MessageQueueTriggersGetter has a method to return a MessageQueueTriggerInterface.
@@ -55,154 +52,18 @@ type MessageQueueTriggerInterface interface {
// messageQueueTriggers implements MessageQueueTriggerInterface // messageQueueTriggers implements MessageQueueTriggerInterface
type messageQueueTriggers struct { type messageQueueTriggers struct {
client rest.Interface *gentype.ClientWithListAndApply[*v1.MessageQueueTrigger, *v1.MessageQueueTriggerList, *corev1.MessageQueueTriggerApplyConfiguration]
ns string
} }
// newMessageQueueTriggers returns a MessageQueueTriggers // newMessageQueueTriggers returns a MessageQueueTriggers
func newMessageQueueTriggers(c *CoreV1Client, namespace string) *messageQueueTriggers { func newMessageQueueTriggers(c *CoreV1Client, namespace string) *messageQueueTriggers {
return &messageQueueTriggers{ return &messageQueueTriggers{
client: c.RESTClient(), gentype.NewClientWithListAndApply[*v1.MessageQueueTrigger, *v1.MessageQueueTriggerList, *corev1.MessageQueueTriggerApplyConfiguration](
ns: namespace, "messagequeuetriggers",
c.RESTClient(),
scheme.ParameterCodec,
namespace,
func() *v1.MessageQueueTrigger { return &v1.MessageQueueTrigger{} },
func() *v1.MessageQueueTriggerList { return &v1.MessageQueueTriggerList{} }),
} }
} }
// Get takes name of the _messageQueueTrigger, and returns the corresponding messageQueueTrigger object, and an error if there is any.
func (c *messageQueueTriggers) Get(ctx context.Context, name string, options metav1.GetOptions) (result *v1.MessageQueueTrigger, err error) {
result = &v1.MessageQueueTrigger{}
err = c.client.Get().
Namespace(c.ns).
Resource("messagequeuetriggers").
Name(name).
VersionedParams(&options, scheme.ParameterCodec).
Do(ctx).
Into(result)
return
}
// List takes label and field selectors, and returns the list of MessageQueueTriggers that match those selectors.
func (c *messageQueueTriggers) List(ctx context.Context, opts metav1.ListOptions) (result *v1.MessageQueueTriggerList, err error) {
var timeout time.Duration
if opts.TimeoutSeconds != nil {
timeout = time.Duration(*opts.TimeoutSeconds) * time.Second
}
result = &v1.MessageQueueTriggerList{}
err = c.client.Get().
Namespace(c.ns).
Resource("messagequeuetriggers").
VersionedParams(&opts, scheme.ParameterCodec).
Timeout(timeout).
Do(ctx).
Into(result)
return
}
// Watch returns a watch.Interface that watches the requested messageQueueTriggers.
func (c *messageQueueTriggers) Watch(ctx context.Context, opts metav1.ListOptions) (watch.Interface, error) {
var timeout time.Duration
if opts.TimeoutSeconds != nil {
timeout = time.Duration(*opts.TimeoutSeconds) * time.Second
}
opts.Watch = true
return c.client.Get().
Namespace(c.ns).
Resource("messagequeuetriggers").
VersionedParams(&opts, scheme.ParameterCodec).
Timeout(timeout).
Watch(ctx)
}
// Create takes the representation of a _messageQueueTrigger and creates it. Returns the server's representation of the messageQueueTrigger, and an error, if there is any.
func (c *messageQueueTriggers) Create(ctx context.Context, _messageQueueTrigger *v1.MessageQueueTrigger, opts metav1.CreateOptions) (result *v1.MessageQueueTrigger, err error) {
result = &v1.MessageQueueTrigger{}
err = c.client.Post().
Namespace(c.ns).
Resource("messagequeuetriggers").
VersionedParams(&opts, scheme.ParameterCodec).
Body(_messageQueueTrigger).
Do(ctx).
Into(result)
return
}
// Update takes the representation of a _messageQueueTrigger and updates it. Returns the server's representation of the messageQueueTrigger, and an error, if there is any.
func (c *messageQueueTriggers) Update(ctx context.Context, _messageQueueTrigger *v1.MessageQueueTrigger, opts metav1.UpdateOptions) (result *v1.MessageQueueTrigger, err error) {
result = &v1.MessageQueueTrigger{}
err = c.client.Put().
Namespace(c.ns).
Resource("messagequeuetriggers").
Name(_messageQueueTrigger.Name).
VersionedParams(&opts, scheme.ParameterCodec).
Body(_messageQueueTrigger).
Do(ctx).
Into(result)
return
}
// Delete takes name of the _messageQueueTrigger and deletes it. Returns an error if one occurs.
func (c *messageQueueTriggers) Delete(ctx context.Context, name string, opts metav1.DeleteOptions) error {
return c.client.Delete().
Namespace(c.ns).
Resource("messagequeuetriggers").
Name(name).
Body(&opts).
Do(ctx).
Error()
}
// DeleteCollection deletes a collection of objects.
func (c *messageQueueTriggers) DeleteCollection(ctx context.Context, opts metav1.DeleteOptions, listOpts metav1.ListOptions) error {
var timeout time.Duration
if listOpts.TimeoutSeconds != nil {
timeout = time.Duration(*listOpts.TimeoutSeconds) * time.Second
}
return c.client.Delete().
Namespace(c.ns).
Resource("messagequeuetriggers").
VersionedParams(&listOpts, scheme.ParameterCodec).
Timeout(timeout).
Body(&opts).
Do(ctx).
Error()
}
// Patch applies the patch and returns the patched messageQueueTrigger.
func (c *messageQueueTriggers) Patch(ctx context.Context, name string, pt types.PatchType, data []byte, opts metav1.PatchOptions, subresources ...string) (result *v1.MessageQueueTrigger, err error) {
result = &v1.MessageQueueTrigger{}
err = c.client.Patch(pt).
Namespace(c.ns).
Resource("messagequeuetriggers").
Name(name).
SubResource(subresources...).
VersionedParams(&opts, scheme.ParameterCodec).
Body(data).
Do(ctx).
Into(result)
return
}
// Apply takes the given apply declarative configuration, applies it and returns the applied messageQueueTrigger.
func (c *messageQueueTriggers) Apply(ctx context.Context, _messageQueueTrigger *corev1.MessageQueueTriggerApplyConfiguration, opts metav1.ApplyOptions) (result *v1.MessageQueueTrigger, err error) {
if _messageQueueTrigger == nil {
return nil, fmt.Errorf("_messageQueueTrigger provided to Apply must not be nil")
}
patchOpts := opts.ToPatchOptions()
data, err := json.Marshal(_messageQueueTrigger)
if err != nil {
return nil, err
}
name := _messageQueueTrigger.Name
if name == nil {
return nil, fmt.Errorf("_messageQueueTrigger.Name must be provided to Apply")
}
result = &v1.MessageQueueTrigger{}
err = c.client.Patch(types.ApplyPatchType).
Namespace(c.ns).
Resource("messagequeuetriggers").
Name(*name).
VersionedParams(&patchOpts, scheme.ParameterCodec).
Body(data).
Do(ctx).
Into(result)
return
}
@@ -20,9 +20,6 @@ package v1
import ( import (
"context" "context"
json "encoding/json"
"fmt"
"time"
v1 "github.com/fission/fission/pkg/apis/core/v1" v1 "github.com/fission/fission/pkg/apis/core/v1"
corev1 "github.com/fission/fission/pkg/generated/applyconfiguration/core/v1" corev1 "github.com/fission/fission/pkg/generated/applyconfiguration/core/v1"
@@ -30,7 +27,7 @@ import (
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
types "k8s.io/apimachinery/pkg/types" types "k8s.io/apimachinery/pkg/types"
watch "k8s.io/apimachinery/pkg/watch" watch "k8s.io/apimachinery/pkg/watch"
rest "k8s.io/client-go/rest" gentype "k8s.io/client-go/gentype"
) )
// PackagesGetter has a method to return a PackageInterface. // PackagesGetter has a method to return a PackageInterface.
@@ -43,6 +40,7 @@ type PackagesGetter interface {
type PackageInterface interface { type PackageInterface interface {
Create(ctx context.Context, _package *v1.Package, opts metav1.CreateOptions) (*v1.Package, error) Create(ctx context.Context, _package *v1.Package, opts metav1.CreateOptions) (*v1.Package, error)
Update(ctx context.Context, _package *v1.Package, opts metav1.UpdateOptions) (*v1.Package, error) Update(ctx context.Context, _package *v1.Package, opts metav1.UpdateOptions) (*v1.Package, error)
// Add a +genclient:noStatus comment above the type to avoid generating UpdateStatus().
UpdateStatus(ctx context.Context, _package *v1.Package, opts metav1.UpdateOptions) (*v1.Package, error) UpdateStatus(ctx context.Context, _package *v1.Package, opts metav1.UpdateOptions) (*v1.Package, error)
Delete(ctx context.Context, name string, opts metav1.DeleteOptions) error Delete(ctx context.Context, name string, opts metav1.DeleteOptions) error
DeleteCollection(ctx context.Context, opts metav1.DeleteOptions, listOpts metav1.ListOptions) error DeleteCollection(ctx context.Context, opts metav1.DeleteOptions, listOpts metav1.ListOptions) error
@@ -51,206 +49,25 @@ type PackageInterface interface {
Watch(ctx context.Context, opts metav1.ListOptions) (watch.Interface, error) Watch(ctx context.Context, opts metav1.ListOptions) (watch.Interface, error)
Patch(ctx context.Context, name string, pt types.PatchType, data []byte, opts metav1.PatchOptions, subresources ...string) (result *v1.Package, err error) Patch(ctx context.Context, name string, pt types.PatchType, data []byte, opts metav1.PatchOptions, subresources ...string) (result *v1.Package, err error)
Apply(ctx context.Context, _package *corev1.PackageApplyConfiguration, opts metav1.ApplyOptions) (result *v1.Package, err error) Apply(ctx context.Context, _package *corev1.PackageApplyConfiguration, opts metav1.ApplyOptions) (result *v1.Package, err error)
// Add a +genclient:noStatus comment above the type to avoid generating ApplyStatus().
ApplyStatus(ctx context.Context, _package *corev1.PackageApplyConfiguration, opts metav1.ApplyOptions) (result *v1.Package, err error) ApplyStatus(ctx context.Context, _package *corev1.PackageApplyConfiguration, opts metav1.ApplyOptions) (result *v1.Package, err error)
PackageExpansion PackageExpansion
} }
// packages implements PackageInterface // packages implements PackageInterface
type packages struct { type packages struct {
client rest.Interface *gentype.ClientWithListAndApply[*v1.Package, *v1.PackageList, *corev1.PackageApplyConfiguration]
ns string
} }
// newPackages returns a Packages // newPackages returns a Packages
func newPackages(c *CoreV1Client, namespace string) *packages { func newPackages(c *CoreV1Client, namespace string) *packages {
return &packages{ return &packages{
client: c.RESTClient(), gentype.NewClientWithListAndApply[*v1.Package, *v1.PackageList, *corev1.PackageApplyConfiguration](
ns: namespace, "packages",
c.RESTClient(),
scheme.ParameterCodec,
namespace,
func() *v1.Package { return &v1.Package{} },
func() *v1.PackageList { return &v1.PackageList{} }),
} }
} }
// Get takes name of the _package, and returns the corresponding package object, and an error if there is any.
func (c *packages) Get(ctx context.Context, name string, options metav1.GetOptions) (result *v1.Package, err error) {
result = &v1.Package{}
err = c.client.Get().
Namespace(c.ns).
Resource("packages").
Name(name).
VersionedParams(&options, scheme.ParameterCodec).
Do(ctx).
Into(result)
return
}
// List takes label and field selectors, and returns the list of Packages that match those selectors.
func (c *packages) List(ctx context.Context, opts metav1.ListOptions) (result *v1.PackageList, err error) {
var timeout time.Duration
if opts.TimeoutSeconds != nil {
timeout = time.Duration(*opts.TimeoutSeconds) * time.Second
}
result = &v1.PackageList{}
err = c.client.Get().
Namespace(c.ns).
Resource("packages").
VersionedParams(&opts, scheme.ParameterCodec).
Timeout(timeout).
Do(ctx).
Into(result)
return
}
// Watch returns a watch.Interface that watches the requested packages.
func (c *packages) Watch(ctx context.Context, opts metav1.ListOptions) (watch.Interface, error) {
var timeout time.Duration
if opts.TimeoutSeconds != nil {
timeout = time.Duration(*opts.TimeoutSeconds) * time.Second
}
opts.Watch = true
return c.client.Get().
Namespace(c.ns).
Resource("packages").
VersionedParams(&opts, scheme.ParameterCodec).
Timeout(timeout).
Watch(ctx)
}
// Create takes the representation of a _package and creates it. Returns the server's representation of the package, and an error, if there is any.
func (c *packages) Create(ctx context.Context, _package *v1.Package, opts metav1.CreateOptions) (result *v1.Package, err error) {
result = &v1.Package{}
err = c.client.Post().
Namespace(c.ns).
Resource("packages").
VersionedParams(&opts, scheme.ParameterCodec).
Body(_package).
Do(ctx).
Into(result)
return
}
// Update takes the representation of a _package and updates it. Returns the server's representation of the package, and an error, if there is any.
func (c *packages) Update(ctx context.Context, _package *v1.Package, opts metav1.UpdateOptions) (result *v1.Package, err error) {
result = &v1.Package{}
err = c.client.Put().
Namespace(c.ns).
Resource("packages").
Name(_package.Name).
VersionedParams(&opts, scheme.ParameterCodec).
Body(_package).
Do(ctx).
Into(result)
return
}
// UpdateStatus was generated because the type contains a Status member.
// Add a +genclient:noStatus comment above the type to avoid generating UpdateStatus().
func (c *packages) UpdateStatus(ctx context.Context, _package *v1.Package, opts metav1.UpdateOptions) (result *v1.Package, err error) {
result = &v1.Package{}
err = c.client.Put().
Namespace(c.ns).
Resource("packages").
Name(_package.Name).
SubResource("status").
VersionedParams(&opts, scheme.ParameterCodec).
Body(_package).
Do(ctx).
Into(result)
return
}
// Delete takes name of the _package and deletes it. Returns an error if one occurs.
func (c *packages) Delete(ctx context.Context, name string, opts metav1.DeleteOptions) error {
return c.client.Delete().
Namespace(c.ns).
Resource("packages").
Name(name).
Body(&opts).
Do(ctx).
Error()
}
// DeleteCollection deletes a collection of objects.
func (c *packages) DeleteCollection(ctx context.Context, opts metav1.DeleteOptions, listOpts metav1.ListOptions) error {
var timeout time.Duration
if listOpts.TimeoutSeconds != nil {
timeout = time.Duration(*listOpts.TimeoutSeconds) * time.Second
}
return c.client.Delete().
Namespace(c.ns).
Resource("packages").
VersionedParams(&listOpts, scheme.ParameterCodec).
Timeout(timeout).
Body(&opts).
Do(ctx).
Error()
}
// Patch applies the patch and returns the patched package.
func (c *packages) Patch(ctx context.Context, name string, pt types.PatchType, data []byte, opts metav1.PatchOptions, subresources ...string) (result *v1.Package, err error) {
result = &v1.Package{}
err = c.client.Patch(pt).
Namespace(c.ns).
Resource("packages").
Name(name).
SubResource(subresources...).
VersionedParams(&opts, scheme.ParameterCodec).
Body(data).
Do(ctx).
Into(result)
return
}
// Apply takes the given apply declarative configuration, applies it and returns the applied package.
func (c *packages) Apply(ctx context.Context, _package *corev1.PackageApplyConfiguration, opts metav1.ApplyOptions) (result *v1.Package, err error) {
if _package == nil {
return nil, fmt.Errorf("_package provided to Apply must not be nil")
}
patchOpts := opts.ToPatchOptions()
data, err := json.Marshal(_package)
if err != nil {
return nil, err
}
name := _package.Name
if name == nil {
return nil, fmt.Errorf("_package.Name must be provided to Apply")
}
result = &v1.Package{}
err = c.client.Patch(types.ApplyPatchType).
Namespace(c.ns).
Resource("packages").
Name(*name).
VersionedParams(&patchOpts, scheme.ParameterCodec).
Body(data).
Do(ctx).
Into(result)
return
}
// ApplyStatus was generated because the type contains a Status member.
// Add a +genclient:noStatus comment above the type to avoid generating ApplyStatus().
func (c *packages) ApplyStatus(ctx context.Context, _package *corev1.PackageApplyConfiguration, opts metav1.ApplyOptions) (result *v1.Package, err error) {
if _package == nil {
return nil, fmt.Errorf("_package provided to Apply must not be nil")
}
patchOpts := opts.ToPatchOptions()
data, err := json.Marshal(_package)
if err != nil {
return nil, err
}
name := _package.Name
if name == nil {
return nil, fmt.Errorf("_package.Name must be provided to Apply")
}
result = &v1.Package{}
err = c.client.Patch(types.ApplyPatchType).
Namespace(c.ns).
Resource("packages").
Name(*name).
SubResource("status").
VersionedParams(&patchOpts, scheme.ParameterCodec).
Body(data).
Do(ctx).
Into(result)
return
}
@@ -20,9 +20,6 @@ package v1
import ( import (
"context" "context"
json "encoding/json"
"fmt"
"time"
v1 "github.com/fission/fission/pkg/apis/core/v1" v1 "github.com/fission/fission/pkg/apis/core/v1"
corev1 "github.com/fission/fission/pkg/generated/applyconfiguration/core/v1" corev1 "github.com/fission/fission/pkg/generated/applyconfiguration/core/v1"
@@ -30,7 +27,7 @@ import (
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
types "k8s.io/apimachinery/pkg/types" types "k8s.io/apimachinery/pkg/types"
watch "k8s.io/apimachinery/pkg/watch" watch "k8s.io/apimachinery/pkg/watch"
rest "k8s.io/client-go/rest" gentype "k8s.io/client-go/gentype"
) )
// TimeTriggersGetter has a method to return a TimeTriggerInterface. // TimeTriggersGetter has a method to return a TimeTriggerInterface.
@@ -55,154 +52,18 @@ type TimeTriggerInterface interface {
// timeTriggers implements TimeTriggerInterface // timeTriggers implements TimeTriggerInterface
type timeTriggers struct { type timeTriggers struct {
client rest.Interface *gentype.ClientWithListAndApply[*v1.TimeTrigger, *v1.TimeTriggerList, *corev1.TimeTriggerApplyConfiguration]
ns string
} }
// newTimeTriggers returns a TimeTriggers // newTimeTriggers returns a TimeTriggers
func newTimeTriggers(c *CoreV1Client, namespace string) *timeTriggers { func newTimeTriggers(c *CoreV1Client, namespace string) *timeTriggers {
return &timeTriggers{ return &timeTriggers{
client: c.RESTClient(), gentype.NewClientWithListAndApply[*v1.TimeTrigger, *v1.TimeTriggerList, *corev1.TimeTriggerApplyConfiguration](
ns: namespace, "timetriggers",
c.RESTClient(),
scheme.ParameterCodec,
namespace,
func() *v1.TimeTrigger { return &v1.TimeTrigger{} },
func() *v1.TimeTriggerList { return &v1.TimeTriggerList{} }),
} }
} }
// Get takes name of the _timeTrigger, and returns the corresponding timeTrigger object, and an error if there is any.
func (c *timeTriggers) Get(ctx context.Context, name string, options metav1.GetOptions) (result *v1.TimeTrigger, err error) {
result = &v1.TimeTrigger{}
err = c.client.Get().
Namespace(c.ns).
Resource("timetriggers").
Name(name).
VersionedParams(&options, scheme.ParameterCodec).
Do(ctx).
Into(result)
return
}
// List takes label and field selectors, and returns the list of TimeTriggers that match those selectors.
func (c *timeTriggers) List(ctx context.Context, opts metav1.ListOptions) (result *v1.TimeTriggerList, err error) {
var timeout time.Duration
if opts.TimeoutSeconds != nil {
timeout = time.Duration(*opts.TimeoutSeconds) * time.Second
}
result = &v1.TimeTriggerList{}
err = c.client.Get().
Namespace(c.ns).
Resource("timetriggers").
VersionedParams(&opts, scheme.ParameterCodec).
Timeout(timeout).
Do(ctx).
Into(result)
return
}
// Watch returns a watch.Interface that watches the requested timeTriggers.
func (c *timeTriggers) Watch(ctx context.Context, opts metav1.ListOptions) (watch.Interface, error) {
var timeout time.Duration
if opts.TimeoutSeconds != nil {
timeout = time.Duration(*opts.TimeoutSeconds) * time.Second
}
opts.Watch = true
return c.client.Get().
Namespace(c.ns).
Resource("timetriggers").
VersionedParams(&opts, scheme.ParameterCodec).
Timeout(timeout).
Watch(ctx)
}
// Create takes the representation of a _timeTrigger and creates it. Returns the server's representation of the timeTrigger, and an error, if there is any.
func (c *timeTriggers) Create(ctx context.Context, _timeTrigger *v1.TimeTrigger, opts metav1.CreateOptions) (result *v1.TimeTrigger, err error) {
result = &v1.TimeTrigger{}
err = c.client.Post().
Namespace(c.ns).
Resource("timetriggers").
VersionedParams(&opts, scheme.ParameterCodec).
Body(_timeTrigger).
Do(ctx).
Into(result)
return
}
// Update takes the representation of a _timeTrigger and updates it. Returns the server's representation of the timeTrigger, and an error, if there is any.
func (c *timeTriggers) Update(ctx context.Context, _timeTrigger *v1.TimeTrigger, opts metav1.UpdateOptions) (result *v1.TimeTrigger, err error) {
result = &v1.TimeTrigger{}
err = c.client.Put().
Namespace(c.ns).
Resource("timetriggers").
Name(_timeTrigger.Name).
VersionedParams(&opts, scheme.ParameterCodec).
Body(_timeTrigger).
Do(ctx).
Into(result)
return
}
// Delete takes name of the _timeTrigger and deletes it. Returns an error if one occurs.
func (c *timeTriggers) Delete(ctx context.Context, name string, opts metav1.DeleteOptions) error {
return c.client.Delete().
Namespace(c.ns).
Resource("timetriggers").
Name(name).
Body(&opts).
Do(ctx).
Error()
}
// DeleteCollection deletes a collection of objects.
func (c *timeTriggers) DeleteCollection(ctx context.Context, opts metav1.DeleteOptions, listOpts metav1.ListOptions) error {
var timeout time.Duration
if listOpts.TimeoutSeconds != nil {
timeout = time.Duration(*listOpts.TimeoutSeconds) * time.Second
}
return c.client.Delete().
Namespace(c.ns).
Resource("timetriggers").
VersionedParams(&listOpts, scheme.ParameterCodec).
Timeout(timeout).
Body(&opts).
Do(ctx).
Error()
}
// Patch applies the patch and returns the patched timeTrigger.
func (c *timeTriggers) Patch(ctx context.Context, name string, pt types.PatchType, data []byte, opts metav1.PatchOptions, subresources ...string) (result *v1.TimeTrigger, err error) {
result = &v1.TimeTrigger{}
err = c.client.Patch(pt).
Namespace(c.ns).
Resource("timetriggers").
Name(name).
SubResource(subresources...).
VersionedParams(&opts, scheme.ParameterCodec).
Body(data).
Do(ctx).
Into(result)
return
}
// Apply takes the given apply declarative configuration, applies it and returns the applied timeTrigger.
func (c *timeTriggers) Apply(ctx context.Context, _timeTrigger *corev1.TimeTriggerApplyConfiguration, opts metav1.ApplyOptions) (result *v1.TimeTrigger, err error) {
if _timeTrigger == nil {
return nil, fmt.Errorf("_timeTrigger provided to Apply must not be nil")
}
patchOpts := opts.ToPatchOptions()
data, err := json.Marshal(_timeTrigger)
if err != nil {
return nil, err
}
name := _timeTrigger.Name
if name == nil {
return nil, fmt.Errorf("_timeTrigger.Name must be provided to Apply")
}
result = &v1.TimeTrigger{}
err = c.client.Patch(types.ApplyPatchType).
Namespace(c.ns).
Resource("timetriggers").
Name(*name).
VersionedParams(&patchOpts, scheme.ParameterCodec).
Body(data).
Do(ctx).
Into(result)
return
}
@@ -228,6 +228,7 @@ type SharedInformerFactory interface {
// Start initializes all requested informers. They are handled in goroutines // Start initializes all requested informers. They are handled in goroutines
// which run until the stop channel gets closed. // which run until the stop channel gets closed.
// Warning: Start does not block. When run in a go-routine, it will race with a later WaitForCacheSync.
Start(stopCh <-chan struct{}) Start(stopCh <-chan struct{})
// Shutdown marks a factory as shutting down. At that point no new // Shutdown marks a factory as shutting down. At that point no new
+5 -34
View File
@@ -20,8 +20,8 @@ package v1
import ( import (
v1 "github.com/fission/fission/pkg/apis/core/v1" v1 "github.com/fission/fission/pkg/apis/core/v1"
"k8s.io/apimachinery/pkg/api/errors"
"k8s.io/apimachinery/pkg/labels" "k8s.io/apimachinery/pkg/labels"
"k8s.io/client-go/listers"
"k8s.io/client-go/tools/cache" "k8s.io/client-go/tools/cache"
) )
@@ -38,25 +38,17 @@ type CanaryConfigLister interface {
// canaryConfigLister implements the CanaryConfigLister interface. // canaryConfigLister implements the CanaryConfigLister interface.
type canaryConfigLister struct { type canaryConfigLister struct {
indexer cache.Indexer listers.ResourceIndexer[*v1.CanaryConfig]
} }
// NewCanaryConfigLister returns a new CanaryConfigLister. // NewCanaryConfigLister returns a new CanaryConfigLister.
func NewCanaryConfigLister(indexer cache.Indexer) CanaryConfigLister { func NewCanaryConfigLister(indexer cache.Indexer) CanaryConfigLister {
return &canaryConfigLister{indexer: indexer} return &canaryConfigLister{listers.New[*v1.CanaryConfig](indexer, v1.Resource("canaryconfig"))}
}
// List lists all CanaryConfigs in the indexer.
func (s *canaryConfigLister) List(selector labels.Selector) (ret []*v1.CanaryConfig, err error) {
err = cache.ListAll(s.indexer, selector, func(m interface{}) {
ret = append(ret, m.(*v1.CanaryConfig))
})
return ret, err
} }
// CanaryConfigs returns an object that can list and get CanaryConfigs. // CanaryConfigs returns an object that can list and get CanaryConfigs.
func (s *canaryConfigLister) CanaryConfigs(namespace string) CanaryConfigNamespaceLister { func (s *canaryConfigLister) CanaryConfigs(namespace string) CanaryConfigNamespaceLister {
return canaryConfigNamespaceLister{indexer: s.indexer, namespace: namespace} return canaryConfigNamespaceLister{listers.NewNamespaced[*v1.CanaryConfig](s.ResourceIndexer, namespace)}
} }
// CanaryConfigNamespaceLister helps list and get CanaryConfigs. // CanaryConfigNamespaceLister helps list and get CanaryConfigs.
@@ -74,26 +66,5 @@ type CanaryConfigNamespaceLister interface {
// canaryConfigNamespaceLister implements the CanaryConfigNamespaceLister // canaryConfigNamespaceLister implements the CanaryConfigNamespaceLister
// interface. // interface.
type canaryConfigNamespaceLister struct { type canaryConfigNamespaceLister struct {
indexer cache.Indexer listers.ResourceIndexer[*v1.CanaryConfig]
namespace string
}
// List lists all CanaryConfigs in the indexer for a given namespace.
func (s canaryConfigNamespaceLister) List(selector labels.Selector) (ret []*v1.CanaryConfig, err error) {
err = cache.ListAllByNamespace(s.indexer, s.namespace, selector, func(m interface{}) {
ret = append(ret, m.(*v1.CanaryConfig))
})
return ret, err
}
// Get retrieves the CanaryConfig from the indexer for a given namespace and name.
func (s canaryConfigNamespaceLister) Get(name string) (*v1.CanaryConfig, error) {
obj, exists, err := s.indexer.GetByKey(s.namespace + "/" + name)
if err != nil {
return nil, err
}
if !exists {
return nil, errors.NewNotFound(v1.Resource("canaryconfig"), name)
}
return obj.(*v1.CanaryConfig), nil
} }
+5 -34
View File
@@ -20,8 +20,8 @@ package v1
import ( import (
v1 "github.com/fission/fission/pkg/apis/core/v1" v1 "github.com/fission/fission/pkg/apis/core/v1"
"k8s.io/apimachinery/pkg/api/errors"
"k8s.io/apimachinery/pkg/labels" "k8s.io/apimachinery/pkg/labels"
"k8s.io/client-go/listers"
"k8s.io/client-go/tools/cache" "k8s.io/client-go/tools/cache"
) )
@@ -38,25 +38,17 @@ type EnvironmentLister interface {
// environmentLister implements the EnvironmentLister interface. // environmentLister implements the EnvironmentLister interface.
type environmentLister struct { type environmentLister struct {
indexer cache.Indexer listers.ResourceIndexer[*v1.Environment]
} }
// NewEnvironmentLister returns a new EnvironmentLister. // NewEnvironmentLister returns a new EnvironmentLister.
func NewEnvironmentLister(indexer cache.Indexer) EnvironmentLister { func NewEnvironmentLister(indexer cache.Indexer) EnvironmentLister {
return &environmentLister{indexer: indexer} return &environmentLister{listers.New[*v1.Environment](indexer, v1.Resource("environment"))}
}
// List lists all Environments in the indexer.
func (s *environmentLister) List(selector labels.Selector) (ret []*v1.Environment, err error) {
err = cache.ListAll(s.indexer, selector, func(m interface{}) {
ret = append(ret, m.(*v1.Environment))
})
return ret, err
} }
// Environments returns an object that can list and get Environments. // Environments returns an object that can list and get Environments.
func (s *environmentLister) Environments(namespace string) EnvironmentNamespaceLister { func (s *environmentLister) Environments(namespace string) EnvironmentNamespaceLister {
return environmentNamespaceLister{indexer: s.indexer, namespace: namespace} return environmentNamespaceLister{listers.NewNamespaced[*v1.Environment](s.ResourceIndexer, namespace)}
} }
// EnvironmentNamespaceLister helps list and get Environments. // EnvironmentNamespaceLister helps list and get Environments.
@@ -74,26 +66,5 @@ type EnvironmentNamespaceLister interface {
// environmentNamespaceLister implements the EnvironmentNamespaceLister // environmentNamespaceLister implements the EnvironmentNamespaceLister
// interface. // interface.
type environmentNamespaceLister struct { type environmentNamespaceLister struct {
indexer cache.Indexer listers.ResourceIndexer[*v1.Environment]
namespace string
}
// List lists all Environments in the indexer for a given namespace.
func (s environmentNamespaceLister) List(selector labels.Selector) (ret []*v1.Environment, err error) {
err = cache.ListAllByNamespace(s.indexer, s.namespace, selector, func(m interface{}) {
ret = append(ret, m.(*v1.Environment))
})
return ret, err
}
// Get retrieves the Environment from the indexer for a given namespace and name.
func (s environmentNamespaceLister) Get(name string) (*v1.Environment, error) {
obj, exists, err := s.indexer.GetByKey(s.namespace + "/" + name)
if err != nil {
return nil, err
}
if !exists {
return nil, errors.NewNotFound(v1.Resource("environment"), name)
}
return obj.(*v1.Environment), nil
} }
+5 -34
View File
@@ -20,8 +20,8 @@ package v1
import ( import (
v1 "github.com/fission/fission/pkg/apis/core/v1" v1 "github.com/fission/fission/pkg/apis/core/v1"
"k8s.io/apimachinery/pkg/api/errors"
"k8s.io/apimachinery/pkg/labels" "k8s.io/apimachinery/pkg/labels"
"k8s.io/client-go/listers"
"k8s.io/client-go/tools/cache" "k8s.io/client-go/tools/cache"
) )
@@ -38,25 +38,17 @@ type FunctionLister interface {
// functionLister implements the FunctionLister interface. // functionLister implements the FunctionLister interface.
type functionLister struct { type functionLister struct {
indexer cache.Indexer listers.ResourceIndexer[*v1.Function]
} }
// NewFunctionLister returns a new FunctionLister. // NewFunctionLister returns a new FunctionLister.
func NewFunctionLister(indexer cache.Indexer) FunctionLister { func NewFunctionLister(indexer cache.Indexer) FunctionLister {
return &functionLister{indexer: indexer} return &functionLister{listers.New[*v1.Function](indexer, v1.Resource("function"))}
}
// List lists all Functions in the indexer.
func (s *functionLister) List(selector labels.Selector) (ret []*v1.Function, err error) {
err = cache.ListAll(s.indexer, selector, func(m interface{}) {
ret = append(ret, m.(*v1.Function))
})
return ret, err
} }
// Functions returns an object that can list and get Functions. // Functions returns an object that can list and get Functions.
func (s *functionLister) Functions(namespace string) FunctionNamespaceLister { func (s *functionLister) Functions(namespace string) FunctionNamespaceLister {
return functionNamespaceLister{indexer: s.indexer, namespace: namespace} return functionNamespaceLister{listers.NewNamespaced[*v1.Function](s.ResourceIndexer, namespace)}
} }
// FunctionNamespaceLister helps list and get Functions. // FunctionNamespaceLister helps list and get Functions.
@@ -74,26 +66,5 @@ type FunctionNamespaceLister interface {
// functionNamespaceLister implements the FunctionNamespaceLister // functionNamespaceLister implements the FunctionNamespaceLister
// interface. // interface.
type functionNamespaceLister struct { type functionNamespaceLister struct {
indexer cache.Indexer listers.ResourceIndexer[*v1.Function]
namespace string
}
// List lists all Functions in the indexer for a given namespace.
func (s functionNamespaceLister) List(selector labels.Selector) (ret []*v1.Function, err error) {
err = cache.ListAllByNamespace(s.indexer, s.namespace, selector, func(m interface{}) {
ret = append(ret, m.(*v1.Function))
})
return ret, err
}
// Get retrieves the Function from the indexer for a given namespace and name.
func (s functionNamespaceLister) Get(name string) (*v1.Function, error) {
obj, exists, err := s.indexer.GetByKey(s.namespace + "/" + name)
if err != nil {
return nil, err
}
if !exists {
return nil, errors.NewNotFound(v1.Resource("function"), name)
}
return obj.(*v1.Function), nil
} }
+5 -34
View File
@@ -20,8 +20,8 @@ package v1
import ( import (
v1 "github.com/fission/fission/pkg/apis/core/v1" v1 "github.com/fission/fission/pkg/apis/core/v1"
"k8s.io/apimachinery/pkg/api/errors"
"k8s.io/apimachinery/pkg/labels" "k8s.io/apimachinery/pkg/labels"
"k8s.io/client-go/listers"
"k8s.io/client-go/tools/cache" "k8s.io/client-go/tools/cache"
) )
@@ -38,25 +38,17 @@ type HTTPTriggerLister interface {
// hTTPTriggerLister implements the HTTPTriggerLister interface. // hTTPTriggerLister implements the HTTPTriggerLister interface.
type hTTPTriggerLister struct { type hTTPTriggerLister struct {
indexer cache.Indexer listers.ResourceIndexer[*v1.HTTPTrigger]
} }
// NewHTTPTriggerLister returns a new HTTPTriggerLister. // NewHTTPTriggerLister returns a new HTTPTriggerLister.
func NewHTTPTriggerLister(indexer cache.Indexer) HTTPTriggerLister { func NewHTTPTriggerLister(indexer cache.Indexer) HTTPTriggerLister {
return &hTTPTriggerLister{indexer: indexer} return &hTTPTriggerLister{listers.New[*v1.HTTPTrigger](indexer, v1.Resource("httptrigger"))}
}
// List lists all HTTPTriggers in the indexer.
func (s *hTTPTriggerLister) List(selector labels.Selector) (ret []*v1.HTTPTrigger, err error) {
err = cache.ListAll(s.indexer, selector, func(m interface{}) {
ret = append(ret, m.(*v1.HTTPTrigger))
})
return ret, err
} }
// HTTPTriggers returns an object that can list and get HTTPTriggers. // HTTPTriggers returns an object that can list and get HTTPTriggers.
func (s *hTTPTriggerLister) HTTPTriggers(namespace string) HTTPTriggerNamespaceLister { func (s *hTTPTriggerLister) HTTPTriggers(namespace string) HTTPTriggerNamespaceLister {
return hTTPTriggerNamespaceLister{indexer: s.indexer, namespace: namespace} return hTTPTriggerNamespaceLister{listers.NewNamespaced[*v1.HTTPTrigger](s.ResourceIndexer, namespace)}
} }
// HTTPTriggerNamespaceLister helps list and get HTTPTriggers. // HTTPTriggerNamespaceLister helps list and get HTTPTriggers.
@@ -74,26 +66,5 @@ type HTTPTriggerNamespaceLister interface {
// hTTPTriggerNamespaceLister implements the HTTPTriggerNamespaceLister // hTTPTriggerNamespaceLister implements the HTTPTriggerNamespaceLister
// interface. // interface.
type hTTPTriggerNamespaceLister struct { type hTTPTriggerNamespaceLister struct {
indexer cache.Indexer listers.ResourceIndexer[*v1.HTTPTrigger]
namespace string
}
// List lists all HTTPTriggers in the indexer for a given namespace.
func (s hTTPTriggerNamespaceLister) List(selector labels.Selector) (ret []*v1.HTTPTrigger, err error) {
err = cache.ListAllByNamespace(s.indexer, s.namespace, selector, func(m interface{}) {
ret = append(ret, m.(*v1.HTTPTrigger))
})
return ret, err
}
// Get retrieves the HTTPTrigger from the indexer for a given namespace and name.
func (s hTTPTriggerNamespaceLister) Get(name string) (*v1.HTTPTrigger, error) {
obj, exists, err := s.indexer.GetByKey(s.namespace + "/" + name)
if err != nil {
return nil, err
}
if !exists {
return nil, errors.NewNotFound(v1.Resource("httptrigger"), name)
}
return obj.(*v1.HTTPTrigger), nil
} }
@@ -20,8 +20,8 @@ package v1
import ( import (
v1 "github.com/fission/fission/pkg/apis/core/v1" v1 "github.com/fission/fission/pkg/apis/core/v1"
"k8s.io/apimachinery/pkg/api/errors"
"k8s.io/apimachinery/pkg/labels" "k8s.io/apimachinery/pkg/labels"
"k8s.io/client-go/listers"
"k8s.io/client-go/tools/cache" "k8s.io/client-go/tools/cache"
) )
@@ -38,25 +38,17 @@ type KubernetesWatchTriggerLister interface {
// kubernetesWatchTriggerLister implements the KubernetesWatchTriggerLister interface. // kubernetesWatchTriggerLister implements the KubernetesWatchTriggerLister interface.
type kubernetesWatchTriggerLister struct { type kubernetesWatchTriggerLister struct {
indexer cache.Indexer listers.ResourceIndexer[*v1.KubernetesWatchTrigger]
} }
// NewKubernetesWatchTriggerLister returns a new KubernetesWatchTriggerLister. // NewKubernetesWatchTriggerLister returns a new KubernetesWatchTriggerLister.
func NewKubernetesWatchTriggerLister(indexer cache.Indexer) KubernetesWatchTriggerLister { func NewKubernetesWatchTriggerLister(indexer cache.Indexer) KubernetesWatchTriggerLister {
return &kubernetesWatchTriggerLister{indexer: indexer} return &kubernetesWatchTriggerLister{listers.New[*v1.KubernetesWatchTrigger](indexer, v1.Resource("kuberneteswatchtrigger"))}
}
// List lists all KubernetesWatchTriggers in the indexer.
func (s *kubernetesWatchTriggerLister) List(selector labels.Selector) (ret []*v1.KubernetesWatchTrigger, err error) {
err = cache.ListAll(s.indexer, selector, func(m interface{}) {
ret = append(ret, m.(*v1.KubernetesWatchTrigger))
})
return ret, err
} }
// KubernetesWatchTriggers returns an object that can list and get KubernetesWatchTriggers. // KubernetesWatchTriggers returns an object that can list and get KubernetesWatchTriggers.
func (s *kubernetesWatchTriggerLister) KubernetesWatchTriggers(namespace string) KubernetesWatchTriggerNamespaceLister { func (s *kubernetesWatchTriggerLister) KubernetesWatchTriggers(namespace string) KubernetesWatchTriggerNamespaceLister {
return kubernetesWatchTriggerNamespaceLister{indexer: s.indexer, namespace: namespace} return kubernetesWatchTriggerNamespaceLister{listers.NewNamespaced[*v1.KubernetesWatchTrigger](s.ResourceIndexer, namespace)}
} }
// KubernetesWatchTriggerNamespaceLister helps list and get KubernetesWatchTriggers. // KubernetesWatchTriggerNamespaceLister helps list and get KubernetesWatchTriggers.
@@ -74,26 +66,5 @@ type KubernetesWatchTriggerNamespaceLister interface {
// kubernetesWatchTriggerNamespaceLister implements the KubernetesWatchTriggerNamespaceLister // kubernetesWatchTriggerNamespaceLister implements the KubernetesWatchTriggerNamespaceLister
// interface. // interface.
type kubernetesWatchTriggerNamespaceLister struct { type kubernetesWatchTriggerNamespaceLister struct {
indexer cache.Indexer listers.ResourceIndexer[*v1.KubernetesWatchTrigger]
namespace string
}
// List lists all KubernetesWatchTriggers in the indexer for a given namespace.
func (s kubernetesWatchTriggerNamespaceLister) List(selector labels.Selector) (ret []*v1.KubernetesWatchTrigger, err error) {
err = cache.ListAllByNamespace(s.indexer, s.namespace, selector, func(m interface{}) {
ret = append(ret, m.(*v1.KubernetesWatchTrigger))
})
return ret, err
}
// Get retrieves the KubernetesWatchTrigger from the indexer for a given namespace and name.
func (s kubernetesWatchTriggerNamespaceLister) Get(name string) (*v1.KubernetesWatchTrigger, error) {
obj, exists, err := s.indexer.GetByKey(s.namespace + "/" + name)
if err != nil {
return nil, err
}
if !exists {
return nil, errors.NewNotFound(v1.Resource("kuberneteswatchtrigger"), name)
}
return obj.(*v1.KubernetesWatchTrigger), nil
} }
@@ -20,8 +20,8 @@ package v1
import ( import (
v1 "github.com/fission/fission/pkg/apis/core/v1" v1 "github.com/fission/fission/pkg/apis/core/v1"
"k8s.io/apimachinery/pkg/api/errors"
"k8s.io/apimachinery/pkg/labels" "k8s.io/apimachinery/pkg/labels"
"k8s.io/client-go/listers"
"k8s.io/client-go/tools/cache" "k8s.io/client-go/tools/cache"
) )
@@ -38,25 +38,17 @@ type MessageQueueTriggerLister interface {
// messageQueueTriggerLister implements the MessageQueueTriggerLister interface. // messageQueueTriggerLister implements the MessageQueueTriggerLister interface.
type messageQueueTriggerLister struct { type messageQueueTriggerLister struct {
indexer cache.Indexer listers.ResourceIndexer[*v1.MessageQueueTrigger]
} }
// NewMessageQueueTriggerLister returns a new MessageQueueTriggerLister. // NewMessageQueueTriggerLister returns a new MessageQueueTriggerLister.
func NewMessageQueueTriggerLister(indexer cache.Indexer) MessageQueueTriggerLister { func NewMessageQueueTriggerLister(indexer cache.Indexer) MessageQueueTriggerLister {
return &messageQueueTriggerLister{indexer: indexer} return &messageQueueTriggerLister{listers.New[*v1.MessageQueueTrigger](indexer, v1.Resource("messagequeuetrigger"))}
}
// List lists all MessageQueueTriggers in the indexer.
func (s *messageQueueTriggerLister) List(selector labels.Selector) (ret []*v1.MessageQueueTrigger, err error) {
err = cache.ListAll(s.indexer, selector, func(m interface{}) {
ret = append(ret, m.(*v1.MessageQueueTrigger))
})
return ret, err
} }
// MessageQueueTriggers returns an object that can list and get MessageQueueTriggers. // MessageQueueTriggers returns an object that can list and get MessageQueueTriggers.
func (s *messageQueueTriggerLister) MessageQueueTriggers(namespace string) MessageQueueTriggerNamespaceLister { func (s *messageQueueTriggerLister) MessageQueueTriggers(namespace string) MessageQueueTriggerNamespaceLister {
return messageQueueTriggerNamespaceLister{indexer: s.indexer, namespace: namespace} return messageQueueTriggerNamespaceLister{listers.NewNamespaced[*v1.MessageQueueTrigger](s.ResourceIndexer, namespace)}
} }
// MessageQueueTriggerNamespaceLister helps list and get MessageQueueTriggers. // MessageQueueTriggerNamespaceLister helps list and get MessageQueueTriggers.
@@ -74,26 +66,5 @@ type MessageQueueTriggerNamespaceLister interface {
// messageQueueTriggerNamespaceLister implements the MessageQueueTriggerNamespaceLister // messageQueueTriggerNamespaceLister implements the MessageQueueTriggerNamespaceLister
// interface. // interface.
type messageQueueTriggerNamespaceLister struct { type messageQueueTriggerNamespaceLister struct {
indexer cache.Indexer listers.ResourceIndexer[*v1.MessageQueueTrigger]
namespace string
}
// List lists all MessageQueueTriggers in the indexer for a given namespace.
func (s messageQueueTriggerNamespaceLister) List(selector labels.Selector) (ret []*v1.MessageQueueTrigger, err error) {
err = cache.ListAllByNamespace(s.indexer, s.namespace, selector, func(m interface{}) {
ret = append(ret, m.(*v1.MessageQueueTrigger))
})
return ret, err
}
// Get retrieves the MessageQueueTrigger from the indexer for a given namespace and name.
func (s messageQueueTriggerNamespaceLister) Get(name string) (*v1.MessageQueueTrigger, error) {
obj, exists, err := s.indexer.GetByKey(s.namespace + "/" + name)
if err != nil {
return nil, err
}
if !exists {
return nil, errors.NewNotFound(v1.Resource("messagequeuetrigger"), name)
}
return obj.(*v1.MessageQueueTrigger), nil
} }
+5 -34
View File
@@ -20,8 +20,8 @@ package v1
import ( import (
v1 "github.com/fission/fission/pkg/apis/core/v1" v1 "github.com/fission/fission/pkg/apis/core/v1"
"k8s.io/apimachinery/pkg/api/errors"
"k8s.io/apimachinery/pkg/labels" "k8s.io/apimachinery/pkg/labels"
"k8s.io/client-go/listers"
"k8s.io/client-go/tools/cache" "k8s.io/client-go/tools/cache"
) )
@@ -38,25 +38,17 @@ type PackageLister interface {
// packageLister implements the PackageLister interface. // packageLister implements the PackageLister interface.
type packageLister struct { type packageLister struct {
indexer cache.Indexer listers.ResourceIndexer[*v1.Package]
} }
// NewPackageLister returns a new PackageLister. // NewPackageLister returns a new PackageLister.
func NewPackageLister(indexer cache.Indexer) PackageLister { func NewPackageLister(indexer cache.Indexer) PackageLister {
return &packageLister{indexer: indexer} return &packageLister{listers.New[*v1.Package](indexer, v1.Resource("package"))}
}
// List lists all Packages in the indexer.
func (s *packageLister) List(selector labels.Selector) (ret []*v1.Package, err error) {
err = cache.ListAll(s.indexer, selector, func(m interface{}) {
ret = append(ret, m.(*v1.Package))
})
return ret, err
} }
// Packages returns an object that can list and get Packages. // Packages returns an object that can list and get Packages.
func (s *packageLister) Packages(namespace string) PackageNamespaceLister { func (s *packageLister) Packages(namespace string) PackageNamespaceLister {
return packageNamespaceLister{indexer: s.indexer, namespace: namespace} return packageNamespaceLister{listers.NewNamespaced[*v1.Package](s.ResourceIndexer, namespace)}
} }
// PackageNamespaceLister helps list and get Packages. // PackageNamespaceLister helps list and get Packages.
@@ -74,26 +66,5 @@ type PackageNamespaceLister interface {
// packageNamespaceLister implements the PackageNamespaceLister // packageNamespaceLister implements the PackageNamespaceLister
// interface. // interface.
type packageNamespaceLister struct { type packageNamespaceLister struct {
indexer cache.Indexer listers.ResourceIndexer[*v1.Package]
namespace string
}
// List lists all Packages in the indexer for a given namespace.
func (s packageNamespaceLister) List(selector labels.Selector) (ret []*v1.Package, err error) {
err = cache.ListAllByNamespace(s.indexer, s.namespace, selector, func(m interface{}) {
ret = append(ret, m.(*v1.Package))
})
return ret, err
}
// Get retrieves the Package from the indexer for a given namespace and name.
func (s packageNamespaceLister) Get(name string) (*v1.Package, error) {
obj, exists, err := s.indexer.GetByKey(s.namespace + "/" + name)
if err != nil {
return nil, err
}
if !exists {
return nil, errors.NewNotFound(v1.Resource("package"), name)
}
return obj.(*v1.Package), nil
} }
+5 -34
View File
@@ -20,8 +20,8 @@ package v1
import ( import (
v1 "github.com/fission/fission/pkg/apis/core/v1" v1 "github.com/fission/fission/pkg/apis/core/v1"
"k8s.io/apimachinery/pkg/api/errors"
"k8s.io/apimachinery/pkg/labels" "k8s.io/apimachinery/pkg/labels"
"k8s.io/client-go/listers"
"k8s.io/client-go/tools/cache" "k8s.io/client-go/tools/cache"
) )
@@ -38,25 +38,17 @@ type TimeTriggerLister interface {
// timeTriggerLister implements the TimeTriggerLister interface. // timeTriggerLister implements the TimeTriggerLister interface.
type timeTriggerLister struct { type timeTriggerLister struct {
indexer cache.Indexer listers.ResourceIndexer[*v1.TimeTrigger]
} }
// NewTimeTriggerLister returns a new TimeTriggerLister. // NewTimeTriggerLister returns a new TimeTriggerLister.
func NewTimeTriggerLister(indexer cache.Indexer) TimeTriggerLister { func NewTimeTriggerLister(indexer cache.Indexer) TimeTriggerLister {
return &timeTriggerLister{indexer: indexer} return &timeTriggerLister{listers.New[*v1.TimeTrigger](indexer, v1.Resource("timetrigger"))}
}
// List lists all TimeTriggers in the indexer.
func (s *timeTriggerLister) List(selector labels.Selector) (ret []*v1.TimeTrigger, err error) {
err = cache.ListAll(s.indexer, selector, func(m interface{}) {
ret = append(ret, m.(*v1.TimeTrigger))
})
return ret, err
} }
// TimeTriggers returns an object that can list and get TimeTriggers. // TimeTriggers returns an object that can list and get TimeTriggers.
func (s *timeTriggerLister) TimeTriggers(namespace string) TimeTriggerNamespaceLister { func (s *timeTriggerLister) TimeTriggers(namespace string) TimeTriggerNamespaceLister {
return timeTriggerNamespaceLister{indexer: s.indexer, namespace: namespace} return timeTriggerNamespaceLister{listers.NewNamespaced[*v1.TimeTrigger](s.ResourceIndexer, namespace)}
} }
// TimeTriggerNamespaceLister helps list and get TimeTriggers. // TimeTriggerNamespaceLister helps list and get TimeTriggers.
@@ -74,26 +66,5 @@ type TimeTriggerNamespaceLister interface {
// timeTriggerNamespaceLister implements the TimeTriggerNamespaceLister // timeTriggerNamespaceLister implements the TimeTriggerNamespaceLister
// interface. // interface.
type timeTriggerNamespaceLister struct { type timeTriggerNamespaceLister struct {
indexer cache.Indexer listers.ResourceIndexer[*v1.TimeTrigger]
namespace string
}
// List lists all TimeTriggers in the indexer for a given namespace.
func (s timeTriggerNamespaceLister) List(selector labels.Selector) (ret []*v1.TimeTrigger, err error) {
err = cache.ListAllByNamespace(s.indexer, s.namespace, selector, func(m interface{}) {
ret = append(ret, m.(*v1.TimeTrigger))
})
return ret, err
}
// Get retrieves the TimeTrigger from the indexer for a given namespace and name.
func (s timeTriggerNamespaceLister) Get(name string) (*v1.TimeTrigger, error) {
obj, exists, err := s.indexer.GetByKey(s.namespace + "/" + name)
if err != nil {
return nil, err
}
if !exists {
return nil, errors.NewNotFound(v1.Resource("timetrigger"), name)
}
return obj.(*v1.TimeTrigger), nil
} }
+16 -23
View File
@@ -59,8 +59,8 @@ type (
mqtLister map[string]flisterv1.MessageQueueTriggerLister mqtLister map[string]flisterv1.MessageQueueTriggerLister
mqtListerSynced map[string]k8sCache.InformerSynced mqtListerSynced map[string]k8sCache.InformerSynced
mqTriggerCreateUpdateQueue workqueue.RateLimitingInterface mqTriggerCreateUpdateQueue workqueue.TypedRateLimitingInterface[string]
mqTriggerDeleteQueue workqueue.RateLimitingInterface mqTriggerDeleteQueue workqueue.TypedRateLimitingInterface[*fv1.MessageQueueTrigger]
} }
triggerSubscription struct { triggerSubscription struct {
@@ -93,8 +93,8 @@ func MakeMessageQueueTriggerManager(logger *zap.Logger,
mqtListerSynced: make(map[string]k8sCache.InformerSynced, 0), mqtListerSynced: make(map[string]k8sCache.InformerSynced, 0),
messageQueueType: mqType, messageQueueType: mqType,
messageQueue: messageQueue, messageQueue: messageQueue,
mqTriggerCreateUpdateQueue: workqueue.NewNamedRateLimitingQueue(workqueue.DefaultControllerRateLimiter(), "MqtAddUpdateQueue"), mqTriggerCreateUpdateQueue: workqueue.NewTypedRateLimitingQueueWithConfig(workqueue.DefaultTypedControllerRateLimiter[string](), workqueue.TypedRateLimitingQueueConfig[string]{Name: "MqtAddUpdateQueue"}),
mqTriggerDeleteQueue: workqueue.NewNamedRateLimitingQueue(workqueue.DefaultControllerRateLimiter(), "MqtDeleteQueue"), mqTriggerDeleteQueue: workqueue.NewTypedRateLimitingQueueWithConfig(workqueue.DefaultTypedControllerRateLimiter[*fv1.MessageQueueTrigger](), workqueue.TypedRateLimitingQueueConfig[*fv1.MessageQueueTrigger]{Name: "MqtDeleteQueue"}),
} }
for ns, informer := range finformerFactory { for ns, informer := range finformerFactory {
@@ -354,11 +354,10 @@ func (mqt *MessageQueueTriggerManager) getMqtLister(namespace string) (flisterv1
func (mqt *MessageQueueTriggerManager) mqTriggerCreateUpdateQueueProcessFunc(ctx context.Context) bool { func (mqt *MessageQueueTriggerManager) mqTriggerCreateUpdateQueueProcessFunc(ctx context.Context) bool {
maxRetries := 3 maxRetries := 3
obj, quit := mqt.mqTriggerCreateUpdateQueue.Get() key, quit := mqt.mqTriggerCreateUpdateQueue.Get()
if quit { if quit {
return false return false
} }
key := obj.(string)
defer mqt.mqTriggerCreateUpdateQueue.Done(key) defer mqt.mqTriggerCreateUpdateQueue.Done(key)
namespace, name, err := k8sCache.SplitMetaNamespaceKey(key) namespace, name, err := k8sCache.SplitMetaNamespaceKey(key)
@@ -409,33 +408,27 @@ func (mqt *MessageQueueTriggerManager) mqTriggerCreateUpdateQueueProcessFunc(ctx
func (mqt *MessageQueueTriggerManager) mqTriggerDeleteQueueProcessFunc(ctx context.Context) bool { func (mqt *MessageQueueTriggerManager) mqTriggerDeleteQueueProcessFunc(ctx context.Context) bool {
maxRetries := 3 maxRetries := 3
obj, quit := mqt.mqTriggerDeleteQueue.Get() mqTrigger, quit := mqt.mqTriggerDeleteQueue.Get()
if quit { if quit {
return false return false
} }
defer mqt.mqTriggerDeleteQueue.Done(obj) defer mqt.mqTriggerDeleteQueue.Done(mqTrigger)
mqTrigger, ok := obj.(*fv1.MessageQueueTrigger)
if !ok {
mqt.logger.Error("unexpected type when deleting mqt to message queue trigger manager", zap.Any("obj", obj))
mqt.mqTriggerDeleteQueue.Forget(obj)
return false
}
mqt.logger.Debug("Delete mqt", zap.Any("trigger: ", mqTrigger.ObjectMeta)) mqt.logger.Debug("Delete mqt", zap.Any("trigger: ", mqTrigger.ObjectMeta))
triggerSubscription := mqt.getTriggerSubscription(mqTrigger) triggerSubscription := mqt.getTriggerSubscription(mqTrigger)
if triggerSubscription == nil { if triggerSubscription == nil {
mqt.logger.Info("Unsubscribe failed", zap.String("trigger_name", mqTrigger.ObjectMeta.Name)) mqt.logger.Info("Unsubscribe failed", zap.String("trigger_name", mqTrigger.ObjectMeta.Name))
mqt.mqTriggerDeleteQueue.Forget(obj) mqt.mqTriggerDeleteQueue.Forget(mqTrigger)
return false return false
} }
err := mqt.messageQueue.Unsubscribe(triggerSubscription.subscription) err := mqt.messageQueue.Unsubscribe(triggerSubscription.subscription)
if err != nil { if err != nil {
if mqt.mqTriggerDeleteQueue.NumRequeues(obj) < maxRetries { if mqt.mqTriggerDeleteQueue.NumRequeues(mqTrigger) < maxRetries {
mqt.mqTriggerDeleteQueue.AddRateLimited(obj) mqt.mqTriggerDeleteQueue.AddRateLimited(mqTrigger)
mqt.logger.Error("failed to unsubscribe from message queue trigger, retrying", zap.Error(err), zap.String("trigger_name", mqTrigger.ObjectMeta.Name)) mqt.logger.Error("failed to unsubscribe from message queue trigger, retrying", zap.Error(err), zap.String("trigger_name", mqTrigger.ObjectMeta.Name))
} else { } else {
mqt.mqTriggerDeleteQueue.Forget(obj) mqt.mqTriggerDeleteQueue.Forget(mqTrigger)
mqt.logger.Error("failed to unsubscribe from message queue trigger, max retries reached", zap.Error(err)) mqt.logger.Error("failed to unsubscribe from message queue trigger, max retries reached", zap.Error(err))
} }
return false return false
@@ -443,17 +436,17 @@ func (mqt *MessageQueueTriggerManager) mqTriggerDeleteQueueProcessFunc(ctx conte
err = mqt.delTriggerSubscription(mqTrigger) err = mqt.delTriggerSubscription(mqTrigger)
if err != nil { if err != nil {
if mqt.mqTriggerDeleteQueue.NumRequeues(obj) < maxRetries { if mqt.mqTriggerDeleteQueue.NumRequeues(mqTrigger) < maxRetries {
mqt.mqTriggerDeleteQueue.AddRateLimited(obj) mqt.mqTriggerDeleteQueue.AddRateLimited(mqTrigger)
mqt.logger.Error("error deleting mqt, retrying", zap.Any("obj", obj), zap.Error(err)) mqt.logger.Error("error deleting mqt, retrying", zap.Any("obj", mqTrigger), zap.Error(err))
} else { } else {
mqt.mqTriggerDeleteQueue.Forget(obj) mqt.mqTriggerDeleteQueue.Forget(mqTrigger)
mqt.logger.Error("deleting message queue trigger failed, max retries reached", zap.Error(err), zap.String("trigger_name", mqTrigger.ObjectMeta.Name)) mqt.logger.Error("deleting message queue trigger failed, max retries reached", zap.Error(err), zap.String("trigger_name", mqTrigger.ObjectMeta.Name))
} }
return false return false
} }
mqt.mqTriggerDeleteQueue.Forget(obj) mqt.mqTriggerDeleteQueue.Forget(mqTrigger)
mqt.logger.Info("message queue trigger deleted", zap.String("trigger_name", mqTrigger.ObjectMeta.Name)) mqt.logger.Info("message queue trigger deleted", zap.String("trigger_name", mqTrigger.ObjectMeta.Name))
return false return false
} }
+150 -162
View File
@@ -1,175 +1,163 @@
#################################### apiVersion: skaffold/v4beta11
# This file can be used with Skaffold (https://github.com/GoogleContainerTools/skaffold) to
# build and deploy Fission to Kubernetes cluster.
# Skaffold version v2.0.3 is used for this configuration.
############## Usage ##############
# Skaffold CLI should be installed on your machine.
# For building & deploying to Cloud Provider
# $ skaffold config set default-repo vishalbiyani (vishalbiyani - should be your registry/Dockerhub handle)
# $ `skaffold run`
# For building & deploying to Kind cluster use Kind profile
# $ `skaffold run -p kind`
####################################
apiVersion: skaffold/v4beta1
kind: Config kind: Config
build: build:
artifacts: artifacts:
- image: fission-bundle - image: fission-bundle
context: dist/fission-bundle_linux_amd64_v1 context: dist/fission-bundle_linux_amd64_v1
- image: fetcher - image: fetcher
context: dist/fetcher_linux_amd64_v1 context: dist/fetcher_linux_amd64_v1
- image: pre-upgrade-checks - image: pre-upgrade-checks
context: dist/pre-upgrade-checks_linux_amd64_v1 context: dist/pre-upgrade-checks_linux_amd64_v1
- image: reporter - image: reporter
context: dist/reporter_linux_amd64_v1 context: dist/reporter_linux_amd64_v1
manifests: manifests:
helm: helm:
flags: flags:
install: install:
- --timeout=3m - --timeout=3m
- --debug - --debug
- --dependency-update - --dependency-update
upgrade: upgrade:
- --timeout=3m - --timeout=3m
- --install - --install
- --debug - --debug
releases: releases:
- name: fission - name: fission
chartPath: ./charts/fission-all chartPath: ./charts/fission-all
valuesFiles: valuesFiles:
- ./charts/fission-all/values.yaml - ./charts/fission-all/values.yaml
namespace: fission
setValues:
analytics: "false"
builderPodSpec.enabled: "false"
canaryDeployment.enabled: "false"
debugEnv: "false"
fetcher.imageTag: ""
grafana.dashboards.enabled: "false"
imageTag: ""
influxdb.enabled: "false"
namespace: fission namespace: fission
builderNamespace: "" setValues:
functionNamespace: "" analytics: "false"
openTelemetry.otlpCollectorEndpoint: "" builderNamespace: ""
openTelemetry.otlpInsecure: "true" builderPodSpec.enabled: "false"
podMonitor.additionalPodMonitorLabels.release: prometheus canaryDeployment.enabled: "false"
podMonitor.enabled: "false" debugEnv: "false"
podMonitor.namespace: monitoring fetcher.imageTag: ""
pprof.enabled: "false" functionNamespace: ""
preUpgradeChecks.imageTag: "" grafana.dashboards.enabled: "false"
priorityClassName: system-cluster-critical imageTag: ""
prometheus.serviceEndpoint: "" influxdb.enabled: "false"
repository: ghcr.io namespace: fission
routerServiceType: LoadBalancer openTelemetry.otlpCollectorEndpoint: ""
runtimePodSpec.enabled: "false" openTelemetry.otlpInsecure: "true"
serviceMonitor.additionalServiceMonitorLabels.release: prometheus podMonitor.additionalPodMonitorLabels.release: prometheus
serviceMonitor.enabled: "false" podMonitor.enabled: "false"
serviceMonitor.namespace: monitoring podMonitor.namespace: monitoring
storagesvc.archivePruner.enabled: "true" pprof.enabled: "false"
storagesvc.archivePruner.interval: "60" preUpgradeChecks.imageTag: ""
terminationMessagePath: /var/log/termination-log priorityClassName: system-cluster-critical
terminationMessagePolicy: FallbackToLogsOnError prometheus.serviceEndpoint: ""
setValueTemplates: repository: ghcr.io
fetcher.image: '{{.IMAGE_FULLY_QUALIFIED_fetcher}}' routerServiceType: LoadBalancer
image: '{{.IMAGE_FULLY_QUALIFIED_fission_bundle}}' runtimePodSpec.enabled: "false"
postInstallReportImage: '{{.IMAGE_FULLY_QUALIFIED_reporter}}' serviceMonitor.additionalServiceMonitorLabels.release: prometheus
preUpgradeChecks.image: '{{.IMAGE_FULLY_QUALIFIED_pre_upgrade_checks}}' serviceMonitor.enabled: "false"
wait: true serviceMonitor.namespace: monitoring
storagesvc.archivePruner.enabled: "true"
storagesvc.archivePruner.interval: "60"
terminationMessagePath: /var/log/termination-log
terminationMessagePolicy: FallbackToLogsOnError
setValueTemplates:
fetcher.image: '{{.IMAGE_FULLY_QUALIFIED_fetcher}}'
image: '{{.IMAGE_FULLY_QUALIFIED_fission_bundle}}'
postInstallReportImage: '{{.IMAGE_FULLY_QUALIFIED_reporter}}'
preUpgradeChecks.image: '{{.IMAGE_FULLY_QUALIFIED_pre_upgrade_checks}}'
wait: true
deploy: deploy:
helm: {} helm: {}
profiles: profiles:
- name: kind - name: kind
patches: patches:
- op: replace - op: replace
path: /manifests/helm/releases/0/setValues/repository path: /manifests/helm/releases/0/setValues/repository
value: "" value: ""
- op: replace - op: replace
path: /manifests/helm/releases/0/setValues/routerServiceType path: /manifests/helm/releases/0/setValues/routerServiceType
value: NodePort value: NodePort
- name: kind-debug - name: kind-debug
patches: patches:
- op: replace - op: replace
path: /manifests/helm/releases/0/setValues/repository path: /manifests/helm/releases/0/setValues/repository
value: "" value: ""
- op: replace - op: replace
path: /manifests/helm/releases/0/setValues/routerServiceType path: /manifests/helm/releases/0/setValues/routerServiceType
value: NodePort value: NodePort
- op: replace - op: replace
path: /manifests/helm/releases/0/setValues/debugEnv path: /manifests/helm/releases/0/setValues/debugEnv
value: true value: true
- op: replace - op: replace
path: /manifests/helm/releases/0/setValues/pprof.enabled path: /manifests/helm/releases/0/setValues/pprof.enabled
value: true value: true
- name: kind-ci - name: kind-ci
patches: patches:
- op: replace - op: replace
path: /manifests/helm/releases/0/setValues/repository path: /manifests/helm/releases/0/setValues/repository
value: "" value: ""
- op: replace - op: replace
path: /manifests/helm/releases/0/setValues/storagesvc.archivePruner.interval path: /manifests/helm/releases/0/setValues/storagesvc.archivePruner.interval
value: 1 value: 1
- op: replace - op: replace
path: /manifests/helm/releases/0/setValues/routerServiceType path: /manifests/helm/releases/0/setValues/routerServiceType
value: NodePort value: NodePort
- op: replace - op: replace
path: /manifests/helm/releases/0/setValues/canaryDeployment.enabled path: /manifests/helm/releases/0/setValues/canaryDeployment.enabled
value: true value: true
- op: replace - op: replace
path: /manifests/helm/releases/0/setValues/prometheus.serviceEndpoint path: /manifests/helm/releases/0/setValues/prometheus.serviceEndpoint
value: http://prometheus-operated.monitoring.svc.cluster.local:9090 value: http://prometheus-operated.monitoring.svc.cluster.local:9090
- op: replace - op: replace
path: /manifests/helm/releases/0/setValues/podMonitor.enabled path: /manifests/helm/releases/0/setValues/podMonitor.enabled
value: true value: true
- op: replace - op: replace
path: /manifests/helm/releases/0/setValues/serviceMonitor.enabled path: /manifests/helm/releases/0/setValues/serviceMonitor.enabled
value: true value: true
- op: replace - op: replace
path: /manifests/helm/releases/0/setValues/grafana.dashboards.enabled path: /manifests/helm/releases/0/setValues/grafana.dashboards.enabled
value: true value: true
- name: kind-ci-old - name: kind-ci-old
patches: patches:
- op: replace - op: replace
path: /manifests/helm/releases/0/setValues/repository path: /manifests/helm/releases/0/setValues/repository
value: "" value: ""
- op: replace - op: replace
path: /manifests/helm/releases/0/setValues/storagesvc.archivePruner.interval path: /manifests/helm/releases/0/setValues/storagesvc.archivePruner.interval
value: 1 value: 1
- op: replace - op: replace
path: /manifests/helm/releases/0/setValues/routerServiceType path: /manifests/helm/releases/0/setValues/routerServiceType
value: NodePort value: NodePort
- op: replace - op: replace
path: /manifests/helm/releases/0/setValues/canaryDeployment.enabled path: /manifests/helm/releases/0/setValues/canaryDeployment.enabled
value: true value: true
- op: replace - op: replace
path: /manifests/helm/releases/0/setValues/prometheus.serviceEndpoint path: /manifests/helm/releases/0/setValues/prometheus.serviceEndpoint
value: http://prometheus-operated.monitoring.svc.cluster.local:9090 value: http://prometheus-operated.monitoring.svc.cluster.local:9090
- op: replace - op: replace
path: /manifests/helm/releases/0/setValues/podMonitor.enabled path: /manifests/helm/releases/0/setValues/podMonitor.enabled
value: true value: true
- op: replace - op: replace
path: /manifests/helm/releases/0/setValues/serviceMonitor.enabled path: /manifests/helm/releases/0/setValues/serviceMonitor.enabled
value: true value: true
- op: replace - op: replace
path: /manifests/helm/releases/0/setValues/grafana.dashboards.enabled path: /manifests/helm/releases/0/setValues/grafana.dashboards.enabled
value: true value: true
- op: replace - op: replace
path: /manifests/helm/releases/0/setValues/builderNamespace path: /manifests/helm/releases/0/setValues/builderNamespace
value: fission-builder value: fission-builder
- op: replace - op: replace
path: /manifests/helm/releases/0/setValues/functionNamespace path: /manifests/helm/releases/0/setValues/functionNamespace
value: fission-function value: fission-function
- name: kind-opentelemetry - name: kind-opentelemetry
patches: patches:
- op: replace - op: replace
path: /manifests/helm/releases/0/setValues/repository path: /manifests/helm/releases/0/setValues/repository
value: "" value: ""
- op: replace - op: replace
path: /manifests/helm/releases/0/setValues/routerServiceType path: /manifests/helm/releases/0/setValues/routerServiceType
value: NodePort value: NodePort
- op: replace - op: replace
path: /manifests/helm/releases/0/setValues/pprof.enabled path: /manifests/helm/releases/0/setValues/pprof.enabled
value: true value: true
- op: replace - op: replace
path: /manifests/helm/releases/0/setValues/openTelemetry.otlpCollectorEndpoint path: /manifests/helm/releases/0/setValues/openTelemetry.otlpCollectorEndpoint
value: otel-collector.opentelemetry-operator-system.svc:4317 value: otel-collector.opentelemetry-operator-system.svc:4317