mirror of
https://github.com/zalando/postgres-operator.git
synced 2026-10-18 04:36:23 +02:00
Modernize code generation
Signed-off-by: Mikkel Oscar Lyderik Larsen <mikkel.larsen@zalando.de>
This commit is contained in:
@@ -26,7 +26,7 @@ jobs:
|
|||||||
go-version: "^1.25.3"
|
go-version: "^1.25.3"
|
||||||
|
|
||||||
- name: Run unit tests
|
- name: Run unit tests
|
||||||
run: make deps mocks test
|
run: make test
|
||||||
|
|
||||||
- name: Define image name
|
- name: Define image name
|
||||||
id: image
|
id: image
|
||||||
|
|||||||
@@ -16,7 +16,7 @@ jobs:
|
|||||||
with:
|
with:
|
||||||
go-version: "^1.25.3"
|
go-version: "^1.25.3"
|
||||||
- name: Make dependencies
|
- name: Make dependencies
|
||||||
run: make deps mocks
|
run: make mocks
|
||||||
- name: Code generation
|
- name: Code generation
|
||||||
run: make codegen
|
run: make codegen
|
||||||
- name: Run unit tests
|
- name: Run unit tests
|
||||||
|
|||||||
@@ -16,7 +16,7 @@ jobs:
|
|||||||
with:
|
with:
|
||||||
go-version: "^1.25.3"
|
go-version: "^1.25.3"
|
||||||
- name: Make dependencies
|
- name: Make dependencies
|
||||||
run: make deps mocks
|
run: make mocks
|
||||||
- name: Compile
|
- name: Compile
|
||||||
run: make linux
|
run: make linux
|
||||||
- name: Run unit tests
|
- name: Run unit tests
|
||||||
|
|||||||
@@ -19,6 +19,8 @@ GITURL = $(shell git config --get remote.origin.url)
|
|||||||
GITSTATUS = $(shell git status --porcelain || echo "no changes")
|
GITSTATUS = $(shell git status --porcelain || echo "no changes")
|
||||||
SOURCES = cmd/main.go
|
SOURCES = cmd/main.go
|
||||||
VERSION ?= $(shell git describe --tags --always --dirty)
|
VERSION ?= $(shell git describe --tags --always --dirty)
|
||||||
|
CRD_SOURCES = $(shell find pkg/apis/zalando.org pkg/apis/acid.zalan.do -name '*.go' -not -name '*.deepcopy.go')
|
||||||
|
GENERATED = pkg/apis/zalando.org/v1/zz_generated.deepcopy.go pkg/apis/acid.zalan.do/v1/zz_generated.deepcopy.go
|
||||||
DIRS := cmd pkg
|
DIRS := cmd pkg
|
||||||
PKG := `go list ./... | grep -v /vendor/`
|
PKG := `go list ./... | grep -v /vendor/`
|
||||||
|
|
||||||
@@ -50,15 +52,20 @@ default: local
|
|||||||
clean:
|
clean:
|
||||||
rm -rf build
|
rm -rf build
|
||||||
|
|
||||||
local: ${SOURCES}
|
verify:
|
||||||
hack/verify-codegen.sh
|
hack/verify-codegen.sh
|
||||||
CGO_ENABLED=${CGO_ENABLED} go build -o build/${BINARY} $(LOCAL_BUILD_FLAGS) -ldflags "$(LDFLAGS)" $^
|
|
||||||
|
|
||||||
linux: ${SOURCES}
|
$(GENERATED): go.mod $(CRD_SOURCES)
|
||||||
GOOS=linux GOARCH=amd64 CGO_ENABLED=${CGO_ENABLED} go build -o build/linux/${BINARY} ${BUILD_FLAGS} -ldflags "$(LDFLAGS)" $^
|
hack/update-codegen.sh
|
||||||
|
|
||||||
macos: ${SOURCES}
|
local: ${SOURCES} $(GENERATED)
|
||||||
GOOS=darwin GOARCH=amd64 CGO_ENABLED=${CGO_ENABLED} go build -o build/macos/${BINARY} ${BUILD_FLAGS} -ldflags "$(LDFLAGS)" $^
|
CGO_ENABLED=${CGO_ENABLED} go build -o build/${BINARY} $(LOCAL_BUILD_FLAGS) -ldflags "$(LDFLAGS)" $(SOURCES)
|
||||||
|
|
||||||
|
linux: ${SOURCES} $(GENERATED)
|
||||||
|
GOOS=linux GOARCH=amd64 CGO_ENABLED=${CGO_ENABLED} go build -o build/linux/${BINARY} ${BUILD_FLAGS} -ldflags "$(LDFLAGS)" $(SOURCES)
|
||||||
|
|
||||||
|
macos: ${SOURCES} $(GENERATED)
|
||||||
|
GOOS=darwin GOARCH=amd64 CGO_ENABLED=${CGO_ENABLED} go build -o build/macos/${BINARY} ${BUILD_FLAGS} -ldflags "$(LDFLAGS)" $(SOURCES)
|
||||||
|
|
||||||
docker: ${DOCKERDIR}/${DOCKERFILE}
|
docker: ${DOCKERDIR}/${DOCKERFILE}
|
||||||
echo `(env)`
|
echo `(env)`
|
||||||
@@ -77,11 +84,6 @@ push:
|
|||||||
mocks:
|
mocks:
|
||||||
GO111MODULE=on go generate ./...
|
GO111MODULE=on go generate ./...
|
||||||
|
|
||||||
tools:
|
|
||||||
GO111MODULE=on go get k8s.io/client-go@kubernetes-1.32.9
|
|
||||||
GO111MODULE=on go install github.com/golang/mock/mockgen@v1.6.0
|
|
||||||
GO111MODULE=on go mod tidy
|
|
||||||
|
|
||||||
fmt:
|
fmt:
|
||||||
@gofmt -l -w -s $(DIRS)
|
@gofmt -l -w -s $(DIRS)
|
||||||
|
|
||||||
@@ -89,15 +91,10 @@ vet:
|
|||||||
@go vet $(PKG)
|
@go vet $(PKG)
|
||||||
@staticcheck $(PKG)
|
@staticcheck $(PKG)
|
||||||
|
|
||||||
deps: tools
|
test: mocks $(GENERATED)
|
||||||
GO111MODULE=on go mod vendor
|
|
||||||
|
|
||||||
test:
|
|
||||||
hack/verify-codegen.sh
|
|
||||||
GO111MODULE=on go test ./...
|
GO111MODULE=on go test ./...
|
||||||
|
|
||||||
codegen:
|
codegen: $(GENERATED)
|
||||||
hack/update-codegen.sh
|
|
||||||
|
|
||||||
e2e: docker # build operator image to be tested
|
e2e: docker # build operator image to be tested
|
||||||
cd e2e; make e2etest
|
cd e2e; make e2etest
|
||||||
|
|||||||
+1
-1
@@ -9,4 +9,4 @@ mkdir -p "$team_repo"
|
|||||||
ln -s "$PWD" "$project_dir"
|
ln -s "$PWD" "$project_dir"
|
||||||
cd "$project_dir"
|
cd "$project_dir"
|
||||||
|
|
||||||
make deps clean docker push
|
make clean docker push
|
||||||
|
|||||||
+1
-1
@@ -13,7 +13,7 @@ pipeline:
|
|||||||
commands:
|
commands:
|
||||||
- desc: Run unit tests
|
- desc: Run unit tests
|
||||||
cmd: |
|
cmd: |
|
||||||
make deps mocks test
|
make mocks test
|
||||||
|
|
||||||
- desc: Build Docker image
|
- desc: Build Docker image
|
||||||
cmd: |
|
cmd: |
|
||||||
|
|||||||
+2
-6
@@ -33,12 +33,9 @@ by setting the `GO111MODULE` environment variable to `on`. The make targets do
|
|||||||
this for you, so simply run
|
this for you, so simply run
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
make deps
|
make
|
||||||
```
|
```
|
||||||
|
|
||||||
This would take a while to complete. You have to redo `make deps` every time
|
|
||||||
your dependencies list changes, i.e. after adding a new library dependency.
|
|
||||||
|
|
||||||
Build the operator with the `make docker` command. You may define the TAG
|
Build the operator with the `make docker` command. You may define the TAG
|
||||||
variable to assign an explicit tag to your Docker image and the IMAGE to set
|
variable to assign an explicit tag to your Docker image and the IMAGE to set
|
||||||
the image name. By default, the tag is computed with
|
the image name. By default, the tag is computed with
|
||||||
@@ -223,14 +220,13 @@ dlv connect 127.0.0.1:DLV_PORT
|
|||||||
Prerequisites:
|
Prerequisites:
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
make deps
|
|
||||||
make mocks
|
make mocks
|
||||||
```
|
```
|
||||||
|
|
||||||
To run all unit tests, you can simply do:
|
To run all unit tests, you can simply do:
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
go test ./pkg/...
|
make test
|
||||||
```
|
```
|
||||||
|
|
||||||
In case if you need to debug your unit test, it's possible to use delve:
|
In case if you need to debug your unit test, it's possible to use delve:
|
||||||
|
|||||||
@@ -15,10 +15,9 @@ require (
|
|||||||
golang.org/x/crypto v0.43.0
|
golang.org/x/crypto v0.43.0
|
||||||
gopkg.in/yaml.v2 v2.4.0
|
gopkg.in/yaml.v2 v2.4.0
|
||||||
k8s.io/api v0.32.9
|
k8s.io/api v0.32.9
|
||||||
k8s.io/apiextensions-apiserver v0.25.9
|
k8s.io/apiextensions-apiserver v0.32.9
|
||||||
k8s.io/apimachinery v0.32.9
|
k8s.io/apimachinery v0.32.9
|
||||||
k8s.io/client-go v0.32.9
|
k8s.io/client-go v0.32.9
|
||||||
k8s.io/code-generator v0.25.9
|
|
||||||
)
|
)
|
||||||
|
|
||||||
require (
|
require (
|
||||||
@@ -63,8 +62,8 @@ require (
|
|||||||
gopkg.in/evanphx/json-patch.v4 v4.12.0 // 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/yaml.v3 v3.0.1 // indirect
|
gopkg.in/yaml.v3 v3.0.1 // indirect
|
||||||
k8s.io/gengo v0.0.0-20220902162205-c0856e24416d // indirect
|
k8s.io/code-generator v0.32.9 // indirect
|
||||||
k8s.io/gengo/v2 v2.0.0-20240826214909-a7b603a56eb7 // indirect
|
k8s.io/gengo/v2 v2.0.0-20240911193312-2b36238f13e9 // indirect
|
||||||
k8s.io/klog/v2 v2.130.1 // indirect
|
k8s.io/klog/v2 v2.130.1 // indirect
|
||||||
k8s.io/kube-openapi v0.0.0-20250318190949-c8a335a9a2ff // indirect
|
k8s.io/kube-openapi v0.0.0-20250318190949-c8a335a9a2ff // indirect
|
||||||
k8s.io/utils v0.0.0-20241104100929-3ea5e8cea738 // indirect
|
k8s.io/utils v0.0.0-20241104100929-3ea5e8cea738 // indirect
|
||||||
@@ -73,3 +72,12 @@ require (
|
|||||||
sigs.k8s.io/structured-merge-diff/v4 v4.6.0 // indirect
|
sigs.k8s.io/structured-merge-diff/v4 v4.6.0 // indirect
|
||||||
sigs.k8s.io/yaml v1.4.0 // indirect
|
sigs.k8s.io/yaml v1.4.0 // indirect
|
||||||
)
|
)
|
||||||
|
|
||||||
|
tool (
|
||||||
|
github.com/golang/mock/mockgen
|
||||||
|
k8s.io/code-generator
|
||||||
|
k8s.io/code-generator/cmd/client-gen
|
||||||
|
k8s.io/code-generator/cmd/deepcopy-gen
|
||||||
|
k8s.io/code-generator/cmd/informer-gen
|
||||||
|
k8s.io/code-generator/cmd/lister-gen
|
||||||
|
)
|
||||||
|
|||||||
@@ -13,7 +13,6 @@ github.com/emicklei/go-restful/v3 v3.11.0 h1:rAQeMHw1c7zTmncogyy8VvRZwtkmkZ4FxER
|
|||||||
github.com/emicklei/go-restful/v3 v3.11.0/go.mod h1:6n3XBCmQQb25CM2LCACGz8ukIrRry+4bhvbpWn3mrbc=
|
github.com/emicklei/go-restful/v3 v3.11.0/go.mod h1:6n3XBCmQQb25CM2LCACGz8ukIrRry+4bhvbpWn3mrbc=
|
||||||
github.com/fxamacker/cbor/v2 v2.7.0 h1:iM5WgngdRBanHcxugY4JySA0nk1wZorNOpTgCMedv5E=
|
github.com/fxamacker/cbor/v2 v2.7.0 h1:iM5WgngdRBanHcxugY4JySA0nk1wZorNOpTgCMedv5E=
|
||||||
github.com/fxamacker/cbor/v2 v2.7.0/go.mod h1:pxXPTn3joSm21Gbwsv0w9OSA2y1HFR9qXEeXQVeNoDQ=
|
github.com/fxamacker/cbor/v2 v2.7.0/go.mod h1:pxXPTn3joSm21Gbwsv0w9OSA2y1HFR9qXEeXQVeNoDQ=
|
||||||
github.com/go-logr/logr v0.2.0/go.mod h1:z6/tIYblkpsD+a4lm/fGIIU9mZ+XfAiaFtq7xTgseGU=
|
|
||||||
github.com/go-logr/logr v1.4.2 h1:6pFjapn8bFcIbiKo3XT4j/BhANplGihG6tvd+8rYgrY=
|
github.com/go-logr/logr v1.4.2 h1:6pFjapn8bFcIbiKo3XT4j/BhANplGihG6tvd+8rYgrY=
|
||||||
github.com/go-logr/logr v1.4.2/go.mod h1:9T104GzyrTigFIr8wt5mBrctHMim0Nb2HLGrmQ40KvY=
|
github.com/go-logr/logr v1.4.2/go.mod h1:9T104GzyrTigFIr8wt5mBrctHMim0Nb2HLGrmQ40KvY=
|
||||||
github.com/go-openapi/jsonpointer v0.19.6/go.mod h1:osyAmYz/mB/C3I+WsTTSgw1ONzaLJoLCyoi6/zppojs=
|
github.com/go-openapi/jsonpointer v0.19.6/go.mod h1:osyAmYz/mB/C3I+WsTTSgw1ONzaLJoLCyoi6/zppojs=
|
||||||
@@ -34,12 +33,10 @@ github.com/golang/protobuf v1.5.4 h1:i7eJL8qZTpSEXOPTxNKhASYpMn+8e5Q6AdndVa1dWek
|
|||||||
github.com/golang/protobuf v1.5.4/go.mod h1:lnTiLA8Wa4RWRcIUkrtSVa5nRhsEGBg48fD6rSs7xps=
|
github.com/golang/protobuf v1.5.4/go.mod h1:lnTiLA8Wa4RWRcIUkrtSVa5nRhsEGBg48fD6rSs7xps=
|
||||||
github.com/google/gnostic-models v0.6.9 h1:MU/8wDLif2qCXZmzncUQ/BOfxWfthHi63KqpoNbWqVw=
|
github.com/google/gnostic-models v0.6.9 h1:MU/8wDLif2qCXZmzncUQ/BOfxWfthHi63KqpoNbWqVw=
|
||||||
github.com/google/gnostic-models v0.6.9/go.mod h1:CiWsm0s6BSQd1hRn8/QmxqB6BesYcbSZxsz9b0KuDBw=
|
github.com/google/gnostic-models v0.6.9/go.mod h1:CiWsm0s6BSQd1hRn8/QmxqB6BesYcbSZxsz9b0KuDBw=
|
||||||
github.com/google/go-cmp v0.4.0/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
|
|
||||||
github.com/google/go-cmp v0.5.9/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeNGIjoY=
|
github.com/google/go-cmp v0.5.9/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeNGIjoY=
|
||||||
github.com/google/go-cmp v0.7.0 h1:wk8382ETsv4JYUZwIsn6YpYiWiBsYLSJiTsyBybVuN8=
|
github.com/google/go-cmp v0.7.0 h1:wk8382ETsv4JYUZwIsn6YpYiWiBsYLSJiTsyBybVuN8=
|
||||||
github.com/google/go-cmp v0.7.0/go.mod h1:pXiqmnSA92OHEEa9HXL2W4E7lf9JzCmGVUdgjX3N/iU=
|
github.com/google/go-cmp v0.7.0/go.mod h1:pXiqmnSA92OHEEa9HXL2W4E7lf9JzCmGVUdgjX3N/iU=
|
||||||
github.com/google/gofuzz v1.0.0/go.mod h1:dBl0BpW6vV/+mYPU4Po3pmUjxk6FQPldtuIdl/M65Eg=
|
github.com/google/gofuzz v1.0.0/go.mod h1:dBl0BpW6vV/+mYPU4Po3pmUjxk6FQPldtuIdl/M65Eg=
|
||||||
github.com/google/gofuzz v1.1.0/go.mod h1:dBl0BpW6vV/+mYPU4Po3pmUjxk6FQPldtuIdl/M65Eg=
|
|
||||||
github.com/google/gofuzz v1.2.0 h1:xRy4A+RhZaiKjJ1bPfwQ8sedCA+YS2YcCHW6ec7JMi0=
|
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/pprof v0.0.0-20241029153458-d1b30febd7db h1:097atOisP2aRj7vFgYQBbFN4U4JNXUNYpxael3UzMyo=
|
github.com/google/pprof v0.0.0-20241029153458-d1b30febd7db h1:097atOisP2aRj7vFgYQBbFN4U4JNXUNYpxael3UzMyo=
|
||||||
@@ -58,7 +55,6 @@ 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/kisielk/errcheck v1.5.0/go.mod h1:pFxgyoBC7bSaBwPgfKdkLd5X25qrDl4LWUI2bnpBCr8=
|
github.com/kisielk/errcheck v1.5.0/go.mod h1:pFxgyoBC7bSaBwPgfKdkLd5X25qrDl4LWUI2bnpBCr8=
|
||||||
github.com/kisielk/gotool v1.0.0/go.mod h1:XhKaO+MFFWcvkIS/tQcRk01m1F5IRFswLeQ+oQHNcck=
|
github.com/kisielk/gotool v1.0.0/go.mod h1:XhKaO+MFFWcvkIS/tQcRk01m1F5IRFswLeQ+oQHNcck=
|
||||||
github.com/kr/pretty v0.2.0/go.mod h1:ipq/a2n7PKx3OHsz4KJII5eveXtPO4qwEXGdVfWzfnI=
|
|
||||||
github.com/kr/pretty v0.2.1/go.mod h1:ipq/a2n7PKx3OHsz4KJII5eveXtPO4qwEXGdVfWzfnI=
|
github.com/kr/pretty v0.2.1/go.mod h1:ipq/a2n7PKx3OHsz4KJII5eveXtPO4qwEXGdVfWzfnI=
|
||||||
github.com/kr/pretty v0.3.1 h1:flRD4NNwYAUpkphVc1HcthR4KEIFJ65n8Mw5qdRn3LE=
|
github.com/kr/pretty v0.3.1 h1:flRD4NNwYAUpkphVc1HcthR4KEIFJ65n8Mw5qdRn3LE=
|
||||||
github.com/kr/pretty v0.3.1/go.mod h1:hoEshYVHaxMs3cyo3Yncou5ZscifuDolrwPKZanG3xk=
|
github.com/kr/pretty v0.3.1/go.mod h1:hoEshYVHaxMs3cyo3Yncou5ZscifuDolrwPKZanG3xk=
|
||||||
@@ -163,7 +159,6 @@ golang.org/x/time v0.9.0 h1:EsRrnYcQiGH+5FfbgvV4AP7qEZstoyrHB0DzarOQ4ZY=
|
|||||||
golang.org/x/time v0.9.0/go.mod h1:3BpzKBy/shNhVucY/MWOyx10tF3SFh9QdLuxbVysPQM=
|
golang.org/x/time v0.9.0/go.mod h1:3BpzKBy/shNhVucY/MWOyx10tF3SFh9QdLuxbVysPQM=
|
||||||
golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ=
|
golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ=
|
||||||
golang.org/x/tools v0.0.0-20191119224855-298f0cb1881e/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo=
|
golang.org/x/tools v0.0.0-20191119224855-298f0cb1881e/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo=
|
||||||
golang.org/x/tools v0.0.0-20200505023115-26f46d2f7ef8/go.mod h1:EkVYQZoAsY45+roYkvgYkIh4xh/qjgUK9TdY2XT94GE=
|
|
||||||
golang.org/x/tools v0.0.0-20200619180055-7c47624df98f/go.mod h1:EkVYQZoAsY45+roYkvgYkIh4xh/qjgUK9TdY2XT94GE=
|
golang.org/x/tools v0.0.0-20200619180055-7c47624df98f/go.mod h1:EkVYQZoAsY45+roYkvgYkIh4xh/qjgUK9TdY2XT94GE=
|
||||||
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.1/go.mod h1:o0xws9oXOQQZyjljx8fwUC0k7L1pTE6eaCbjGeHmOkk=
|
golang.org/x/tools v0.1.1/go.mod h1:o0xws9oXOQQZyjljx8fwUC0k7L1pTE6eaCbjGeHmOkk=
|
||||||
@@ -180,7 +175,6 @@ golang.org/x/xerrors v0.0.0-20200804184101-5ec99f83aff1/go.mod h1:I/5z698sn9Ka8T
|
|||||||
google.golang.org/protobuf v1.36.5 h1:tPhr+woSbjfYvY6/GPufUoYizxw1cF/yFoxJ2fmpwlM=
|
google.golang.org/protobuf v1.36.5 h1:tPhr+woSbjfYvY6/GPufUoYizxw1cF/yFoxJ2fmpwlM=
|
||||||
google.golang.org/protobuf v1.36.5/go.mod h1:9fA7Ob0pmnwhb644+1+CVWFRbNajQ6iRojtC/QF5bRE=
|
google.golang.org/protobuf v1.36.5/go.mod h1:9fA7Ob0pmnwhb644+1+CVWFRbNajQ6iRojtC/QF5bRE=
|
||||||
gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
|
gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/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 h1:n6jtcsulIzXPJaxegRbvFNNrZDjbij7ny3gmSPG+6V4=
|
||||||
@@ -196,19 +190,16 @@ gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA=
|
|||||||
gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM=
|
gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM=
|
||||||
k8s.io/api v0.32.9 h1:q/59kk8lnecgG0grJqzrmXC1Jcl2hPWp9ltz0FQuoLI=
|
k8s.io/api v0.32.9 h1:q/59kk8lnecgG0grJqzrmXC1Jcl2hPWp9ltz0FQuoLI=
|
||||||
k8s.io/api v0.32.9/go.mod h1:jIfT3rwW4EU1IXZm9qjzSk/2j91k4CJL5vUULrxqp3Y=
|
k8s.io/api v0.32.9/go.mod h1:jIfT3rwW4EU1IXZm9qjzSk/2j91k4CJL5vUULrxqp3Y=
|
||||||
k8s.io/apiextensions-apiserver v0.25.9 h1:Pycd6lm2auABp9wKQHCFSEPG+NPdFSTJXPST6NJFzB8=
|
k8s.io/apiextensions-apiserver v0.32.9 h1:tpT1dUgWqEsTyrdoGckyw8OBASW1JfU08tHGaYBzFHY=
|
||||||
k8s.io/apiextensions-apiserver v0.25.9/go.mod h1:ijGxmSG1GLOEaWhTuaEr0M7KUeia3mWCZa6FFQqpt1M=
|
k8s.io/apiextensions-apiserver v0.32.9/go.mod h1:FoCi4zCLK67LNCCssFa2Wr9q4Xbvjx7MW4tdze5tpoA=
|
||||||
k8s.io/apimachinery v0.32.9 h1:fXk8ktfsxrdThaEOAQFgkhCK7iyoyvS8nbYJ83o/SSs=
|
k8s.io/apimachinery v0.32.9 h1:fXk8ktfsxrdThaEOAQFgkhCK7iyoyvS8nbYJ83o/SSs=
|
||||||
k8s.io/apimachinery v0.32.9/go.mod h1:GpHVgxoKlTxClKcteaeuF1Ul/lDVb74KpZcxcmLDElE=
|
k8s.io/apimachinery v0.32.9/go.mod h1:GpHVgxoKlTxClKcteaeuF1Ul/lDVb74KpZcxcmLDElE=
|
||||||
k8s.io/client-go v0.32.9 h1:ZMyIQ1TEpTDAQni3L2gH1NZzyOA/gHfNcAazzCxMJ0c=
|
k8s.io/client-go v0.32.9 h1:ZMyIQ1TEpTDAQni3L2gH1NZzyOA/gHfNcAazzCxMJ0c=
|
||||||
k8s.io/client-go v0.32.9/go.mod h1:2OT8aFSYvUjKGadaeT+AVbhkXQSpMAkiSb88Kz2WggI=
|
k8s.io/client-go v0.32.9/go.mod h1:2OT8aFSYvUjKGadaeT+AVbhkXQSpMAkiSb88Kz2WggI=
|
||||||
k8s.io/code-generator v0.25.9 h1:lgyAV9AIRYNxZxgLRXqsCAtqJLHvakot41CjEqD5W0w=
|
k8s.io/code-generator v0.32.9 h1:F9Gti/8I+nVNnQw02J36/YlSD5JMg4qDJ7sfRqpUICU=
|
||||||
k8s.io/code-generator v0.25.9/go.mod h1:DHfpdhSUrwqF0f4oLqCtF8gYbqlndNetjBEz45nWzJI=
|
k8s.io/code-generator v0.32.9/go.mod h1:fLYBG9g52EJulRebmomL0vCU0PQeMr7mnscfZtAAGV4=
|
||||||
k8s.io/gengo v0.0.0-20220902162205-c0856e24416d h1:U9tB195lKdzwqicbJvyJeOXV7Klv+wNAWENRnXEGi08=
|
k8s.io/gengo/v2 v2.0.0-20240911193312-2b36238f13e9 h1:si3PfKm8dDYxgfbeA6orqrtLkvvIeH8UqffFJDl0bz4=
|
||||||
k8s.io/gengo v0.0.0-20220902162205-c0856e24416d/go.mod h1:FiNAH4ZV3gBg2Kwh89tzAEV2be7d5xI0vBa/VySYy3E=
|
k8s.io/gengo/v2 v2.0.0-20240911193312-2b36238f13e9/go.mod h1:EJykeLsmFC60UQbYJezXkEsG2FLrt0GPNkU5iK5GWxU=
|
||||||
k8s.io/gengo/v2 v2.0.0-20240826214909-a7b603a56eb7 h1:cErOOTkQ3JW19o4lo91fFurouhP8NcoBvb7CkvhZZpk=
|
|
||||||
k8s.io/gengo/v2 v2.0.0-20240826214909-a7b603a56eb7/go.mod h1:EJykeLsmFC60UQbYJezXkEsG2FLrt0GPNkU5iK5GWxU=
|
|
||||||
k8s.io/klog/v2 v2.2.0/go.mod h1:Od+F08eJP+W3HUb4pSrPpgp9DGU4GzlpG/TmITuYh/Y=
|
|
||||||
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-20250318190949-c8a335a9a2ff h1:/usPimJzUKKu+m+TE36gUyGcf03XZEP0ZIKgKj35LS4=
|
k8s.io/kube-openapi v0.0.0-20250318190949-c8a335a9a2ff h1:/usPimJzUKKu+m+TE36gUyGcf03XZEP0ZIKgKj35LS4=
|
||||||
@@ -222,6 +213,5 @@ sigs.k8s.io/randfill v1.0.0 h1:JfjMILfT8A6RbawdsK2JXGBR5AQVfd+9TbzrlneTyrU=
|
|||||||
sigs.k8s.io/randfill v1.0.0/go.mod h1:XeLlZ/jmk4i1HRopwe7/aU3H5n1zNUcX6TM94b3QxOY=
|
sigs.k8s.io/randfill v1.0.0/go.mod h1:XeLlZ/jmk4i1HRopwe7/aU3H5n1zNUcX6TM94b3QxOY=
|
||||||
sigs.k8s.io/structured-merge-diff/v4 v4.6.0 h1:IUA9nvMmnKWcj5jl84xn+T5MnlZKThmUW1TdblaLVAc=
|
sigs.k8s.io/structured-merge-diff/v4 v4.6.0 h1:IUA9nvMmnKWcj5jl84xn+T5MnlZKThmUW1TdblaLVAc=
|
||||||
sigs.k8s.io/structured-merge-diff/v4 v4.6.0/go.mod h1:dDy58f92j70zLsuZVuUX5Wp9vtxXpaZnkPGWeqDfCps=
|
sigs.k8s.io/structured-merge-diff/v4 v4.6.0/go.mod h1:dDy58f92j70zLsuZVuUX5Wp9vtxXpaZnkPGWeqDfCps=
|
||||||
sigs.k8s.io/yaml v1.2.0/go.mod h1:yfXDCHCao9+ENCvLSE62v9VSji2MKu5jeNfTrofGhJc=
|
|
||||||
sigs.k8s.io/yaml v1.4.0 h1:Mk1wCc2gy/F0THH0TAp1QYyJNzRm2KCLy3o5ASXVI5E=
|
sigs.k8s.io/yaml v1.4.0 h1:Mk1wCc2gy/F0THH0TAp1QYyJNzRm2KCLy3o5ASXVI5E=
|
||||||
sigs.k8s.io/yaml v1.4.0/go.mod h1:Ejl7/uTz7PSA4eKMyQCUTnhZYNmLIl+5c2lQPGR2BPY=
|
sigs.k8s.io/yaml v1.4.0/go.mod h1:Ejl7/uTz7PSA4eKMyQCUTnhZYNmLIl+5c2lQPGR2BPY=
|
||||||
|
|||||||
@@ -1,19 +0,0 @@
|
|||||||
// +build tools
|
|
||||||
|
|
||||||
/*
|
|
||||||
Copyright 2019 The Kubernetes Authors.
|
|
||||||
Licensed under the Apache License, Version 2.0 (the "License");
|
|
||||||
you may not use this file except in compliance with the License.
|
|
||||||
You may obtain a copy of the License at
|
|
||||||
http://www.apache.org/licenses/LICENSE-2.0
|
|
||||||
Unless required by applicable law or agreed to in writing, software
|
|
||||||
distributed under the License is distributed on an "AS IS" BASIS,
|
|
||||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
See the License for the specific language governing permissions and
|
|
||||||
limitations under the License.
|
|
||||||
*/
|
|
||||||
|
|
||||||
// This package imports things required by build scripts, to force `go mod` to see them as dependencies
|
|
||||||
package tools
|
|
||||||
|
|
||||||
import _ "k8s.io/code-generator"
|
|
||||||
+58
-17
@@ -1,26 +1,67 @@
|
|||||||
#!/usr/bin/env bash
|
#!/bin/bash
|
||||||
|
|
||||||
|
# Copyright 2017 The Kubernetes Authors.
|
||||||
|
#
|
||||||
|
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
# you may not use this file except in compliance with the License.
|
||||||
|
# You may obtain a copy of the License at
|
||||||
|
#
|
||||||
|
# http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
#
|
||||||
|
# Unless required by applicable law or agreed to in writing, software
|
||||||
|
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
# See the License for the specific language governing permissions and
|
||||||
|
# limitations under the License.
|
||||||
|
|
||||||
set -o errexit
|
set -o errexit
|
||||||
set -o nounset
|
set -o nounset
|
||||||
set -o pipefail
|
set -o pipefail
|
||||||
|
|
||||||
GENERATED_PACKAGE_ROOT="github.com"
|
SRC="github.com"
|
||||||
OPERATOR_PACKAGE_ROOT="${GENERATED_PACKAGE_ROOT}/zalando/postgres-operator"
|
GOPKG="$SRC/zalando/postgres-operator"
|
||||||
SCRIPT_ROOT=$(dirname ${BASH_SOURCE})/..
|
CUSTOM_RESOURCE_NAME_ZAL="zalando.org"
|
||||||
TARGET_CODE_DIR=${1-${SCRIPT_ROOT}/pkg}
|
CUSTOM_RESOURCE_NAME_ACID="acid.zalan.do"
|
||||||
CODEGEN_PKG=${CODEGEN_PKG:-$(cd "${SCRIPT_ROOT}"; ls -d -1 ./vendor/k8s.io/code-generator 2>/dev/null || echo "${GOPATH}"/src/k8s.io/code-generator)}
|
CUSTOM_RESOURCE_VERSION="v1"
|
||||||
|
|
||||||
cleanup() {
|
SCRIPT_ROOT="$(dirname "${BASH_SOURCE[0]}")/.."
|
||||||
rm -rf "${GENERATED_PACKAGE_ROOT}"
|
|
||||||
}
|
|
||||||
trap "cleanup" EXIT SIGINT
|
|
||||||
|
|
||||||
bash "${CODEGEN_PKG}/generate-groups.sh" client,deepcopy,informer,lister \
|
OUTPUT_DIR="pkg/generated"
|
||||||
"${OPERATOR_PACKAGE_ROOT}/pkg/generated" "${OPERATOR_PACKAGE_ROOT}/pkg/apis" \
|
OUTPUT_PKG="${GOPKG}/${OUTPUT_DIR}"
|
||||||
"acid.zalan.do:v1 zalando.org:v1" \
|
APIS_PKG="${GOPKG}/pkg/apis"
|
||||||
--go-header-file "${SCRIPT_ROOT}"/hack/custom-boilerplate.go.txt \
|
GROUPS_WITH_VERSIONS="${CUSTOM_RESOURCE_NAME_ZAL}:${CUSTOM_RESOURCE_VERSION},${CUSTOM_RESOURCE_NAME_ACID}:${CUSTOM_RESOURCE_VERSION}"
|
||||||
-o ./
|
|
||||||
|
|
||||||
cp -r "${OPERATOR_PACKAGE_ROOT}"/pkg/* "${TARGET_CODE_DIR}"
|
echo "Generating deepcopy funcs"
|
||||||
|
go tool deepcopy-gen \
|
||||||
|
--output-file zz_generated.deepcopy.go \
|
||||||
|
--bounding-dirs "${APIS_PKG}" \
|
||||||
|
--go-header-file "${SCRIPT_ROOT}/hack/custom-boilerplate.go.txt" \
|
||||||
|
"${APIS_PKG}/${CUSTOM_RESOURCE_NAME_ZAL}/${CUSTOM_RESOURCE_VERSION}" \
|
||||||
|
"${APIS_PKG}/${CUSTOM_RESOURCE_NAME_ACID}/${CUSTOM_RESOURCE_VERSION}"
|
||||||
|
|
||||||
cleanup
|
echo "Generating clientset for ${GROUPS_WITH_VERSIONS} at ${OUTPUT_PKG}/${CLIENTSET_PKG_NAME:-clientset}"
|
||||||
|
go tool client-gen \
|
||||||
|
--clientset-name versioned \
|
||||||
|
--input-base "${APIS_PKG}" \
|
||||||
|
--input "${CUSTOM_RESOURCE_NAME_ZAL}/${CUSTOM_RESOURCE_VERSION},${CUSTOM_RESOURCE_NAME_ACID}/${CUSTOM_RESOURCE_VERSION}" \
|
||||||
|
--output-pkg "${OUTPUT_PKG}/clientset" \
|
||||||
|
--go-header-file "${SCRIPT_ROOT}/hack/custom-boilerplate.go.txt" \
|
||||||
|
--output-dir "${OUTPUT_DIR}/clientset"
|
||||||
|
|
||||||
|
echo "Generating listers for ${GROUPS_WITH_VERSIONS} at ${OUTPUT_PKG}/listers"
|
||||||
|
go tool lister-gen \
|
||||||
|
--output-pkg "${OUTPUT_PKG}/listers" \
|
||||||
|
--go-header-file "${SCRIPT_ROOT}/hack/custom-boilerplate.go.txt" \
|
||||||
|
--output-dir "${OUTPUT_DIR}/listers" \
|
||||||
|
"${APIS_PKG}/${CUSTOM_RESOURCE_NAME_ZAL}/${CUSTOM_RESOURCE_VERSION}" \
|
||||||
|
"${APIS_PKG}/${CUSTOM_RESOURCE_NAME_ACID}/${CUSTOM_RESOURCE_VERSION}"
|
||||||
|
|
||||||
|
echo "Generating informers for ${GROUPS_WITH_VERSIONS} at ${OUTPUT_PKG}/informers"
|
||||||
|
go tool informer-gen \
|
||||||
|
--versioned-clientset-package "${OUTPUT_PKG}/${CLIENTSET_PKG_NAME:-clientset}/${CLIENTSET_NAME_VERSIONED:-versioned}" \
|
||||||
|
--listers-package "${OUTPUT_PKG}/listers" \
|
||||||
|
--output-pkg "${OUTPUT_PKG}/informers" \
|
||||||
|
--go-header-file "${SCRIPT_ROOT}/hack/custom-boilerplate.go.txt" \
|
||||||
|
--output-dir "${OUTPUT_DIR}/informers" \
|
||||||
|
"${APIS_PKG}/${CUSTOM_RESOURCE_NAME_ZAL}/${CUSTOM_RESOURCE_VERSION}" \
|
||||||
|
"${APIS_PKG}/${CUSTOM_RESOURCE_NAME_ACID}/${CUSTOM_RESOURCE_VERSION}"
|
||||||
|
|||||||
@@ -9,14 +9,16 @@ import (
|
|||||||
// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object
|
// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object
|
||||||
|
|
||||||
// FabricEventStream defines FabricEventStream Custom Resource Definition Object.
|
// FabricEventStream defines FabricEventStream Custom Resource Definition Object.
|
||||||
|
// +k8s:deepcopy-gen=true
|
||||||
type FabricEventStream struct {
|
type FabricEventStream struct {
|
||||||
metav1.TypeMeta `json:",inline"`
|
metav1.TypeMeta `json:",inline"`
|
||||||
metav1.ObjectMeta `json:"metadata,omitempty"`
|
metav1.ObjectMeta `json:"metadata"`
|
||||||
|
|
||||||
Spec FabricEventStreamSpec `json:"spec"`
|
Spec FabricEventStreamSpec `json:"spec"`
|
||||||
}
|
}
|
||||||
|
|
||||||
// FabricEventStreamSpec defines the specification for the FabricEventStream TPR.
|
// FabricEventStreamSpec defines the specification for the FabricEventStream TPR.
|
||||||
|
// +k8s:deepcopy-gen=true
|
||||||
type FabricEventStreamSpec struct {
|
type FabricEventStreamSpec struct {
|
||||||
ApplicationId string `json:"applicationId"`
|
ApplicationId string `json:"applicationId"`
|
||||||
EventStreams []EventStream `json:"eventStreams"`
|
EventStreams []EventStream `json:"eventStreams"`
|
||||||
@@ -25,6 +27,7 @@ type FabricEventStreamSpec struct {
|
|||||||
// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object
|
// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object
|
||||||
|
|
||||||
// FabricEventStreamList defines a list of FabricEventStreams .
|
// FabricEventStreamList defines a list of FabricEventStreams .
|
||||||
|
// +k8s:deepcopy-gen=true
|
||||||
type FabricEventStreamList struct {
|
type FabricEventStreamList struct {
|
||||||
metav1.TypeMeta `json:",inline"`
|
metav1.TypeMeta `json:",inline"`
|
||||||
metav1.ListMeta `json:"metadata"`
|
metav1.ListMeta `json:"metadata"`
|
||||||
@@ -33,6 +36,7 @@ type FabricEventStreamList struct {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// EventStream defines the source, flow and sink of the event stream
|
// EventStream defines the source, flow and sink of the event stream
|
||||||
|
// +k8s:deepcopy-gen=true
|
||||||
type EventStream struct {
|
type EventStream struct {
|
||||||
EventStreamFlow EventStreamFlow `json:"flow"`
|
EventStreamFlow EventStreamFlow `json:"flow"`
|
||||||
EventStreamSink EventStreamSink `json:"sink"`
|
EventStreamSink EventStreamSink `json:"sink"`
|
||||||
@@ -41,12 +45,14 @@ type EventStream struct {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// EventStreamFlow defines the flow characteristics of the event stream
|
// EventStreamFlow defines the flow characteristics of the event stream
|
||||||
|
// +k8s:deepcopy-gen=true
|
||||||
type EventStreamFlow struct {
|
type EventStreamFlow struct {
|
||||||
Type string `json:"type"`
|
Type string `json:"type"`
|
||||||
PayloadColumn *string `json:"payloadColumn,omitempty"`
|
PayloadColumn *string `json:"payloadColumn,omitempty"`
|
||||||
}
|
}
|
||||||
|
|
||||||
// EventStreamSink defines the target of the event stream
|
// EventStreamSink defines the target of the event stream
|
||||||
|
// +k8s:deepcopy-gen=true
|
||||||
type EventStreamSink struct {
|
type EventStreamSink struct {
|
||||||
Type string `json:"type"`
|
Type string `json:"type"`
|
||||||
EventType string `json:"eventType,omitempty"`
|
EventType string `json:"eventType,omitempty"`
|
||||||
@@ -54,12 +60,14 @@ type EventStreamSink struct {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// EventStreamRecovery defines the target of dead letter queue
|
// EventStreamRecovery defines the target of dead letter queue
|
||||||
|
// +k8s:deepcopy-gen=true
|
||||||
type EventStreamRecovery struct {
|
type EventStreamRecovery struct {
|
||||||
Type string `json:"type"`
|
Type string `json:"type"`
|
||||||
Sink *EventStreamSink `json:"sink"`
|
Sink *EventStreamSink `json:"sink"`
|
||||||
}
|
}
|
||||||
|
|
||||||
// EventStreamSource defines the source of the event stream and connection for FES operator
|
// EventStreamSource defines the source of the event stream and connection for FES operator
|
||||||
|
// +k8s:deepcopy-gen=true
|
||||||
type EventStreamSource struct {
|
type EventStreamSource struct {
|
||||||
Type string `json:"type"`
|
Type string `json:"type"`
|
||||||
Schema string `json:"schema,omitempty" defaults:"public"`
|
Schema string `json:"schema,omitempty" defaults:"public"`
|
||||||
@@ -69,12 +77,14 @@ type EventStreamSource struct {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// EventStreamTable defines the name and ID column to be used for streaming
|
// EventStreamTable defines the name and ID column to be used for streaming
|
||||||
|
// +k8s:deepcopy-gen=true
|
||||||
type EventStreamTable struct {
|
type EventStreamTable struct {
|
||||||
Name string `json:"name"`
|
Name string `json:"name"`
|
||||||
IDColumn *string `json:"idColumn,omitempty"`
|
IDColumn *string `json:"idColumn,omitempty"`
|
||||||
}
|
}
|
||||||
|
|
||||||
// Connection to be used for allowing the FES operator to connect to a database
|
// Connection to be used for allowing the FES operator to connect to a database
|
||||||
|
// +k8s:deepcopy-gen=true
|
||||||
type Connection struct {
|
type Connection struct {
|
||||||
Url string `json:"jdbcUrl"`
|
Url string `json:"jdbcUrl"`
|
||||||
SlotName string `json:"slotName"`
|
SlotName string `json:"slotName"`
|
||||||
@@ -84,6 +94,7 @@ type Connection struct {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// DBAuth specifies the credentials to be used for connecting with the database
|
// DBAuth specifies the credentials to be used for connecting with the database
|
||||||
|
// +k8s:deepcopy-gen=true
|
||||||
type DBAuth struct {
|
type DBAuth struct {
|
||||||
Type string `json:"type"`
|
Type string `json:"type"`
|
||||||
Name string `json:"name,omitempty"`
|
Name string `json:"name,omitempty"`
|
||||||
|
|||||||
@@ -1,7 +1,8 @@
|
|||||||
|
//go:build !ignore_autogenerated
|
||||||
// +build !ignore_autogenerated
|
// +build !ignore_autogenerated
|
||||||
|
|
||||||
/*
|
/*
|
||||||
Copyright 2021 Compose, Zalando SE
|
Copyright 2025 Compose, Zalando SE
|
||||||
|
|
||||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||||
of this software and associated documentation files (the "Software"), to deal
|
of this software and associated documentation files (the "Software"), to deal
|
||||||
@@ -38,11 +39,11 @@ func (in *Connection) DeepCopyInto(out *Connection) {
|
|||||||
*out = new(string)
|
*out = new(string)
|
||||||
**out = **in
|
**out = **in
|
||||||
}
|
}
|
||||||
in.DBAuth.DeepCopyInto(&out.DBAuth)
|
out.DBAuth = in.DBAuth
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
|
// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Connection.
|
||||||
func (in *Connection) DeepCopy() *Connection {
|
func (in *Connection) DeepCopy() *Connection {
|
||||||
if in == nil {
|
if in == nil {
|
||||||
return nil
|
return nil
|
||||||
@@ -58,7 +59,7 @@ func (in *DBAuth) DeepCopyInto(out *DBAuth) {
|
|||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
|
// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DBAuth.
|
||||||
func (in *DBAuth) DeepCopy() *DBAuth {
|
func (in *DBAuth) DeepCopy() *DBAuth {
|
||||||
if in == nil {
|
if in == nil {
|
||||||
return nil
|
return nil
|
||||||
@@ -72,13 +73,13 @@ func (in *DBAuth) DeepCopy() *DBAuth {
|
|||||||
func (in *EventStream) DeepCopyInto(out *EventStream) {
|
func (in *EventStream) DeepCopyInto(out *EventStream) {
|
||||||
*out = *in
|
*out = *in
|
||||||
in.EventStreamFlow.DeepCopyInto(&out.EventStreamFlow)
|
in.EventStreamFlow.DeepCopyInto(&out.EventStreamFlow)
|
||||||
in.EventStreamRecovery.DeepCopyInto(&out.EventStreamRecovery)
|
|
||||||
in.EventStreamSink.DeepCopyInto(&out.EventStreamSink)
|
in.EventStreamSink.DeepCopyInto(&out.EventStreamSink)
|
||||||
in.EventStreamSource.DeepCopyInto(&out.EventStreamSource)
|
in.EventStreamSource.DeepCopyInto(&out.EventStreamSource)
|
||||||
|
in.EventStreamRecovery.DeepCopyInto(&out.EventStreamRecovery)
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
|
// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EventStream.
|
||||||
func (in *EventStream) DeepCopy() *EventStream {
|
func (in *EventStream) DeepCopy() *EventStream {
|
||||||
if in == nil {
|
if in == nil {
|
||||||
return nil
|
return nil
|
||||||
@@ -99,7 +100,7 @@ func (in *EventStreamFlow) DeepCopyInto(out *EventStreamFlow) {
|
|||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
|
// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EventStreamFlow.
|
||||||
func (in *EventStreamFlow) DeepCopy() *EventStreamFlow {
|
func (in *EventStreamFlow) DeepCopy() *EventStreamFlow {
|
||||||
if in == nil {
|
if in == nil {
|
||||||
return nil
|
return nil
|
||||||
@@ -120,7 +121,7 @@ func (in *EventStreamRecovery) DeepCopyInto(out *EventStreamRecovery) {
|
|||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
|
// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EventStreamRecovery.
|
||||||
func (in *EventStreamRecovery) DeepCopy() *EventStreamRecovery {
|
func (in *EventStreamRecovery) DeepCopy() *EventStreamRecovery {
|
||||||
if in == nil {
|
if in == nil {
|
||||||
return nil
|
return nil
|
||||||
@@ -141,7 +142,7 @@ func (in *EventStreamSink) DeepCopyInto(out *EventStreamSink) {
|
|||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
|
// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EventStreamSink.
|
||||||
func (in *EventStreamSink) DeepCopy() *EventStreamSink {
|
func (in *EventStreamSink) DeepCopy() *EventStreamSink {
|
||||||
if in == nil {
|
if in == nil {
|
||||||
return nil
|
return nil
|
||||||
@@ -154,17 +155,17 @@ func (in *EventStreamSink) DeepCopy() *EventStreamSink {
|
|||||||
// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
|
// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
|
||||||
func (in *EventStreamSource) DeepCopyInto(out *EventStreamSource) {
|
func (in *EventStreamSource) DeepCopyInto(out *EventStreamSource) {
|
||||||
*out = *in
|
*out = *in
|
||||||
in.Connection.DeepCopyInto(&out.Connection)
|
in.EventStreamTable.DeepCopyInto(&out.EventStreamTable)
|
||||||
if in.Filter != nil {
|
if in.Filter != nil {
|
||||||
in, out := &in.Filter, &out.Filter
|
in, out := &in.Filter, &out.Filter
|
||||||
*out = new(string)
|
*out = new(string)
|
||||||
**out = **in
|
**out = **in
|
||||||
}
|
}
|
||||||
in.EventStreamTable.DeepCopyInto(&out.EventStreamTable)
|
in.Connection.DeepCopyInto(&out.Connection)
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
|
// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EventStreamSource.
|
||||||
func (in *EventStreamSource) DeepCopy() *EventStreamSource {
|
func (in *EventStreamSource) DeepCopy() *EventStreamSource {
|
||||||
if in == nil {
|
if in == nil {
|
||||||
return nil
|
return nil
|
||||||
@@ -185,7 +186,7 @@ func (in *EventStreamTable) DeepCopyInto(out *EventStreamTable) {
|
|||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
|
// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EventStreamTable.
|
||||||
func (in *EventStreamTable) DeepCopy() *EventStreamTable {
|
func (in *EventStreamTable) DeepCopy() *EventStreamTable {
|
||||||
if in == nil {
|
if in == nil {
|
||||||
return nil
|
return nil
|
||||||
@@ -195,30 +196,6 @@ func (in *EventStreamTable) DeepCopy() *EventStreamTable {
|
|||||||
return out
|
return out
|
||||||
}
|
}
|
||||||
|
|
||||||
// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
|
|
||||||
func (in *FabricEventStreamSpec) DeepCopyInto(out *FabricEventStreamSpec) {
|
|
||||||
*out = *in
|
|
||||||
if in.EventStreams != nil {
|
|
||||||
in, out := &in.EventStreams, &out.EventStreams
|
|
||||||
*out = make([]EventStream, len(*in))
|
|
||||||
for i := range *in {
|
|
||||||
(*in)[i].DeepCopyInto(&(*out)[i])
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
return
|
|
||||||
}
|
|
||||||
|
|
||||||
// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FabricEventStreamSpec.
|
|
||||||
func (in *FabricEventStreamSpec) DeepCopy() *FabricEventStreamSpec {
|
|
||||||
if in == nil {
|
|
||||||
return nil
|
|
||||||
}
|
|
||||||
out := new(FabricEventStreamSpec)
|
|
||||||
in.DeepCopyInto(out)
|
|
||||||
return out
|
|
||||||
}
|
|
||||||
|
|
||||||
// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
|
// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
|
||||||
func (in *FabricEventStream) DeepCopyInto(out *FabricEventStream) {
|
func (in *FabricEventStream) DeepCopyInto(out *FabricEventStream) {
|
||||||
*out = *in
|
*out = *in
|
||||||
@@ -278,3 +255,26 @@ func (in *FabricEventStreamList) DeepCopyObject() runtime.Object {
|
|||||||
}
|
}
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
|
||||||
|
func (in *FabricEventStreamSpec) DeepCopyInto(out *FabricEventStreamSpec) {
|
||||||
|
*out = *in
|
||||||
|
if in.EventStreams != nil {
|
||||||
|
in, out := &in.EventStreams, &out.EventStreams
|
||||||
|
*out = make([]EventStream, len(*in))
|
||||||
|
for i := range *in {
|
||||||
|
(*in)[i].DeepCopyInto(&(*out)[i])
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FabricEventStreamSpec.
|
||||||
|
func (in *FabricEventStreamSpec) DeepCopy() *FabricEventStreamSpec {
|
||||||
|
if in == nil {
|
||||||
|
return nil
|
||||||
|
}
|
||||||
|
out := new(FabricEventStreamSpec)
|
||||||
|
in.DeepCopyInto(out)
|
||||||
|
return out
|
||||||
|
}
|
||||||
|
|||||||
@@ -283,6 +283,7 @@ func (c *Cluster) Create() (err error) {
|
|||||||
}
|
}
|
||||||
if errStatus != nil {
|
if errStatus != nil {
|
||||||
c.logger.Warningf("could not set cluster status: %v", errStatus)
|
c.logger.Warningf("could not set cluster status: %v", errStatus)
|
||||||
|
return
|
||||||
}
|
}
|
||||||
if pgUpdatedStatus != nil {
|
if pgUpdatedStatus != nil {
|
||||||
c.setSpec(pgUpdatedStatus)
|
c.setSpec(pgUpdatedStatus)
|
||||||
@@ -997,6 +998,7 @@ func (c *Cluster) Update(oldSpec, newSpec *acidv1.Postgresql) error {
|
|||||||
}
|
}
|
||||||
if err != nil {
|
if err != nil {
|
||||||
c.logger.Warningf("could not set cluster status: %v", err)
|
c.logger.Warningf("could not set cluster status: %v", err)
|
||||||
|
return
|
||||||
}
|
}
|
||||||
if pgUpdatedStatus != nil {
|
if pgUpdatedStatus != nil {
|
||||||
c.setSpec(pgUpdatedStatus)
|
c.setSpec(pgUpdatedStatus)
|
||||||
|
|||||||
@@ -55,6 +55,7 @@ func (c *Cluster) Sync(newSpec *acidv1.Postgresql) error {
|
|||||||
}
|
}
|
||||||
if errStatus != nil {
|
if errStatus != nil {
|
||||||
c.logger.Warningf("could not set cluster status: %v", errStatus)
|
c.logger.Warningf("could not set cluster status: %v", errStatus)
|
||||||
|
return
|
||||||
}
|
}
|
||||||
if pgUpdatedStatus != nil {
|
if pgUpdatedStatus != nil {
|
||||||
c.setSpec(pgUpdatedStatus)
|
c.setSpec(pgUpdatedStatus)
|
||||||
|
|||||||
@@ -25,8 +25,8 @@ SOFTWARE.
|
|||||||
package versioned
|
package versioned
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"fmt"
|
fmt "fmt"
|
||||||
"net/http"
|
http "net/http"
|
||||||
|
|
||||||
acidv1 "github.com/zalando/postgres-operator/pkg/generated/clientset/versioned/typed/acid.zalan.do/v1"
|
acidv1 "github.com/zalando/postgres-operator/pkg/generated/clientset/versioned/typed/acid.zalan.do/v1"
|
||||||
zalandov1 "github.com/zalando/postgres-operator/pkg/generated/clientset/versioned/typed/zalando.org/v1"
|
zalandov1 "github.com/zalando/postgres-operator/pkg/generated/clientset/versioned/typed/zalando.org/v1"
|
||||||
@@ -41,8 +41,7 @@ type Interface interface {
|
|||||||
ZalandoV1() zalandov1.ZalandoV1Interface
|
ZalandoV1() zalandov1.ZalandoV1Interface
|
||||||
}
|
}
|
||||||
|
|
||||||
// Clientset contains the clients for groups. Each group has exactly one
|
// Clientset contains the clients for groups.
|
||||||
// version included in a Clientset.
|
|
||||||
type Clientset struct {
|
type Clientset struct {
|
||||||
*discovery.DiscoveryClient
|
*discovery.DiscoveryClient
|
||||||
acidV1 *acidv1.AcidV1Client
|
acidV1 *acidv1.AcidV1Client
|
||||||
|
|||||||
@@ -39,8 +39,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 {
|
||||||
|
|||||||
@@ -25,10 +25,10 @@ SOFTWARE.
|
|||||||
package v1
|
package v1
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"net/http"
|
http "net/http"
|
||||||
|
|
||||||
v1 "github.com/zalando/postgres-operator/pkg/apis/acid.zalan.do/v1"
|
acidzalandov1 "github.com/zalando/postgres-operator/pkg/apis/acid.zalan.do/v1"
|
||||||
"github.com/zalando/postgres-operator/pkg/generated/clientset/versioned/scheme"
|
scheme "github.com/zalando/postgres-operator/pkg/generated/clientset/versioned/scheme"
|
||||||
rest "k8s.io/client-go/rest"
|
rest "k8s.io/client-go/rest"
|
||||||
)
|
)
|
||||||
|
|
||||||
@@ -101,10 +101,10 @@ func New(c rest.Interface) *AcidV1Client {
|
|||||||
}
|
}
|
||||||
|
|
||||||
func setConfigDefaults(config *rest.Config) error {
|
func setConfigDefaults(config *rest.Config) error {
|
||||||
gv := v1.SchemeGroupVersion
|
gv := acidzalandov1.SchemeGroupVersion
|
||||||
config.GroupVersion = &gv
|
config.GroupVersion = &gv
|
||||||
config.APIPath = "/apis"
|
config.APIPath = "/apis"
|
||||||
config.NegotiatedSerializer = scheme.Codecs.WithoutConversion()
|
config.NegotiatedSerializer = rest.CodecFactoryForGeneratedClient(scheme.Scheme, scheme.Codecs).WithoutConversion()
|
||||||
|
|
||||||
if config.UserAgent == "" {
|
if config.UserAgent == "" {
|
||||||
config.UserAgent = rest.DefaultKubernetesUserAgent()
|
config.UserAgent = rest.DefaultKubernetesUserAgent()
|
||||||
|
|||||||
+3
-3
@@ -35,15 +35,15 @@ type FakeAcidV1 struct {
|
|||||||
}
|
}
|
||||||
|
|
||||||
func (c *FakeAcidV1) OperatorConfigurations(namespace string) v1.OperatorConfigurationInterface {
|
func (c *FakeAcidV1) OperatorConfigurations(namespace string) v1.OperatorConfigurationInterface {
|
||||||
return &FakeOperatorConfigurations{c, namespace}
|
return newFakeOperatorConfigurations(c, namespace)
|
||||||
}
|
}
|
||||||
|
|
||||||
func (c *FakeAcidV1) PostgresTeams(namespace string) v1.PostgresTeamInterface {
|
func (c *FakeAcidV1) PostgresTeams(namespace string) v1.PostgresTeamInterface {
|
||||||
return &FakePostgresTeams{c, namespace}
|
return newFakePostgresTeams(c, namespace)
|
||||||
}
|
}
|
||||||
|
|
||||||
func (c *FakeAcidV1) Postgresqls(namespace string) v1.PostgresqlInterface {
|
func (c *FakeAcidV1) Postgresqls(namespace string) v1.PostgresqlInterface {
|
||||||
return &FakePostgresqls{c, namespace}
|
return newFakePostgresqls(c, namespace)
|
||||||
}
|
}
|
||||||
|
|
||||||
// RESTClient returns a RESTClient that is used to communicate
|
// RESTClient returns a RESTClient that is used to communicate
|
||||||
|
|||||||
+16
-21
@@ -25,31 +25,26 @@ SOFTWARE.
|
|||||||
package fake
|
package fake
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"context"
|
v1 "github.com/zalando/postgres-operator/pkg/apis/acid.zalan.do/v1"
|
||||||
|
acidzalandov1 "github.com/zalando/postgres-operator/pkg/generated/clientset/versioned/typed/acid.zalan.do/v1"
|
||||||
acidzalandov1 "github.com/zalando/postgres-operator/pkg/apis/acid.zalan.do/v1"
|
gentype "k8s.io/client-go/gentype"
|
||||||
v1 "k8s.io/apimachinery/pkg/apis/meta/v1"
|
|
||||||
schema "k8s.io/apimachinery/pkg/runtime/schema"
|
|
||||||
testing "k8s.io/client-go/testing"
|
|
||||||
)
|
)
|
||||||
|
|
||||||
// FakeOperatorConfigurations implements OperatorConfigurationInterface
|
// fakeOperatorConfigurations implements OperatorConfigurationInterface
|
||||||
type FakeOperatorConfigurations struct {
|
type fakeOperatorConfigurations struct {
|
||||||
|
*gentype.FakeClient[*v1.OperatorConfiguration]
|
||||||
Fake *FakeAcidV1
|
Fake *FakeAcidV1
|
||||||
ns string
|
|
||||||
}
|
}
|
||||||
|
|
||||||
var operatorconfigurationsResource = schema.GroupVersionResource{Group: "acid.zalan.do", Version: "v1", Resource: "operatorconfigurations"}
|
func newFakeOperatorConfigurations(fake *FakeAcidV1, namespace string) acidzalandov1.OperatorConfigurationInterface {
|
||||||
|
return &fakeOperatorConfigurations{
|
||||||
var operatorconfigurationsKind = schema.GroupVersionKind{Group: "acid.zalan.do", Version: "v1", Kind: "OperatorConfiguration"}
|
gentype.NewFakeClient[*v1.OperatorConfiguration](
|
||||||
|
fake.Fake,
|
||||||
// Get takes name of the operatorConfiguration, and returns the corresponding operatorConfiguration object, and an error if there is any.
|
namespace,
|
||||||
func (c *FakeOperatorConfigurations) Get(ctx context.Context, name string, options v1.GetOptions) (result *acidzalandov1.OperatorConfiguration, err error) {
|
v1.SchemeGroupVersion.WithResource("operatorconfigurations"),
|
||||||
obj, err := c.Fake.
|
v1.SchemeGroupVersion.WithKind("OperatorConfiguration"),
|
||||||
Invokes(testing.NewGetAction(operatorconfigurationsResource, c.ns, name), &acidzalandov1.OperatorConfiguration{})
|
func() *v1.OperatorConfiguration { return &v1.OperatorConfiguration{} },
|
||||||
|
),
|
||||||
if obj == nil {
|
fake,
|
||||||
return nil, err
|
|
||||||
}
|
}
|
||||||
return obj.(*acidzalandov1.OperatorConfiguration), err
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -25,124 +25,30 @@ SOFTWARE.
|
|||||||
package fake
|
package fake
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"context"
|
v1 "github.com/zalando/postgres-operator/pkg/apis/acid.zalan.do/v1"
|
||||||
|
acidzalandov1 "github.com/zalando/postgres-operator/pkg/generated/clientset/versioned/typed/acid.zalan.do/v1"
|
||||||
acidzalandov1 "github.com/zalando/postgres-operator/pkg/apis/acid.zalan.do/v1"
|
gentype "k8s.io/client-go/gentype"
|
||||||
v1 "k8s.io/apimachinery/pkg/apis/meta/v1"
|
|
||||||
labels "k8s.io/apimachinery/pkg/labels"
|
|
||||||
schema "k8s.io/apimachinery/pkg/runtime/schema"
|
|
||||||
types "k8s.io/apimachinery/pkg/types"
|
|
||||||
watch "k8s.io/apimachinery/pkg/watch"
|
|
||||||
testing "k8s.io/client-go/testing"
|
|
||||||
)
|
)
|
||||||
|
|
||||||
// FakePostgresqls implements PostgresqlInterface
|
// fakePostgresqls implements PostgresqlInterface
|
||||||
type FakePostgresqls struct {
|
type fakePostgresqls struct {
|
||||||
|
*gentype.FakeClientWithList[*v1.Postgresql, *v1.PostgresqlList]
|
||||||
Fake *FakeAcidV1
|
Fake *FakeAcidV1
|
||||||
ns string
|
|
||||||
}
|
}
|
||||||
|
|
||||||
var postgresqlsResource = schema.GroupVersionResource{Group: "acid.zalan.do", Version: "v1", Resource: "postgresqls"}
|
func newFakePostgresqls(fake *FakeAcidV1, namespace string) acidzalandov1.PostgresqlInterface {
|
||||||
|
return &fakePostgresqls{
|
||||||
var postgresqlsKind = schema.GroupVersionKind{Group: "acid.zalan.do", Version: "v1", Kind: "Postgresql"}
|
gentype.NewFakeClientWithList[*v1.Postgresql, *v1.PostgresqlList](
|
||||||
|
fake.Fake,
|
||||||
// Get takes name of the postgresql, and returns the corresponding postgresql object, and an error if there is any.
|
namespace,
|
||||||
func (c *FakePostgresqls) Get(ctx context.Context, name string, options v1.GetOptions) (result *acidzalandov1.Postgresql, err error) {
|
v1.SchemeGroupVersion.WithResource("postgresqls"),
|
||||||
obj, err := c.Fake.
|
v1.SchemeGroupVersion.WithKind("Postgresql"),
|
||||||
Invokes(testing.NewGetAction(postgresqlsResource, c.ns, name), &acidzalandov1.Postgresql{})
|
func() *v1.Postgresql { return &v1.Postgresql{} },
|
||||||
|
func() *v1.PostgresqlList { return &v1.PostgresqlList{} },
|
||||||
if obj == nil {
|
func(dst, src *v1.PostgresqlList) { dst.ListMeta = src.ListMeta },
|
||||||
return nil, err
|
func(list *v1.PostgresqlList) []*v1.Postgresql { return gentype.ToPointerSlice(list.Items) },
|
||||||
|
func(list *v1.PostgresqlList, items []*v1.Postgresql) { list.Items = gentype.FromPointerSlice(items) },
|
||||||
|
),
|
||||||
|
fake,
|
||||||
}
|
}
|
||||||
return obj.(*acidzalandov1.Postgresql), err
|
|
||||||
}
|
|
||||||
|
|
||||||
// List takes label and field selectors, and returns the list of Postgresqls that match those selectors.
|
|
||||||
func (c *FakePostgresqls) List(ctx context.Context, opts v1.ListOptions) (result *acidzalandov1.PostgresqlList, err error) {
|
|
||||||
obj, err := c.Fake.
|
|
||||||
Invokes(testing.NewListAction(postgresqlsResource, postgresqlsKind, c.ns, opts), &acidzalandov1.PostgresqlList{})
|
|
||||||
|
|
||||||
if obj == nil {
|
|
||||||
return nil, err
|
|
||||||
}
|
|
||||||
|
|
||||||
label, _, _ := testing.ExtractFromListOptions(opts)
|
|
||||||
if label == nil {
|
|
||||||
label = labels.Everything()
|
|
||||||
}
|
|
||||||
list := &acidzalandov1.PostgresqlList{ListMeta: obj.(*acidzalandov1.PostgresqlList).ListMeta}
|
|
||||||
for _, item := range obj.(*acidzalandov1.PostgresqlList).Items {
|
|
||||||
if label.Matches(labels.Set(item.Labels)) {
|
|
||||||
list.Items = append(list.Items, item)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return list, err
|
|
||||||
}
|
|
||||||
|
|
||||||
// Watch returns a watch.Interface that watches the requested postgresqls.
|
|
||||||
func (c *FakePostgresqls) Watch(ctx context.Context, opts v1.ListOptions) (watch.Interface, error) {
|
|
||||||
return c.Fake.
|
|
||||||
InvokesWatch(testing.NewWatchAction(postgresqlsResource, c.ns, opts))
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
// Create takes the representation of a postgresql and creates it. Returns the server's representation of the postgresql, and an error, if there is any.
|
|
||||||
func (c *FakePostgresqls) Create(ctx context.Context, postgresql *acidzalandov1.Postgresql, opts v1.CreateOptions) (result *acidzalandov1.Postgresql, err error) {
|
|
||||||
obj, err := c.Fake.
|
|
||||||
Invokes(testing.NewCreateAction(postgresqlsResource, c.ns, postgresql), &acidzalandov1.Postgresql{})
|
|
||||||
|
|
||||||
if obj == nil {
|
|
||||||
return nil, err
|
|
||||||
}
|
|
||||||
return obj.(*acidzalandov1.Postgresql), err
|
|
||||||
}
|
|
||||||
|
|
||||||
// Update takes the representation of a postgresql and updates it. Returns the server's representation of the postgresql, and an error, if there is any.
|
|
||||||
func (c *FakePostgresqls) Update(ctx context.Context, postgresql *acidzalandov1.Postgresql, opts v1.UpdateOptions) (result *acidzalandov1.Postgresql, err error) {
|
|
||||||
obj, err := c.Fake.
|
|
||||||
Invokes(testing.NewUpdateAction(postgresqlsResource, c.ns, postgresql), &acidzalandov1.Postgresql{})
|
|
||||||
|
|
||||||
if obj == nil {
|
|
||||||
return nil, err
|
|
||||||
}
|
|
||||||
return obj.(*acidzalandov1.Postgresql), err
|
|
||||||
}
|
|
||||||
|
|
||||||
// UpdateStatus was generated because the type contains a Status member.
|
|
||||||
// Add a +genclient:noStatus comment above the type to avoid generating UpdateStatus().
|
|
||||||
func (c *FakePostgresqls) UpdateStatus(ctx context.Context, postgresql *acidzalandov1.Postgresql, opts v1.UpdateOptions) (*acidzalandov1.Postgresql, error) {
|
|
||||||
obj, err := c.Fake.
|
|
||||||
Invokes(testing.NewUpdateSubresourceAction(postgresqlsResource, "status", c.ns, postgresql), &acidzalandov1.Postgresql{})
|
|
||||||
|
|
||||||
if obj == nil {
|
|
||||||
return nil, err
|
|
||||||
}
|
|
||||||
return obj.(*acidzalandov1.Postgresql), err
|
|
||||||
}
|
|
||||||
|
|
||||||
// Delete takes name of the postgresql and deletes it. Returns an error if one occurs.
|
|
||||||
func (c *FakePostgresqls) Delete(ctx context.Context, name string, opts v1.DeleteOptions) error {
|
|
||||||
_, err := c.Fake.
|
|
||||||
Invokes(testing.NewDeleteActionWithOptions(postgresqlsResource, c.ns, name, opts), &acidzalandov1.Postgresql{})
|
|
||||||
|
|
||||||
return err
|
|
||||||
}
|
|
||||||
|
|
||||||
// DeleteCollection deletes a collection of objects.
|
|
||||||
func (c *FakePostgresqls) DeleteCollection(ctx context.Context, opts v1.DeleteOptions, listOpts v1.ListOptions) error {
|
|
||||||
action := testing.NewDeleteCollectionAction(postgresqlsResource, c.ns, listOpts)
|
|
||||||
|
|
||||||
_, err := c.Fake.Invokes(action, &acidzalandov1.PostgresqlList{})
|
|
||||||
return err
|
|
||||||
}
|
|
||||||
|
|
||||||
// Patch applies the patch and returns the patched postgresql.
|
|
||||||
func (c *FakePostgresqls) Patch(ctx context.Context, name string, pt types.PatchType, data []byte, opts v1.PatchOptions, subresources ...string) (result *acidzalandov1.Postgresql, err error) {
|
|
||||||
obj, err := c.Fake.
|
|
||||||
Invokes(testing.NewPatchSubresourceAction(postgresqlsResource, c.ns, name, pt, data, subresources...), &acidzalandov1.Postgresql{})
|
|
||||||
|
|
||||||
if obj == nil {
|
|
||||||
return nil, err
|
|
||||||
}
|
|
||||||
return obj.(*acidzalandov1.Postgresql), err
|
|
||||||
}
|
}
|
||||||
|
|||||||
+22
-102
@@ -25,112 +25,32 @@ SOFTWARE.
|
|||||||
package fake
|
package fake
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"context"
|
v1 "github.com/zalando/postgres-operator/pkg/apis/acid.zalan.do/v1"
|
||||||
|
acidzalandov1 "github.com/zalando/postgres-operator/pkg/generated/clientset/versioned/typed/acid.zalan.do/v1"
|
||||||
acidzalandov1 "github.com/zalando/postgres-operator/pkg/apis/acid.zalan.do/v1"
|
gentype "k8s.io/client-go/gentype"
|
||||||
v1 "k8s.io/apimachinery/pkg/apis/meta/v1"
|
|
||||||
labels "k8s.io/apimachinery/pkg/labels"
|
|
||||||
schema "k8s.io/apimachinery/pkg/runtime/schema"
|
|
||||||
types "k8s.io/apimachinery/pkg/types"
|
|
||||||
watch "k8s.io/apimachinery/pkg/watch"
|
|
||||||
testing "k8s.io/client-go/testing"
|
|
||||||
)
|
)
|
||||||
|
|
||||||
// FakePostgresTeams implements PostgresTeamInterface
|
// fakePostgresTeams implements PostgresTeamInterface
|
||||||
type FakePostgresTeams struct {
|
type fakePostgresTeams struct {
|
||||||
|
*gentype.FakeClientWithList[*v1.PostgresTeam, *v1.PostgresTeamList]
|
||||||
Fake *FakeAcidV1
|
Fake *FakeAcidV1
|
||||||
ns string
|
|
||||||
}
|
}
|
||||||
|
|
||||||
var postgresteamsResource = schema.GroupVersionResource{Group: "acid.zalan.do", Version: "v1", Resource: "postgresteams"}
|
func newFakePostgresTeams(fake *FakeAcidV1, namespace string) acidzalandov1.PostgresTeamInterface {
|
||||||
|
return &fakePostgresTeams{
|
||||||
var postgresteamsKind = schema.GroupVersionKind{Group: "acid.zalan.do", Version: "v1", Kind: "PostgresTeam"}
|
gentype.NewFakeClientWithList[*v1.PostgresTeam, *v1.PostgresTeamList](
|
||||||
|
fake.Fake,
|
||||||
// Get takes name of the postgresTeam, and returns the corresponding postgresTeam object, and an error if there is any.
|
namespace,
|
||||||
func (c *FakePostgresTeams) Get(ctx context.Context, name string, options v1.GetOptions) (result *acidzalandov1.PostgresTeam, err error) {
|
v1.SchemeGroupVersion.WithResource("postgresteams"),
|
||||||
obj, err := c.Fake.
|
v1.SchemeGroupVersion.WithKind("PostgresTeam"),
|
||||||
Invokes(testing.NewGetAction(postgresteamsResource, c.ns, name), &acidzalandov1.PostgresTeam{})
|
func() *v1.PostgresTeam { return &v1.PostgresTeam{} },
|
||||||
|
func() *v1.PostgresTeamList { return &v1.PostgresTeamList{} },
|
||||||
if obj == nil {
|
func(dst, src *v1.PostgresTeamList) { dst.ListMeta = src.ListMeta },
|
||||||
return nil, err
|
func(list *v1.PostgresTeamList) []*v1.PostgresTeam { return gentype.ToPointerSlice(list.Items) },
|
||||||
|
func(list *v1.PostgresTeamList, items []*v1.PostgresTeam) {
|
||||||
|
list.Items = gentype.FromPointerSlice(items)
|
||||||
|
},
|
||||||
|
),
|
||||||
|
fake,
|
||||||
}
|
}
|
||||||
return obj.(*acidzalandov1.PostgresTeam), err
|
|
||||||
}
|
|
||||||
|
|
||||||
// List takes label and field selectors, and returns the list of PostgresTeams that match those selectors.
|
|
||||||
func (c *FakePostgresTeams) List(ctx context.Context, opts v1.ListOptions) (result *acidzalandov1.PostgresTeamList, err error) {
|
|
||||||
obj, err := c.Fake.
|
|
||||||
Invokes(testing.NewListAction(postgresteamsResource, postgresteamsKind, c.ns, opts), &acidzalandov1.PostgresTeamList{})
|
|
||||||
|
|
||||||
if obj == nil {
|
|
||||||
return nil, err
|
|
||||||
}
|
|
||||||
|
|
||||||
label, _, _ := testing.ExtractFromListOptions(opts)
|
|
||||||
if label == nil {
|
|
||||||
label = labels.Everything()
|
|
||||||
}
|
|
||||||
list := &acidzalandov1.PostgresTeamList{ListMeta: obj.(*acidzalandov1.PostgresTeamList).ListMeta}
|
|
||||||
for _, item := range obj.(*acidzalandov1.PostgresTeamList).Items {
|
|
||||||
if label.Matches(labels.Set(item.Labels)) {
|
|
||||||
list.Items = append(list.Items, item)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return list, err
|
|
||||||
}
|
|
||||||
|
|
||||||
// Watch returns a watch.Interface that watches the requested postgresTeams.
|
|
||||||
func (c *FakePostgresTeams) Watch(ctx context.Context, opts v1.ListOptions) (watch.Interface, error) {
|
|
||||||
return c.Fake.
|
|
||||||
InvokesWatch(testing.NewWatchAction(postgresteamsResource, c.ns, opts))
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
// Create takes the representation of a postgresTeam and creates it. Returns the server's representation of the postgresTeam, and an error, if there is any.
|
|
||||||
func (c *FakePostgresTeams) Create(ctx context.Context, postgresTeam *acidzalandov1.PostgresTeam, opts v1.CreateOptions) (result *acidzalandov1.PostgresTeam, err error) {
|
|
||||||
obj, err := c.Fake.
|
|
||||||
Invokes(testing.NewCreateAction(postgresteamsResource, c.ns, postgresTeam), &acidzalandov1.PostgresTeam{})
|
|
||||||
|
|
||||||
if obj == nil {
|
|
||||||
return nil, err
|
|
||||||
}
|
|
||||||
return obj.(*acidzalandov1.PostgresTeam), err
|
|
||||||
}
|
|
||||||
|
|
||||||
// Update takes the representation of a postgresTeam and updates it. Returns the server's representation of the postgresTeam, and an error, if there is any.
|
|
||||||
func (c *FakePostgresTeams) Update(ctx context.Context, postgresTeam *acidzalandov1.PostgresTeam, opts v1.UpdateOptions) (result *acidzalandov1.PostgresTeam, err error) {
|
|
||||||
obj, err := c.Fake.
|
|
||||||
Invokes(testing.NewUpdateAction(postgresteamsResource, c.ns, postgresTeam), &acidzalandov1.PostgresTeam{})
|
|
||||||
|
|
||||||
if obj == nil {
|
|
||||||
return nil, err
|
|
||||||
}
|
|
||||||
return obj.(*acidzalandov1.PostgresTeam), err
|
|
||||||
}
|
|
||||||
|
|
||||||
// Delete takes name of the postgresTeam and deletes it. Returns an error if one occurs.
|
|
||||||
func (c *FakePostgresTeams) Delete(ctx context.Context, name string, opts v1.DeleteOptions) error {
|
|
||||||
_, err := c.Fake.
|
|
||||||
Invokes(testing.NewDeleteActionWithOptions(postgresteamsResource, c.ns, name, opts), &acidzalandov1.PostgresTeam{})
|
|
||||||
|
|
||||||
return err
|
|
||||||
}
|
|
||||||
|
|
||||||
// DeleteCollection deletes a collection of objects.
|
|
||||||
func (c *FakePostgresTeams) DeleteCollection(ctx context.Context, opts v1.DeleteOptions, listOpts v1.ListOptions) error {
|
|
||||||
action := testing.NewDeleteCollectionAction(postgresteamsResource, c.ns, listOpts)
|
|
||||||
|
|
||||||
_, err := c.Fake.Invokes(action, &acidzalandov1.PostgresTeamList{})
|
|
||||||
return err
|
|
||||||
}
|
|
||||||
|
|
||||||
// Patch applies the patch and returns the patched postgresTeam.
|
|
||||||
func (c *FakePostgresTeams) Patch(ctx context.Context, name string, pt types.PatchType, data []byte, opts v1.PatchOptions, subresources ...string) (result *acidzalandov1.PostgresTeam, err error) {
|
|
||||||
obj, err := c.Fake.
|
|
||||||
Invokes(testing.NewPatchSubresourceAction(postgresteamsResource, c.ns, name, pt, data, subresources...), &acidzalandov1.PostgresTeam{})
|
|
||||||
|
|
||||||
if obj == nil {
|
|
||||||
return nil, err
|
|
||||||
}
|
|
||||||
return obj.(*acidzalandov1.PostgresTeam), err
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -25,12 +25,12 @@ SOFTWARE.
|
|||||||
package v1
|
package v1
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"context"
|
context "context"
|
||||||
|
|
||||||
acidzalandov1 "github.com/zalando/postgres-operator/pkg/apis/acid.zalan.do/v1"
|
acidzalandov1 "github.com/zalando/postgres-operator/pkg/apis/acid.zalan.do/v1"
|
||||||
scheme "github.com/zalando/postgres-operator/pkg/generated/clientset/versioned/scheme"
|
scheme "github.com/zalando/postgres-operator/pkg/generated/clientset/versioned/scheme"
|
||||||
v1 "k8s.io/apimachinery/pkg/apis/meta/v1"
|
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
|
||||||
rest "k8s.io/client-go/rest"
|
gentype "k8s.io/client-go/gentype"
|
||||||
)
|
)
|
||||||
|
|
||||||
// OperatorConfigurationsGetter has a method to return a OperatorConfigurationInterface.
|
// OperatorConfigurationsGetter has a method to return a OperatorConfigurationInterface.
|
||||||
@@ -41,33 +41,24 @@ type OperatorConfigurationsGetter interface {
|
|||||||
|
|
||||||
// OperatorConfigurationInterface has methods to work with OperatorConfiguration resources.
|
// OperatorConfigurationInterface has methods to work with OperatorConfiguration resources.
|
||||||
type OperatorConfigurationInterface interface {
|
type OperatorConfigurationInterface interface {
|
||||||
Get(ctx context.Context, name string, opts v1.GetOptions) (*acidzalandov1.OperatorConfiguration, error)
|
Get(ctx context.Context, name string, opts metav1.GetOptions) (*acidzalandov1.OperatorConfiguration, error)
|
||||||
OperatorConfigurationExpansion
|
OperatorConfigurationExpansion
|
||||||
}
|
}
|
||||||
|
|
||||||
// operatorConfigurations implements OperatorConfigurationInterface
|
// operatorConfigurations implements OperatorConfigurationInterface
|
||||||
type operatorConfigurations struct {
|
type operatorConfigurations struct {
|
||||||
client rest.Interface
|
*gentype.Client[*acidzalandov1.OperatorConfiguration]
|
||||||
ns string
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// newOperatorConfigurations returns a OperatorConfigurations
|
// newOperatorConfigurations returns a OperatorConfigurations
|
||||||
func newOperatorConfigurations(c *AcidV1Client, namespace string) *operatorConfigurations {
|
func newOperatorConfigurations(c *AcidV1Client, namespace string) *operatorConfigurations {
|
||||||
return &operatorConfigurations{
|
return &operatorConfigurations{
|
||||||
client: c.RESTClient(),
|
gentype.NewClient[*acidzalandov1.OperatorConfiguration](
|
||||||
ns: namespace,
|
"operatorconfigurations",
|
||||||
|
c.RESTClient(),
|
||||||
|
scheme.ParameterCodec,
|
||||||
|
namespace,
|
||||||
|
func() *acidzalandov1.OperatorConfiguration { return &acidzalandov1.OperatorConfiguration{} },
|
||||||
|
),
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// Get takes name of the operatorConfiguration, and returns the corresponding operatorConfiguration object, and an error if there is any.
|
|
||||||
func (c *operatorConfigurations) Get(ctx context.Context, name string, options v1.GetOptions) (result *acidzalandov1.OperatorConfiguration, err error) {
|
|
||||||
result = &acidzalandov1.OperatorConfiguration{}
|
|
||||||
err = c.client.Get().
|
|
||||||
Namespace(c.ns).
|
|
||||||
Resource("operatorconfigurations").
|
|
||||||
Name(name).
|
|
||||||
VersionedParams(&options, scheme.ParameterCodec).
|
|
||||||
Do(ctx).
|
|
||||||
Into(result)
|
|
||||||
return
|
|
||||||
}
|
|
||||||
|
|||||||
@@ -25,15 +25,14 @@ SOFTWARE.
|
|||||||
package v1
|
package v1
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"context"
|
context "context"
|
||||||
"time"
|
|
||||||
|
|
||||||
v1 "github.com/zalando/postgres-operator/pkg/apis/acid.zalan.do/v1"
|
acidzalandov1 "github.com/zalando/postgres-operator/pkg/apis/acid.zalan.do/v1"
|
||||||
scheme "github.com/zalando/postgres-operator/pkg/generated/clientset/versioned/scheme"
|
scheme "github.com/zalando/postgres-operator/pkg/generated/clientset/versioned/scheme"
|
||||||
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"
|
||||||
)
|
)
|
||||||
|
|
||||||
// PostgresqlsGetter has a method to return a PostgresqlInterface.
|
// PostgresqlsGetter has a method to return a PostgresqlInterface.
|
||||||
@@ -44,158 +43,34 @@ type PostgresqlsGetter interface {
|
|||||||
|
|
||||||
// PostgresqlInterface has methods to work with Postgresql resources.
|
// PostgresqlInterface has methods to work with Postgresql resources.
|
||||||
type PostgresqlInterface interface {
|
type PostgresqlInterface interface {
|
||||||
Create(ctx context.Context, postgresql *v1.Postgresql, opts metav1.CreateOptions) (*v1.Postgresql, error)
|
Create(ctx context.Context, postgresql *acidzalandov1.Postgresql, opts metav1.CreateOptions) (*acidzalandov1.Postgresql, error)
|
||||||
Update(ctx context.Context, postgresql *v1.Postgresql, opts metav1.UpdateOptions) (*v1.Postgresql, error)
|
Update(ctx context.Context, postgresql *acidzalandov1.Postgresql, opts metav1.UpdateOptions) (*acidzalandov1.Postgresql, error)
|
||||||
UpdateStatus(ctx context.Context, postgresql *v1.Postgresql, opts metav1.UpdateOptions) (*v1.Postgresql, error)
|
// Add a +genclient:noStatus comment above the type to avoid generating UpdateStatus().
|
||||||
|
UpdateStatus(ctx context.Context, postgresql *acidzalandov1.Postgresql, opts metav1.UpdateOptions) (*acidzalandov1.Postgresql, 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
|
||||||
Get(ctx context.Context, name string, opts metav1.GetOptions) (*v1.Postgresql, error)
|
Get(ctx context.Context, name string, opts metav1.GetOptions) (*acidzalandov1.Postgresql, error)
|
||||||
List(ctx context.Context, opts metav1.ListOptions) (*v1.PostgresqlList, error)
|
List(ctx context.Context, opts metav1.ListOptions) (*acidzalandov1.PostgresqlList, error)
|
||||||
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.Postgresql, err error)
|
Patch(ctx context.Context, name string, pt types.PatchType, data []byte, opts metav1.PatchOptions, subresources ...string) (result *acidzalandov1.Postgresql, err error)
|
||||||
PostgresqlExpansion
|
PostgresqlExpansion
|
||||||
}
|
}
|
||||||
|
|
||||||
// postgresqls implements PostgresqlInterface
|
// postgresqls implements PostgresqlInterface
|
||||||
type postgresqls struct {
|
type postgresqls struct {
|
||||||
client rest.Interface
|
*gentype.ClientWithList[*acidzalandov1.Postgresql, *acidzalandov1.PostgresqlList]
|
||||||
ns string
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// newPostgresqls returns a Postgresqls
|
// newPostgresqls returns a Postgresqls
|
||||||
func newPostgresqls(c *AcidV1Client, namespace string) *postgresqls {
|
func newPostgresqls(c *AcidV1Client, namespace string) *postgresqls {
|
||||||
return &postgresqls{
|
return &postgresqls{
|
||||||
client: c.RESTClient(),
|
gentype.NewClientWithList[*acidzalandov1.Postgresql, *acidzalandov1.PostgresqlList](
|
||||||
ns: namespace,
|
"postgresqls",
|
||||||
|
c.RESTClient(),
|
||||||
|
scheme.ParameterCodec,
|
||||||
|
namespace,
|
||||||
|
func() *acidzalandov1.Postgresql { return &acidzalandov1.Postgresql{} },
|
||||||
|
func() *acidzalandov1.PostgresqlList { return &acidzalandov1.PostgresqlList{} },
|
||||||
|
),
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// Get takes name of the postgresql, and returns the corresponding postgresql object, and an error if there is any.
|
|
||||||
func (c *postgresqls) Get(ctx context.Context, name string, options metav1.GetOptions) (result *v1.Postgresql, err error) {
|
|
||||||
result = &v1.Postgresql{}
|
|
||||||
err = c.client.Get().
|
|
||||||
Namespace(c.ns).
|
|
||||||
Resource("postgresqls").
|
|
||||||
Name(name).
|
|
||||||
VersionedParams(&options, scheme.ParameterCodec).
|
|
||||||
Do(ctx).
|
|
||||||
Into(result)
|
|
||||||
return
|
|
||||||
}
|
|
||||||
|
|
||||||
// List takes label and field selectors, and returns the list of Postgresqls that match those selectors.
|
|
||||||
func (c *postgresqls) List(ctx context.Context, opts metav1.ListOptions) (result *v1.PostgresqlList, err error) {
|
|
||||||
var timeout time.Duration
|
|
||||||
if opts.TimeoutSeconds != nil {
|
|
||||||
timeout = time.Duration(*opts.TimeoutSeconds) * time.Second
|
|
||||||
}
|
|
||||||
result = &v1.PostgresqlList{}
|
|
||||||
err = c.client.Get().
|
|
||||||
Namespace(c.ns).
|
|
||||||
Resource("postgresqls").
|
|
||||||
VersionedParams(&opts, scheme.ParameterCodec).
|
|
||||||
Timeout(timeout).
|
|
||||||
Do(ctx).
|
|
||||||
Into(result)
|
|
||||||
return
|
|
||||||
}
|
|
||||||
|
|
||||||
// Watch returns a watch.Interface that watches the requested postgresqls.
|
|
||||||
func (c *postgresqls) 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("postgresqls").
|
|
||||||
VersionedParams(&opts, scheme.ParameterCodec).
|
|
||||||
Timeout(timeout).
|
|
||||||
Watch(ctx)
|
|
||||||
}
|
|
||||||
|
|
||||||
// Create takes the representation of a postgresql and creates it. Returns the server's representation of the postgresql, and an error, if there is any.
|
|
||||||
func (c *postgresqls) Create(ctx context.Context, postgresql *v1.Postgresql, opts metav1.CreateOptions) (result *v1.Postgresql, err error) {
|
|
||||||
result = &v1.Postgresql{}
|
|
||||||
err = c.client.Post().
|
|
||||||
Namespace(c.ns).
|
|
||||||
Resource("postgresqls").
|
|
||||||
VersionedParams(&opts, scheme.ParameterCodec).
|
|
||||||
Body(postgresql).
|
|
||||||
Do(ctx).
|
|
||||||
Into(result)
|
|
||||||
return
|
|
||||||
}
|
|
||||||
|
|
||||||
// Update takes the representation of a postgresql and updates it. Returns the server's representation of the postgresql, and an error, if there is any.
|
|
||||||
func (c *postgresqls) Update(ctx context.Context, postgresql *v1.Postgresql, opts metav1.UpdateOptions) (result *v1.Postgresql, err error) {
|
|
||||||
result = &v1.Postgresql{}
|
|
||||||
err = c.client.Put().
|
|
||||||
Namespace(c.ns).
|
|
||||||
Resource("postgresqls").
|
|
||||||
Name(postgresql.Name).
|
|
||||||
VersionedParams(&opts, scheme.ParameterCodec).
|
|
||||||
Body(postgresql).
|
|
||||||
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 *postgresqls) UpdateStatus(ctx context.Context, postgresql *v1.Postgresql, opts metav1.UpdateOptions) (result *v1.Postgresql, err error) {
|
|
||||||
result = &v1.Postgresql{}
|
|
||||||
err = c.client.Put().
|
|
||||||
Namespace(c.ns).
|
|
||||||
Resource("postgresqls").
|
|
||||||
Name(postgresql.Name).
|
|
||||||
SubResource("status").
|
|
||||||
VersionedParams(&opts, scheme.ParameterCodec).
|
|
||||||
Body(postgresql).
|
|
||||||
Do(ctx).
|
|
||||||
Into(result)
|
|
||||||
return
|
|
||||||
}
|
|
||||||
|
|
||||||
// Delete takes name of the postgresql and deletes it. Returns an error if one occurs.
|
|
||||||
func (c *postgresqls) Delete(ctx context.Context, name string, opts metav1.DeleteOptions) error {
|
|
||||||
return c.client.Delete().
|
|
||||||
Namespace(c.ns).
|
|
||||||
Resource("postgresqls").
|
|
||||||
Name(name).
|
|
||||||
Body(&opts).
|
|
||||||
Do(ctx).
|
|
||||||
Error()
|
|
||||||
}
|
|
||||||
|
|
||||||
// DeleteCollection deletes a collection of objects.
|
|
||||||
func (c *postgresqls) 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("postgresqls").
|
|
||||||
VersionedParams(&listOpts, scheme.ParameterCodec).
|
|
||||||
Timeout(timeout).
|
|
||||||
Body(&opts).
|
|
||||||
Do(ctx).
|
|
||||||
Error()
|
|
||||||
}
|
|
||||||
|
|
||||||
// Patch applies the patch and returns the patched postgresql.
|
|
||||||
func (c *postgresqls) Patch(ctx context.Context, name string, pt types.PatchType, data []byte, opts metav1.PatchOptions, subresources ...string) (result *v1.Postgresql, err error) {
|
|
||||||
result = &v1.Postgresql{}
|
|
||||||
err = c.client.Patch(pt).
|
|
||||||
Namespace(c.ns).
|
|
||||||
Resource("postgresqls").
|
|
||||||
Name(name).
|
|
||||||
SubResource(subresources...).
|
|
||||||
VersionedParams(&opts, scheme.ParameterCodec).
|
|
||||||
Body(data).
|
|
||||||
Do(ctx).
|
|
||||||
Into(result)
|
|
||||||
return
|
|
||||||
}
|
|
||||||
|
|||||||
@@ -25,15 +25,14 @@ SOFTWARE.
|
|||||||
package v1
|
package v1
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"context"
|
context "context"
|
||||||
"time"
|
|
||||||
|
|
||||||
v1 "github.com/zalando/postgres-operator/pkg/apis/acid.zalan.do/v1"
|
acidzalandov1 "github.com/zalando/postgres-operator/pkg/apis/acid.zalan.do/v1"
|
||||||
scheme "github.com/zalando/postgres-operator/pkg/generated/clientset/versioned/scheme"
|
scheme "github.com/zalando/postgres-operator/pkg/generated/clientset/versioned/scheme"
|
||||||
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"
|
||||||
)
|
)
|
||||||
|
|
||||||
// PostgresTeamsGetter has a method to return a PostgresTeamInterface.
|
// PostgresTeamsGetter has a method to return a PostgresTeamInterface.
|
||||||
@@ -44,141 +43,32 @@ type PostgresTeamsGetter interface {
|
|||||||
|
|
||||||
// PostgresTeamInterface has methods to work with PostgresTeam resources.
|
// PostgresTeamInterface has methods to work with PostgresTeam resources.
|
||||||
type PostgresTeamInterface interface {
|
type PostgresTeamInterface interface {
|
||||||
Create(ctx context.Context, postgresTeam *v1.PostgresTeam, opts metav1.CreateOptions) (*v1.PostgresTeam, error)
|
Create(ctx context.Context, postgresTeam *acidzalandov1.PostgresTeam, opts metav1.CreateOptions) (*acidzalandov1.PostgresTeam, error)
|
||||||
Update(ctx context.Context, postgresTeam *v1.PostgresTeam, opts metav1.UpdateOptions) (*v1.PostgresTeam, error)
|
Update(ctx context.Context, postgresTeam *acidzalandov1.PostgresTeam, opts metav1.UpdateOptions) (*acidzalandov1.PostgresTeam, 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
|
||||||
Get(ctx context.Context, name string, opts metav1.GetOptions) (*v1.PostgresTeam, error)
|
Get(ctx context.Context, name string, opts metav1.GetOptions) (*acidzalandov1.PostgresTeam, error)
|
||||||
List(ctx context.Context, opts metav1.ListOptions) (*v1.PostgresTeamList, error)
|
List(ctx context.Context, opts metav1.ListOptions) (*acidzalandov1.PostgresTeamList, error)
|
||||||
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.PostgresTeam, err error)
|
Patch(ctx context.Context, name string, pt types.PatchType, data []byte, opts metav1.PatchOptions, subresources ...string) (result *acidzalandov1.PostgresTeam, err error)
|
||||||
PostgresTeamExpansion
|
PostgresTeamExpansion
|
||||||
}
|
}
|
||||||
|
|
||||||
// postgresTeams implements PostgresTeamInterface
|
// postgresTeams implements PostgresTeamInterface
|
||||||
type postgresTeams struct {
|
type postgresTeams struct {
|
||||||
client rest.Interface
|
*gentype.ClientWithList[*acidzalandov1.PostgresTeam, *acidzalandov1.PostgresTeamList]
|
||||||
ns string
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// newPostgresTeams returns a PostgresTeams
|
// newPostgresTeams returns a PostgresTeams
|
||||||
func newPostgresTeams(c *AcidV1Client, namespace string) *postgresTeams {
|
func newPostgresTeams(c *AcidV1Client, namespace string) *postgresTeams {
|
||||||
return &postgresTeams{
|
return &postgresTeams{
|
||||||
client: c.RESTClient(),
|
gentype.NewClientWithList[*acidzalandov1.PostgresTeam, *acidzalandov1.PostgresTeamList](
|
||||||
ns: namespace,
|
"postgresteams",
|
||||||
|
c.RESTClient(),
|
||||||
|
scheme.ParameterCodec,
|
||||||
|
namespace,
|
||||||
|
func() *acidzalandov1.PostgresTeam { return &acidzalandov1.PostgresTeam{} },
|
||||||
|
func() *acidzalandov1.PostgresTeamList { return &acidzalandov1.PostgresTeamList{} },
|
||||||
|
),
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// Get takes name of the postgresTeam, and returns the corresponding postgresTeam object, and an error if there is any.
|
|
||||||
func (c *postgresTeams) Get(ctx context.Context, name string, options metav1.GetOptions) (result *v1.PostgresTeam, err error) {
|
|
||||||
result = &v1.PostgresTeam{}
|
|
||||||
err = c.client.Get().
|
|
||||||
Namespace(c.ns).
|
|
||||||
Resource("postgresteams").
|
|
||||||
Name(name).
|
|
||||||
VersionedParams(&options, scheme.ParameterCodec).
|
|
||||||
Do(ctx).
|
|
||||||
Into(result)
|
|
||||||
return
|
|
||||||
}
|
|
||||||
|
|
||||||
// List takes label and field selectors, and returns the list of PostgresTeams that match those selectors.
|
|
||||||
func (c *postgresTeams) List(ctx context.Context, opts metav1.ListOptions) (result *v1.PostgresTeamList, err error) {
|
|
||||||
var timeout time.Duration
|
|
||||||
if opts.TimeoutSeconds != nil {
|
|
||||||
timeout = time.Duration(*opts.TimeoutSeconds) * time.Second
|
|
||||||
}
|
|
||||||
result = &v1.PostgresTeamList{}
|
|
||||||
err = c.client.Get().
|
|
||||||
Namespace(c.ns).
|
|
||||||
Resource("postgresteams").
|
|
||||||
VersionedParams(&opts, scheme.ParameterCodec).
|
|
||||||
Timeout(timeout).
|
|
||||||
Do(ctx).
|
|
||||||
Into(result)
|
|
||||||
return
|
|
||||||
}
|
|
||||||
|
|
||||||
// Watch returns a watch.Interface that watches the requested postgresTeams.
|
|
||||||
func (c *postgresTeams) 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("postgresteams").
|
|
||||||
VersionedParams(&opts, scheme.ParameterCodec).
|
|
||||||
Timeout(timeout).
|
|
||||||
Watch(ctx)
|
|
||||||
}
|
|
||||||
|
|
||||||
// Create takes the representation of a postgresTeam and creates it. Returns the server's representation of the postgresTeam, and an error, if there is any.
|
|
||||||
func (c *postgresTeams) Create(ctx context.Context, postgresTeam *v1.PostgresTeam, opts metav1.CreateOptions) (result *v1.PostgresTeam, err error) {
|
|
||||||
result = &v1.PostgresTeam{}
|
|
||||||
err = c.client.Post().
|
|
||||||
Namespace(c.ns).
|
|
||||||
Resource("postgresteams").
|
|
||||||
VersionedParams(&opts, scheme.ParameterCodec).
|
|
||||||
Body(postgresTeam).
|
|
||||||
Do(ctx).
|
|
||||||
Into(result)
|
|
||||||
return
|
|
||||||
}
|
|
||||||
|
|
||||||
// Update takes the representation of a postgresTeam and updates it. Returns the server's representation of the postgresTeam, and an error, if there is any.
|
|
||||||
func (c *postgresTeams) Update(ctx context.Context, postgresTeam *v1.PostgresTeam, opts metav1.UpdateOptions) (result *v1.PostgresTeam, err error) {
|
|
||||||
result = &v1.PostgresTeam{}
|
|
||||||
err = c.client.Put().
|
|
||||||
Namespace(c.ns).
|
|
||||||
Resource("postgresteams").
|
|
||||||
Name(postgresTeam.Name).
|
|
||||||
VersionedParams(&opts, scheme.ParameterCodec).
|
|
||||||
Body(postgresTeam).
|
|
||||||
Do(ctx).
|
|
||||||
Into(result)
|
|
||||||
return
|
|
||||||
}
|
|
||||||
|
|
||||||
// Delete takes name of the postgresTeam and deletes it. Returns an error if one occurs.
|
|
||||||
func (c *postgresTeams) Delete(ctx context.Context, name string, opts metav1.DeleteOptions) error {
|
|
||||||
return c.client.Delete().
|
|
||||||
Namespace(c.ns).
|
|
||||||
Resource("postgresteams").
|
|
||||||
Name(name).
|
|
||||||
Body(&opts).
|
|
||||||
Do(ctx).
|
|
||||||
Error()
|
|
||||||
}
|
|
||||||
|
|
||||||
// DeleteCollection deletes a collection of objects.
|
|
||||||
func (c *postgresTeams) 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("postgresteams").
|
|
||||||
VersionedParams(&listOpts, scheme.ParameterCodec).
|
|
||||||
Timeout(timeout).
|
|
||||||
Body(&opts).
|
|
||||||
Do(ctx).
|
|
||||||
Error()
|
|
||||||
}
|
|
||||||
|
|
||||||
// Patch applies the patch and returns the patched postgresTeam.
|
|
||||||
func (c *postgresTeams) Patch(ctx context.Context, name string, pt types.PatchType, data []byte, opts metav1.PatchOptions, subresources ...string) (result *v1.PostgresTeam, err error) {
|
|
||||||
result = &v1.PostgresTeam{}
|
|
||||||
err = c.client.Patch(pt).
|
|
||||||
Namespace(c.ns).
|
|
||||||
Resource("postgresteams").
|
|
||||||
Name(name).
|
|
||||||
SubResource(subresources...).
|
|
||||||
VersionedParams(&opts, scheme.ParameterCodec).
|
|
||||||
Body(data).
|
|
||||||
Do(ctx).
|
|
||||||
Into(result)
|
|
||||||
return
|
|
||||||
}
|
|
||||||
|
|||||||
@@ -25,15 +25,14 @@ SOFTWARE.
|
|||||||
package v1
|
package v1
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"context"
|
context "context"
|
||||||
"time"
|
|
||||||
|
|
||||||
v1 "github.com/zalando/postgres-operator/pkg/apis/zalando.org/v1"
|
zalandoorgv1 "github.com/zalando/postgres-operator/pkg/apis/zalando.org/v1"
|
||||||
scheme "github.com/zalando/postgres-operator/pkg/generated/clientset/versioned/scheme"
|
scheme "github.com/zalando/postgres-operator/pkg/generated/clientset/versioned/scheme"
|
||||||
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"
|
||||||
)
|
)
|
||||||
|
|
||||||
// FabricEventStreamsGetter has a method to return a FabricEventStreamInterface.
|
// FabricEventStreamsGetter has a method to return a FabricEventStreamInterface.
|
||||||
@@ -44,141 +43,32 @@ type FabricEventStreamsGetter interface {
|
|||||||
|
|
||||||
// FabricEventStreamInterface has methods to work with FabricEventStream resources.
|
// FabricEventStreamInterface has methods to work with FabricEventStream resources.
|
||||||
type FabricEventStreamInterface interface {
|
type FabricEventStreamInterface interface {
|
||||||
Create(ctx context.Context, fabricEventStream *v1.FabricEventStream, opts metav1.CreateOptions) (*v1.FabricEventStream, error)
|
Create(ctx context.Context, fabricEventStream *zalandoorgv1.FabricEventStream, opts metav1.CreateOptions) (*zalandoorgv1.FabricEventStream, error)
|
||||||
Update(ctx context.Context, fabricEventStream *v1.FabricEventStream, opts metav1.UpdateOptions) (*v1.FabricEventStream, error)
|
Update(ctx context.Context, fabricEventStream *zalandoorgv1.FabricEventStream, opts metav1.UpdateOptions) (*zalandoorgv1.FabricEventStream, 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
|
||||||
Get(ctx context.Context, name string, opts metav1.GetOptions) (*v1.FabricEventStream, error)
|
Get(ctx context.Context, name string, opts metav1.GetOptions) (*zalandoorgv1.FabricEventStream, error)
|
||||||
List(ctx context.Context, opts metav1.ListOptions) (*v1.FabricEventStreamList, error)
|
List(ctx context.Context, opts metav1.ListOptions) (*zalandoorgv1.FabricEventStreamList, error)
|
||||||
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.FabricEventStream, err error)
|
Patch(ctx context.Context, name string, pt types.PatchType, data []byte, opts metav1.PatchOptions, subresources ...string) (result *zalandoorgv1.FabricEventStream, err error)
|
||||||
FabricEventStreamExpansion
|
FabricEventStreamExpansion
|
||||||
}
|
}
|
||||||
|
|
||||||
// fabricEventStreams implements FabricEventStreamInterface
|
// fabricEventStreams implements FabricEventStreamInterface
|
||||||
type fabricEventStreams struct {
|
type fabricEventStreams struct {
|
||||||
client rest.Interface
|
*gentype.ClientWithList[*zalandoorgv1.FabricEventStream, *zalandoorgv1.FabricEventStreamList]
|
||||||
ns string
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// newFabricEventStreams returns a FabricEventStreams
|
// newFabricEventStreams returns a FabricEventStreams
|
||||||
func newFabricEventStreams(c *ZalandoV1Client, namespace string) *fabricEventStreams {
|
func newFabricEventStreams(c *ZalandoV1Client, namespace string) *fabricEventStreams {
|
||||||
return &fabricEventStreams{
|
return &fabricEventStreams{
|
||||||
client: c.RESTClient(),
|
gentype.NewClientWithList[*zalandoorgv1.FabricEventStream, *zalandoorgv1.FabricEventStreamList](
|
||||||
ns: namespace,
|
"fabriceventstreams",
|
||||||
|
c.RESTClient(),
|
||||||
|
scheme.ParameterCodec,
|
||||||
|
namespace,
|
||||||
|
func() *zalandoorgv1.FabricEventStream { return &zalandoorgv1.FabricEventStream{} },
|
||||||
|
func() *zalandoorgv1.FabricEventStreamList { return &zalandoorgv1.FabricEventStreamList{} },
|
||||||
|
),
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// Get takes name of the fabricEventStream, and returns the corresponding fabricEventStream object, and an error if there is any.
|
|
||||||
func (c *fabricEventStreams) Get(ctx context.Context, name string, options metav1.GetOptions) (result *v1.FabricEventStream, err error) {
|
|
||||||
result = &v1.FabricEventStream{}
|
|
||||||
err = c.client.Get().
|
|
||||||
Namespace(c.ns).
|
|
||||||
Resource("fabriceventstreams").
|
|
||||||
Name(name).
|
|
||||||
VersionedParams(&options, scheme.ParameterCodec).
|
|
||||||
Do(ctx).
|
|
||||||
Into(result)
|
|
||||||
return
|
|
||||||
}
|
|
||||||
|
|
||||||
// List takes label and field selectors, and returns the list of FabricEventStreams that match those selectors.
|
|
||||||
func (c *fabricEventStreams) List(ctx context.Context, opts metav1.ListOptions) (result *v1.FabricEventStreamList, err error) {
|
|
||||||
var timeout time.Duration
|
|
||||||
if opts.TimeoutSeconds != nil {
|
|
||||||
timeout = time.Duration(*opts.TimeoutSeconds) * time.Second
|
|
||||||
}
|
|
||||||
result = &v1.FabricEventStreamList{}
|
|
||||||
err = c.client.Get().
|
|
||||||
Namespace(c.ns).
|
|
||||||
Resource("fabriceventstreams").
|
|
||||||
VersionedParams(&opts, scheme.ParameterCodec).
|
|
||||||
Timeout(timeout).
|
|
||||||
Do(ctx).
|
|
||||||
Into(result)
|
|
||||||
return
|
|
||||||
}
|
|
||||||
|
|
||||||
// Watch returns a watch.Interface that watches the requested fabricEventStreams.
|
|
||||||
func (c *fabricEventStreams) 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("fabriceventstreams").
|
|
||||||
VersionedParams(&opts, scheme.ParameterCodec).
|
|
||||||
Timeout(timeout).
|
|
||||||
Watch(ctx)
|
|
||||||
}
|
|
||||||
|
|
||||||
// Create takes the representation of a fabricEventStream and creates it. Returns the server's representation of the fabricEventStream, and an error, if there is any.
|
|
||||||
func (c *fabricEventStreams) Create(ctx context.Context, fabricEventStream *v1.FabricEventStream, opts metav1.CreateOptions) (result *v1.FabricEventStream, err error) {
|
|
||||||
result = &v1.FabricEventStream{}
|
|
||||||
err = c.client.Post().
|
|
||||||
Namespace(c.ns).
|
|
||||||
Resource("fabriceventstreams").
|
|
||||||
VersionedParams(&opts, scheme.ParameterCodec).
|
|
||||||
Body(fabricEventStream).
|
|
||||||
Do(ctx).
|
|
||||||
Into(result)
|
|
||||||
return
|
|
||||||
}
|
|
||||||
|
|
||||||
// Update takes the representation of a fabricEventStream and updates it. Returns the server's representation of the fabricEventStream, and an error, if there is any.
|
|
||||||
func (c *fabricEventStreams) Update(ctx context.Context, fabricEventStream *v1.FabricEventStream, opts metav1.UpdateOptions) (result *v1.FabricEventStream, err error) {
|
|
||||||
result = &v1.FabricEventStream{}
|
|
||||||
err = c.client.Put().
|
|
||||||
Namespace(c.ns).
|
|
||||||
Resource("fabriceventstreams").
|
|
||||||
Name(fabricEventStream.Name).
|
|
||||||
VersionedParams(&opts, scheme.ParameterCodec).
|
|
||||||
Body(fabricEventStream).
|
|
||||||
Do(ctx).
|
|
||||||
Into(result)
|
|
||||||
return
|
|
||||||
}
|
|
||||||
|
|
||||||
// Delete takes name of the fabricEventStream and deletes it. Returns an error if one occurs.
|
|
||||||
func (c *fabricEventStreams) Delete(ctx context.Context, name string, opts metav1.DeleteOptions) error {
|
|
||||||
return c.client.Delete().
|
|
||||||
Namespace(c.ns).
|
|
||||||
Resource("fabriceventstreams").
|
|
||||||
Name(name).
|
|
||||||
Body(&opts).
|
|
||||||
Do(ctx).
|
|
||||||
Error()
|
|
||||||
}
|
|
||||||
|
|
||||||
// DeleteCollection deletes a collection of objects.
|
|
||||||
func (c *fabricEventStreams) 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("fabriceventstreams").
|
|
||||||
VersionedParams(&listOpts, scheme.ParameterCodec).
|
|
||||||
Timeout(timeout).
|
|
||||||
Body(&opts).
|
|
||||||
Do(ctx).
|
|
||||||
Error()
|
|
||||||
}
|
|
||||||
|
|
||||||
// Patch applies the patch and returns the patched fabricEventStream.
|
|
||||||
func (c *fabricEventStreams) Patch(ctx context.Context, name string, pt types.PatchType, data []byte, opts metav1.PatchOptions, subresources ...string) (result *v1.FabricEventStream, err error) {
|
|
||||||
result = &v1.FabricEventStream{}
|
|
||||||
err = c.client.Patch(pt).
|
|
||||||
Namespace(c.ns).
|
|
||||||
Resource("fabriceventstreams").
|
|
||||||
Name(name).
|
|
||||||
SubResource(subresources...).
|
|
||||||
VersionedParams(&opts, scheme.ParameterCodec).
|
|
||||||
Body(data).
|
|
||||||
Do(ctx).
|
|
||||||
Into(result)
|
|
||||||
return
|
|
||||||
}
|
|
||||||
|
|||||||
+24
-102
@@ -25,112 +25,34 @@ SOFTWARE.
|
|||||||
package fake
|
package fake
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"context"
|
v1 "github.com/zalando/postgres-operator/pkg/apis/zalando.org/v1"
|
||||||
|
zalandoorgv1 "github.com/zalando/postgres-operator/pkg/generated/clientset/versioned/typed/zalando.org/v1"
|
||||||
zalandoorgv1 "github.com/zalando/postgres-operator/pkg/apis/zalando.org/v1"
|
gentype "k8s.io/client-go/gentype"
|
||||||
v1 "k8s.io/apimachinery/pkg/apis/meta/v1"
|
|
||||||
labels "k8s.io/apimachinery/pkg/labels"
|
|
||||||
schema "k8s.io/apimachinery/pkg/runtime/schema"
|
|
||||||
types "k8s.io/apimachinery/pkg/types"
|
|
||||||
watch "k8s.io/apimachinery/pkg/watch"
|
|
||||||
testing "k8s.io/client-go/testing"
|
|
||||||
)
|
)
|
||||||
|
|
||||||
// FakeFabricEventStreams implements FabricEventStreamInterface
|
// fakeFabricEventStreams implements FabricEventStreamInterface
|
||||||
type FakeFabricEventStreams struct {
|
type fakeFabricEventStreams struct {
|
||||||
|
*gentype.FakeClientWithList[*v1.FabricEventStream, *v1.FabricEventStreamList]
|
||||||
Fake *FakeZalandoV1
|
Fake *FakeZalandoV1
|
||||||
ns string
|
|
||||||
}
|
}
|
||||||
|
|
||||||
var fabriceventstreamsResource = schema.GroupVersionResource{Group: "zalando.org", Version: "v1", Resource: "fabriceventstreams"}
|
func newFakeFabricEventStreams(fake *FakeZalandoV1, namespace string) zalandoorgv1.FabricEventStreamInterface {
|
||||||
|
return &fakeFabricEventStreams{
|
||||||
var fabriceventstreamsKind = schema.GroupVersionKind{Group: "zalando.org", Version: "v1", Kind: "FabricEventStream"}
|
gentype.NewFakeClientWithList[*v1.FabricEventStream, *v1.FabricEventStreamList](
|
||||||
|
fake.Fake,
|
||||||
// Get takes name of the fabricEventStream, and returns the corresponding fabricEventStream object, and an error if there is any.
|
namespace,
|
||||||
func (c *FakeFabricEventStreams) Get(ctx context.Context, name string, options v1.GetOptions) (result *zalandoorgv1.FabricEventStream, err error) {
|
v1.SchemeGroupVersion.WithResource("fabriceventstreams"),
|
||||||
obj, err := c.Fake.
|
v1.SchemeGroupVersion.WithKind("FabricEventStream"),
|
||||||
Invokes(testing.NewGetAction(fabriceventstreamsResource, c.ns, name), &zalandoorgv1.FabricEventStream{})
|
func() *v1.FabricEventStream { return &v1.FabricEventStream{} },
|
||||||
|
func() *v1.FabricEventStreamList { return &v1.FabricEventStreamList{} },
|
||||||
if obj == nil {
|
func(dst, src *v1.FabricEventStreamList) { dst.ListMeta = src.ListMeta },
|
||||||
return nil, err
|
func(list *v1.FabricEventStreamList) []*v1.FabricEventStream {
|
||||||
|
return gentype.ToPointerSlice(list.Items)
|
||||||
|
},
|
||||||
|
func(list *v1.FabricEventStreamList, items []*v1.FabricEventStream) {
|
||||||
|
list.Items = gentype.FromPointerSlice(items)
|
||||||
|
},
|
||||||
|
),
|
||||||
|
fake,
|
||||||
}
|
}
|
||||||
return obj.(*zalandoorgv1.FabricEventStream), err
|
|
||||||
}
|
|
||||||
|
|
||||||
// List takes label and field selectors, and returns the list of FabricEventStreams that match those selectors.
|
|
||||||
func (c *FakeFabricEventStreams) List(ctx context.Context, opts v1.ListOptions) (result *zalandoorgv1.FabricEventStreamList, err error) {
|
|
||||||
obj, err := c.Fake.
|
|
||||||
Invokes(testing.NewListAction(fabriceventstreamsResource, fabriceventstreamsKind, c.ns, opts), &zalandoorgv1.FabricEventStreamList{})
|
|
||||||
|
|
||||||
if obj == nil {
|
|
||||||
return nil, err
|
|
||||||
}
|
|
||||||
|
|
||||||
label, _, _ := testing.ExtractFromListOptions(opts)
|
|
||||||
if label == nil {
|
|
||||||
label = labels.Everything()
|
|
||||||
}
|
|
||||||
list := &zalandoorgv1.FabricEventStreamList{ListMeta: obj.(*zalandoorgv1.FabricEventStreamList).ListMeta}
|
|
||||||
for _, item := range obj.(*zalandoorgv1.FabricEventStreamList).Items {
|
|
||||||
if label.Matches(labels.Set(item.Labels)) {
|
|
||||||
list.Items = append(list.Items, item)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return list, err
|
|
||||||
}
|
|
||||||
|
|
||||||
// Watch returns a watch.Interface that watches the requested fabricEventStreams.
|
|
||||||
func (c *FakeFabricEventStreams) Watch(ctx context.Context, opts v1.ListOptions) (watch.Interface, error) {
|
|
||||||
return c.Fake.
|
|
||||||
InvokesWatch(testing.NewWatchAction(fabriceventstreamsResource, c.ns, opts))
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
// Create takes the representation of a fabricEventStream and creates it. Returns the server's representation of the fabricEventStream, and an error, if there is any.
|
|
||||||
func (c *FakeFabricEventStreams) Create(ctx context.Context, fabricEventStream *zalandoorgv1.FabricEventStream, opts v1.CreateOptions) (result *zalandoorgv1.FabricEventStream, err error) {
|
|
||||||
obj, err := c.Fake.
|
|
||||||
Invokes(testing.NewCreateAction(fabriceventstreamsResource, c.ns, fabricEventStream), &zalandoorgv1.FabricEventStream{})
|
|
||||||
|
|
||||||
if obj == nil {
|
|
||||||
return nil, err
|
|
||||||
}
|
|
||||||
return obj.(*zalandoorgv1.FabricEventStream), err
|
|
||||||
}
|
|
||||||
|
|
||||||
// Update takes the representation of a fabricEventStream and updates it. Returns the server's representation of the fabricEventStream, and an error, if there is any.
|
|
||||||
func (c *FakeFabricEventStreams) Update(ctx context.Context, fabricEventStream *zalandoorgv1.FabricEventStream, opts v1.UpdateOptions) (result *zalandoorgv1.FabricEventStream, err error) {
|
|
||||||
obj, err := c.Fake.
|
|
||||||
Invokes(testing.NewUpdateAction(fabriceventstreamsResource, c.ns, fabricEventStream), &zalandoorgv1.FabricEventStream{})
|
|
||||||
|
|
||||||
if obj == nil {
|
|
||||||
return nil, err
|
|
||||||
}
|
|
||||||
return obj.(*zalandoorgv1.FabricEventStream), err
|
|
||||||
}
|
|
||||||
|
|
||||||
// Delete takes name of the fabricEventStream and deletes it. Returns an error if one occurs.
|
|
||||||
func (c *FakeFabricEventStreams) Delete(ctx context.Context, name string, opts v1.DeleteOptions) error {
|
|
||||||
_, err := c.Fake.
|
|
||||||
Invokes(testing.NewDeleteActionWithOptions(fabriceventstreamsResource, c.ns, name, opts), &zalandoorgv1.FabricEventStream{})
|
|
||||||
|
|
||||||
return err
|
|
||||||
}
|
|
||||||
|
|
||||||
// DeleteCollection deletes a collection of objects.
|
|
||||||
func (c *FakeFabricEventStreams) DeleteCollection(ctx context.Context, opts v1.DeleteOptions, listOpts v1.ListOptions) error {
|
|
||||||
action := testing.NewDeleteCollectionAction(fabriceventstreamsResource, c.ns, listOpts)
|
|
||||||
|
|
||||||
_, err := c.Fake.Invokes(action, &zalandoorgv1.FabricEventStreamList{})
|
|
||||||
return err
|
|
||||||
}
|
|
||||||
|
|
||||||
// Patch applies the patch and returns the patched fabricEventStream.
|
|
||||||
func (c *FakeFabricEventStreams) Patch(ctx context.Context, name string, pt types.PatchType, data []byte, opts v1.PatchOptions, subresources ...string) (result *zalandoorgv1.FabricEventStream, err error) {
|
|
||||||
obj, err := c.Fake.
|
|
||||||
Invokes(testing.NewPatchSubresourceAction(fabriceventstreamsResource, c.ns, name, pt, data, subresources...), &zalandoorgv1.FabricEventStream{})
|
|
||||||
|
|
||||||
if obj == nil {
|
|
||||||
return nil, err
|
|
||||||
}
|
|
||||||
return obj.(*zalandoorgv1.FabricEventStream), err
|
|
||||||
}
|
}
|
||||||
|
|||||||
+1
-1
@@ -35,7 +35,7 @@ type FakeZalandoV1 struct {
|
|||||||
}
|
}
|
||||||
|
|
||||||
func (c *FakeZalandoV1) FabricEventStreams(namespace string) v1.FabricEventStreamInterface {
|
func (c *FakeZalandoV1) FabricEventStreams(namespace string) v1.FabricEventStreamInterface {
|
||||||
return &FakeFabricEventStreams{c, namespace}
|
return newFakeFabricEventStreams(c, namespace)
|
||||||
}
|
}
|
||||||
|
|
||||||
// RESTClient returns a RESTClient that is used to communicate
|
// RESTClient returns a RESTClient that is used to communicate
|
||||||
|
|||||||
@@ -25,10 +25,10 @@ SOFTWARE.
|
|||||||
package v1
|
package v1
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"net/http"
|
http "net/http"
|
||||||
|
|
||||||
v1 "github.com/zalando/postgres-operator/pkg/apis/zalando.org/v1"
|
zalandoorgv1 "github.com/zalando/postgres-operator/pkg/apis/zalando.org/v1"
|
||||||
"github.com/zalando/postgres-operator/pkg/generated/clientset/versioned/scheme"
|
scheme "github.com/zalando/postgres-operator/pkg/generated/clientset/versioned/scheme"
|
||||||
rest "k8s.io/client-go/rest"
|
rest "k8s.io/client-go/rest"
|
||||||
)
|
)
|
||||||
|
|
||||||
@@ -91,10 +91,10 @@ func New(c rest.Interface) *ZalandoV1Client {
|
|||||||
}
|
}
|
||||||
|
|
||||||
func setConfigDefaults(config *rest.Config) error {
|
func setConfigDefaults(config *rest.Config) error {
|
||||||
gv := v1.SchemeGroupVersion
|
gv := zalandoorgv1.SchemeGroupVersion
|
||||||
config.GroupVersion = &gv
|
config.GroupVersion = &gv
|
||||||
config.APIPath = "/apis"
|
config.APIPath = "/apis"
|
||||||
config.NegotiatedSerializer = scheme.Codecs.WithoutConversion()
|
config.NegotiatedSerializer = rest.CodecFactoryForGeneratedClient(scheme.Scheme, scheme.Codecs).WithoutConversion()
|
||||||
|
|
||||||
if config.UserAgent == "" {
|
if config.UserAgent == "" {
|
||||||
config.UserAgent = rest.DefaultKubernetesUserAgent()
|
config.UserAgent = rest.DefaultKubernetesUserAgent()
|
||||||
|
|||||||
@@ -25,13 +25,13 @@ SOFTWARE.
|
|||||||
package v1
|
package v1
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"context"
|
context "context"
|
||||||
time "time"
|
time "time"
|
||||||
|
|
||||||
acidzalandov1 "github.com/zalando/postgres-operator/pkg/apis/acid.zalan.do/v1"
|
apisacidzalandov1 "github.com/zalando/postgres-operator/pkg/apis/acid.zalan.do/v1"
|
||||||
versioned "github.com/zalando/postgres-operator/pkg/generated/clientset/versioned"
|
versioned "github.com/zalando/postgres-operator/pkg/generated/clientset/versioned"
|
||||||
internalinterfaces "github.com/zalando/postgres-operator/pkg/generated/informers/externalversions/internalinterfaces"
|
internalinterfaces "github.com/zalando/postgres-operator/pkg/generated/informers/externalversions/internalinterfaces"
|
||||||
v1 "github.com/zalando/postgres-operator/pkg/generated/listers/acid.zalan.do/v1"
|
acidzalandov1 "github.com/zalando/postgres-operator/pkg/generated/listers/acid.zalan.do/v1"
|
||||||
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
|
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
|
||||||
runtime "k8s.io/apimachinery/pkg/runtime"
|
runtime "k8s.io/apimachinery/pkg/runtime"
|
||||||
watch "k8s.io/apimachinery/pkg/watch"
|
watch "k8s.io/apimachinery/pkg/watch"
|
||||||
@@ -42,7 +42,7 @@ import (
|
|||||||
// Postgresqls.
|
// Postgresqls.
|
||||||
type PostgresqlInformer interface {
|
type PostgresqlInformer interface {
|
||||||
Informer() cache.SharedIndexInformer
|
Informer() cache.SharedIndexInformer
|
||||||
Lister() v1.PostgresqlLister
|
Lister() acidzalandov1.PostgresqlLister
|
||||||
}
|
}
|
||||||
|
|
||||||
type postgresqlInformer struct {
|
type postgresqlInformer struct {
|
||||||
@@ -77,7 +77,7 @@ func NewFilteredPostgresqlInformer(client versioned.Interface, namespace string,
|
|||||||
return client.AcidV1().Postgresqls(namespace).Watch(context.TODO(), options)
|
return client.AcidV1().Postgresqls(namespace).Watch(context.TODO(), options)
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
&acidzalandov1.Postgresql{},
|
&apisacidzalandov1.Postgresql{},
|
||||||
resyncPeriod,
|
resyncPeriod,
|
||||||
indexers,
|
indexers,
|
||||||
)
|
)
|
||||||
@@ -88,9 +88,9 @@ func (f *postgresqlInformer) defaultInformer(client versioned.Interface, resyncP
|
|||||||
}
|
}
|
||||||
|
|
||||||
func (f *postgresqlInformer) Informer() cache.SharedIndexInformer {
|
func (f *postgresqlInformer) Informer() cache.SharedIndexInformer {
|
||||||
return f.factory.InformerFor(&acidzalandov1.Postgresql{}, f.defaultInformer)
|
return f.factory.InformerFor(&apisacidzalandov1.Postgresql{}, f.defaultInformer)
|
||||||
}
|
}
|
||||||
|
|
||||||
func (f *postgresqlInformer) Lister() v1.PostgresqlLister {
|
func (f *postgresqlInformer) Lister() acidzalandov1.PostgresqlLister {
|
||||||
return v1.NewPostgresqlLister(f.Informer().GetIndexer())
|
return acidzalandov1.NewPostgresqlLister(f.Informer().GetIndexer())
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -25,13 +25,13 @@ SOFTWARE.
|
|||||||
package v1
|
package v1
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"context"
|
context "context"
|
||||||
time "time"
|
time "time"
|
||||||
|
|
||||||
acidzalandov1 "github.com/zalando/postgres-operator/pkg/apis/acid.zalan.do/v1"
|
apisacidzalandov1 "github.com/zalando/postgres-operator/pkg/apis/acid.zalan.do/v1"
|
||||||
versioned "github.com/zalando/postgres-operator/pkg/generated/clientset/versioned"
|
versioned "github.com/zalando/postgres-operator/pkg/generated/clientset/versioned"
|
||||||
internalinterfaces "github.com/zalando/postgres-operator/pkg/generated/informers/externalversions/internalinterfaces"
|
internalinterfaces "github.com/zalando/postgres-operator/pkg/generated/informers/externalversions/internalinterfaces"
|
||||||
v1 "github.com/zalando/postgres-operator/pkg/generated/listers/acid.zalan.do/v1"
|
acidzalandov1 "github.com/zalando/postgres-operator/pkg/generated/listers/acid.zalan.do/v1"
|
||||||
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
|
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
|
||||||
runtime "k8s.io/apimachinery/pkg/runtime"
|
runtime "k8s.io/apimachinery/pkg/runtime"
|
||||||
watch "k8s.io/apimachinery/pkg/watch"
|
watch "k8s.io/apimachinery/pkg/watch"
|
||||||
@@ -42,7 +42,7 @@ import (
|
|||||||
// PostgresTeams.
|
// PostgresTeams.
|
||||||
type PostgresTeamInformer interface {
|
type PostgresTeamInformer interface {
|
||||||
Informer() cache.SharedIndexInformer
|
Informer() cache.SharedIndexInformer
|
||||||
Lister() v1.PostgresTeamLister
|
Lister() acidzalandov1.PostgresTeamLister
|
||||||
}
|
}
|
||||||
|
|
||||||
type postgresTeamInformer struct {
|
type postgresTeamInformer struct {
|
||||||
@@ -77,7 +77,7 @@ func NewFilteredPostgresTeamInformer(client versioned.Interface, namespace strin
|
|||||||
return client.AcidV1().PostgresTeams(namespace).Watch(context.TODO(), options)
|
return client.AcidV1().PostgresTeams(namespace).Watch(context.TODO(), options)
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
&acidzalandov1.PostgresTeam{},
|
&apisacidzalandov1.PostgresTeam{},
|
||||||
resyncPeriod,
|
resyncPeriod,
|
||||||
indexers,
|
indexers,
|
||||||
)
|
)
|
||||||
@@ -88,9 +88,9 @@ func (f *postgresTeamInformer) defaultInformer(client versioned.Interface, resyn
|
|||||||
}
|
}
|
||||||
|
|
||||||
func (f *postgresTeamInformer) Informer() cache.SharedIndexInformer {
|
func (f *postgresTeamInformer) Informer() cache.SharedIndexInformer {
|
||||||
return f.factory.InformerFor(&acidzalandov1.PostgresTeam{}, f.defaultInformer)
|
return f.factory.InformerFor(&apisacidzalandov1.PostgresTeam{}, f.defaultInformer)
|
||||||
}
|
}
|
||||||
|
|
||||||
func (f *postgresTeamInformer) Lister() v1.PostgresTeamLister {
|
func (f *postgresTeamInformer) Lister() acidzalandov1.PostgresTeamLister {
|
||||||
return v1.NewPostgresTeamLister(f.Informer().GetIndexer())
|
return acidzalandov1.NewPostgresTeamLister(f.Informer().GetIndexer())
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -49,11 +49,17 @@ type sharedInformerFactory struct {
|
|||||||
lock sync.Mutex
|
lock sync.Mutex
|
||||||
defaultResync time.Duration
|
defaultResync time.Duration
|
||||||
customResync map[reflect.Type]time.Duration
|
customResync map[reflect.Type]time.Duration
|
||||||
|
transform cache.TransformFunc
|
||||||
|
|
||||||
informers map[reflect.Type]cache.SharedIndexInformer
|
informers map[reflect.Type]cache.SharedIndexInformer
|
||||||
// startedInformers is used for tracking which informers have been started.
|
// startedInformers is used for tracking which informers have been started.
|
||||||
// This allows Start() to be called multiple times safely.
|
// This allows Start() to be called multiple times safely.
|
||||||
startedInformers map[reflect.Type]bool
|
startedInformers map[reflect.Type]bool
|
||||||
|
// wg tracks how many goroutines were started.
|
||||||
|
wg sync.WaitGroup
|
||||||
|
// shuttingDown is true when Shutdown has been called. It may still be running
|
||||||
|
// because it needs to wait for goroutines.
|
||||||
|
shuttingDown bool
|
||||||
}
|
}
|
||||||
|
|
||||||
// WithCustomResyncConfig sets a custom resync period for the specified informer types.
|
// WithCustomResyncConfig sets a custom resync period for the specified informer types.
|
||||||
@@ -82,6 +88,14 @@ func WithNamespace(namespace string) SharedInformerOption {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// WithTransform sets a transform on all informers.
|
||||||
|
func WithTransform(transform cache.TransformFunc) SharedInformerOption {
|
||||||
|
return func(factory *sharedInformerFactory) *sharedInformerFactory {
|
||||||
|
factory.transform = transform
|
||||||
|
return factory
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
// NewSharedInformerFactory constructs a new instance of sharedInformerFactory for all namespaces.
|
// NewSharedInformerFactory constructs a new instance of sharedInformerFactory for all namespaces.
|
||||||
func NewSharedInformerFactory(client versioned.Interface, defaultResync time.Duration) SharedInformerFactory {
|
func NewSharedInformerFactory(client versioned.Interface, defaultResync time.Duration) SharedInformerFactory {
|
||||||
return NewSharedInformerFactoryWithOptions(client, defaultResync)
|
return NewSharedInformerFactoryWithOptions(client, defaultResync)
|
||||||
@@ -114,20 +128,39 @@ func NewSharedInformerFactoryWithOptions(client versioned.Interface, defaultResy
|
|||||||
return factory
|
return factory
|
||||||
}
|
}
|
||||||
|
|
||||||
// Start initializes all requested informers.
|
|
||||||
func (f *sharedInformerFactory) Start(stopCh <-chan struct{}) {
|
func (f *sharedInformerFactory) Start(stopCh <-chan struct{}) {
|
||||||
f.lock.Lock()
|
f.lock.Lock()
|
||||||
defer f.lock.Unlock()
|
defer f.lock.Unlock()
|
||||||
|
|
||||||
|
if f.shuttingDown {
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
for informerType, informer := range f.informers {
|
for informerType, informer := range f.informers {
|
||||||
if !f.startedInformers[informerType] {
|
if !f.startedInformers[informerType] {
|
||||||
go informer.Run(stopCh)
|
f.wg.Add(1)
|
||||||
|
// We need a new variable in each loop iteration,
|
||||||
|
// otherwise the goroutine would use the loop variable
|
||||||
|
// and that keeps changing.
|
||||||
|
informer := informer
|
||||||
|
go func() {
|
||||||
|
defer f.wg.Done()
|
||||||
|
informer.Run(stopCh)
|
||||||
|
}()
|
||||||
f.startedInformers[informerType] = true
|
f.startedInformers[informerType] = true
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// WaitForCacheSync waits for all started informers' cache were synced.
|
func (f *sharedInformerFactory) Shutdown() {
|
||||||
|
f.lock.Lock()
|
||||||
|
f.shuttingDown = true
|
||||||
|
f.lock.Unlock()
|
||||||
|
|
||||||
|
// Will return immediately if there is nothing to wait for.
|
||||||
|
f.wg.Wait()
|
||||||
|
}
|
||||||
|
|
||||||
func (f *sharedInformerFactory) WaitForCacheSync(stopCh <-chan struct{}) map[reflect.Type]bool {
|
func (f *sharedInformerFactory) WaitForCacheSync(stopCh <-chan struct{}) map[reflect.Type]bool {
|
||||||
informers := func() map[reflect.Type]cache.SharedIndexInformer {
|
informers := func() map[reflect.Type]cache.SharedIndexInformer {
|
||||||
f.lock.Lock()
|
f.lock.Lock()
|
||||||
@@ -149,7 +182,7 @@ func (f *sharedInformerFactory) WaitForCacheSync(stopCh <-chan struct{}) map[ref
|
|||||||
return res
|
return res
|
||||||
}
|
}
|
||||||
|
|
||||||
// InternalInformerFor returns the SharedIndexInformer for obj using an internal
|
// InformerFor returns the SharedIndexInformer for obj using an internal
|
||||||
// client.
|
// client.
|
||||||
func (f *sharedInformerFactory) InformerFor(obj runtime.Object, newFunc internalinterfaces.NewInformerFunc) cache.SharedIndexInformer {
|
func (f *sharedInformerFactory) InformerFor(obj runtime.Object, newFunc internalinterfaces.NewInformerFunc) cache.SharedIndexInformer {
|
||||||
f.lock.Lock()
|
f.lock.Lock()
|
||||||
@@ -167,6 +200,7 @@ func (f *sharedInformerFactory) InformerFor(obj runtime.Object, newFunc internal
|
|||||||
}
|
}
|
||||||
|
|
||||||
informer = newFunc(f.client, resyncPeriod)
|
informer = newFunc(f.client, resyncPeriod)
|
||||||
|
informer.SetTransform(f.transform)
|
||||||
f.informers[informerType] = informer
|
f.informers[informerType] = informer
|
||||||
|
|
||||||
return informer
|
return informer
|
||||||
@@ -174,11 +208,59 @@ func (f *sharedInformerFactory) InformerFor(obj runtime.Object, newFunc internal
|
|||||||
|
|
||||||
// SharedInformerFactory provides shared informers for resources in all known
|
// SharedInformerFactory provides shared informers for resources in all known
|
||||||
// API group versions.
|
// API group versions.
|
||||||
|
//
|
||||||
|
// It is typically used like this:
|
||||||
|
//
|
||||||
|
// ctx, cancel := context.Background()
|
||||||
|
// defer cancel()
|
||||||
|
// factory := NewSharedInformerFactory(client, resyncPeriod)
|
||||||
|
// defer factory.WaitForStop() // Returns immediately if nothing was started.
|
||||||
|
// genericInformer := factory.ForResource(resource)
|
||||||
|
// typedInformer := factory.SomeAPIGroup().V1().SomeType()
|
||||||
|
// factory.Start(ctx.Done()) // Start processing these informers.
|
||||||
|
// synced := factory.WaitForCacheSync(ctx.Done())
|
||||||
|
// for v, ok := range synced {
|
||||||
|
// if !ok {
|
||||||
|
// fmt.Fprintf(os.Stderr, "caches failed to sync: %v", v)
|
||||||
|
// return
|
||||||
|
// }
|
||||||
|
// }
|
||||||
|
//
|
||||||
|
// // Creating informers can also be created after Start, but then
|
||||||
|
// // Start must be called again:
|
||||||
|
// anotherGenericInformer := factory.ForResource(resource)
|
||||||
|
// factory.Start(ctx.Done())
|
||||||
type SharedInformerFactory interface {
|
type SharedInformerFactory interface {
|
||||||
internalinterfaces.SharedInformerFactory
|
internalinterfaces.SharedInformerFactory
|
||||||
ForResource(resource schema.GroupVersionResource) (GenericInformer, error)
|
|
||||||
|
// Start initializes all requested informers. They are handled in goroutines
|
||||||
|
// 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{})
|
||||||
|
|
||||||
|
// Shutdown marks a factory as shutting down. At that point no new
|
||||||
|
// informers can be started anymore and Start will return without
|
||||||
|
// doing anything.
|
||||||
|
//
|
||||||
|
// In addition, Shutdown blocks until all goroutines have terminated. For that
|
||||||
|
// to happen, the close channel(s) that they were started with must be closed,
|
||||||
|
// either before Shutdown gets called or while it is waiting.
|
||||||
|
//
|
||||||
|
// Shutdown may be called multiple times, even concurrently. All such calls will
|
||||||
|
// block until all goroutines have terminated.
|
||||||
|
Shutdown()
|
||||||
|
|
||||||
|
// WaitForCacheSync blocks until all started informers' caches were synced
|
||||||
|
// or the stop channel gets closed.
|
||||||
WaitForCacheSync(stopCh <-chan struct{}) map[reflect.Type]bool
|
WaitForCacheSync(stopCh <-chan struct{}) map[reflect.Type]bool
|
||||||
|
|
||||||
|
// ForResource gives generic access to a shared informer of the matching type.
|
||||||
|
ForResource(resource schema.GroupVersionResource) (GenericInformer, error)
|
||||||
|
|
||||||
|
// InformerFor returns the SharedIndexInformer for obj using an internal
|
||||||
|
// client.
|
||||||
|
InformerFor(obj runtime.Object, newFunc internalinterfaces.NewInformerFunc) cache.SharedIndexInformer
|
||||||
|
|
||||||
Acid() acidzalando.Interface
|
Acid() acidzalando.Interface
|
||||||
Zalando() zalandoorg.Interface
|
Zalando() zalandoorg.Interface
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -25,7 +25,7 @@ SOFTWARE.
|
|||||||
package externalversions
|
package externalversions
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"fmt"
|
fmt "fmt"
|
||||||
|
|
||||||
v1 "github.com/zalando/postgres-operator/pkg/apis/acid.zalan.do/v1"
|
v1 "github.com/zalando/postgres-operator/pkg/apis/acid.zalan.do/v1"
|
||||||
zalandoorgv1 "github.com/zalando/postgres-operator/pkg/apis/zalando.org/v1"
|
zalandoorgv1 "github.com/zalando/postgres-operator/pkg/apis/zalando.org/v1"
|
||||||
|
|||||||
@@ -25,13 +25,13 @@ SOFTWARE.
|
|||||||
package v1
|
package v1
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"context"
|
context "context"
|
||||||
time "time"
|
time "time"
|
||||||
|
|
||||||
zalandoorgv1 "github.com/zalando/postgres-operator/pkg/apis/zalando.org/v1"
|
apiszalandoorgv1 "github.com/zalando/postgres-operator/pkg/apis/zalando.org/v1"
|
||||||
versioned "github.com/zalando/postgres-operator/pkg/generated/clientset/versioned"
|
versioned "github.com/zalando/postgres-operator/pkg/generated/clientset/versioned"
|
||||||
internalinterfaces "github.com/zalando/postgres-operator/pkg/generated/informers/externalversions/internalinterfaces"
|
internalinterfaces "github.com/zalando/postgres-operator/pkg/generated/informers/externalversions/internalinterfaces"
|
||||||
v1 "github.com/zalando/postgres-operator/pkg/generated/listers/zalando.org/v1"
|
zalandoorgv1 "github.com/zalando/postgres-operator/pkg/generated/listers/zalando.org/v1"
|
||||||
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
|
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
|
||||||
runtime "k8s.io/apimachinery/pkg/runtime"
|
runtime "k8s.io/apimachinery/pkg/runtime"
|
||||||
watch "k8s.io/apimachinery/pkg/watch"
|
watch "k8s.io/apimachinery/pkg/watch"
|
||||||
@@ -42,7 +42,7 @@ import (
|
|||||||
// FabricEventStreams.
|
// FabricEventStreams.
|
||||||
type FabricEventStreamInformer interface {
|
type FabricEventStreamInformer interface {
|
||||||
Informer() cache.SharedIndexInformer
|
Informer() cache.SharedIndexInformer
|
||||||
Lister() v1.FabricEventStreamLister
|
Lister() zalandoorgv1.FabricEventStreamLister
|
||||||
}
|
}
|
||||||
|
|
||||||
type fabricEventStreamInformer struct {
|
type fabricEventStreamInformer struct {
|
||||||
@@ -77,7 +77,7 @@ func NewFilteredFabricEventStreamInformer(client versioned.Interface, namespace
|
|||||||
return client.ZalandoV1().FabricEventStreams(namespace).Watch(context.TODO(), options)
|
return client.ZalandoV1().FabricEventStreams(namespace).Watch(context.TODO(), options)
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
&zalandoorgv1.FabricEventStream{},
|
&apiszalandoorgv1.FabricEventStream{},
|
||||||
resyncPeriod,
|
resyncPeriod,
|
||||||
indexers,
|
indexers,
|
||||||
)
|
)
|
||||||
@@ -88,9 +88,9 @@ func (f *fabricEventStreamInformer) defaultInformer(client versioned.Interface,
|
|||||||
}
|
}
|
||||||
|
|
||||||
func (f *fabricEventStreamInformer) Informer() cache.SharedIndexInformer {
|
func (f *fabricEventStreamInformer) Informer() cache.SharedIndexInformer {
|
||||||
return f.factory.InformerFor(&zalandoorgv1.FabricEventStream{}, f.defaultInformer)
|
return f.factory.InformerFor(&apiszalandoorgv1.FabricEventStream{}, f.defaultInformer)
|
||||||
}
|
}
|
||||||
|
|
||||||
func (f *fabricEventStreamInformer) Lister() v1.FabricEventStreamLister {
|
func (f *fabricEventStreamInformer) Lister() zalandoorgv1.FabricEventStreamLister {
|
||||||
return v1.NewFabricEventStreamLister(f.Informer().GetIndexer())
|
return zalandoorgv1.NewFabricEventStreamLister(f.Informer().GetIndexer())
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -25,10 +25,10 @@ SOFTWARE.
|
|||||||
package v1
|
package v1
|
||||||
|
|
||||||
import (
|
import (
|
||||||
v1 "github.com/zalando/postgres-operator/pkg/apis/acid.zalan.do/v1"
|
acidzalandov1 "github.com/zalando/postgres-operator/pkg/apis/acid.zalan.do/v1"
|
||||||
"k8s.io/apimachinery/pkg/api/errors"
|
labels "k8s.io/apimachinery/pkg/labels"
|
||||||
"k8s.io/apimachinery/pkg/labels"
|
listers "k8s.io/client-go/listers"
|
||||||
"k8s.io/client-go/tools/cache"
|
cache "k8s.io/client-go/tools/cache"
|
||||||
)
|
)
|
||||||
|
|
||||||
// PostgresqlLister helps list Postgresqls.
|
// PostgresqlLister helps list Postgresqls.
|
||||||
@@ -36,7 +36,7 @@ import (
|
|||||||
type PostgresqlLister interface {
|
type PostgresqlLister interface {
|
||||||
// List lists all Postgresqls in the indexer.
|
// List lists all Postgresqls in the indexer.
|
||||||
// Objects returned here must be treated as read-only.
|
// Objects returned here must be treated as read-only.
|
||||||
List(selector labels.Selector) (ret []*v1.Postgresql, err error)
|
List(selector labels.Selector) (ret []*acidzalandov1.Postgresql, err error)
|
||||||
// Postgresqls returns an object that can list and get Postgresqls.
|
// Postgresqls returns an object that can list and get Postgresqls.
|
||||||
Postgresqls(namespace string) PostgresqlNamespaceLister
|
Postgresqls(namespace string) PostgresqlNamespaceLister
|
||||||
PostgresqlListerExpansion
|
PostgresqlListerExpansion
|
||||||
@@ -44,25 +44,17 @@ type PostgresqlLister interface {
|
|||||||
|
|
||||||
// postgresqlLister implements the PostgresqlLister interface.
|
// postgresqlLister implements the PostgresqlLister interface.
|
||||||
type postgresqlLister struct {
|
type postgresqlLister struct {
|
||||||
indexer cache.Indexer
|
listers.ResourceIndexer[*acidzalandov1.Postgresql]
|
||||||
}
|
}
|
||||||
|
|
||||||
// NewPostgresqlLister returns a new PostgresqlLister.
|
// NewPostgresqlLister returns a new PostgresqlLister.
|
||||||
func NewPostgresqlLister(indexer cache.Indexer) PostgresqlLister {
|
func NewPostgresqlLister(indexer cache.Indexer) PostgresqlLister {
|
||||||
return &postgresqlLister{indexer: indexer}
|
return &postgresqlLister{listers.New[*acidzalandov1.Postgresql](indexer, acidzalandov1.Resource("postgresql"))}
|
||||||
}
|
|
||||||
|
|
||||||
// List lists all Postgresqls in the indexer.
|
|
||||||
func (s *postgresqlLister) List(selector labels.Selector) (ret []*v1.Postgresql, err error) {
|
|
||||||
err = cache.ListAll(s.indexer, selector, func(m interface{}) {
|
|
||||||
ret = append(ret, m.(*v1.Postgresql))
|
|
||||||
})
|
|
||||||
return ret, err
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// Postgresqls returns an object that can list and get Postgresqls.
|
// Postgresqls returns an object that can list and get Postgresqls.
|
||||||
func (s *postgresqlLister) Postgresqls(namespace string) PostgresqlNamespaceLister {
|
func (s *postgresqlLister) Postgresqls(namespace string) PostgresqlNamespaceLister {
|
||||||
return postgresqlNamespaceLister{indexer: s.indexer, namespace: namespace}
|
return postgresqlNamespaceLister{listers.NewNamespaced[*acidzalandov1.Postgresql](s.ResourceIndexer, namespace)}
|
||||||
}
|
}
|
||||||
|
|
||||||
// PostgresqlNamespaceLister helps list and get Postgresqls.
|
// PostgresqlNamespaceLister helps list and get Postgresqls.
|
||||||
@@ -70,36 +62,15 @@ func (s *postgresqlLister) Postgresqls(namespace string) PostgresqlNamespaceList
|
|||||||
type PostgresqlNamespaceLister interface {
|
type PostgresqlNamespaceLister interface {
|
||||||
// List lists all Postgresqls in the indexer for a given namespace.
|
// List lists all Postgresqls in the indexer for a given namespace.
|
||||||
// Objects returned here must be treated as read-only.
|
// Objects returned here must be treated as read-only.
|
||||||
List(selector labels.Selector) (ret []*v1.Postgresql, err error)
|
List(selector labels.Selector) (ret []*acidzalandov1.Postgresql, err error)
|
||||||
// Get retrieves the Postgresql from the indexer for a given namespace and name.
|
// Get retrieves the Postgresql from the indexer for a given namespace and name.
|
||||||
// Objects returned here must be treated as read-only.
|
// Objects returned here must be treated as read-only.
|
||||||
Get(name string) (*v1.Postgresql, error)
|
Get(name string) (*acidzalandov1.Postgresql, error)
|
||||||
PostgresqlNamespaceListerExpansion
|
PostgresqlNamespaceListerExpansion
|
||||||
}
|
}
|
||||||
|
|
||||||
// postgresqlNamespaceLister implements the PostgresqlNamespaceLister
|
// postgresqlNamespaceLister implements the PostgresqlNamespaceLister
|
||||||
// interface.
|
// interface.
|
||||||
type postgresqlNamespaceLister struct {
|
type postgresqlNamespaceLister struct {
|
||||||
indexer cache.Indexer
|
listers.ResourceIndexer[*acidzalandov1.Postgresql]
|
||||||
namespace string
|
|
||||||
}
|
|
||||||
|
|
||||||
// List lists all Postgresqls in the indexer for a given namespace.
|
|
||||||
func (s postgresqlNamespaceLister) List(selector labels.Selector) (ret []*v1.Postgresql, err error) {
|
|
||||||
err = cache.ListAllByNamespace(s.indexer, s.namespace, selector, func(m interface{}) {
|
|
||||||
ret = append(ret, m.(*v1.Postgresql))
|
|
||||||
})
|
|
||||||
return ret, err
|
|
||||||
}
|
|
||||||
|
|
||||||
// Get retrieves the Postgresql from the indexer for a given namespace and name.
|
|
||||||
func (s postgresqlNamespaceLister) Get(name string) (*v1.Postgresql, error) {
|
|
||||||
obj, exists, err := s.indexer.GetByKey(s.namespace + "/" + name)
|
|
||||||
if err != nil {
|
|
||||||
return nil, err
|
|
||||||
}
|
|
||||||
if !exists {
|
|
||||||
return nil, errors.NewNotFound(v1.Resource("postgresql"), name)
|
|
||||||
}
|
|
||||||
return obj.(*v1.Postgresql), nil
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -25,10 +25,10 @@ SOFTWARE.
|
|||||||
package v1
|
package v1
|
||||||
|
|
||||||
import (
|
import (
|
||||||
v1 "github.com/zalando/postgres-operator/pkg/apis/acid.zalan.do/v1"
|
acidzalandov1 "github.com/zalando/postgres-operator/pkg/apis/acid.zalan.do/v1"
|
||||||
"k8s.io/apimachinery/pkg/api/errors"
|
labels "k8s.io/apimachinery/pkg/labels"
|
||||||
"k8s.io/apimachinery/pkg/labels"
|
listers "k8s.io/client-go/listers"
|
||||||
"k8s.io/client-go/tools/cache"
|
cache "k8s.io/client-go/tools/cache"
|
||||||
)
|
)
|
||||||
|
|
||||||
// PostgresTeamLister helps list PostgresTeams.
|
// PostgresTeamLister helps list PostgresTeams.
|
||||||
@@ -36,7 +36,7 @@ import (
|
|||||||
type PostgresTeamLister interface {
|
type PostgresTeamLister interface {
|
||||||
// List lists all PostgresTeams in the indexer.
|
// List lists all PostgresTeams in the indexer.
|
||||||
// Objects returned here must be treated as read-only.
|
// Objects returned here must be treated as read-only.
|
||||||
List(selector labels.Selector) (ret []*v1.PostgresTeam, err error)
|
List(selector labels.Selector) (ret []*acidzalandov1.PostgresTeam, err error)
|
||||||
// PostgresTeams returns an object that can list and get PostgresTeams.
|
// PostgresTeams returns an object that can list and get PostgresTeams.
|
||||||
PostgresTeams(namespace string) PostgresTeamNamespaceLister
|
PostgresTeams(namespace string) PostgresTeamNamespaceLister
|
||||||
PostgresTeamListerExpansion
|
PostgresTeamListerExpansion
|
||||||
@@ -44,25 +44,17 @@ type PostgresTeamLister interface {
|
|||||||
|
|
||||||
// postgresTeamLister implements the PostgresTeamLister interface.
|
// postgresTeamLister implements the PostgresTeamLister interface.
|
||||||
type postgresTeamLister struct {
|
type postgresTeamLister struct {
|
||||||
indexer cache.Indexer
|
listers.ResourceIndexer[*acidzalandov1.PostgresTeam]
|
||||||
}
|
}
|
||||||
|
|
||||||
// NewPostgresTeamLister returns a new PostgresTeamLister.
|
// NewPostgresTeamLister returns a new PostgresTeamLister.
|
||||||
func NewPostgresTeamLister(indexer cache.Indexer) PostgresTeamLister {
|
func NewPostgresTeamLister(indexer cache.Indexer) PostgresTeamLister {
|
||||||
return &postgresTeamLister{indexer: indexer}
|
return &postgresTeamLister{listers.New[*acidzalandov1.PostgresTeam](indexer, acidzalandov1.Resource("postgresteam"))}
|
||||||
}
|
|
||||||
|
|
||||||
// List lists all PostgresTeams in the indexer.
|
|
||||||
func (s *postgresTeamLister) List(selector labels.Selector) (ret []*v1.PostgresTeam, err error) {
|
|
||||||
err = cache.ListAll(s.indexer, selector, func(m interface{}) {
|
|
||||||
ret = append(ret, m.(*v1.PostgresTeam))
|
|
||||||
})
|
|
||||||
return ret, err
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// PostgresTeams returns an object that can list and get PostgresTeams.
|
// PostgresTeams returns an object that can list and get PostgresTeams.
|
||||||
func (s *postgresTeamLister) PostgresTeams(namespace string) PostgresTeamNamespaceLister {
|
func (s *postgresTeamLister) PostgresTeams(namespace string) PostgresTeamNamespaceLister {
|
||||||
return postgresTeamNamespaceLister{indexer: s.indexer, namespace: namespace}
|
return postgresTeamNamespaceLister{listers.NewNamespaced[*acidzalandov1.PostgresTeam](s.ResourceIndexer, namespace)}
|
||||||
}
|
}
|
||||||
|
|
||||||
// PostgresTeamNamespaceLister helps list and get PostgresTeams.
|
// PostgresTeamNamespaceLister helps list and get PostgresTeams.
|
||||||
@@ -70,36 +62,15 @@ func (s *postgresTeamLister) PostgresTeams(namespace string) PostgresTeamNamespa
|
|||||||
type PostgresTeamNamespaceLister interface {
|
type PostgresTeamNamespaceLister interface {
|
||||||
// List lists all PostgresTeams in the indexer for a given namespace.
|
// List lists all PostgresTeams in the indexer for a given namespace.
|
||||||
// Objects returned here must be treated as read-only.
|
// Objects returned here must be treated as read-only.
|
||||||
List(selector labels.Selector) (ret []*v1.PostgresTeam, err error)
|
List(selector labels.Selector) (ret []*acidzalandov1.PostgresTeam, err error)
|
||||||
// Get retrieves the PostgresTeam from the indexer for a given namespace and name.
|
// Get retrieves the PostgresTeam from the indexer for a given namespace and name.
|
||||||
// Objects returned here must be treated as read-only.
|
// Objects returned here must be treated as read-only.
|
||||||
Get(name string) (*v1.PostgresTeam, error)
|
Get(name string) (*acidzalandov1.PostgresTeam, error)
|
||||||
PostgresTeamNamespaceListerExpansion
|
PostgresTeamNamespaceListerExpansion
|
||||||
}
|
}
|
||||||
|
|
||||||
// postgresTeamNamespaceLister implements the PostgresTeamNamespaceLister
|
// postgresTeamNamespaceLister implements the PostgresTeamNamespaceLister
|
||||||
// interface.
|
// interface.
|
||||||
type postgresTeamNamespaceLister struct {
|
type postgresTeamNamespaceLister struct {
|
||||||
indexer cache.Indexer
|
listers.ResourceIndexer[*acidzalandov1.PostgresTeam]
|
||||||
namespace string
|
|
||||||
}
|
|
||||||
|
|
||||||
// List lists all PostgresTeams in the indexer for a given namespace.
|
|
||||||
func (s postgresTeamNamespaceLister) List(selector labels.Selector) (ret []*v1.PostgresTeam, err error) {
|
|
||||||
err = cache.ListAllByNamespace(s.indexer, s.namespace, selector, func(m interface{}) {
|
|
||||||
ret = append(ret, m.(*v1.PostgresTeam))
|
|
||||||
})
|
|
||||||
return ret, err
|
|
||||||
}
|
|
||||||
|
|
||||||
// Get retrieves the PostgresTeam from the indexer for a given namespace and name.
|
|
||||||
func (s postgresTeamNamespaceLister) Get(name string) (*v1.PostgresTeam, error) {
|
|
||||||
obj, exists, err := s.indexer.GetByKey(s.namespace + "/" + name)
|
|
||||||
if err != nil {
|
|
||||||
return nil, err
|
|
||||||
}
|
|
||||||
if !exists {
|
|
||||||
return nil, errors.NewNotFound(v1.Resource("postgresteam"), name)
|
|
||||||
}
|
|
||||||
return obj.(*v1.PostgresTeam), nil
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -25,10 +25,10 @@ SOFTWARE.
|
|||||||
package v1
|
package v1
|
||||||
|
|
||||||
import (
|
import (
|
||||||
v1 "github.com/zalando/postgres-operator/pkg/apis/zalando.org/v1"
|
zalandoorgv1 "github.com/zalando/postgres-operator/pkg/apis/zalando.org/v1"
|
||||||
"k8s.io/apimachinery/pkg/api/errors"
|
labels "k8s.io/apimachinery/pkg/labels"
|
||||||
"k8s.io/apimachinery/pkg/labels"
|
listers "k8s.io/client-go/listers"
|
||||||
"k8s.io/client-go/tools/cache"
|
cache "k8s.io/client-go/tools/cache"
|
||||||
)
|
)
|
||||||
|
|
||||||
// FabricEventStreamLister helps list FabricEventStreams.
|
// FabricEventStreamLister helps list FabricEventStreams.
|
||||||
@@ -36,7 +36,7 @@ import (
|
|||||||
type FabricEventStreamLister interface {
|
type FabricEventStreamLister interface {
|
||||||
// List lists all FabricEventStreams in the indexer.
|
// List lists all FabricEventStreams in the indexer.
|
||||||
// Objects returned here must be treated as read-only.
|
// Objects returned here must be treated as read-only.
|
||||||
List(selector labels.Selector) (ret []*v1.FabricEventStream, err error)
|
List(selector labels.Selector) (ret []*zalandoorgv1.FabricEventStream, err error)
|
||||||
// FabricEventStreams returns an object that can list and get FabricEventStreams.
|
// FabricEventStreams returns an object that can list and get FabricEventStreams.
|
||||||
FabricEventStreams(namespace string) FabricEventStreamNamespaceLister
|
FabricEventStreams(namespace string) FabricEventStreamNamespaceLister
|
||||||
FabricEventStreamListerExpansion
|
FabricEventStreamListerExpansion
|
||||||
@@ -44,25 +44,17 @@ type FabricEventStreamLister interface {
|
|||||||
|
|
||||||
// fabricEventStreamLister implements the FabricEventStreamLister interface.
|
// fabricEventStreamLister implements the FabricEventStreamLister interface.
|
||||||
type fabricEventStreamLister struct {
|
type fabricEventStreamLister struct {
|
||||||
indexer cache.Indexer
|
listers.ResourceIndexer[*zalandoorgv1.FabricEventStream]
|
||||||
}
|
}
|
||||||
|
|
||||||
// NewFabricEventStreamLister returns a new FabricEventStreamLister.
|
// NewFabricEventStreamLister returns a new FabricEventStreamLister.
|
||||||
func NewFabricEventStreamLister(indexer cache.Indexer) FabricEventStreamLister {
|
func NewFabricEventStreamLister(indexer cache.Indexer) FabricEventStreamLister {
|
||||||
return &fabricEventStreamLister{indexer: indexer}
|
return &fabricEventStreamLister{listers.New[*zalandoorgv1.FabricEventStream](indexer, zalandoorgv1.Resource("fabriceventstream"))}
|
||||||
}
|
|
||||||
|
|
||||||
// List lists all FabricEventStreams in the indexer.
|
|
||||||
func (s *fabricEventStreamLister) List(selector labels.Selector) (ret []*v1.FabricEventStream, err error) {
|
|
||||||
err = cache.ListAll(s.indexer, selector, func(m interface{}) {
|
|
||||||
ret = append(ret, m.(*v1.FabricEventStream))
|
|
||||||
})
|
|
||||||
return ret, err
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// FabricEventStreams returns an object that can list and get FabricEventStreams.
|
// FabricEventStreams returns an object that can list and get FabricEventStreams.
|
||||||
func (s *fabricEventStreamLister) FabricEventStreams(namespace string) FabricEventStreamNamespaceLister {
|
func (s *fabricEventStreamLister) FabricEventStreams(namespace string) FabricEventStreamNamespaceLister {
|
||||||
return fabricEventStreamNamespaceLister{indexer: s.indexer, namespace: namespace}
|
return fabricEventStreamNamespaceLister{listers.NewNamespaced[*zalandoorgv1.FabricEventStream](s.ResourceIndexer, namespace)}
|
||||||
}
|
}
|
||||||
|
|
||||||
// FabricEventStreamNamespaceLister helps list and get FabricEventStreams.
|
// FabricEventStreamNamespaceLister helps list and get FabricEventStreams.
|
||||||
@@ -70,36 +62,15 @@ func (s *fabricEventStreamLister) FabricEventStreams(namespace string) FabricEve
|
|||||||
type FabricEventStreamNamespaceLister interface {
|
type FabricEventStreamNamespaceLister interface {
|
||||||
// List lists all FabricEventStreams in the indexer for a given namespace.
|
// List lists all FabricEventStreams in the indexer for a given namespace.
|
||||||
// Objects returned here must be treated as read-only.
|
// Objects returned here must be treated as read-only.
|
||||||
List(selector labels.Selector) (ret []*v1.FabricEventStream, err error)
|
List(selector labels.Selector) (ret []*zalandoorgv1.FabricEventStream, err error)
|
||||||
// Get retrieves the FabricEventStream from the indexer for a given namespace and name.
|
// Get retrieves the FabricEventStream from the indexer for a given namespace and name.
|
||||||
// Objects returned here must be treated as read-only.
|
// Objects returned here must be treated as read-only.
|
||||||
Get(name string) (*v1.FabricEventStream, error)
|
Get(name string) (*zalandoorgv1.FabricEventStream, error)
|
||||||
FabricEventStreamNamespaceListerExpansion
|
FabricEventStreamNamespaceListerExpansion
|
||||||
}
|
}
|
||||||
|
|
||||||
// fabricEventStreamNamespaceLister implements the FabricEventStreamNamespaceLister
|
// fabricEventStreamNamespaceLister implements the FabricEventStreamNamespaceLister
|
||||||
// interface.
|
// interface.
|
||||||
type fabricEventStreamNamespaceLister struct {
|
type fabricEventStreamNamespaceLister struct {
|
||||||
indexer cache.Indexer
|
listers.ResourceIndexer[*zalandoorgv1.FabricEventStream]
|
||||||
namespace string
|
|
||||||
}
|
|
||||||
|
|
||||||
// List lists all FabricEventStreams in the indexer for a given namespace.
|
|
||||||
func (s fabricEventStreamNamespaceLister) List(selector labels.Selector) (ret []*v1.FabricEventStream, err error) {
|
|
||||||
err = cache.ListAllByNamespace(s.indexer, s.namespace, selector, func(m interface{}) {
|
|
||||||
ret = append(ret, m.(*v1.FabricEventStream))
|
|
||||||
})
|
|
||||||
return ret, err
|
|
||||||
}
|
|
||||||
|
|
||||||
// Get retrieves the FabricEventStream from the indexer for a given namespace and name.
|
|
||||||
func (s fabricEventStreamNamespaceLister) Get(name string) (*v1.FabricEventStream, error) {
|
|
||||||
obj, exists, err := s.indexer.GetByKey(s.namespace + "/" + name)
|
|
||||||
if err != nil {
|
|
||||||
return nil, err
|
|
||||||
}
|
|
||||||
if !exists {
|
|
||||||
return nil, errors.NewNotFound(v1.Resource("fabriceventstream"), name)
|
|
||||||
}
|
|
||||||
return obj.(*v1.FabricEventStream), nil
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
package httpclient
|
package httpclient
|
||||||
|
|
||||||
//go:generate mockgen -package mocks -destination=../../../mocks/$GOFILE -source=$GOFILE -build_flags=-mod=vendor
|
//go:generate go tool mockgen -package mocks -destination=../../../mocks/$GOFILE -source=$GOFILE
|
||||||
|
|
||||||
import "net/http"
|
import "net/http"
|
||||||
|
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
package volumes
|
package volumes
|
||||||
|
|
||||||
//go:generate mockgen -package mocks -destination=../../../mocks/$GOFILE -source=$GOFILE -build_flags=-mod=vendor
|
//go:generate go tool mockgen -package mocks -destination=../../../mocks/$GOFILE -source=$GOFILE
|
||||||
|
|
||||||
import v1 "k8s.io/api/core/v1"
|
import v1 "k8s.io/api/core/v1"
|
||||||
|
|
||||||
|
|||||||
@@ -98,7 +98,7 @@ function build_operator_binary(){
|
|||||||
|
|
||||||
# redirecting stderr greatly reduces non-informative output during normal builds
|
# redirecting stderr greatly reduces non-informative output during normal builds
|
||||||
echo "Build operator binary (stderr redirected to /dev/null)..."
|
echo "Build operator binary (stderr redirected to /dev/null)..."
|
||||||
make clean deps local test > /dev/null 2>&1
|
make clean local test > /dev/null 2>&1
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user