Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 4 additions & 0 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -118,6 +118,10 @@ $(ENVTEST):
test:
./hack/run-tests.sh

.PHONY: test-e2e
test-e2e: $(ENVTEST) $(KCP)
./hack/run-e2e-tests.sh

.PHONY: codegen
codegen: $(YQ)
hack/update-codegen-crds.sh
Expand Down
2 changes: 1 addition & 1 deletion deploy/crd/kcp.io/syncagent.kcp.io_publishedresources.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
annotations:
controller-gen.kubebuilder.io/version: v0.16.5
controller-gen.kubebuilder.io/version: v0.18.0
name: publishedresources.syncagent.kcp.io
spec:
group: syncagent.kcp.io
Expand Down
13 changes: 12 additions & 1 deletion docs/content/getting-started.md
Original file line number Diff line number Diff line change
Expand Up @@ -180,7 +180,8 @@ The Sync Agent needs to
* access the workspace of its `APIExport`,
* get the `LogicalCluster`,
* manage its `APIExport`,
* manage `APIResourceSchemas` and
* manage `APIResourceSchemas`,
* create `events` for `APIExports` and
* access the virtual workspace for its `APIExport`.

This can be achieved by applying RBAC like this _in the workspace where the `APIExport` resides_:
Expand Down Expand Up @@ -213,6 +214,16 @@ rules:
- watch
- patch
- update
# issue events for APIExports
- apiGroups:
- ""
resources:
- events
verbs:
- get
- create
- patch
- update
# manage APIResourceSchemas
- apiGroups:
- apis.kcp.io
Expand Down
74 changes: 37 additions & 37 deletions go.mod
Original file line number Diff line number Diff line change
Expand Up @@ -5,10 +5,8 @@ go 1.24.0
replace github.com/kcp-dev/api-syncagent/sdk => ./sdk

replace (
k8s.io/api => github.com/kcp-dev/kubernetes/staging/src/k8s.io/api v0.0.0-20250425143807-ddbe171670d8
k8s.io/apiextensions-apiserver => github.com/kcp-dev/kubernetes/staging/src/k8s.io/apiextensions-apiserver v0.0.0-20250425143807-ddbe171670d8
k8s.io/apiserver => github.com/kcp-dev/kubernetes/staging/src/k8s.io/apiserver v0.0.0-20250425143807-ddbe171670d8
k8s.io/kms => github.com/kcp-dev/kubernetes/staging/src/k8s.io/kms v0.0.0-20250425143807-ddbe171670d8
k8s.io/apiextensions-apiserver => github.com/kcp-dev/kubernetes/staging/src/k8s.io/apiextensions-apiserver v0.0.0-20250821202322-e42d885de52b
k8s.io/apiserver => github.com/kcp-dev/kubernetes/staging/src/k8s.io/apiserver v0.0.0-20250821202322-e42d885de52b
)

require (
Expand All @@ -19,10 +17,10 @@ require (
github.com/google/go-cmp v0.7.0
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.28.0
github.com/kcp-dev/kcp/sdk v0.28.0
github.com/kcp-dev/kcp v0.28.1
github.com/kcp-dev/kcp/sdk v0.28.1
github.com/kcp-dev/logicalcluster/v3 v3.0.5
github.com/kcp-dev/multicluster-provider v0.1.0
github.com/kcp-dev/multicluster-provider v0.2.1-0.20250901093233-9ef571c8bd47
github.com/openshift-eng/openshift-goimports v0.0.0-20230304234052-c70783e636f2
github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2
github.com/spf13/cobra v1.9.1
Expand All @@ -31,18 +29,22 @@ require (
github.com/tidwall/sjson v1.2.5
go.uber.org/zap v1.27.0
k8c.io/reconciler v0.5.0
k8s.io/api v0.32.3
k8s.io/apiextensions-apiserver v0.32.3
k8s.io/apimachinery v0.32.3
k8s.io/apiserver v0.32.3
k8s.io/client-go v0.32.3
k8s.io/code-generator v0.32.3
k8s.io/component-base v0.32.3
k8s.io/kube-openapi v0.0.0-20241212222426-2c72e554b1e7
k8s.io/utils v0.0.0-20241210054802-24370beab758
sigs.k8s.io/controller-runtime v0.20.4
sigs.k8s.io/controller-tools v0.16.5
sigs.k8s.io/multicluster-runtime v0.20.4-alpha.7
// Deviating from kcp's kube version (0.32) because more recent multicluster-runtime
// versions are built ontop of controller-runtime 0.21 with Kube 0.33. Ideally in
// the future we should go back to having kcp, controller-runtime and multicluster-runtime
// be in-sync again.
k8s.io/api v0.33.3
k8s.io/apiextensions-apiserver v0.33.3
k8s.io/apimachinery v0.33.3
k8s.io/apiserver v0.33.3
k8s.io/client-go v0.33.3
k8s.io/code-generator v0.33.3
k8s.io/component-base v0.33.3
k8s.io/kube-openapi v0.0.0-20250318190949-c8a335a9a2ff
k8s.io/utils v0.0.0-20250604170112-4c0f3b243397
sigs.k8s.io/controller-runtime v0.21.0
sigs.k8s.io/controller-tools v0.18.0
sigs.k8s.io/multicluster-runtime v0.21.0-alpha.9
sigs.k8s.io/yaml v1.4.0
)

Expand All @@ -53,7 +55,6 @@ require (
github.com/Masterminds/semver/v3 v3.3.1 // indirect
github.com/NYTimes/gziphandler v1.1.1 // indirect
github.com/antlr4-go/antlr/v4 v4.13.1 // indirect
github.com/asaskevich/govalidator v0.0.0-20230301143203-a9d515a09cc2 // indirect
github.com/beorn7/perks v1.0.1 // indirect
github.com/blang/semver/v4 v4.0.0 // indirect
github.com/cenkalti/backoff/v4 v4.3.0 // indirect
Expand All @@ -76,9 +77,8 @@ require (
github.com/gogo/protobuf v1.3.2 // indirect
github.com/golang/protobuf v1.5.4 // indirect
github.com/google/btree v1.1.3 // indirect
github.com/google/cel-go v0.22.1 // indirect
github.com/google/cel-go v0.23.2 // indirect
github.com/google/gnostic-models v0.6.9 // indirect
github.com/google/gofuzz v1.2.1-0.20210504230335-f78f29fc09ea // indirect
github.com/google/uuid v1.6.0 // indirect
github.com/grpc-ecosystem/go-grpc-prometheus v1.2.0 // indirect
github.com/grpc-ecosystem/grpc-gateway/v2 v2.26.3 // indirect
Expand All @@ -87,9 +87,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.20250512171935-ebb573a40077 // indirect
github.com/kcp-dev/client-go v0.0.0-20250707095244-decc4df45adb // indirect
github.com/klauspost/compress v1.17.11 // indirect
github.com/kcp-dev/apimachinery/v2 v2.0.1-0.20250728122101-adbf20db3e51 // indirect
github.com/kcp-dev/client-go v0.0.0-20250728134101-0355faa9361b // indirect
github.com/kylelemons/godebug v1.1.0 // indirect
github.com/mailru/easyjson v0.9.0 // indirect
github.com/mattn/go-colorable v0.1.14 // indirect
Expand All @@ -100,11 +99,11 @@ require (
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/gomega v1.36.3 // indirect
github.com/onsi/gomega v1.37.0 // indirect
github.com/opencontainers/go-digest v1.0.0 // indirect
github.com/pelletier/go-toml/v2 v2.2.3 // indirect
github.com/pkg/errors v0.9.1 // indirect
github.com/prometheus/client_golang v1.21.1 // indirect
github.com/prometheus/client_golang v1.22.0 // indirect
github.com/prometheus/client_model v0.6.1 // indirect
github.com/prometheus/common v0.63.0 // indirect
github.com/prometheus/procfs v0.16.0 // indirect
Expand Down Expand Up @@ -133,17 +132,17 @@ require (
go.opentelemetry.io/otel/trace v1.35.0 // indirect
go.opentelemetry.io/proto/otlp v1.5.0 // indirect
go.uber.org/multierr v1.11.0 // indirect
golang.org/x/crypto v0.37.0 // indirect
golang.org/x/crypto v0.38.0 // indirect
golang.org/x/exp v0.0.0-20250408133849-7e4ce0ab07d0 // indirect
golang.org/x/mod v0.24.0 // indirect
golang.org/x/net v0.39.0 // indirect
golang.org/x/net v0.40.0 // indirect
golang.org/x/oauth2 v0.29.0 // indirect
golang.org/x/sync v0.13.0 // indirect
golang.org/x/sys v0.32.0 // indirect
golang.org/x/term v0.31.0 // indirect
golang.org/x/text v0.24.0 // indirect
golang.org/x/sync v0.14.0 // indirect
golang.org/x/sys v0.33.0 // indirect
golang.org/x/term v0.32.0 // indirect
golang.org/x/text v0.25.0 // indirect
golang.org/x/time v0.11.0 // indirect
golang.org/x/tools v0.32.0 // indirect
golang.org/x/tools v0.33.0 // indirect
gomodules.xyz/jsonpatch/v2 v2.5.0 // indirect
google.golang.org/genproto/googleapis/api v0.0.0-20250324211829-b45e905df463 // indirect
google.golang.org/genproto/googleapis/rpc v0.0.0-20250324211829-b45e905df463 // indirect
Expand All @@ -155,10 +154,11 @@ require (
gopkg.in/yaml.v3 v3.0.1 // indirect
k8s.io/component-helpers v0.32.3 // indirect
k8s.io/controller-manager v0.32.3 // indirect
k8s.io/gengo/v2 v2.0.0-20240911193312-2b36238f13e9 // indirect
k8s.io/gengo/v2 v2.0.0-20250513215321-e3bc6f1e78b4 // indirect
k8s.io/klog/v2 v2.130.1 // indirect
k8s.io/kubernetes v1.32.3 // indirect
sigs.k8s.io/apiserver-network-proxy/konnectivity-client v0.31.1 // indirect
k8s.io/kubernetes v1.33.3 // indirect
sigs.k8s.io/apiserver-network-proxy/konnectivity-client v0.31.2 // indirect
sigs.k8s.io/json v0.0.0-20241014173422-cfa47c3a1cc8 // indirect
sigs.k8s.io/randfill v1.0.0 // indirect
sigs.k8s.io/structured-merge-diff/v4 v4.6.0 // indirect
)
Loading