diff --git a/Makefile b/Makefile index 43ae379..0c071d0 100644 --- a/Makefile +++ b/Makefile @@ -62,16 +62,18 @@ $(GIMPS): gimps \ ${GIMPS_VERSION} +# wwhrd is installed as a Go module rather than from the provided +# binaries because there is no arm64 binary available from the author. + WWHRD = _tools/wwhrd -WWHRD_VERSION = 0.4.0 +WWHRD_VERSION = 06b99400ca6db678386ba5dc39bbbdcdadb664ff .PHONY: $(WWHRD) $(WWHRD): - @hack/download-tool.sh \ - https://github.com/frapposelli/wwhrd/releases/download/v${WWHRD_VERSION}/wwhrd_${WWHRD_VERSION}_${GOOS}_${GOARCH}.tar.gz \ + @GO_MODULE=true hack/download-tool.sh \ + github.com/frapposelli/wwhrd \ wwhrd \ - ${WWHRD_VERSION} \ - wwhrd + ${WWHRD_VERSION} BOILERPLATE = _tools/boilerplate BOILERPLATE_VERSION = 0.3.0 diff --git a/README.md b/README.md index 8d49358..ecc30fb 100644 --- a/README.md +++ b/README.md @@ -5,6 +5,21 @@ [![GitHub release (latest SemVer)](https://img.shields.io/github/v/release/kcp-dev/api-syncagent?sort=semver)](https://img.shields.io/github/v/release/kcp-dev/api-syncagent?sort=semver) [![FOSSA Status](https://app.fossa.com/api/projects/git%2Bgithub.com%2Fkcp-dev%2Fapi-syncagent.svg?type=shield)](https://app.fossa.com/projects/git%2Bgithub.com%2Fkcp-dev%2Fapi-syncagent?ref=badge_shield) +The kcp API Sync Agent is a Kubernetes controller capable of synchronizing objects from many kcp +workspaces onto a single Kubernetes cluster (with kcp being the source of truth). In doing so it will +move the desired state (usually the spec) of an object from kcp to the local cluster where the agent +is running, and move the current object status back up into kcp. The agent can also sync so-called +related objects, like a Secret belonging to a Certificate, in both directions. + +The agent can be used to provide an API in kcp and then serving it from a remote Kubernetes cluster +where the actual workload is then processed, usually by a 3rd-party operator. In many situations the +synchronized objects are further processed using tools like Crossplane. + +## Documentation + +Please visit [https://docs.kcp.io/api-syncagent](https://docs.kcp.io/api-syncagent) for the latest +documentation. + ## Troubleshooting If you encounter problems, please [file an issue][1]. diff --git a/docs/content/releasing.md b/docs/content/releasing.md new file mode 100644 index 0000000..b3b088b --- /dev/null +++ b/docs/content/releasing.md @@ -0,0 +1,29 @@ +# Release Process + +The guide describes how to release a new version of the api-syncagent. + +## Prerequisites + +1. Have all desired changes merged and/or cherrypicked into the appropriate + release branch. + +## Minor Release + +Minor releases (0.x) are tagged directly on the `main` branch and the `v0.X.0` +tag represents where the corresponding `release/v0.X` branch branches off. + +1. Checkout the desired `main` branch commit. +1. Tag the main module: `git tag -m "version 0.X" v0.X.0` +1. Tag the SDK module: `git tag -m "SDK version 0.X" sdk/v0.X.0` +1. Push the tags: `git push upstream v0.X.0 sdk/v0.X.0` +1. Create the release branch: `git checkout -B release/v0.X` +1. Push the release branch: `git push -u upstream release/v0.X` + +## Patch Releases + +Patch releases (v0.x.y) are tagged with in a release branch. + +1. Checkout the desired `release/v0.X` branch commit. +1. Tag the main module: `git tag -m "version 0.X.Y" v0.X.Y` +1. Tag the SDK module: `git tag -m "SDK version 0.X.Y" sdk/v0.X.Y` +1. Push the tags: `git push upstream v0.X.Y sdk/v0.X.Y` diff --git a/docs/mkdocs.yml b/docs/mkdocs.yml index c838a01..804df15 100644 --- a/docs/mkdocs.yml +++ b/docs/mkdocs.yml @@ -25,6 +25,7 @@ nav: - Publishing Resources: publish-resources.md - Consuming Services: consuming-services.md - FAQ: faq.md + - Release Process: releasing.md # Site content docs_dir: 'content' diff --git a/go.mod b/go.mod index 0e1be7d..9ebc02d 100644 --- a/go.mod +++ b/go.mod @@ -2,7 +2,7 @@ module github.com/kcp-dev/api-syncagent go 1.23.0 -toolchain go1.24.0 +replace github.com/kcp-dev/api-syncagent/sdk => ./sdk replace ( k8s.io/apiextensions-apiserver => github.com/kcp-dev/kubernetes/staging/src/k8s.io/apiextensions-apiserver v0.0.0-20250313100806-0011b8c72acd @@ -17,8 +17,7 @@ require ( github.com/go-logr/logr v1.4.2 github.com/go-logr/zapr v1.3.0 github.com/google/go-cmp v0.7.0 - github.com/kcp-dev/apimachinery/v2 v2.0.1-0.20250223115924-431177b024f3 - github.com/kcp-dev/client-go v0.0.0-20250223133118-3dea338dc267 + github.com/kcp-dev/api-syncagent/sdk v0.0.0-00010101000000-000000000000 github.com/kcp-dev/code-generator/v2 v2.3.1 github.com/kcp-dev/kcp v0.27.1 github.com/kcp-dev/kcp/sdk v0.27.1 @@ -40,7 +39,6 @@ require ( k8s.io/utils v0.0.0-20240711033017-18e509b52bc8 sigs.k8s.io/controller-runtime v0.18.3 sigs.k8s.io/controller-tools v0.16.5 - sigs.k8s.io/structured-merge-diff/v4 v4.6.0 sigs.k8s.io/yaml v1.4.0 ) @@ -61,7 +59,6 @@ require ( github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc // indirect github.com/distribution/reference v0.6.0 // indirect github.com/emicklei/go-restful/v3 v3.12.2 // indirect - github.com/evanphx/json-patch v5.9.11+incompatible // indirect github.com/fatih/color v1.18.0 // indirect github.com/felixge/httpsnoop v1.0.4 // indirect github.com/fsnotify/fsnotify v1.8.0 // indirect @@ -87,6 +84,8 @@ require ( github.com/inconshreveable/mousetrap v1.1.0 // indirect github.com/josharian/intern v1.0.0 // indirect github.com/json-iterator/go v1.1.12 // indirect + github.com/kcp-dev/apimachinery/v2 v2.0.1-0.20250223115924-431177b024f3 // indirect + github.com/kcp-dev/client-go v0.0.0-20250223133118-3dea338dc267 // indirect github.com/klauspost/compress v1.17.11 // indirect github.com/kylelemons/godebug v1.1.0 // indirect github.com/mailru/easyjson v0.9.0 // indirect @@ -158,4 +157,5 @@ require ( k8s.io/kubernetes v1.31.6 // indirect sigs.k8s.io/apiserver-network-proxy/konnectivity-client v0.30.3 // indirect sigs.k8s.io/json v0.0.0-20241014173422-cfa47c3a1cc8 // indirect + sigs.k8s.io/structured-merge-diff/v4 v4.6.0 // indirect ) diff --git a/hack/boilerplate/generated/boilerplate.go.txt b/hack/boilerplate/generated/boilerplate.go.txt new file mode 100644 index 0000000..4faeb63 --- /dev/null +++ b/hack/boilerplate/generated/boilerplate.go.txt @@ -0,0 +1,15 @@ +/* +Copyright The KCP 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. +*/ diff --git a/hack/reconciling.yaml b/hack/reconciling.yaml index d2f68cf..321400d 100644 --- a/hack/reconciling.yaml +++ b/hack/reconciling.yaml @@ -16,7 +16,7 @@ # https://github.com/kubermatic/reconciler package: reconciling -boilerplate: hack/boilerplate/boilerplate.go.txt +boilerplate: hack/boilerplate/generated/boilerplate.go.txt resourceTypes: # kcp-dev/v1alpha1 - { package: github.com/kcp-dev/kcp/sdk/apis/apis/v1alpha1, importAlias: kcpdevv1alpha1, resourceName: APIExport } diff --git a/hack/update-codegen-crds.sh b/hack/update-codegen-crds.sh index 46931f9..574ed68 100755 --- a/hack/update-codegen-crds.sh +++ b/hack/update-codegen-crds.sh @@ -19,17 +19,16 @@ set -euo pipefail cd $(dirname $0)/.. source hack/lib.sh -sed="sed" -[ "$(command -v gsed)" ] && sed="gsed" +mkdir -p _tools +export GOBIN=$(realpath _tools) + +go install k8c.io/reconciler/cmd/reconciler-gen +go install sigs.k8s.io/controller-tools/cmd/controller-gen echodate "Generating reconciling helpers…" reconcileHelpers=internal/resources/reconciling/zz_generated_reconcile.go -go run k8c.io/reconciler/cmd/reconciler-gen --config hack/reconciling.yaml > $reconcileHelpers - -currentYear=$(date +%Y) -$sed -i "s/Copyright YEAR/Copyright $currentYear/g" $reconcileHelpers -$sed -i "s/Copyright © YEAR/Copyright © $currentYear/g" $reconcileHelpers +$GOBIN/reconciler-gen --config hack/reconciling.yaml > $reconcileHelpers CRD_DIR=deploy/crd KCP_CRD_DIR="$CRD_DIR/kcp.io" @@ -38,17 +37,14 @@ mkdir -p "$KCP_CRD_DIR" echodate "Generating openAPI v3 CRDs…" -# this also generates the deepcopy funcs -go run sigs.k8s.io/controller-tools/cmd/controller-gen \ +$GOBIN/controller-gen \ crd \ - object:headerFile=./hack/boilerplate/boilerplate.go.txt \ paths=./sdk/apis/... \ output:crd:dir=./$KCP_CRD_DIR # these are types only used for testing the syncer -go run sigs.k8s.io/controller-tools/cmd/controller-gen \ +$GOBIN/controller-gen \ crd \ - object:headerFile=./hack/boilerplate/boilerplate.go.txt \ paths=./internal/sync/apis/... \ output:crd:dir=./internal/sync/crd/ diff --git a/hack/update-codegen-sdk.sh b/hack/update-codegen-sdk.sh index c5badf3..177e62f 100755 --- a/hack/update-codegen-sdk.sh +++ b/hack/update-codegen-sdk.sh @@ -19,43 +19,55 @@ set -euo pipefail cd $(dirname $0)/.. source hack/lib.sh -BOILERPLATE_HEADER="$(realpath hack/boilerplate/boilerplate.go.txt)" +BOILERPLATE_HEADER="$(realpath hack/boilerplate/generated/boilerplate.go.txt)" +SDK_MODULE="github.com/kcp-dev/api-syncagent/sdk" +APIS_PKG="$SDK_MODULE/apis" -BASE=github.com/kcp-dev/api-syncagent -MODULE="$BASE/sdk" -SDK_DIR=sdk -SDK_PKG="$MODULE" -APIS_PKG="$MODULE/apis" +mkdir -p _tools +export GOBIN=$(realpath _tools) set -x -rm -rf -- $SDK_DIR/{applyconfiguration,clientset,informers,listers} -go run k8s.io/code-generator/cmd/applyconfiguration-gen \ +go install k8s.io/code-generator/cmd/applyconfiguration-gen +go install k8s.io/code-generator/cmd/client-gen +go install github.com/kcp-dev/code-generator/v2 +go install github.com/openshift-eng/openshift-goimports +go install sigs.k8s.io/controller-tools/cmd/controller-gen + +# these are types only used for testing the syncer +$GOBIN/controller-gen \ + "object:headerFile=$BOILERPLATE_HEADER" \ + paths=./internal/sync/apis/... + +cd sdk +rm -rf -- applyconfiguration clientset informers listers + +$GOBIN/controller-gen \ + "object:headerFile=$BOILERPLATE_HEADER" \ + paths=./apis/... + +$GOBIN/applyconfiguration-gen \ --go-header-file "$BOILERPLATE_HEADER" \ - --output-dir $SDK_DIR/applyconfiguration \ - --output-pkg $SDK_PKG/applyconfiguration \ - $APIS_PKG/syncagent/v1alpha1 + --output-dir applyconfiguration \ + --output-pkg $SDK_MODULE/applyconfiguration \ + ./apis/... -go run k8s.io/code-generator/cmd/client-gen \ - --input-base "" \ - --input $APIS_PKG/syncagent/v1alpha1 \ - --clientset-name versioned \ +$GOBIN/client-gen \ --go-header-file "$BOILERPLATE_HEADER" \ - --output-dir $SDK_DIR/clientset \ - --output-pkg $SDK_PKG/clientset + --output-dir clientset \ + --output-pkg $SDK_MODULE/clientset \ + --clientset-name versioned \ + --input-base $APIS_PKG \ + --input syncagent/v1alpha1 -go run github.com/kcp-dev/code-generator/v2 \ - "client:headerFile=$BOILERPLATE_HEADER,apiPackagePath=$APIS_PKG,outputPackagePath=$SDK_PKG,singleClusterClientPackagePath=$SDK_PKG/clientset/versioned,singleClusterApplyConfigurationsPackagePath=$SDK_PKG/applyconfiguration" \ - "informer:headerFile=$BOILERPLATE_HEADER,apiPackagePath=$APIS_PKG,outputPackagePath=$SDK_PKG,singleClusterClientPackagePath=$SDK_PKG/clientset/versioned" \ +$GOBIN/code-generator \ + "client:headerFile=$BOILERPLATE_HEADER,apiPackagePath=$APIS_PKG,outputPackagePath=$SDK_MODULE,singleClusterClientPackagePath=$SDK_MODULE/clientset/versioned,singleClusterApplyConfigurationsPackagePath=applyconfiguration" \ + "informer:headerFile=$BOILERPLATE_HEADER,apiPackagePath=$APIS_PKG,outputPackagePath=$SDK_MODULE,singleClusterClientPackagePath=$SDK_MODULE/clientset/versioned" \ "lister:headerFile=$BOILERPLATE_HEADER,apiPackagePath=$APIS_PKG" \ - "paths=./sdk/apis/..." \ - "output:dir=$SDK_DIR" + "paths=./apis/..." \ + "output:dir=." # Use openshift's import fixer because gimps fails to parse some of the files; # its output is identical to how gimps would sort the imports, but it also fixes # the misplaced go:build directives. -for submodule in "applyconfiguration" "clientset" "informers" "listers"; do - go run github.com/openshift-eng/openshift-goimports \ - --module "$MODULE/$submodule" \ - --path "$SDK_DIR/$submodule" -done +$GOBIN/openshift-goimports . diff --git a/hack/verify-boilerplate.sh b/hack/verify-boilerplate.sh index 6f0f001..7801fa3 100755 --- a/hack/verify-boilerplate.sh +++ b/hack/verify-boilerplate.sh @@ -22,11 +22,22 @@ source hack/lib.sh make --no-print-directory _tools/boilerplate echo "Checking file boilerplates…" + +set -x + _tools/boilerplate \ -boilerplates hack/boilerplate \ -exclude .github \ -exclude internal/certificates/triple \ + -exclude sdk/applyconfiguration \ -exclude sdk/clientset \ -exclude sdk/informers \ -exclude sdk/listers \ -exclude test/crds + +_tools/boilerplate \ + -boilerplates hack/boilerplate/generated \ + sdk/applyconfiguration \ + sdk/clientset \ + sdk/informers \ + sdk/listers diff --git a/internal/resources/reconciling/zz_generated_reconcile.go b/internal/resources/reconciling/zz_generated_reconcile.go index 9a3bbd5..0a22759 100644 --- a/internal/resources/reconciling/zz_generated_reconcile.go +++ b/internal/resources/reconciling/zz_generated_reconcile.go @@ -1,5 +1,5 @@ /* -Copyright 2025 The KCP Authors. +Copyright The KCP Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/internal/sync/apis/dummy/v1alpha1/zz_generated.deepcopy.go b/internal/sync/apis/dummy/v1alpha1/zz_generated.deepcopy.go index 0308c39..fe1c2f1 100644 --- a/internal/sync/apis/dummy/v1alpha1/zz_generated.deepcopy.go +++ b/internal/sync/apis/dummy/v1alpha1/zz_generated.deepcopy.go @@ -1,7 +1,7 @@ //go:build !ignore_autogenerated /* -Copyright The KCP Authors. +Copyright The KCP Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/sdk/LICENSE b/sdk/LICENSE new file mode 100644 index 0000000..d645695 --- /dev/null +++ b/sdk/LICENSE @@ -0,0 +1,202 @@ + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + 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. diff --git a/sdk/apis/syncagent/v1alpha1/zz_generated.deepcopy.go b/sdk/apis/syncagent/v1alpha1/zz_generated.deepcopy.go index 8235c67..4f0738b 100644 --- a/sdk/apis/syncagent/v1alpha1/zz_generated.deepcopy.go +++ b/sdk/apis/syncagent/v1alpha1/zz_generated.deepcopy.go @@ -1,7 +1,7 @@ //go:build !ignore_autogenerated /* -Copyright The KCP Authors. +Copyright The KCP Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/sdk/applyconfiguration/internal/internal.go b/sdk/applyconfiguration/internal/internal.go index 7448910..1bcc700 100644 --- a/sdk/applyconfiguration/internal/internal.go +++ b/sdk/applyconfiguration/internal/internal.go @@ -1,5 +1,5 @@ /* -Copyright 2025 The KCP Authors. +Copyright The KCP Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/sdk/applyconfiguration/syncagent/v1alpha1/publishedresource.go b/sdk/applyconfiguration/syncagent/v1alpha1/publishedresource.go index 7f0ede0..2e8e6dd 100644 --- a/sdk/applyconfiguration/syncagent/v1alpha1/publishedresource.go +++ b/sdk/applyconfiguration/syncagent/v1alpha1/publishedresource.go @@ -1,5 +1,5 @@ /* -Copyright 2025 The KCP Authors. +Copyright The KCP Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/sdk/applyconfiguration/syncagent/v1alpha1/publishedresourcespec.go b/sdk/applyconfiguration/syncagent/v1alpha1/publishedresourcespec.go index c9a9697..a733ddf 100644 --- a/sdk/applyconfiguration/syncagent/v1alpha1/publishedresourcespec.go +++ b/sdk/applyconfiguration/syncagent/v1alpha1/publishedresourcespec.go @@ -1,5 +1,5 @@ /* -Copyright 2025 The KCP Authors. +Copyright The KCP Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/sdk/applyconfiguration/syncagent/v1alpha1/publishedresourcestatus.go b/sdk/applyconfiguration/syncagent/v1alpha1/publishedresourcestatus.go index 99f3d03..33caa49 100644 --- a/sdk/applyconfiguration/syncagent/v1alpha1/publishedresourcestatus.go +++ b/sdk/applyconfiguration/syncagent/v1alpha1/publishedresourcestatus.go @@ -1,5 +1,5 @@ /* -Copyright 2025 The KCP Authors. +Copyright The KCP Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/sdk/applyconfiguration/syncagent/v1alpha1/regularexpression.go b/sdk/applyconfiguration/syncagent/v1alpha1/regularexpression.go index 6bad6d2..a77c400 100644 --- a/sdk/applyconfiguration/syncagent/v1alpha1/regularexpression.go +++ b/sdk/applyconfiguration/syncagent/v1alpha1/regularexpression.go @@ -1,5 +1,5 @@ /* -Copyright 2025 The KCP Authors. +Copyright The KCP Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/sdk/applyconfiguration/syncagent/v1alpha1/relatedresourceobject.go b/sdk/applyconfiguration/syncagent/v1alpha1/relatedresourceobject.go index af7d72b..311205c 100644 --- a/sdk/applyconfiguration/syncagent/v1alpha1/relatedresourceobject.go +++ b/sdk/applyconfiguration/syncagent/v1alpha1/relatedresourceobject.go @@ -1,5 +1,5 @@ /* -Copyright 2025 The KCP Authors. +Copyright The KCP Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/sdk/applyconfiguration/syncagent/v1alpha1/relatedresourceobjectreference.go b/sdk/applyconfiguration/syncagent/v1alpha1/relatedresourceobjectreference.go index fc6159b..85aeb25 100644 --- a/sdk/applyconfiguration/syncagent/v1alpha1/relatedresourceobjectreference.go +++ b/sdk/applyconfiguration/syncagent/v1alpha1/relatedresourceobjectreference.go @@ -1,5 +1,5 @@ /* -Copyright 2025 The KCP Authors. +Copyright The KCP Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/sdk/applyconfiguration/syncagent/v1alpha1/relatedresourceobjectselector.go b/sdk/applyconfiguration/syncagent/v1alpha1/relatedresourceobjectselector.go index 6ce78ff..40f6231 100644 --- a/sdk/applyconfiguration/syncagent/v1alpha1/relatedresourceobjectselector.go +++ b/sdk/applyconfiguration/syncagent/v1alpha1/relatedresourceobjectselector.go @@ -1,5 +1,5 @@ /* -Copyright 2025 The KCP Authors. +Copyright The KCP Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/sdk/applyconfiguration/syncagent/v1alpha1/relatedresourceobjectspec.go b/sdk/applyconfiguration/syncagent/v1alpha1/relatedresourceobjectspec.go index ccdfb3f..7998361 100644 --- a/sdk/applyconfiguration/syncagent/v1alpha1/relatedresourceobjectspec.go +++ b/sdk/applyconfiguration/syncagent/v1alpha1/relatedresourceobjectspec.go @@ -1,5 +1,5 @@ /* -Copyright 2025 The KCP Authors. +Copyright The KCP Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/sdk/applyconfiguration/syncagent/v1alpha1/relatedresourceselectorrewrite.go b/sdk/applyconfiguration/syncagent/v1alpha1/relatedresourceselectorrewrite.go index 4b27e7c..b852ec9 100644 --- a/sdk/applyconfiguration/syncagent/v1alpha1/relatedresourceselectorrewrite.go +++ b/sdk/applyconfiguration/syncagent/v1alpha1/relatedresourceselectorrewrite.go @@ -1,5 +1,5 @@ /* -Copyright 2025 The KCP Authors. +Copyright The KCP Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/sdk/applyconfiguration/syncagent/v1alpha1/relatedresourcespec.go b/sdk/applyconfiguration/syncagent/v1alpha1/relatedresourcespec.go index 08173b2..c552766 100644 --- a/sdk/applyconfiguration/syncagent/v1alpha1/relatedresourcespec.go +++ b/sdk/applyconfiguration/syncagent/v1alpha1/relatedresourcespec.go @@ -1,5 +1,5 @@ /* -Copyright 2025 The KCP Authors. +Copyright The KCP Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/sdk/applyconfiguration/syncagent/v1alpha1/resourcedeletemutation.go b/sdk/applyconfiguration/syncagent/v1alpha1/resourcedeletemutation.go index 9a88dba..d0cb6a5 100644 --- a/sdk/applyconfiguration/syncagent/v1alpha1/resourcedeletemutation.go +++ b/sdk/applyconfiguration/syncagent/v1alpha1/resourcedeletemutation.go @@ -1,5 +1,5 @@ /* -Copyright 2025 The KCP Authors. +Copyright The KCP Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/sdk/applyconfiguration/syncagent/v1alpha1/resourcefilter.go b/sdk/applyconfiguration/syncagent/v1alpha1/resourcefilter.go index 5636de8..082c7ec 100644 --- a/sdk/applyconfiguration/syncagent/v1alpha1/resourcefilter.go +++ b/sdk/applyconfiguration/syncagent/v1alpha1/resourcefilter.go @@ -1,5 +1,5 @@ /* -Copyright 2025 The KCP Authors. +Copyright The KCP Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/sdk/applyconfiguration/syncagent/v1alpha1/resourcemutation.go b/sdk/applyconfiguration/syncagent/v1alpha1/resourcemutation.go index da33a22..58d6915 100644 --- a/sdk/applyconfiguration/syncagent/v1alpha1/resourcemutation.go +++ b/sdk/applyconfiguration/syncagent/v1alpha1/resourcemutation.go @@ -1,5 +1,5 @@ /* -Copyright 2025 The KCP Authors. +Copyright The KCP Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/sdk/applyconfiguration/syncagent/v1alpha1/resourcemutationspec.go b/sdk/applyconfiguration/syncagent/v1alpha1/resourcemutationspec.go index 60dce42..44ac48a 100644 --- a/sdk/applyconfiguration/syncagent/v1alpha1/resourcemutationspec.go +++ b/sdk/applyconfiguration/syncagent/v1alpha1/resourcemutationspec.go @@ -1,5 +1,5 @@ /* -Copyright 2025 The KCP Authors. +Copyright The KCP Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/sdk/applyconfiguration/syncagent/v1alpha1/resourcenaming.go b/sdk/applyconfiguration/syncagent/v1alpha1/resourcenaming.go index 6f1ffa7..aa2024d 100644 --- a/sdk/applyconfiguration/syncagent/v1alpha1/resourcenaming.go +++ b/sdk/applyconfiguration/syncagent/v1alpha1/resourcenaming.go @@ -1,5 +1,5 @@ /* -Copyright 2025 The KCP Authors. +Copyright The KCP Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/sdk/applyconfiguration/syncagent/v1alpha1/resourceprojection.go b/sdk/applyconfiguration/syncagent/v1alpha1/resourceprojection.go index ca82359..77c6b3f 100644 --- a/sdk/applyconfiguration/syncagent/v1alpha1/resourceprojection.go +++ b/sdk/applyconfiguration/syncagent/v1alpha1/resourceprojection.go @@ -1,5 +1,5 @@ /* -Copyright 2025 The KCP Authors. +Copyright The KCP Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/sdk/applyconfiguration/syncagent/v1alpha1/resourceregexmutation.go b/sdk/applyconfiguration/syncagent/v1alpha1/resourceregexmutation.go index 7ee07b0..98d4d19 100644 --- a/sdk/applyconfiguration/syncagent/v1alpha1/resourceregexmutation.go +++ b/sdk/applyconfiguration/syncagent/v1alpha1/resourceregexmutation.go @@ -1,5 +1,5 @@ /* -Copyright 2025 The KCP Authors. +Copyright The KCP Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/sdk/applyconfiguration/syncagent/v1alpha1/resourcetemplatemutation.go b/sdk/applyconfiguration/syncagent/v1alpha1/resourcetemplatemutation.go index 2630631..aeb3a4f 100644 --- a/sdk/applyconfiguration/syncagent/v1alpha1/resourcetemplatemutation.go +++ b/sdk/applyconfiguration/syncagent/v1alpha1/resourcetemplatemutation.go @@ -1,5 +1,5 @@ /* -Copyright 2025 The KCP Authors. +Copyright The KCP Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/sdk/applyconfiguration/syncagent/v1alpha1/sourceresourcedescriptor.go b/sdk/applyconfiguration/syncagent/v1alpha1/sourceresourcedescriptor.go index 4b4f8e4..376d384 100644 --- a/sdk/applyconfiguration/syncagent/v1alpha1/sourceresourcedescriptor.go +++ b/sdk/applyconfiguration/syncagent/v1alpha1/sourceresourcedescriptor.go @@ -1,5 +1,5 @@ /* -Copyright 2025 The KCP Authors. +Copyright The KCP Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/sdk/applyconfiguration/syncagent/v1alpha1/templateexpression.go b/sdk/applyconfiguration/syncagent/v1alpha1/templateexpression.go index 1464d74..177e732 100644 --- a/sdk/applyconfiguration/syncagent/v1alpha1/templateexpression.go +++ b/sdk/applyconfiguration/syncagent/v1alpha1/templateexpression.go @@ -1,5 +1,5 @@ /* -Copyright 2025 The KCP Authors. +Copyright The KCP Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/sdk/applyconfiguration/utils.go b/sdk/applyconfiguration/utils.go index b2ca26d..a8d3999 100644 --- a/sdk/applyconfiguration/utils.go +++ b/sdk/applyconfiguration/utils.go @@ -1,5 +1,5 @@ /* -Copyright 2025 The KCP Authors. +Copyright The KCP Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. @@ -19,12 +19,11 @@ limitations under the License. package applyconfiguration import ( - v1alpha1 "github.com/kcp-dev/api-syncagent/sdk/apis/syncagent/v1alpha1" - runtime "k8s.io/apimachinery/pkg/runtime" schema "k8s.io/apimachinery/pkg/runtime/schema" testing "k8s.io/client-go/testing" + v1alpha1 "github.com/kcp-dev/api-syncagent/sdk/apis/syncagent/v1alpha1" internal "github.com/kcp-dev/api-syncagent/sdk/applyconfiguration/internal" syncagentv1alpha1 "github.com/kcp-dev/api-syncagent/sdk/applyconfiguration/syncagent/v1alpha1" ) diff --git a/sdk/clientset/versioned/clientset.go b/sdk/clientset/versioned/clientset.go index 983f995..3a4af51 100644 --- a/sdk/clientset/versioned/clientset.go +++ b/sdk/clientset/versioned/clientset.go @@ -1,5 +1,5 @@ /* -Copyright 2025 The KCP Authors. +Copyright The KCP Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/sdk/clientset/versioned/cluster/scheme/register.go b/sdk/clientset/versioned/cluster/scheme/register.go index d3a939f..9024219 100644 --- a/sdk/clientset/versioned/cluster/scheme/register.go +++ b/sdk/clientset/versioned/cluster/scheme/register.go @@ -22,13 +22,13 @@ limitations under the License. package scheme import ( - syncagentv1alpha1 "github.com/kcp-dev/api-syncagent/sdk/apis/syncagent/v1alpha1" - metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" "k8s.io/apimachinery/pkg/runtime" "k8s.io/apimachinery/pkg/runtime/schema" "k8s.io/apimachinery/pkg/runtime/serializer" utilruntime "k8s.io/apimachinery/pkg/util/runtime" + + syncagentv1alpha1 "github.com/kcp-dev/api-syncagent/sdk/apis/syncagent/v1alpha1" ) var Scheme = runtime.NewScheme() diff --git a/sdk/clientset/versioned/cluster/typed/syncagent/v1alpha1/fake/publishedresource.go b/sdk/clientset/versioned/cluster/typed/syncagent/v1alpha1/fake/publishedresource.go index ab83851..7246eef 100644 --- a/sdk/clientset/versioned/cluster/typed/syncagent/v1alpha1/fake/publishedresource.go +++ b/sdk/clientset/versioned/cluster/typed/syncagent/v1alpha1/fake/publishedresource.go @@ -22,12 +22,11 @@ limitations under the License. package fake import ( + applyconfigurationssyncagentv1alpha1 "applyconfiguration/syncagent/v1alpha1" "context" "encoding/json" "fmt" - syncagentv1alpha1 "github.com/kcp-dev/api-syncagent/sdk/apis/syncagent/v1alpha1" - applyconfigurationssyncagentv1alpha1 "github.com/kcp-dev/api-syncagent/sdk/applyconfiguration/syncagent/v1alpha1" "github.com/kcp-dev/logicalcluster/v3" kcptesting "github.com/kcp-dev/client-go/third_party/k8s.io/client-go/testing" @@ -38,6 +37,7 @@ import ( "k8s.io/apimachinery/pkg/watch" "k8s.io/client-go/testing" + syncagentv1alpha1 "github.com/kcp-dev/api-syncagent/sdk/apis/syncagent/v1alpha1" syncagentv1alpha1client "github.com/kcp-dev/api-syncagent/sdk/clientset/versioned/typed/syncagent/v1alpha1" ) diff --git a/sdk/clientset/versioned/cluster/typed/syncagent/v1alpha1/publishedresource.go b/sdk/clientset/versioned/cluster/typed/syncagent/v1alpha1/publishedresource.go index d62c95e..a596fdc 100644 --- a/sdk/clientset/versioned/cluster/typed/syncagent/v1alpha1/publishedresource.go +++ b/sdk/clientset/versioned/cluster/typed/syncagent/v1alpha1/publishedresource.go @@ -24,13 +24,13 @@ package v1alpha1 import ( "context" - syncagentv1alpha1 "github.com/kcp-dev/api-syncagent/sdk/apis/syncagent/v1alpha1" kcpclient "github.com/kcp-dev/apimachinery/v2/pkg/client" "github.com/kcp-dev/logicalcluster/v3" metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" "k8s.io/apimachinery/pkg/watch" + syncagentv1alpha1 "github.com/kcp-dev/api-syncagent/sdk/apis/syncagent/v1alpha1" syncagentv1alpha1client "github.com/kcp-dev/api-syncagent/sdk/clientset/versioned/typed/syncagent/v1alpha1" ) diff --git a/sdk/clientset/versioned/fake/clientset_generated.go b/sdk/clientset/versioned/fake/clientset_generated.go index 51eeffd..5d0d44a 100644 --- a/sdk/clientset/versioned/fake/clientset_generated.go +++ b/sdk/clientset/versioned/fake/clientset_generated.go @@ -1,5 +1,5 @@ /* -Copyright 2025 The KCP Authors. +Copyright The KCP Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/sdk/clientset/versioned/fake/doc.go b/sdk/clientset/versioned/fake/doc.go index 122a62d..d134e6f 100644 --- a/sdk/clientset/versioned/fake/doc.go +++ b/sdk/clientset/versioned/fake/doc.go @@ -1,5 +1,5 @@ /* -Copyright 2025 The KCP Authors. +Copyright The KCP Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/sdk/clientset/versioned/fake/register.go b/sdk/clientset/versioned/fake/register.go index 5a62141..4c555d7 100644 --- a/sdk/clientset/versioned/fake/register.go +++ b/sdk/clientset/versioned/fake/register.go @@ -1,5 +1,5 @@ /* -Copyright 2025 The KCP Authors. +Copyright The KCP Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. @@ -19,13 +19,13 @@ limitations under the License. package fake import ( - syncagentv1alpha1 "github.com/kcp-dev/api-syncagent/sdk/apis/syncagent/v1alpha1" - v1 "k8s.io/apimachinery/pkg/apis/meta/v1" runtime "k8s.io/apimachinery/pkg/runtime" schema "k8s.io/apimachinery/pkg/runtime/schema" serializer "k8s.io/apimachinery/pkg/runtime/serializer" utilruntime "k8s.io/apimachinery/pkg/util/runtime" + + syncagentv1alpha1 "github.com/kcp-dev/api-syncagent/sdk/apis/syncagent/v1alpha1" ) var scheme = runtime.NewScheme() diff --git a/sdk/clientset/versioned/scheme/doc.go b/sdk/clientset/versioned/scheme/doc.go index 24540b8..0a0dd78 100644 --- a/sdk/clientset/versioned/scheme/doc.go +++ b/sdk/clientset/versioned/scheme/doc.go @@ -1,5 +1,5 @@ /* -Copyright 2025 The KCP Authors. +Copyright The KCP Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/sdk/clientset/versioned/scheme/register.go b/sdk/clientset/versioned/scheme/register.go index d71cd86..2bf3530 100644 --- a/sdk/clientset/versioned/scheme/register.go +++ b/sdk/clientset/versioned/scheme/register.go @@ -1,5 +1,5 @@ /* -Copyright 2025 The KCP Authors. +Copyright The KCP Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. @@ -19,13 +19,13 @@ limitations under the License. package scheme import ( - syncagentv1alpha1 "github.com/kcp-dev/api-syncagent/sdk/apis/syncagent/v1alpha1" - v1 "k8s.io/apimachinery/pkg/apis/meta/v1" runtime "k8s.io/apimachinery/pkg/runtime" schema "k8s.io/apimachinery/pkg/runtime/schema" serializer "k8s.io/apimachinery/pkg/runtime/serializer" utilruntime "k8s.io/apimachinery/pkg/util/runtime" + + syncagentv1alpha1 "github.com/kcp-dev/api-syncagent/sdk/apis/syncagent/v1alpha1" ) var Scheme = runtime.NewScheme() diff --git a/sdk/clientset/versioned/typed/syncagent/v1alpha1/doc.go b/sdk/clientset/versioned/typed/syncagent/v1alpha1/doc.go index 6f7a5a3..364b93c 100644 --- a/sdk/clientset/versioned/typed/syncagent/v1alpha1/doc.go +++ b/sdk/clientset/versioned/typed/syncagent/v1alpha1/doc.go @@ -1,5 +1,5 @@ /* -Copyright 2025 The KCP Authors. +Copyright The KCP Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/sdk/clientset/versioned/typed/syncagent/v1alpha1/fake/doc.go b/sdk/clientset/versioned/typed/syncagent/v1alpha1/fake/doc.go index f4ee047..e388f29 100644 --- a/sdk/clientset/versioned/typed/syncagent/v1alpha1/fake/doc.go +++ b/sdk/clientset/versioned/typed/syncagent/v1alpha1/fake/doc.go @@ -1,5 +1,5 @@ /* -Copyright 2025 The KCP Authors. +Copyright The KCP Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/sdk/clientset/versioned/typed/syncagent/v1alpha1/fake/fake_publishedresource.go b/sdk/clientset/versioned/typed/syncagent/v1alpha1/fake/fake_publishedresource.go index 445cc1d..6ad8915 100644 --- a/sdk/clientset/versioned/typed/syncagent/v1alpha1/fake/fake_publishedresource.go +++ b/sdk/clientset/versioned/typed/syncagent/v1alpha1/fake/fake_publishedresource.go @@ -1,5 +1,5 @@ /* -Copyright 2025 The KCP Authors. +Copyright The KCP Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. @@ -21,13 +21,13 @@ package fake import ( "context" - v1alpha1 "github.com/kcp-dev/api-syncagent/sdk/apis/syncagent/v1alpha1" - v1 "k8s.io/apimachinery/pkg/apis/meta/v1" labels "k8s.io/apimachinery/pkg/labels" types "k8s.io/apimachinery/pkg/types" watch "k8s.io/apimachinery/pkg/watch" testing "k8s.io/client-go/testing" + + v1alpha1 "github.com/kcp-dev/api-syncagent/sdk/apis/syncagent/v1alpha1" ) // FakePublishedResources implements PublishedResourceInterface diff --git a/sdk/clientset/versioned/typed/syncagent/v1alpha1/fake/fake_syncagent_client.go b/sdk/clientset/versioned/typed/syncagent/v1alpha1/fake/fake_syncagent_client.go index 441399c..d1a552c 100644 --- a/sdk/clientset/versioned/typed/syncagent/v1alpha1/fake/fake_syncagent_client.go +++ b/sdk/clientset/versioned/typed/syncagent/v1alpha1/fake/fake_syncagent_client.go @@ -1,5 +1,5 @@ /* -Copyright 2025 The KCP Authors. +Copyright The KCP Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/sdk/clientset/versioned/typed/syncagent/v1alpha1/generated_expansion.go b/sdk/clientset/versioned/typed/syncagent/v1alpha1/generated_expansion.go index cbe5467..de7f469 100644 --- a/sdk/clientset/versioned/typed/syncagent/v1alpha1/generated_expansion.go +++ b/sdk/clientset/versioned/typed/syncagent/v1alpha1/generated_expansion.go @@ -1,5 +1,5 @@ /* -Copyright 2025 The KCP Authors. +Copyright The KCP Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/sdk/clientset/versioned/typed/syncagent/v1alpha1/publishedresource.go b/sdk/clientset/versioned/typed/syncagent/v1alpha1/publishedresource.go index 11499d1..93f799c 100644 --- a/sdk/clientset/versioned/typed/syncagent/v1alpha1/publishedresource.go +++ b/sdk/clientset/versioned/typed/syncagent/v1alpha1/publishedresource.go @@ -1,5 +1,5 @@ /* -Copyright 2025 The KCP Authors. +Copyright The KCP Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. @@ -21,13 +21,12 @@ package v1alpha1 import ( "context" - v1alpha1 "github.com/kcp-dev/api-syncagent/sdk/apis/syncagent/v1alpha1" - v1 "k8s.io/apimachinery/pkg/apis/meta/v1" types "k8s.io/apimachinery/pkg/types" watch "k8s.io/apimachinery/pkg/watch" gentype "k8s.io/client-go/gentype" + v1alpha1 "github.com/kcp-dev/api-syncagent/sdk/apis/syncagent/v1alpha1" scheme "github.com/kcp-dev/api-syncagent/sdk/clientset/versioned/scheme" ) diff --git a/sdk/clientset/versioned/typed/syncagent/v1alpha1/syncagent_client.go b/sdk/clientset/versioned/typed/syncagent/v1alpha1/syncagent_client.go index c10a547..2d94a8f 100644 --- a/sdk/clientset/versioned/typed/syncagent/v1alpha1/syncagent_client.go +++ b/sdk/clientset/versioned/typed/syncagent/v1alpha1/syncagent_client.go @@ -1,5 +1,5 @@ /* -Copyright 2025 The KCP Authors. +Copyright The KCP Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. @@ -21,10 +21,9 @@ package v1alpha1 import ( "net/http" - v1alpha1 "github.com/kcp-dev/api-syncagent/sdk/apis/syncagent/v1alpha1" - rest "k8s.io/client-go/rest" + v1alpha1 "github.com/kcp-dev/api-syncagent/sdk/apis/syncagent/v1alpha1" "github.com/kcp-dev/api-syncagent/sdk/clientset/versioned/scheme" ) diff --git a/sdk/go.mod b/sdk/go.mod new file mode 100644 index 0000000..1459091 --- /dev/null +++ b/sdk/go.mod @@ -0,0 +1,59 @@ +module github.com/kcp-dev/api-syncagent/sdk + +go 1.23.0 + +require ( + github.com/kcp-dev/apimachinery/v2 v2.0.1-0.20250223115924-431177b024f3 + github.com/kcp-dev/client-go v0.0.0-20250223133118-3dea338dc267 + github.com/kcp-dev/logicalcluster/v3 v3.0.5 + k8s.io/apimachinery v0.31.6 + k8s.io/client-go v0.31.6 + sigs.k8s.io/structured-merge-diff/v4 v4.6.0 +) + +require ( + github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc // indirect + github.com/emicklei/go-restful/v3 v3.12.2 // indirect + github.com/evanphx/json-patch v5.9.11+incompatible // indirect + github.com/fxamacker/cbor/v2 v2.8.0 // indirect + github.com/go-logr/logr v1.4.2 // indirect + github.com/go-openapi/jsonpointer v0.21.1 // indirect + github.com/go-openapi/jsonreference v0.21.0 // indirect + github.com/go-openapi/swag v0.23.1 // indirect + github.com/gogo/protobuf v1.3.2 // indirect + github.com/golang/protobuf v1.5.4 // indirect + github.com/google/gnostic-models v0.6.9 // indirect + github.com/google/go-cmp v0.7.0 // indirect + github.com/google/gofuzz v1.2.1-0.20210504230335-f78f29fc09ea // indirect + github.com/google/uuid v1.6.0 // indirect + github.com/josharian/intern v1.0.0 // indirect + github.com/json-iterator/go v1.1.12 // indirect + github.com/mailru/easyjson v0.9.0 // indirect + github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd // indirect + github.com/modern-go/reflect2 v1.0.2 // indirect + github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822 // indirect + github.com/onsi/ginkgo/v2 v2.23.3 // indirect + github.com/onsi/gomega v1.36.3 // indirect + github.com/pkg/errors v0.9.1 // indirect + github.com/rogpeppe/go-internal v1.13.1 // indirect + github.com/spf13/pflag v1.0.6 // indirect + github.com/x448/float16 v0.8.4 // indirect + golang.org/x/net v0.38.0 // indirect + golang.org/x/oauth2 v0.28.0 // indirect + golang.org/x/sys v0.31.0 // indirect + golang.org/x/term v0.30.0 // indirect + golang.org/x/text v0.23.0 // indirect + golang.org/x/time v0.11.0 // indirect + golang.org/x/tools v0.31.0 // indirect + google.golang.org/protobuf v1.36.6 // indirect + gopkg.in/evanphx/json-patch.v4 v4.12.0 // indirect + gopkg.in/inf.v0 v0.9.1 // indirect + gopkg.in/yaml.v2 v2.4.0 // indirect + gopkg.in/yaml.v3 v3.0.1 // indirect + k8s.io/api v0.31.6 // indirect + k8s.io/klog/v2 v2.130.1 // indirect + k8s.io/kube-openapi v0.0.0-20240228011516-70dd3763d340 // indirect + k8s.io/utils v0.0.0-20240711033017-18e509b52bc8 // indirect + sigs.k8s.io/json v0.0.0-20241014173422-cfa47c3a1cc8 // indirect + sigs.k8s.io/yaml v1.4.0 // indirect +) diff --git a/sdk/go.sum b/sdk/go.sum new file mode 100644 index 0000000..20d3e2b --- /dev/null +++ b/sdk/go.sum @@ -0,0 +1,154 @@ +github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= +github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= +github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc h1:U9qPSI2PIWSS1VwoXQT9A3Wy9MM3WgvqSxFWenqJduM= +github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= +github.com/emicklei/go-restful/v3 v3.12.2 h1:DhwDP0vY3k8ZzE0RunuJy8GhNpPL6zqLkDf9B/a0/xU= +github.com/emicklei/go-restful/v3 v3.12.2/go.mod h1:6n3XBCmQQb25CM2LCACGz8ukIrRry+4bhvbpWn3mrbc= +github.com/evanphx/json-patch v5.9.11+incompatible h1:ixHHqfcGvxhWkniF1tWxBHA0yb4Z+d1UQi45df52xW8= +github.com/evanphx/json-patch v5.9.11+incompatible/go.mod h1:50XU6AFN0ol/bzJsmQLiYLvXMP4fmwYFNcr97nuDLSk= +github.com/fxamacker/cbor/v2 v2.8.0 h1:fFtUGXUzXPHTIUdne5+zzMPTfffl3RD5qYnkY40vtxU= +github.com/fxamacker/cbor/v2 v2.8.0/go.mod h1:vM4b+DJCtHn+zz7h3FFp/hDAI9WNWCsZj23V5ytsSxQ= +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-openapi/jsonpointer v0.21.1 h1:whnzv/pNXtK2FbX/W9yJfRmE2gsmkfahjMKB0fZvcic= +github.com/go-openapi/jsonpointer v0.21.1/go.mod h1:50I1STOfbY1ycR8jGz8DaMeLCdXiI6aDteEdRNNzpdk= +github.com/go-openapi/jsonreference v0.21.0 h1:Rs+Y7hSXT83Jacb7kFyjn4ijOuVGSvOdF2+tg1TRrwQ= +github.com/go-openapi/jsonreference v0.21.0/go.mod h1:LmZmgsrTkVg9LG4EaHeY8cBDslNPMo06cago5JNLkm4= +github.com/go-openapi/swag v0.23.1 h1:lpsStH0n2ittzTnbaSloVZLuB5+fvSY/+hnagBjSNZU= +github.com/go-openapi/swag v0.23.1/go.mod h1:STZs8TbRvEQQKUA+JZNAm3EWlgaOBGpyFDqQnDHMef0= +github.com/go-task/slim-sprig/v3 v3.0.0 h1:sUs3vkvUymDpBKi3qH1YSqBQk9+9D/8M2mN1vB6EwHI= +github.com/go-task/slim-sprig/v3 v3.0.0/go.mod h1:W848ghGpv3Qj3dhTPRyJypKRiqCdHZiAzKg9hl15HA8= +github.com/gogo/protobuf v1.3.2 h1:Ov1cvc58UF3b5XjBnZv7+opcTcQFZebYjWzi34vdm4Q= +github.com/gogo/protobuf v1.3.2/go.mod h1:P1XiOD3dCwIKUDQYPy72D8LYyHL2YPYrpS2s69NZV8Q= +github.com/golang/protobuf v1.5.4 h1:i7eJL8qZTpSEXOPTxNKhASYpMn+8e5Q6AdndVa1dWek= +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/go.mod h1:CiWsm0s6BSQd1hRn8/QmxqB6BesYcbSZxsz9b0KuDBw= +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/go.mod h1:pXiqmnSA92OHEEa9HXL2W4E7lf9JzCmGVUdgjX3N/iU= +github.com/google/gofuzz v1.0.0/go.mod h1:dBl0BpW6vV/+mYPU4Po3pmUjxk6FQPldtuIdl/M65Eg= +github.com/google/gofuzz v1.2.1-0.20210504230335-f78f29fc09ea h1:VcIYpAGBae3Z6BVncE0OnTE/ZjlDXqtYhOZky88neLM= +github.com/google/gofuzz v1.2.1-0.20210504230335-f78f29fc09ea/go.mod h1:dBl0BpW6vV/+mYPU4Po3pmUjxk6FQPldtuIdl/M65Eg= +github.com/google/pprof v0.0.0-20241210010833-40e02aabc2ad h1:a6HEuzUHeKH6hwfN/ZoQgRgVIWFJljSWa/zetS2WTvg= +github.com/google/pprof v0.0.0-20241210010833-40e02aabc2ad/go.mod h1:vavhavw2zAxS5dIdcRluK6cSGGPlZynqzFM8NdvU144= +github.com/google/uuid v1.6.0 h1:NIvaJDMOsjHA8n1jAhLSgzrAzy1Hgr+hNrb57e+94F0= +github.com/google/uuid v1.6.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= +github.com/josharian/intern v1.0.0 h1:vlS4z54oSdjm0bgjRigI+G1HpF+tI+9rE5LLzOg8HmY= +github.com/josharian/intern v1.0.0/go.mod h1:5DoeVV0s6jJacbCEi61lwdGj/aVlrQvzHFFd8Hwg//Y= +github.com/json-iterator/go v1.1.12 h1:PV8peI4a0ysnczrg+LtxykD8LfKY9ML6u2jnxaEnrnM= +github.com/json-iterator/go v1.1.12/go.mod h1:e30LSqwooZae/UwlEbR2852Gd8hjQvJoHmT4TnhNGBo= +github.com/kcp-dev/apimachinery/v2 v2.0.1-0.20250223115924-431177b024f3 h1:YwNX7ZIpQXg9u5vav/fobmf4nnO0WhbELWaL3X74Oe4= +github.com/kcp-dev/apimachinery/v2 v2.0.1-0.20250223115924-431177b024f3/go.mod h1:n0+EV+LGKl1MXXqGbGcn0AaBv7hdKsdazSYuq8nM8Us= +github.com/kcp-dev/client-go v0.0.0-20250223133118-3dea338dc267 h1:Ec2/Mh7mVvboBFol0S8u30arfA7oyk/VtHL9Xojjvfs= +github.com/kcp-dev/client-go v0.0.0-20250223133118-3dea338dc267/go.mod h1:1lEs8b8BYzGrMr7Q8Fs7cNVaDAWogu5lLkz5t6HtRLI= +github.com/kcp-dev/logicalcluster/v3 v3.0.5 h1:JbYakokb+5Uinz09oTXomSUJVQsqfxEvU4RyHUYxHOU= +github.com/kcp-dev/logicalcluster/v3 v3.0.5/go.mod h1:EWBUBxdr49fUB1cLMO4nOdBWmYifLbP1LfoL20KkXYY= +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/kr/pretty v0.3.1 h1:flRD4NNwYAUpkphVc1HcthR4KEIFJ65n8Mw5qdRn3LE= +github.com/kr/pretty v0.3.1/go.mod h1:hoEshYVHaxMs3cyo3Yncou5ZscifuDolrwPKZanG3xk= +github.com/kr/text v0.2.0 h1:5Nx0Ya0ZqY2ygV366QzturHI13Jq95ApcVaJBhpS+AY= +github.com/kr/text v0.2.0/go.mod h1:eLer722TekiGuMkidMxC/pM04lWEeraHUUmBw8l2grE= +github.com/mailru/easyjson v0.9.0 h1:PrnmzHw7262yW8sTBwxi1PdJA3Iw/EKBa8psRf7d9a4= +github.com/mailru/easyjson v0.9.0/go.mod h1:1+xMtQp2MRNVL/V1bOzuP3aP8VNwRW55fQUto+XFtTU= +github.com/modern-go/concurrent v0.0.0-20180228061459-e0a39a4cb421/go.mod h1:6dJC0mAP4ikYIbvyc7fijjWJddQyLn8Ig3JB5CqoB9Q= +github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd h1:TRLaZ9cD/w8PVh93nsPXa1VrQ6jlwL5oN8l14QlcNfg= +github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd/go.mod h1:6dJC0mAP4ikYIbvyc7fijjWJddQyLn8Ig3JB5CqoB9Q= +github.com/modern-go/reflect2 v1.0.2 h1:xBagoLtFs94CBntxluKeaWgTMpvLxC4ur3nMaC9Gz0M= +github.com/modern-go/reflect2 v1.0.2/go.mod h1:yWuevngMOJpCy52FWWMvUC8ws7m/LJsjYzDa0/r8luk= +github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822 h1:C3w9PqII01/Oq1c1nUAm88MOHcQC9l5mIlSMApZMrHA= +github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822/go.mod h1:+n7T8mK8HuQTcFwEeznm/DIxMOiR9yIdICNftLE1DvQ= +github.com/onsi/ginkgo/v2 v2.23.3 h1:edHxnszytJ4lD9D5Jjc4tiDkPBZ3siDeJJkUZJJVkp0= +github.com/onsi/ginkgo/v2 v2.23.3/go.mod h1:zXTP6xIp3U8aVuXN8ENK9IXRaTjFnpVB9mGmaSRvxnM= +github.com/onsi/gomega v1.36.3 h1:hID7cr8t3Wp26+cYnfcjR6HpJ00fdogN6dqZ1t6IylU= +github.com/onsi/gomega v1.36.3/go.mod h1:8D9+Txp43QWKhM24yyOBEdpkzN8FvJyAwecBgsU4KU0= +github.com/pkg/errors v0.9.1 h1:FEBLx1zS214owpjy7qsBeixbURkuhQAwrK5UwLGTwt4= +github.com/pkg/errors v0.9.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0= +github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= +github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2 h1:Jamvg5psRIccs7FGNTlIRMkT8wgtp5eCXdBlqhYGL6U= +github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= +github.com/rogpeppe/go-internal v1.13.1 h1:KvO1DLK/DRN07sQ1LQKScxyZJuNnedQ5/wKSR38lUII= +github.com/rogpeppe/go-internal v1.13.1/go.mod h1:uMEvuHeurkdAXX61udpOXGD/AzZDWNMNyH2VO9fmH0o= +github.com/spf13/pflag v1.0.6 h1:jFzHGLGAlb3ruxLB8MhbI6A8+AQX/2eW4qeyNZXNp2o= +github.com/spf13/pflag v1.0.6/go.mod h1:McXfInJRrz4CZXVZOBLb0bTZqETkiAhM9Iw0y3An2Bg= +github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME= +github.com/stretchr/testify v1.3.0/go.mod h1:M5WIy9Dh21IEIfnGCwXGc5bZfKNJtfHm1UVUgZn+9EI= +github.com/stretchr/testify v1.10.0 h1:Xv5erBjTwe/5IxqUQTdXv5kgmIvbHo3QQyRwhJsOfJA= +github.com/stretchr/testify v1.10.0/go.mod h1:r2ic/lqez/lEtzL7wO/rwa5dbSLXVDPFyf8C91i36aY= +github.com/x448/float16 v0.8.4 h1:qLwI1I70+NjRFUR3zs1JPUCgaCXSh3SW62uAKT1mSBM= +github.com/x448/float16 v0.8.4/go.mod h1:14CWIYCyZA/cWjXOioeEpHeN/83MdbZDRQHoFcYsOfg= +github.com/yuin/goldmark v1.1.27/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74= +github.com/yuin/goldmark v1.2.1/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74= +golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w= +golang.org/x/crypto v0.0.0-20191011191535-87dc89f01550/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= +golang.org/x/crypto v0.0.0-20200622213623-75b288015ac9/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= +golang.org/x/mod v0.2.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= +golang.org/x/mod v0.3.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= +golang.org/x/net v0.0.0-20190404232315-eb5bcb51f2a3/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg= +golang.org/x/net v0.0.0-20190620200207-3b0461eec859/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= +golang.org/x/net v0.0.0-20200226121028-0de0cce0169b/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= +golang.org/x/net v0.0.0-20201021035429-f5854403a974/go.mod h1:sp8m0HH+o8qH0wwXwYZr8TS3Oi6o0r6Gce1SSxlDquU= +golang.org/x/net v0.38.0 h1:vRMAPTMaeGqVhG5QyLJHqNDwecKTomGeqbnfZyKlBI8= +golang.org/x/net v0.38.0/go.mod h1:ivrbrMbzFq5J41QOQh0siUuly180yBYtLp+CKbEaFx8= +golang.org/x/oauth2 v0.28.0 h1:CrgCKl8PPAVtLnU3c+EDw6x11699EWlsDeWNWKdIOkc= +golang.org/x/oauth2 v0.28.0/go.mod h1:onh5ek6nERTohokkhCD/y2cV4Do3fxFHFuAejCkRWT8= +golang.org/x/sync v0.0.0-20190423024810-112230192c58/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= +golang.org/x/sync v0.0.0-20190911185100-cd5d95a43a6e/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= +golang.org/x/sync v0.0.0-20201020160332-67f06af15bc9/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= +golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= +golang.org/x/sys v0.0.0-20190412213103-97732733099d/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20200930185726-fdedc70b468f/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.31.0 h1:ioabZlmFYtWhL+TRYpcnNlLwhyxaM9kWTDEmfnprqik= +golang.org/x/sys v0.31.0/go.mod h1:BJP2sWEmIv4KK5OTEluFJCKSidICx8ciO85XgH3Ak8k= +golang.org/x/term v0.30.0 h1:PQ39fJZ+mfadBm0y5WlL4vlM7Sx1Hgf13sMIY2+QS9Y= +golang.org/x/term v0.30.0/go.mod h1:NYYFdzHoI5wRh/h5tDMdMqCqPJZEuNqVR5xJLd/n67g= +golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= +golang.org/x/text v0.3.3/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= +golang.org/x/text v0.23.0 h1:D71I7dUrlY+VX0gQShAThNGHFxZ13dGLBHQLVl1mJlY= +golang.org/x/text v0.23.0/go.mod h1:/BLNzu4aZCJ1+kcD0DNRotWKage4q2rGVAg4o22unh4= +golang.org/x/time v0.11.0 h1:/bpjEDfN9tkoN/ryeYHnv5hcMlc8ncjMcM4XBk5NWV0= +golang.org/x/time v0.11.0/go.mod h1:CDIdPxbZBQxdj6cxyCIdrNogrJKMJ7pr37NYpMcMDSg= +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-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.31.0 h1:0EedkvKDbh+qistFTd0Bcwe/YLh4vHwWEkiI0toFIBU= +golang.org/x/tools v0.31.0/go.mod h1:naFTU+Cev749tSJRXJlna0T3WxKvb1kWEx15xA4SdmQ= +golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= +golang.org/x/xerrors v0.0.0-20191011141410-1b5146add898/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= +golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= +golang.org/x/xerrors v0.0.0-20200804184101-5ec99f83aff1/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= +google.golang.org/protobuf v1.36.6 h1:z1NpPI8ku2WgiWnf+t9wTPsn6eP1L7ksHUlkfLvd9xY= +google.golang.org/protobuf v1.36.6/go.mod h1:jduwjTPXsFjZGTmRluh+L6NjiWu7pchiJ2/5YcXBHnY= +gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/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/go.mod h1:JHkPIbrfpd72SG/EVd6muEfDQjcINNoR0C8j2r3qZ4Q= +gopkg.in/evanphx/json-patch.v4 v4.12.0 h1:n6jtcsulIzXPJaxegRbvFNNrZDjbij7ny3gmSPG+6V4= +gopkg.in/evanphx/json-patch.v4 v4.12.0/go.mod h1:p8EYWUEYMpynmqDbY58zCKCFZw8pRWMG4EsWvDvM72M= +gopkg.in/inf.v0 v0.9.1 h1:73M5CoZyi3ZLMOyDlQh031Cx6N9NDJ2Vvfl76EDAgDc= +gopkg.in/inf.v0 v0.9.1/go.mod h1:cWUDdTG/fYaXco+Dcufb5Vnc6Gp2YChqWtbxRZE0mXw= +gopkg.in/yaml.v2 v2.4.0 h1:D8xgwECY7CYvx+Y2n4sBz93Jn9JRvxdiyyo8CTfuKaY= +gopkg.in/yaml.v2 v2.4.0/go.mod h1:RDklbk79AGWmwhnvt/jBztapEOGDOx6ZbXqjP6csGnQ= +gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA= +gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= +k8s.io/api v0.31.6 h1:ocWG/UhC9Mqp5oEfYWy9wCddbZiZyBAFTlBt0LVlhDg= +k8s.io/api v0.31.6/go.mod h1:i16xSiKMgVIVhsJMxfWq0mJbXA+Z7KhjPgYmwT41hl4= +k8s.io/apimachinery v0.31.6 h1:Pn96A0wHD0X8+l7QTdAzdLQPrpav1s8rU6A+v2/9UEY= +k8s.io/apimachinery v0.31.6/go.mod h1:rsPdaZJfTfLsNJSQzNHQvYoTmxhoOEofxtOsF3rtsMo= +k8s.io/client-go v0.31.6 h1:51HT40qVIZ13BrHKeWxFuU52uoPnFhxTYJnv4+LTgp4= +k8s.io/client-go v0.31.6/go.mod h1:MEq7JQJelUQ0/4fMoPEUrc/OOFyGo/9LmGA38H6O6xY= +k8s.io/klog/v2 v2.130.1 h1:n9Xl7H1Xvksem4KFG4PYbdQCQxqc/tTUyrgXaOhHSzk= +k8s.io/klog/v2 v2.130.1/go.mod h1:3Jpz1GvMt720eyJH1ckRHK1EDfpxISzJ7I9OYgaDtPE= +k8s.io/kube-openapi v0.0.0-20240228011516-70dd3763d340 h1:BZqlfIlq5YbRMFko6/PM7FjZpUb45WallggurYhKGag= +k8s.io/kube-openapi v0.0.0-20240228011516-70dd3763d340/go.mod h1:yD4MZYeKMBwQKVht279WycxKyM84kkAx2DPrTXaeb98= +k8s.io/utils v0.0.0-20240711033017-18e509b52bc8 h1:pUdcCO1Lk/tbT5ztQWOBi5HBgbBP1J8+AsQnQCKsi8A= +k8s.io/utils v0.0.0-20240711033017-18e509b52bc8/go.mod h1:OLgZIPagt7ERELqWJFomSt595RzquPNLL48iOWgYOg0= +sigs.k8s.io/json v0.0.0-20241014173422-cfa47c3a1cc8 h1:gBQPwqORJ8d8/YNZWEjoZs7npUVDpVXUUOFfW6CgAqE= +sigs.k8s.io/json v0.0.0-20241014173422-cfa47c3a1cc8/go.mod h1:mdzfpAEoE6DHQEN0uh9ZbOCuHbLK5wOm7dK4ctXE9Tg= +sigs.k8s.io/randfill v0.0.0-20250304075658-069ef1bbf016 h1:kXv6kKdoEtedwuqMmkqhbkgvYKeycVbC8+iPCP9j5kQ= +sigs.k8s.io/randfill v0.0.0-20250304075658-069ef1bbf016/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/go.mod h1:dDy58f92j70zLsuZVuUX5Wp9vtxXpaZnkPGWeqDfCps= +sigs.k8s.io/yaml v1.4.0 h1:Mk1wCc2gy/F0THH0TAp1QYyJNzRm2KCLy3o5ASXVI5E= +sigs.k8s.io/yaml v1.4.0/go.mod h1:Ejl7/uTz7PSA4eKMyQCUTnhZYNmLIl+5c2lQPGR2BPY= diff --git a/sdk/informers/externalversions/factory.go b/sdk/informers/externalversions/factory.go index cd00e9f..b382489 100644 --- a/sdk/informers/externalversions/factory.go +++ b/sdk/informers/externalversions/factory.go @@ -26,8 +26,6 @@ import ( "sync" "time" - scopedclientset "github.com/kcp-dev/api-syncagent/sdk/clientset/versioned" - clientset "github.com/kcp-dev/api-syncagent/sdk/clientset/versioned/cluster" kcpcache "github.com/kcp-dev/apimachinery/v2/pkg/cache" "github.com/kcp-dev/logicalcluster/v3" @@ -36,6 +34,8 @@ import ( "k8s.io/apimachinery/pkg/runtime/schema" "k8s.io/client-go/tools/cache" + scopedclientset "github.com/kcp-dev/api-syncagent/sdk/clientset/versioned" + clientset "github.com/kcp-dev/api-syncagent/sdk/clientset/versioned/cluster" "github.com/kcp-dev/api-syncagent/sdk/informers/externalversions/internalinterfaces" syncagentinformers "github.com/kcp-dev/api-syncagent/sdk/informers/externalversions/syncagent" ) diff --git a/sdk/informers/externalversions/generic.go b/sdk/informers/externalversions/generic.go index 66ea0ba..4f593b5 100644 --- a/sdk/informers/externalversions/generic.go +++ b/sdk/informers/externalversions/generic.go @@ -24,12 +24,13 @@ package informers import ( "fmt" - syncagentv1alpha1 "github.com/kcp-dev/api-syncagent/sdk/apis/syncagent/v1alpha1" kcpcache "github.com/kcp-dev/apimachinery/v2/pkg/cache" "github.com/kcp-dev/logicalcluster/v3" "k8s.io/apimachinery/pkg/runtime/schema" "k8s.io/client-go/tools/cache" + + syncagentv1alpha1 "github.com/kcp-dev/api-syncagent/sdk/apis/syncagent/v1alpha1" ) type GenericClusterInformer interface { diff --git a/sdk/informers/externalversions/internalinterfaces/factory_interfaces.go b/sdk/informers/externalversions/internalinterfaces/factory_interfaces.go index dd78eaf..1ea993e 100644 --- a/sdk/informers/externalversions/internalinterfaces/factory_interfaces.go +++ b/sdk/informers/externalversions/internalinterfaces/factory_interfaces.go @@ -24,13 +24,14 @@ package internalinterfaces import ( time "time" - scopedclientset "github.com/kcp-dev/api-syncagent/sdk/clientset/versioned" - clientset "github.com/kcp-dev/api-syncagent/sdk/clientset/versioned/cluster" kcpcache "github.com/kcp-dev/apimachinery/v2/pkg/cache" metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" runtime "k8s.io/apimachinery/pkg/runtime" "k8s.io/client-go/tools/cache" + + scopedclientset "github.com/kcp-dev/api-syncagent/sdk/clientset/versioned" + clientset "github.com/kcp-dev/api-syncagent/sdk/clientset/versioned/cluster" ) // NewInformerFunc takes clientset.ClusterInterface and time.Duration to return a ScopeableSharedIndexInformer. diff --git a/sdk/informers/externalversions/syncagent/v1alpha1/publishedresource.go b/sdk/informers/externalversions/syncagent/v1alpha1/publishedresource.go index c855ac6..e4d22a5 100644 --- a/sdk/informers/externalversions/syncagent/v1alpha1/publishedresource.go +++ b/sdk/informers/externalversions/syncagent/v1alpha1/publishedresource.go @@ -25,10 +25,6 @@ import ( "context" "time" - syncagentv1alpha1 "github.com/kcp-dev/api-syncagent/sdk/apis/syncagent/v1alpha1" - scopedclientset "github.com/kcp-dev/api-syncagent/sdk/clientset/versioned" - clientset "github.com/kcp-dev/api-syncagent/sdk/clientset/versioned/cluster" - syncagentv1alpha1listers "github.com/kcp-dev/api-syncagent/sdk/listers/syncagent/v1alpha1" kcpcache "github.com/kcp-dev/apimachinery/v2/pkg/cache" kcpinformers "github.com/kcp-dev/apimachinery/v2/third_party/informers" "github.com/kcp-dev/logicalcluster/v3" @@ -38,7 +34,11 @@ import ( "k8s.io/apimachinery/pkg/watch" "k8s.io/client-go/tools/cache" + syncagentv1alpha1 "github.com/kcp-dev/api-syncagent/sdk/apis/syncagent/v1alpha1" + scopedclientset "github.com/kcp-dev/api-syncagent/sdk/clientset/versioned" + clientset "github.com/kcp-dev/api-syncagent/sdk/clientset/versioned/cluster" "github.com/kcp-dev/api-syncagent/sdk/informers/externalversions/internalinterfaces" + syncagentv1alpha1listers "github.com/kcp-dev/api-syncagent/sdk/listers/syncagent/v1alpha1" ) // PublishedResourceClusterInformer provides access to a shared informer and lister for diff --git a/sdk/listers/syncagent/v1alpha1/publishedresource.go b/sdk/listers/syncagent/v1alpha1/publishedresource.go index 81856ae..ed81a69 100644 --- a/sdk/listers/syncagent/v1alpha1/publishedresource.go +++ b/sdk/listers/syncagent/v1alpha1/publishedresource.go @@ -22,13 +22,14 @@ limitations under the License. package v1alpha1 import ( - syncagentv1alpha1 "github.com/kcp-dev/api-syncagent/sdk/apis/syncagent/v1alpha1" kcpcache "github.com/kcp-dev/apimachinery/v2/pkg/cache" "github.com/kcp-dev/logicalcluster/v3" "k8s.io/apimachinery/pkg/api/errors" "k8s.io/apimachinery/pkg/labels" "k8s.io/client-go/tools/cache" + + syncagentv1alpha1 "github.com/kcp-dev/api-syncagent/sdk/apis/syncagent/v1alpha1" ) // PublishedResourceClusterLister can list PublishedResources across all workspaces, or scope down to a PublishedResourceLister for one workspace.