Kcp Dev Kcp Versions Save

Kubernetes-like control planes for form-factors and use-cases beyond Kubernetes and container workloads.

v0.24.0

3 weeks ago

User Facing Changes

  • Add experimental workspace mount reconciler (#3058, @mjudeikis)
  • Kcp ws use support for relative and absolute multi-step navigation (#3088, @mjudeikis)
  • ✨ Add Webhook URL based CRD conversions (#3090, @palnabarun)
  • Add support for /openapi/v3 endpoints for workspaces with awareness of static resources, CRDs and APIBindings. (#3118, @sttts)
  • Fix workspaces hot reload for index controller (#3095, @mjudeikis)
  • Implement SelfSubjectRulesReview API, enabling usage of e.g. kubectl auth can-i --list (#3097, @embik)
  • Re-enable Kubernetes Webhook Token Authentication (#3096, @ajwdev)
  • Update etcd version to 3.5.13 (#3114, @embik)

Dependencies

  • github.com/golang/protobuf: v1.5.3 → v1.5.4
  • github.com/kcp-dev/logicalcluster/v3: v3.0.4 → v3.0.5
  • github.com/sirupsen/logrus: v1.9.0 → v1.9.3
  • go.etcd.io/bbolt: v1.3.7 → v1.3.9
  • go.etcd.io/etcd/api/v3: v3.5.9 → v3.5.13
  • go.etcd.io/etcd/client/pkg/v3: v3.5.9 → v3.5.13
  • go.etcd.io/etcd/client/v2: v2.305.9 → v2.305.13
  • go.etcd.io/etcd/client/v3: v3.5.9 → v3.5.13
  • go.etcd.io/etcd/pkg/v3: v3.5.9 → v3.5.13
  • go.etcd.io/etcd/raft/v3: v3.5.9 → v3.5.13
  • go.etcd.io/etcd/server/v3: v3.5.9 → v3.5.13
  • golang.org/x/sync: v0.4.0 → v0.5.0
  • google.golang.org/protobuf: v1.31.0 → v1.33.0

PRs

New Contributors

Full Changelog: https://github.com/kcp-dev/kcp/compare/v0.23.0...v0.24.0

v0.23.0

2 months ago

Changes by Kind

API Change

  • Add optional nameValidation field to ApiResourceSchemaSpec. This field is used to add an internal annotation to the bound API and the name validation strategy is decided based on the value. (#3082, @praveenrewar)

Uncategorized

  • The kubectl plugins have been moved into their own github.com/kcp-dev/kcp/cli module for easier vendoring. (#3084, @sttts)
  • Use correct verb in metrics-viewer ClusterRole to give access to /metrics (#3081, @embik)

Dependencies

Added

Nothing has changed.

Changed

Nothing has changed.

Removed

Nothing has changed.

v0.22.0

3 months ago

Changes by Kind

API Change

  • Add experimental mounts API (#3057, @mjudeikis)
  • Make LogicalCluster claimable resource for deeper level integration ontop of KCP (#3035, @mjudeikis)

Feature

  • Add a metrics-viewer user subject to the ClusterRoleBinding created by the metrics-viewer battery, for which credentials can be generated outside of kcp (#3064, @embik)
  • Add cache-server binary into image (#3067, @mjudeikis)
  • Add new admin battery which is enabled by default (#3041, @embik)
  • Simplify index package for frontproxy (#3056, @mjudeikis)

Bug or Regression

  • Fix system:admin context and add system:base in generated admin.kubeconfig (#3070, @embik)
  • Fix metrics battery bug (#3060, @mjudeikis)

Other (Cleanup or Flake)

  • Add FOSSA license scanner (#3054, @fossabot)
  • Reduce log verbosity for processing/queueing messages in controllers (#3073, @xrstf)

Dependencies

Added

  • cloud.google.com/go/dataproc/v2: v2.0.1

Changed

  • cloud.google.com/go/aiplatform: v1.45.0 → v1.48.0
  • cloud.google.com/go/analytics: v0.21.2 → v0.21.3
  • cloud.google.com/go/baremetalsolution: v0.5.0 → v1.1.1
  • cloud.google.com/go/batch: v0.7.0 → v1.3.1
  • cloud.google.com/go/beyondcorp: v0.6.1 → v1.0.0
  • cloud.google.com/go/bigquery: v1.52.0 → v1.53.0
  • cloud.google.com/go/cloudbuild: v1.10.1 → v1.13.0
  • cloud.google.com/go/cloudtasks: v1.11.1 → v1.12.1
  • cloud.google.com/go/compute: v1.21.0 → v1.23.0
  • cloud.google.com/go/contactcenterinsights: v1.9.1 → v1.10.0
  • cloud.google.com/go/container: v1.22.1 → v1.24.0
  • cloud.google.com/go/datacatalog: v1.14.1 → v1.16.0
  • cloud.google.com/go/dataplex: v1.8.1 → v1.9.0
  • cloud.google.com/go/datastore: v1.12.1 → v1.13.0
  • cloud.google.com/go/datastream: v1.9.1 → v1.10.0
  • cloud.google.com/go/deploy: v1.11.0 → v1.13.0
  • cloud.google.com/go/dialogflow: v1.38.0 → v1.40.0
  • cloud.google.com/go/documentai: v1.20.0 → v1.22.0
  • cloud.google.com/go/eventarc: v1.12.1 → v1.13.0
  • cloud.google.com/go/firestore: v1.11.0 → v1.12.0
  • cloud.google.com/go/gkebackup: v0.4.0 → v1.3.0
  • cloud.google.com/go/gkemulticloud: v0.6.1 → v1.0.0
  • cloud.google.com/go/kms: v1.12.1 → v1.15.0
  • cloud.google.com/go/maps: v0.7.0 → v1.4.0
  • cloud.google.com/go/metastore: v1.11.1 → v1.12.0
  • cloud.google.com/go/policytroubleshooter: v1.7.1 → v1.8.0
  • cloud.google.com/go/pubsub: v1.32.0 → v1.33.0
  • cloud.google.com/go/run: v0.9.0 → v1.2.0
  • cloud.google.com/go/servicedirectory: v1.10.1 → v1.11.0
  • cloud.google.com/go/speech: v1.17.1 → v1.19.0
  • cloud.google.com/go/translate: v1.8.1 → v1.8.2
  • cloud.google.com/go/video: v1.17.1 → v1.19.0
  • cloud.google.com/go/vmwareengine: v0.4.1 → v1.0.0
  • cloud.google.com/go: v0.110.4 → v0.110.7
  • github.com/felixge/httpsnoop: v1.0.3 → v1.0.4
  • github.com/go-logr/logr: v1.2.4 → v1.3.0
  • github.com/golang/glog: v1.1.0 → v1.1.2
  • go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc: v0.45.0 → v0.46.0
  • go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp: v0.45.0 → v0.46.0
  • go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc: v1.19.0 → v1.20.0
  • go.opentelemetry.io/otel/exporters/otlp/otlptrace: v1.19.0 → v1.20.0
  • go.opentelemetry.io/otel/metric: v1.19.0 → v1.20.0
  • go.opentelemetry.io/otel/sdk: v1.19.0 → v1.20.0
  • go.opentelemetry.io/otel/trace: v1.19.0 → v1.20.0
  • go.opentelemetry.io/otel: v1.19.0 → v1.20.0
  • go.uber.org/goleak: v1.2.1 → v1.3.0
  • golang.org/x/crypto: v0.14.0 → v0.18.0
  • golang.org/x/sys: v0.13.0 → v0.16.0
  • golang.org/x/term: v0.13.0 → v0.16.0
  • golang.org/x/text: v0.13.0 → v0.14.0
  • google.golang.org/genproto/googleapis/api: 782d3b1 → b8732ec
  • google.golang.org/genproto/googleapis/rpc: 782d3b1 → b8732ec
  • google.golang.org/genproto: 782d3b1 → b8732ec
  • google.golang.org/grpc: v1.58.2 → v1.59.0

Removed

  • cloud.google.com/go/dataproc: v1.12.0

v0.21.0

6 months ago

First release where KCP is part of CNCF Sandbox! Major change - rebase to Kubernetes 1.28

What's Changed

New Contributors

Full Changelog: https://github.com/kcp-dev/kcp/compare/v0.20.0...v0.21.0

v0.20.0

10 months ago

This release contains major breaking changes and change of Governance in the KCP project. Major breaking change are removal of TMC and rebase to Kubernetes 1.26. You must wipe any preexisting etcd data before trying to use v0.20.0

⚠️ Breaking Changes

New Contributors

KCP team thanks to all new contributors joining the community!

What's Changed

Changelog

  • 0531e126 Merge pull request #2984 from kcp-dev/meeting
  • daa9217a Merge pull request #2985 from mjudeikis/tmc.removal.clean.docs-
  • c4ca4477 Remove TMC from docs
  • ac8c473c Update Community Meeting Template
  • 829066d5 Merge pull request #2974 from mjudeikis/update.pr.template
  • 774d0082 Merge pull request #2979 from faroshq/fix.apigen
  • 66e4e4d0 Merge pull request #2980 from embik/remove-image-action
  • 7ff65a23 remove GitHub Actions for image builds
  • 1c308b58 Merge pull request #2976 from xrstf/add-images-prowjob
  • 27b3b359 remove replace stanzas
  • bc275d9c Merge pull request #2971 from mjudeikis/clean.tmc.part2
  • 9c76d51b Remove TMC bootstrap assets
  • f90b590a do not trigger the github action in PRs anymore
  • 447ddc9b add prow job and script to build/verify the kcp container image
  • b4f67608 Merge pull request #2975 from xrstf/add-prowjobs
  • 0da5e540 add e2e jobs
  • 0a1886a3 add simple Prow jobs (non-e2e)
  • 9307995f Add release notes into PR template
  • d5775699 Merge pull request #2969 from mjudeikis/logging.flag
  • baf02f81 Add missing LoggingBetaOptions flag
  • a83e6502 Merge pull request #2963 from xrstf/remove-syncer
  • 7f7ab89c Merge pull request #2959 from sttts/sttts-replicate-clusterrolebindings
  • 20aa5f19 Merge pull request #2957 from sttts/sttts-workspace-deletion-optimization
  • c2b3247e now that tmc/ is just an empty wrapper around pkg/server, get rid of it entirely
  • 3e63afb6 remove last remnants of pkg/syncer
  • 11b6f4d4 remove kcp-test-image code
  • 0ee79b9b remove tmc-related logging constants and tmc server controller handling
  • 62fae740 remove unused -syncer-image flag from e2e framework
  • a9e37326 remove e2e-shared and e2e-sharded make targets
  • 10c3a90a remove transparent-multi-cluster test suite concept / github actions
  • c05c053a remove workload-related reconciler e2e tests
  • 95ae2a46 go mod tidy
  • 4f526ca1 keep feature gate boilerplate without tripping up the linter
  • 7884c019 refactor TestProtectedAPIFromServiceExports
  • a222f770 refactor TestRootAPIExportAuthorizers
  • d6338d67 remove e2e tests
  • fd3ed63a add node regarding the code removal, remove non-goals from readme
  • 57f9aacb remove most of tmc and syncer related code
  • 2dbc5df6 Merge pull request #2968 from mjudeikis/merge.sdk.tooling
  • 7a640f95 consolidate sdk/apis
  • 07194041 Merge pull request #2966 from MikeSpreitzer/track-admin-cluster-fix
  • 8f389bd5 Track kcp-dev/kube fix wrt local admin cluster
  • 8c935bb7 Merge pull request #2964 from sttts/sttts-contributing-governance
  • c6ed0c27 CONTRIBUTING.md: link back to governance and include manifesto
  • 166312ae Merge pull request #2962 from sttts/sttts-kcp-lower-case
  • d00fa9cc GOVERNANCE.md: lower-case kcp outside of captions
  • 88d6071b Merge pull request #2956 from sttts/sttts-1.26
  • f987ac02 admission/webhooks: wire global informers
  • 60d9c88e e2e/syncer: disable flaky tests to be removed soon
  • 666c6a3f validatingadmissionpolicy: add as CRDs to be used by cache
  • 190bbebe crdpuller: don't skip explicitly passed resource
  • 1f2244a0 validatingadmissionpolicy: replicate policies and bindings and wire global informer
  • c136c4ab Finish wiring validating admission policy
  • b8a10a3f proxy: fix NPE when trying to stop informers for a not-found shard
  • f07fdddf Remove t.Helper to get accurate test log lines
  • fe676262 Remove deprecated AutoPublishAPIs
  • 2a7a29cd Update codegen
  • 22baf906 Update imports
  • 6f903d41 Fix remaining lint issues
  • f34720d3 Fix gocritic issue
  • 63a2be32 Switch to generic sets.Set
  • 6c9a7720 Add placeholder for AddEventHandler return values
  • 999b40f1 Fix deprecated sets.String usage
  • 93e6b66c Fix deprecated pointer.* calls
  • 937bd299 React to k8s 1.26
  • cb096da9 make codegen
  • 942c9037 go mod tidy
  • 661ba366 Update sub modules to k8s 1.26.3
  • ae5135f7 cache: only enqueue ClusterRoleBindings for the right logical cluster
  • a6c6920c tenancy: only delete LogicalCluster if needed
  • 7d017c78 Merge pull request #2950 from ncdc/add-rebase-doc
  • 19246a5f Merge pull request #2953 from sttts/sttts-governance
  • c56fb486 Bootstrap governance
  • 70e45cb8 Initial copy of GOVERNANCE.md template
  • 821c5034 Add rebase documentation
  • 0bfbfa0f go.mod: prepare for k8s 1.26
  • 2b383edf Merge pull request #2946 from davidfestal/sharded-tunneler
  • 22021301 Merge pull request #2937 from fileppb/patch-1
  • 9bb884c5 Update CONTRIBUTING.md
  • 76e71ddb Create one tunneler per shard in the Syncer
  • 290c102d make subresource proxy shard-aware
  • 874a491a run multishard syncing tests with kind
  • c04ebf8c Merge pull request #2675 from davidfestal/shard-syncer
  • a4a0c311 fix review comments
  • 1329ae78 Use 2 distinct shards
  • 108d93eb Fix review comment about async controller start
  • f9a51044 Multishard Syncer e2e test
  • 6ec44157 Correctly manage unavailable shard URLs
  • 98883367 disable service account lookup...
  • bd8cfe89 SpecSyncers for upstream and downstream
  • b648f4a1 Using our controller pattern with the committer
  • 4dcade34 Fix review comments
  • aebdb9cd Syncer: split unsync controllers
  • d3ca8e7c Syncer: refactor to support multiple shards
  • 3c41e4a3 Add the workspace-url annot. in transformer
  • 4bc494e9 Introduce the workspace-url annotation
  • 57dad440 Give the virtual workspaces the shard external url
  • 85e63392 Merge pull request #2948 from davidfestal/global-informers-in-scheduling
  • 3bb3d9d3 Add indexer to the global informer
  • 850d52b6 Use global informers in scheduling controller
  • 419199c7 Merge pull request #2939 from nrb/2900-all-controllers
  • 1c83615c Look up APIexports with fallback
  • 67543d10 Use cache lookup with fallback
  • 0fc89099 Use generic index lookup
  • a447cdfb Use generics to do global cache lookup.
  • 7abdab5c Handle replicated synctarget deletion events
  • 759c1a4a Add cache lookup to SyncTarget(Export) controllers
  • 36f560c8 Use SyncTargets cache in resource controller
  • ee2ba92c Merge pull request #2944 from stevekuznetsov/skuznets/index-with-fallback
  • 1e5f7ca4 pkg/indexers: add helers for cache server fallback
  • 096dd14d Merge pull request #2941 from dhanusaputra/rename-workload
  • 700c7526 Unify workload[s] names in the tmc controller.go
  • e65e243f Merge pull request #2933 from davidfestal/replicate-synctarget-related-rbac
  • 63e6eb52 Replicate logicalclusters containing synctargets
  • 5e15fe76 Replication: Add e2e tests for workloads-related rbac objects
  • e69e7c41 Replicating SyncTarget-related rbac objects
  • 530d15fd Merge pull request #2874 from ncdc/committer/workload/namespace
  • 35e42f57 workload/namespace: use committer
  • 8eacb110 Correct label comment
  • d5ad6918 Update CONTRIBUTING.md re golang version
  • 5e384c86 Merge pull request #2934 from davidfestal/cleanup-e2e-tests-to-remove-data-race
  • 91d51247 cleanup tmc e2e tests to remove data races
  • abdae2bf Merge pull request #2925 from nrb/doc-replicated-types
  • 0ba47ec3 Merge pull request #2915 from nrb/2900-placement
  • d52a3df4 Fix names
  • 3a2c6543 Add cache informers for placement and synctargets
  • 8507c1aa Merge pull request #2877 from qiujian16/rm-root-compute
  • ebf24bba Merge pull request #2908 from davidfestal/tmc-e2e-sharding-step-1
  • d14686a5 e2e : also gather synctargets and locations
  • 229b581b small e2e test fix
  • 9403375b Fix e2e TMC fixture to support several VW URLs
  • ed885aa2 Remove root:compute deps in controller
  • 2c895bd8 sharding: fix the VW URLs in the SyncTarget
  • b5e3a0e1 Merge pull request #2927 from lionelvillard/doc-typos
  • aea0ba7b Merge pull request #2583 from astefanutti/pr-applyconfiguration
  • 06f58326 changes after review
  • 72c73679 codegen: Fix missing client-gen install
  • e9dbffc9 hack: Add applyconfiguration-gen to tools.go
  • b5756cd7 Bump k/k: applyconfiguration-gen fails on map to struct fields
  • a592139c test: Use Apply instead of Patch for SSA
  • f4a95935 test: Generate apply configutions for e2e APIs
  • 143a1e29 client: Generate apply configurations
  • 1ef751e8 fix some typos
  • 75bb4527 Merge pull request #2894 from faroshq/sdk.pkg
  • 0f3bb69f Merge pull request #2907 from astefanutti/pr-24
  • e3c2d234 Stage: Pin apigen package to old module
  • 24b8050b move pkg/{apis,client} ->sdk/{apis,client}
  • 6b596012 consolidate client & api into sdk module
  • 02f88b51 git mv ../pkg/apis ./ git mv ../pkg/client ./
  • 3eca5822 Merge pull request #2889 from fgiloux/flake-2865
  • 08b2064a Document data types that are replicated
  • 28c45495 Merge pull request #2902 from MikeSpreitzer/update-placement-315
  • e65c2433 Merge pull request #2882 from hardys/logical_cluster_admin_fix
  • 36aa88cc required groups authorizer: allow external-logical-cluster-admin
  • c901627c admission: allow external-logical-cluster-admin
  • eb402968 admission: remove redundant group check
  • 82442c31 server: add external-logical-cluster-admin flag
  • 52b52709 fix(CLI): sync command should honor provided IO streams
  • 60ba17a1 Merge pull request #2903 from s-urbaniak/delegate-max-perm-policy-auth
  • 9812e200 pkg/authorization/maxpermpolicy: add delegation reason
  • d5b1b8c3 Update as much as I understand
  • b6bbbb2e Merge pull request #2901 from kcp-dev/davidfestal-fix-obsolete-wording
  • 21d4ebe0 Fix obsolete wording
  • 0b72c759 Avoid duplicated Partitions being created from a PartitionSet.
  • 7c58e5cb Merge pull request #2899 from kcp-dev/dependabot/github_actions/actions/setup-go-4
  • 7319494f build(deps): Bump actions/setup-go from 3 to 4
  • 810e6fd1 Merge pull request #2897 from jmprusi/jmprusi/longrunning_tunnel
  • cbc665ae server/config: extend BasicLongRunningRequestCheck to add tunnel subresource
  • 46aed503 Merge pull request #2890 from jmprusi/jmprusi/tunnel_retry
  • bf1d290b Merge pull request #2888 from lionelvillard/rename-cluster-workspace
  • 46f72457 tunneler: return retry-after when dialer not ready
  • 3486fcda run make codegen
  • 2197e455 rename ClusterWorkspace to Workspace
  • c7108fa9 Merge pull request #2869 from faroshq/go.workspaces
  • 3f8a0002 Adding (again) logs for the investigation of flake #2865
  • cbec7fef Merge pull request #2836 from sttts/sttts-server-split-virtual
  • 3b1e732c Fix unintended VW config shallow copy
  • 3cadf3f7 Address review comments
  • ea99bb92 Merge pull request #2884 from ncdc/docs-fix-link
  • 163270e7 Merge pull request #2873 from ncdc/committer/shard
  • 64262b93 Merge pull request #2867 from ncdc/docs
  • 61f7d79f cmd/kcp: import cosmetics
  • 62756fe2 tmc: move syncer VW plumbing out of core
  • 613cd1c9 server/virtual: integrate VW setup into server options/config/server structure
  • cf254e77 virtual: split named virtual workspaces from config constructor
  • 6f965b99 virtual/rootapiserver: split into server and config
  • dc49b998 Merge pull request #2829 from davidfestal/upsync-endpoints
  • 0a484527 split pkg/client
  • 0177ff34 docs: make PromeCIeus a link
  • e40bffc1 Merge pull request #2881 from jmprusi/jmprusi/syncertunnel-on-by-default
  • 0def090c Make the annotation experimental...
  • cac43236 Enable SyncerTunnel featuregate by default
  • 85793f99 Merge pull request #2819 from jmprusi/1975-implement-pod-access-authorization-in-the-syncer-itself
  • ed66b88b Fix review comment
  • ec351357 Tunnel: Validate namespace/pod at the syncer side
  • af188083 Merge pull request #2875 from ncdc/move-enhancements
  • f8f00160 Move enhancements to separate repo
  • 4c12b554 shard controller: use committer
  • b424d595 Merge pull request #2691 from csams/basecontroller-committer
  • 8afbaa2d Support adding the upsync annotation later on...
  • 3616df88 Fix some e2e tests
  • c747032d Allow creating / syncing endpoints
  • bded8dfe Syncer : endpoints upsyncing e2e test
  • d243f709 Adding endpoints in the default kubernetes APIExport
  • 5f54748a Upsyncing endpoints of synced services
  • 3db62fb9 Merge pull request #2851 from faroshq/status.exports.binings
  • 54109965 Simplify heartbeat controller
  • a470a275 Rename heartbeat_manager
  • 90d4e0d2 basecontroller uses committer
  • 20bae132 docs: add etcd storage patterns
  • c9fbb593 Merge pull request #2868 from fgiloux/flake-2865
  • f9b66b9d Adding logs for the investigation of flake #2865
  • aca918bc docs: add rest access patterns
  • e1353f4e Merge pull request #2866 from ncdc/docs
  • 749788f6 Merge pull request #2846 from qiujian16/ws-url
  • f0e994a4 Skip CI for docs scripts
  • 8bb1ec29 docs: make description punctuation consistent
  • 9d22581b docs: add missing descriptions
  • ec80bfaf docs: wrap storage.md at 100
  • bc07f2d1 docs: concepts: switch to section overview page
  • b775a77d docs: fix file names
  • 6ef91299 Merge pull request #2864 from ncdc/docs
  • de6312bd Merge pull request #840 from bnallapeta/pullcrds_bycrdname
  • 6434368c Move docs generators under docs to avoid CI
  • e91e7e23 Added a flag to crd-puller to specify only the required CRDs that needs to be synced
  • ff86f223 docs: add APIConversions to API ref
  • eb6f2438 Merge pull request #2861 from ncdc/docs
  • 150b74cb Merge pull request #2862 from yhrn/patch-1
  • 8bdd88a6 docs: update material to 9.1.0
  • cc7aa8a4 docs: test builds without deploying for PRs
  • d4051302 Fix link to partitions.md
  • d600c0d8 Merge pull request #2860 from ncdc/fix-docs-action
  • de0ab22d docs: only build main+release branches
  • 5d34d08a Merge pull request #2854 from ncdc/fix-docs
  • d5466d15 docs: fix venv
  • 424d7679 Merge pull request #2853 from ncdc/fix-docs
  • fb66a5e2 docs: update gitignore
  • 4ae11f71 docs: temporarily turn off caching
  • f3eb5438 No longer need docs Dockerfile
  • c2430a0c Fix GH summary URL
  • 92554adb Merge pull request #2852 from ncdc/redo-docs-i18n
  • f0e02495 docs: simplify i18n
  • 4cb7736f Merge pull request #2642 from fgiloux/partitionset-e2e
  • fe07ab76 Add Ready column to APIBinding and APIExport
  • 2a6663dd Fix the spe.URL in workspace using canonicalPath
  • 07035bac Merge pull request #2840 from s-urbaniak/prometheus-e2e
  • 66c6d0d0 docs/../developers: describe metrics gathering for e2e tests
  • b844be6a Merge pull request #2845 from davidfestal/upsync-pods-from-synced-podspecable-resources
  • df364a2e Merge pull request #2847 from faroshq/add.nonResourceURL
  • 2e5a2491 Add verb accessto syncer
  • e26c87b3 Syncer: also mutate StatefulSets and ReplicaSets
  • d6bdad47 Add end-to-end tests for PartitionSets
  • 46c00df3 Prevent APIBinding test to fail when non schedulable shards are added by other e2e test
  • ea2a0acc Fix issue when duplicate dimensions are provided
  • 2a68f306 Fix issue when GenerateName size limit is reached

Full Changelog: https://github.com/kcp-dev/kcp/compare/v0.11.0-alpha.0...v0.20.0

v0.11.0

1 year ago

This release contains breaking changes. You must wipe any preexisting etcd data before trying to use v0.11!

Changes since v0.10.0

:warning: Breaking Changes

  • Move Workspace.Status.{Cluster, URL} to Spec (#2557)
  • replace kcp.dev by kcp.io (#2523)
  • ClusterWorkspace => LogicalCluster refactor (#2510)

:sparkles: New Features

  • Provide access to physical cluster pod definitions from upstream KCP, relying on upsyncing (#2805)
  • cache: add a synthetic delay to the cache server (#2742)
  • Add Upsync controller (#2214)
  • Adding DNS network policies (#2423)
  • Partitionset reconciliation (#2513)
  • Add pods resource to the default Kubernetes APIExport (#2417)
  • Support for pod logs and other subresources (#2401)
  • enable shard scheduling and fix e2e tests (#2596)
  • Make apigen a standalone go module (#2669)
  • Add conversions + CEL transformations for APIResourceSchemas (#2105)
  • Admission for APIExportEndpointSlice (#2560)
  • Install Calico in kind for CI testing (#2431)
  • Partition reconciliation (#2469)
  • wire more controllers cross-shard and authz (#2562)
  • DRY committer factory functions (#2590)
  • Refactor Syncer based on the enhanced ddsif, with controller manager and endpoints controller (#2452)
  • Synctarget: Have URLs for both syncer and upsyncer (#2570)
  • server: wire cache informers instead of root informers (#2559)
  • Allow home workspaces to be accessed via user:<username> (#2547)
  • APIExportEndpointSlice reconciliation (#2432)
  • Use distroless/static:debug as base image (#2512)

:bug: Bug Fixes

  • Fix nil pointer error in the Upsyncer reconcile (#2822)
  • cli: honor expanded ~ in kcp ws (#2816)
  • Fix location cannot be found by placement during scheduling (#2784)
  • Only validate the path component of a fully-qualified APIExport ref (#2809)
  • Prevent gc/quota workqueue backlogs (#2764)
  • Fix multiple CRDs/workspaces/versions (#2751)
  • bind compute: handle placement already exists correctly (#2779)
  • Bump github.com/emicklei/go-restful from 2.9.5+incompatible to 2.16.0+incompatible in /cmd/apigen (#2777)
  • Enqueue location upon synctarget update (#2624)
  • tmc e2e: fix Syncer virtual workspace e2e test flakes (#2767)
  • pkg/tunneler: remove non-error verbose log (#2766)
  • Fix TMC flake in the Upsyncer VW e2e test (#2765)
  • Fix make install doesn't exit without required tools (#2760)
  • test/e2e/scheduling: don't require kind for upsynced test (#2761)
  • E2E failing on APIExportEndpointSlice creation (flake) (#2755)
  • workload/resource: handle upsynced resources (#2533)
  • Fix frontmatter on replicating new resource doc (#2752)
  • Drop non-existent workspace get command from help output (#2731)
  • cmd/sharded-test-server: Reuse Certificates instead of generating new ones (#2746)
  • Show workspace name in kubectl kcp ws tree (#2719)
  • Fix API binding privilege escalation (#2695)
  • Fix Makefile clean target and add .kcp cleanup (#2712)
  • Deflake quota e2e (#2688)
  • Fix typo breaking codegen: crds not stored at the right location (#2724)
  • Fix gap in APIExport virtual workspace queues (#2720)
  • Do not look up APIExports in the generic webhook (#2690)
  • test/e2e: remove a data race (#2694)
  • Deflake TestSpecSyncerProcess (#2684)
  • *: update listers to have correct NotFound messages (#2683)
  • Use status.phase as printer column on workspaces and logical clusters (#2680)
  • Add a kcp RequestInfoResolver (#2677)
  • server: revert non-standalone VW URL (#2667)
  • Use APIExport cluster names within webhooks (#2637)
  • controller: use the global informer to get Shards (#2660)
  • e2e: temporarily schedule all workspaces on the root shard for tmc-related tests (#2651)
  • server: relax ShardVirtualWorkspace flag validation (#2659)
  • add support for standalone virtualworkspace server (#2407)
  • e2e/conversion: wrap create in eventually (#2644)
  • reconciler/apiexport: use the gloabl informer to get Shards (#2641)
  • e2e/reconciler/workspace: use cluster client (#2639)
  • e2e/watchcache: use cluster client for creating content in a workspace (#2632)
  • pkg/reconciler/apis/apibinding: return error in case of conflicts (#2645)
  • pkg/server: ensure that home workspace handler gets authz with audit … (#2628)
  • Add bind permission for kubernetes apiexport (#2618)
  • Role and ClusterRole merger should not modify cache objects (#2604)
  • IndexByLogicalClusterPathAndName should return clusterpath and name (#2606)
  • cache: stop reporting an error from a CRD lister on incorrect cluster name (#2592)
  • e2e: PrivateKcpServer enable audit-policy (#2591)
  • committer: fix equality check in statusless committer (#2602)
  • reconciler/cache: remove reflection and fix replicate+NotFound logic (#2594)
  • WorkspaceType admission should respect LimitAllow{Parents, Children}.None (#2588)
  • Fix APIExport virtual workspace API bug (#2564)
  • workspace controller: use loopback client for local shard (#2554)
  • cel-go: update to pull in data race fix (#2549)
  • Docker build/push should not use a matrix (#2544)
  • Add missing CGO_ENABLED flag in the install makefile target (#2540)
  • Increase CRD cleanup requeue delay; remove e2e test (#2541)
  • kcp: fix waitForOptionalSync method to wait for a proper signal (#2536)
  • pkg/authorization: prevent double audit logs (#2511)
  • pkg/softimpersonation: deep copy rest config (#2509)
  • Fix and add test to capture a race w/ partial metadata in cache (#2505)
  • docs: mkdir before moving (#2503)
  • Fix parsing of requests to root path of a workload cluster (#2405)

:seedling: Others

  • Remove direct klog usage (#2842)
  • Add --labels to kubectl kcp workload sync (#2815)
  • docs: actually add main.py module to git (#2825)
  • Make DirectOrGoRunCommand aware of the deployment-coordinator being moved to tmc/cmd (#2814)
  • server: split apart first tmc pieces (#2795)
  • workspace_reconcile_scheduling: allow for skipping a shard with a special annotation during scheduling (#2782)
  • test/e2e,cmd/test: scrape metrics for test servers and e2e tests (#2774)
  • docs: document the process (#2808)
  • fix broken documentation links (#2806)
  • More mkdocs updates (#2798)
  • docs: fix mike config file path (#2793)
  • docs: fix pip install (#2792)
  • docs: fix Makefile, pip install (#2791)
  • more docs CI changes (#2790)
  • Make syncer vw global (#2744)
  • syncer vw: add API definition logging (#2780)
  • build(deps): bump docker/build-push-action from 3 to 4 (#2715)
  • build(deps): bump actions/cache from 3.2.4 to 3.2.5 (#2778)
  • manifest: remove outdated manifests (#2716)
  • Fix git in Prow (#2769)
  • /pkg/proxy/server: handle /readyz and /livez outside of the auth chain (#2747)
  • tmc e2e : Split SyncerFixture (#2730)
  • Small improvements to dev workflow (#2753)
  • Use a private kcp per disruptive replication test (#2745)
  • Add make target to download e2e logs from Prow (#2734)
  • Dockerfile: remove SHELL for OCI compliance (#2728)
  • Enable virtual workspace server audit logging (#2733)
  • Fix ready-to-test location (#2736)
  • More APIExport VW e2e deflaking (#2735)
  • test/e2e: DRY up waiting on conditions (#2703)
  • remove deprecated home workspaces fields, add waiting for unmanaged servers in e2e (#2707)
  • Trying to fix doc generation (#2717)
  • tests: gather metrics (#2705)
  • build(deps): bump actions/cache from 3.2.3 to 3.2.4 (#2704)
  • End-to-end tests for APIExportEndpointSlice (#2608)
  • correctly log unstructured group/resource with k8s reflector (#2701)
  • reconcilers/workspace: add logging to outgoing client calls (#2698)
  • pkg/authorization: enable audit logging for SAR requests (#2678)
  • logicalcluster_deletion_controller uses committer (#2661)
  • test/e2e: add support for dynamic users using client certs (#2640)
  • clusterworkspacetype_controller uses committer. (#2674)
  • Remove trailing parentheses in ASCII diagram link (#2670)
  • bootstrap_controller uses committer (#2653)
  • Bump actions/cache from 3.0.11 to 3.2.3 (#2567)
  • build(deps): bump uraimo/run-on-arch-action from 2.3.0 to 2.5.0 (#2531)
  • placement_controller uses committer (#2648)
  • extraannotationsync: use function pointers (#2646)
  • location_controller uses committer (#2638)
  • permissionclaimlabel_controller uses committer (#2636)
  • Admission cleanup (#2629)
  • run replication tests on a shared kcp instance (#2620)
  • test/e2e/virtual/apiexport: make authorizer test self-contained (#2611)
  • Enable KUBE_CACHE_MUTATION_DETECTOR in e2e tests (#2605)
  • e2e: TestAuditLogs remove duplicate audit-log-path (#2610)
  • reconciler/cache/reconciler: simplify and generalize (#2609)
  • remove tenancy v1beta1 (#2595)
  • resource controller: log each gvr by itself instead of accumulating (#2600)
  • Use caching authorizers per-workspace in initializingworkspaces/builder (#2477)
  • Stop checking PR descriptions in CI (#2599)
  • clean up workspace e2e fixtures (#2586)
  • Update logcheck to 0.4.0 (#2587)
  • *: update to some structured, contextual logging (#2576)
  • cache: add replication tests for WorkspaceType resource (#2578)
  • verify-contextual-logging should diff from old to new (#2577)
  • Rename ClusterWorkspace (#2569)
  • apiexport: strongly type enqueue params (#2575)
  • Add e2e DNS tests (#2542)
  • vw/apiexport: strongly type enqueue params (#2574)
  • crdcleanup: strongly type enqueue params (#2573)
  • *: remove tenancy.kcp.dev/v1alpha1.ClusterWorkspace (#2543)
  • index controller rename (#2561)
  • add missing unit tests for the index (#2565)
  • cluster workspace rename (#2558)
  • Switch cel-go to upstream v0.12.6 (#2556)
  • Debug deployment coordinator e2e (#2555)
  • Update golangci-lint 1.50.1, add more linters (#2480)
  • Cross-compile container image binaries from host platform (#2551)
  • add missing unit tests for the pathannotation admission plugin (#2535)
  • follow-ups of workspace refactor (#2553)
  • Add authorizer test for static endpoints (#2487)
  • Skip upsynced resources in resource scheduling (#2545)
  • Scope APIBinding logger (#2546)
  • DDSIF: Make it more generally useful (#2440)
  • Update .goreleaser.yaml to build binaries with CGO_ENABLED=0 (#2508)
  • :*: use 'logicalCluster' instead of 'this' (#2524)
  • Use buildx to build KCP images (#2528)
  • test/e2e: remove MultiClusterRoundTripper (#2522)
  • *: s/SystemBoundCRDSClusterName/SystemBoundCRDsClusterName/g (#2521)
  • Add indexers.ByPathAndName helper (#2516)
  • Use deletion handling keyfunc where needed (#2519)
  • logicalcluster deletion: switch to .Cluster() (#2520)
  • Deflake apibinding immutability test (#2515)
  • sharded-test-server: add quiet support to front-proxy (#2514)
  • Correct the typo in an error message (#2506)
  • Add test for shallow copy and make partial metadata CRD (#2497)
  • build(deps): bump goreleaser/goreleaser-action from 3 to 4 (#2483)
  • goreleaser: distinguish tags and PRs (#2495)
  • Test goreleaser changes in CI (#2492)
  • Add github action concurrency based on workflow-ref (#2488)

:book: Additionally, there have been 15 contributions to our documentation and book. (#2799, #2828, #2823, #2801, #2796, #2788, #2768, #2702, #2722, #2749, #2725, #2673, #2708, #2580, #2499)

Thanks to all our contributors! 😊

v0.11.0-alpha.1

1 year ago

What's Changed

Full Changelog: https://github.com/kcp-dev/kcp/compare/v0.11.0-alpha.0...v0.11.0-alpha.1

v0.7.10

1 year ago

Changelog

  • 95799cf1 Merge pull request #1862 from ncdc/0.7/skip-projected-resources
  • bfed9f62 Merge pull request #1863 from openshift-cherrypick-robot/cherry-pick-1861-to-release-0.7
  • bedcad63 e2e: save data in some temporary directory
  • be47352e deletors: skip projected resources

v0.7.9

1 year ago

Changelog

  • 3837ca0f Merge pull request #1808 from openshift-cherrypick-robot/cherry-pick-1805-to-release-0.7
  • 0767ad7f ddsif: exclude v1beta1 Workspaces

v0.11.0-alpha.0

1 year ago

Changelog

  • 95dbac2e Merge pull request #2777 from kcp-dev/dependabot/go_modules/cmd/apigen/github.com/emicklei/go-restful-2.16.0incompatible
  • 2adeb0c0 Bump github.com/emicklei/go-restful in /cmd/apigen
  • 880576a7 Merge pull request #2624 from qiujian16/fix-synctarget-enqueue
  • ee81cfe7 Merge pull request #2423 from lionelvillard/dns-network-policies
  • 2a1c00aa Merge pull request #2716 from hardys/rm_manifests
  • 5ebd7bf5 Merge pull request #2767 from davidfestal/fix-syncer-vw-flakes
  • 656ad4db changes after review
  • 81870cb4 fix unit test
  • 1e47c2bc create kubernetes endpoint in fake cluster.
  • fc683ba2 better error message
  • b8c26170 reenable test against fake cluster
  • 5d0246d2 check tenantid is set and correct (when upgrading kcp)
  • 6016ada7 add tenant-id label and use it in network policies
  • 8a824ebc cluster test requires kind
  • 4f500f82 add e2e test
  • 5d7672c0 add networkpolicies in the fake pcluster
  • e5623101 fix unit test
  • df2c102d Adding dns network policies - Part 1
  • 2244d9ac Merge pull request #2766 from jmprusi/jmprusi/fix-verbose-log-podsubresourcehandler
  • 561880ea Merge pull request #2769 from ncdc/fix-prow-git-issue
  • bc5deb3c Fix git in Prow
  • d6879632 tmc e2e: use framework.Eventually...
  • 55dc2713 tmc e2e: put the sink worksace on the root shard
  • 22d6d788 pkg/tunneler: remove non-error verbose log
  • b9f1494c Merge pull request #2747 from s-urbaniak/proxy-healthz-livez
  • 25f906ca Merge pull request #2765 from davidfestal/fix-flake-2762
  • acb6f3d0 Fix flake #2762
  • 09cbd2ff Merge pull request #2760 from wangke19/fix-without-requirement-not-quit
  • 5b3b4042 Merge pull request #2761 from jmprusi/jmprusi/fix-test-nokind
  • 2dcb5325 test/e2e/scheduling: don't require kind for upsynced test
  • 87f44d42 Merge pull request #2513 from fgiloux/partitionset-reconciliation
  • aeabc6e7 Fix make install doesn't exit without requirement tools
  • d63ce02a Add logic for PartitionSet reconciliation
  • 1235ac4a Merge pull request #2755 from fgiloux/slice-e2e
  • c48c5676 Merge pull request #2533 from jmprusi/jmprusi/upsync-scheduling-fix
  • 3e7ec62b test/e2e/framework: don't fail tests if synctarget is gone
  • c6b61543 workload/resource: handle upsynced resources
  • 74e06bb0 Merge pull request #2730 from davidfestal/split-SyncerFixture
  • 3df11d78 Fix a possible flake where the referenced APIExport may not be available on the cache server before the APIExportEndpointSlice is created.
  • 77af9334 Rename as requested in review
  • 17a6ba85 Fix review last comments
  • 0da8dadb Remove unnecessary private function
  • 8f125fe1 e2e: Separate SyncerFixture.CreateAndStart()...
  • 6dae2425 Fixes after PR review comments
  • a1476bfd tmc e2e : Split SyncerFixture...
  • 3a58b1cf Merge pull request #2417 from jmprusi/2415-when-the-kcpsyncertunnel-feature-gate-is-enabled-pods-should-be-added-to-the-compute-workspaces-automatically
  • e50fa572 Merge pull request #2753 from fabriziopandini/small-improvements-to-dev-workflow
  • a43bada4 add support for specifying KIND_CLUSTER_NAME make when running build-kind-images
  • cc878df3 Merge pull request #2752 from hasheddan/fix-docs-publish
  • e1c09efe Fix frontmatter on replicating new resource doc
  • da4d3ae4 Merge pull request #2731 from hasheddan/no-ws-get
  • e20bc8f5 pkg/virtual/syncer: don't expose Pods or endpoints via syncer vw
  • 85965fe9 test/e2e/syncer: remove non-needed clusterrole from test
  • e69da7e5 cliplugin/sync: append pod subresources
  • eb61c60f test/e2e/syncer: ensure pods cannot be created outside upsyncer
  • 238fdc6c Merge pull request #2722 from MikeSpreitzer/describe-bind
  • 248fd6fa Drop non-existent workspace get command from help output
  • 99540554 Merge pull request #2749 from kasturinarra/fix_doc
  • c29c35bb Fix unknown flag --apiexport
  • b48ab6a3 add few gitignore patterns
  • 1fe028e5 /pkg/proxy/server: handle /readyz and /livez outside of the auth chain
  • 278060db Merge pull request #2725 from p0lyn0mial/document-replicating-new-type
  • e4613dfe Merge pull request #2746 from p0lyn0mial/sharded-test-server-reuse-certs
  • ce35514a cmd/sharded-test-server: Reuse Certificates instead of generating new ones
  • ca871c15 Merge pull request #2745 from ncdc/deflake-replication-disruptive-tests
  • ba4a15b3 Use a private kcp per disruptive replication test
  • 26d200c2 Merge pull request #2734 from ncdc/add-download-prow-logs-script
  • f18044f9 Merge pull request #2728 from hardys/dockerfiles
  • 103b4fd7 Merge pull request #2733 from ncdc/vw-enable-audit
  • 752666a6 Merge pull request #2736 from ncdc/fix-sentinel
  • 35073e6a Merge pull request #2735 from ncdc/deflake-apiexport-vw-test
  • c7a62d7f Deflake test/e2e/reconciler/apiexportendpointslice
  • 0bb66422 More APIExport VW e2e deflaking
  • c3fbb9c6 test/e2e/tunnels: use root:compute:kubernetes apiexport
  • 7d7777e8 kube124: Adds PODs to the kubernetes apiexport
  • a398c33e Add make target to download e2e logs from Prow
  • 998b73b8 Merge pull request #2703 from stevekuznetsov/skuznets/eventually-condition
  • 03955798 Fix ready-to-test location
  • 1f3b5909 fix imports
  • adabd8e4 test/e2e/quota: don't assume an error exists
  • 1e4d2dd6 apiexport: improve test error message
  • 95c82808 test/e2e: DRY up waiting on conditions
  • f00df0ad Enable virtual workspace server audit logging
  • 2113c9a3 Merge pull request #2707 from ncdc/fix-e2e-kcp-servers
  • 0b403cb8 apiexportendpointslice: use framework.Eventually
  • bc8fb6ad Fix TestAPIExportAuthorizers flake
  • 8db9070a Fix TestAPIExportAuthorizers flake.
  • 3092dfcb Use sentinel file for e2e readiness
  • 1cfbe44a e2e: support terminating "go run kcp start"
  • a9c50f40 e2e: all server types wait for readiness
  • d77370ea Clean up home workspaces
  • 57e93390 Merge pull request #2719 from hasheddan/use-ws-name-tree
  • e79d1e0b Merge pull request #2695 from s-urbaniak/fix-wrong-bind
  • e8501917 Merge pull request #2712 from hardys/makefile_fix
  • 7d55514d Merge pull request #2688 from ncdc/deflake-quota
  • ebce7c80 Dockerfile: remove SHELL for OCI compliance
  • c40e9aa0 Fix typo in --full flag help
  • 055a3286 Show workspace name in kubectl kcp ws tree
  • 669dd8df Merge pull request #2717 from ncdc/doc-gen
  • 7035800e pkg/virtual/apiexport: impersonate requests
  • 68175dd6 Merge pull request #2724 from fgiloux/codegen
  • b1da6c0e document how to add a new resource for replication
  • 780bc640 Schemas changes missing due to issue in codegen script
  • 8941a0d8 manifest: remove outdated manifests
  • a40856ea Makefile: add clean-workdir target
  • 867f13e7 Makefile: fix clean target
  • b085a04a Fix typo breaking codegen: crds not stored at the right location
  • 0f1d809c Brush up TMC quickstart
  • 53fdaf58 Merge pull request #2720 from ncdc/fix-apiexport-vw-queue-gap
  • c359931e Fix gap in APIExport virtual workspace queues
  • 4b5d5dc3 Trying to fix docs
  • 61243123 Merge pull request #2673 from avinal/avinal/fix-docs-versioning
  • 258292ae Merge pull request #2708 from pdettori/update-docs
  • 2ed49486 .github/community_meeting.yaml: add links to issues
  • c3ca137a document kcp bind commmand to allow to sync deployment in quickstart
  • 163da25a Merge pull request #2705 from ncdc/gather-metrics-at-end-of-tests
  • d5374d5a tests: gather metrics
  • 91a20618 Merge pull request #2704 from kcp-dev/dependabot/github_actions/actions/cache-3.2.4
  • c0207ef2 build(deps): bump actions/cache from 3.2.3 to 3.2.4
  • 22d06c1f Merge pull request #2608 from fgiloux/slice-e2e
  • f53db788 Merge pull request #2401 from jmprusi/jmprusi/syncer-tunnels-pod-logs
  • da4b8d78 Merge pull request #2596 from sttts/sttts-random-workspace-scheduling
  • 8f04da8e make update-contextual-logging
  • 63c32b0c e2e/virtual/apiexport: fix for multi-shard
  • 5aa42789 e2e/virtual/initializingworkspaces: adapt TestInitializingWorkspacesVirtualWorkspaceAccess to multi shard
  • f2b7e8f2 e2e/framework: WorkspaceShard helper
  • ab514538 e2e/authorizer: fix TestAuthorizer
  • 6fb281a0 e2e/virtual/syncer: add TODO_WithoutMultiShardSupport()
  • e5b7fe86 e2e/framework: fix NewPrivilegedOrganizationFixture cross-shard
  • b5697327 e2e/authorizer: fix priming race
  • 32684280 e2e: unify subtests to be compatible with Goland
  • 3bdf22c5 reconciler/tenancy/repliatelogicalcluster: fix logic typo
  • e0cf0fcf cmd: seed random number generator
  • 1da27550 e2e/apibindings: fix TestAPIBindingPermissionClaimsConditions
  • 7b5e5cc3 cache: replicate ClusterRoleBinding pointing to system:admin ClusterRole
  • 641ac0da reconciler/tenancy: replicate LogicalClusters for WorkspaceType
  • b68b3dbb reconciler/cache/labellogicalcluster: fix comments and log messages
  • e27c70a3 e2e/apibindings: in TestAPIBinding fix virtual workspace testing
  • 20fa0708 authorization: wire global informers into requiredgroups and workspace content
  • cbea43cd reconciler/replicateclusterrole: replicate ClusterRoles for workspacetypes with "initialize" verb
  • 56ad664c reconciler/tenancy/workspacetype: rename clusterworkspacetype to workspacetype
  • d1e28e27 reconciler/workspacetype_controller: assing shard.spec.VirtualWorkspaceURL not shard.spec.externalURL
  • 0ad09114 cache: wire cache client and cache informers into virtual workspaces
  • 6638bb85 cache: replicate rbac logicalcluster access objects only when LogicalCluster is replicated
  • f3b65e6d cache: replicate LogicalClusters for APIExport workspace and relevant rbac objects
  • eb8ceb01 Fix e2e compliance TestValidatingWebhooInWorkspace
  • 4cb260f0 e2e/apibindings: count * lists across all shards
  • 47f49804 e2e: kubeconfig for any shard
  • de14bc3a Makefile correctly pass SHARDS variable to test-e2e-sharded-minimal target
  • 86bc8aa8 apis/tenancy/workspaces: add region label column
  • c9b50c3f admission/webhooks: wire global webhook configurations
  • a8981943 cache: replicate admission webhooks
  • 24925e2e reconciler/tenancy: add replicate controller for workspacetypes
  • 31bca0f1 reconciler/cache: generalize label controllers
  • 4731a79a reconciler/apis/replication: unification and plumbing cleanup
  • cb85daed admission/apibinding: wire cached informer
  • 3683693a reconciler/apis/replication: some more logging
  • c2ca9cf0 e2e: print workspace shards
  • a242969f reconciler/apis/replication: consider ClusterRoles from system:admin
  • 312c223c reconciler/apis/replication: support * in ClusterRules
  • ebbc2359 e2e: unify how APIBindings are created
  • 009d5ea9 cache: replicate synctargets and placements
  • 0427f25c reconciler/cache/reconciler: ignore system:* clusters
  • 6176eb40 Makefile: add SHARDS parameter defaulting to 2
  • c2aebae5 e2e/reconciler: rename clusterworkspaceshards -> shards
  • 8a03f734 apis/tenancy: fix json tag for workspace.spec.location
  • bb74e2b2 e2e/authorizer: remove misplaced t.Helper() call
  • 0f8b26d9 workloads: schedule root:compute to root to make bootstrapping work
  • daaf2d31 reconciler/workspace: schedule to random shard
  • 37990808 Merge pull request #2701 from ncdc/bump-k8s
  • 9bbcb448 Bump k8s: log unstructured in reflector correctly
  • 583d1c85 Merge pull request #2698 from stevekuznetsov/skuznets/add-logging
  • 922f2652 reconcilers/workspace: add logging to outgoing client calls
  • 0944f91d Merge pull request #2690 from nrb/fix-apiexport-404
  • 7d8e6165 Merge pull request #2694 from stevekuznetsov/skuznets/e2e-data-race
  • 36890507 Add end-to-end tests for APIExportEndpointSlice
  • 65210a5c test/e2e: remove a data race
  • 927a1b66 Merge pull request #2684 from ncdc/deflake-syncer-unit
  • b2a592d3 Do not look up APIExports in the generic webhook
  • b3f3bf82 Merge pull request #2683 from stevekuznetsov/skuznets/update-listers
  • 62f5f11d Deflake quota e2e
  • 36539106 *: update listers to have correct NotFound messages
  • 1e6a986b Deflake TestSpecSyncerProcess
  • 9c4e0f63 Merge pull request #2680 from hasheddan/status-phase
  • 03c6a960 Use status.phase as printer column on workspaces and logical clusters
  • 82e6c75f Merge pull request #2678 from s-urbaniak/sar-audit
  • 96cfff95 Merge pull request #2661 from csams/logicalcluster-deletion-controller-committer
  • 8d7c2c90 Merge pull request #2677 from ncdc/fix-standalone-vw-1-minute-watch-timeout
  • 56f6ad8a pkg/authorization: enable audit logging for SAR requests
  • 4c4e6875 Avoid exposing the tunneler proxy endpoint
  • 567778ca cliplugins/sync: add connect subresource permissions on creation
  • 3e6248ac make update-contextual-logging
  • ccfc743a tunneler: change syncer-tunnels paths
  • c1e00524 tunneler: migrate to structured logging
  • 502e5871 tunneler: Export DefaultTunnelPathPrefix const
  • b8efc9f2 Server: Register WithPodSubresourceProxying handler
  • 20133ed1 tunneler: Helper function to build the proxy path
  • b5f10356 Upsync VW: Allow Pods to be upsynced
  • 963ffdeb Add a kcp RequestInfoResolver
  • 5f7767fd fix docs versioning and permissions for gh-pages
  • ab2757a1 Merge pull request #2667 from hardys/vw_fix
  • 786ebb89 Merge pull request #2640 from s-urbaniak/e2e-client-certs
  • 23cad0f0 Merge pull request #2674 from csams/clusterworkspacetype-controller-committer
  • aec7a5d8 clusterworkspacetype_controller uses committer.
  • 47037eb7 test/e2e: add support for dynamic users using client certs
  • cb8dd3c4 Merge pull request #2669 from ncdc/apigen-go-mod
  • d95b92ec Move cmd/apigen to its own go mod
  • 69462e73 Move go mod tidying/verification to hack scripts
  • 4fcafc26 Merge pull request #2670 from hasheddan/rem-parens
  • 3a1f639b Remove trailing parentheses in ASCII diagram link
  • 171f297c Merge pull request #2637 from nrb/fix-2622
  • 82bebb1c server: revert non-standalone VW URL
  • 5e7b399e squash: variable name
  • 7b3126cb Merge pull request #2660 from p0lyn0mial/controllers_global_inf_for_shards
  • 01d4f409 controller: use the gloabl informer to get Shards
  • b0d1d8c2 Merge pull request #2651 from p0lyn0mial/e2e-reconciler-scheduling-tmc-multi-shard
  • 26bb6a47 e2e/syncer/dns: temporarily schedule all workspaces on the root shard
  • 5f4558ae e2e/reconciler/deployment: temporarily schedule all workspaces on the root shard
  • d9efd26c Merge pull request #2659 from hardys/2407_validation_fix
  • 6024419a e2e/syncer: temporarily schedule all workspaces on the root shard
  • 403e498c e2e/reconciler/namespace: temporarily schedule all workspaces on the root shard
  • 600dbc10 e2e/reconciler/locationworkspace: temporarily schedule all workspaces on the root shard
  • 493fc562 e2e/reconciler/cluster: temporarily schedule all workspaces on the root shard
  • e7494737 e2e/framework: add TODO_WithoutMultiShardSupport() option for workspaces
  • 819d3148 e2e/reconciler/scheduling: temporarily schedule all workspaces on the root shard
  • a745b41b Use function instead of lister for APIBindings
  • 6a2b8993 logicalcluster_deletion_controller uses committer
  • 5e4c0b7e server: relax ShardVirtualWorkspace flag validation
  • 3816204a Merge pull request #2653 from csams/bootstrap-controller-committer
  • 338eae6c Look up APIExports directly against the lister
  • 451e28ca Merge pull request #2567 from kcp-dev/dependabot/github_actions/actions/cache-3.2.3
  • 055931c6 Merge pull request #2531 from kcp-dev/dependabot/github_actions/uraimo/run-on-arch-action-2.5.0
  • 43b6fc2e Merge pull request #2407 from hardys/shard-standalone-vw2
  • 54704825 bootstrap_controller uses committer.
  • c9815e3d Merge pull request #2648 from csams/placement-controller-committer
  • 4506fdc0 Merge pull request #2644 from ncdc/fix-conversion-flake
  • 893c3d3c Merge pull request #2641 from p0lyn0mial/apiexport-wire-global-informer
  • 7a1c433c Merge pull request #2639 from p0lyn0mial/e2e-workspace-fix-for-multishard
  • 998a78bc Merge pull request #2632 from p0lyn0mial/e2e-watchcache-fix-for-multishard
  • b32ddf0a sharded-test-server: add virtualWorkspacePort
  • 4981b46b sharded-test-server: refactor vw to start/wait
  • 6037c7ac sharded-test-server: wait for vw readiness
  • 6efd47fd e2e-sharded enable standalone vw
  • b331d9ab sharded-test-server: support standalone vw
  • 7fab3576 cmd/virtual-workspaces: create client for shard
  • a016b67f server: support standalone vw
  • 4c3fcbb7 Merge pull request #2645 from s-urbaniak/fix-apibindig-reconcile
  • cbe5a53e pkg/reconciler/apis/apibinding: return error in case of conflicts
  • e8d30d12 placement_controller uses committer
  • 52a574c2 Merge pull request #2646 from ncdc/func-ptrs/extraannotationsync
  • 0af0c708 extraannotationsync: use function pointers
  • 274f0995 Merge pull request #2628 from s-urbaniak/issue-2627
  • 457fd7da Merge pull request #2638 from csams/location-controller-committer
  • 85201269 e2e/conversion: wrap create in eventually
  • 4ec26db6 pkg/server: ensure that home workspace handler gets authz with audit logging
  • b82703a6 e2e/reconciler/workspace: use cluster client
  • 6bb62495 reconciler/apiexport: use the gloabl informer to get Shards
  • cad7ebd0 location_controller uses committer
  • c07cb922 Merge pull request #2636 from csams/permissionclaimlabel-committer
  • ab9fac40 Use APIExport cluster names within webhooks
  • 59b391a6 permissionclaimlabel_controller uses committer
  • 82e62969 e2e/watchcache: use cluster client for creating content in a workspace
  • 8927e9de Merge pull request #2629 from fgiloux/admission-cleanup
  • 33064b51 Merge pull request #2620 from p0lyn0mial/run-replication-tests-on-shared-instance
  • 97b7b0c1 Enqueue location upon synctarget update
  • 80bc8346 Merge pull request #2611 from s-urbaniak/self-contained-e2e
  • 733bcf13 Removing WorkspaceTypes indexers that are not used
  • 7c67ee28 Removing apiExportLister as it is not used
  • eb96d8b2 sharded-test-server: write kcp-admin kubeconfig after shards are ready
  • 7702dde0 provide createCacheClientConfigForEnvironment
  • ecd02175 framework: expose LoadKubeConfig
  • 57c6da1e remove TestCacheServerStandalone
  • f74a2a89 move disruptive scenarios to its own list
  • 2e8d83de use random resources name so that the tests can be run multiple times
  • 1a135124 run replication tests on a shared kcp instance
  • 472bc773 test/e2e/virtual/apiexport: make authorizer test self-contained
  • 9358474a Merge pull request #2105 from ncdc/cel-conversion
  • 301f064c Add APIConversion support
  • 4fc4997e Update k8s for CR conversion support
  • 41bcbca0 bump-k8s.sh: update kube branch
  • 150ade7c Merge pull request #2618 from qiujian16/fix-bind
  • 8a4642bd Add bind permission for kubernetes apiexport
  • f9a3cd84 Merge pull request #2560 from fgiloux/slice-permissions
  • 32503be9 Merge pull request #2431 from lionelvillard/kind-calico
  • 372d5d3b Merge pull request #2605 from vincepri/enable-mutation-detector
  • cc0f7568 Enable KUBE_CACHE_MUTATION_DETECTOR in e2e tests
  • 2fe22b64 Merge pull request #2604 from vincepri/rbac-rules-roles-merging
  • a044d767 :bug: Role and ClusterRole merger should not modify cache objects
  • ca7e1c5b Merge pull request #2610 from hardys/private_scratchdirs
  • 187ac047 Revert "reconciler/cache: switch to safer json.Marshal+Unmarshal"
  • cab2d594 e2e: TestAuditLogs remove duplicate audit-log-path
  • 0a230b92 Admission for APIExportEndpointSlice, check for bind authorization against the referenced APIExport.
  • 31c76aa8 Merge pull request #2609 from sttts/sttts-replication-controller-rewrite
  • aba98908 Merge pull request #2606 from qiujian16/index-fix
  • 1a046b6d reconciler/cache/reconciler: simplify and generalize
  • 929f7a6b Merge pull request #2469 from fgiloux/partition-reconciliation
  • fb014bc7 Merge pull request #2592 from p0lyn0mial/cache-crdlister-stop-the-bleeding
  • d2241629 Amend apiexportendpointslice reconciliation to filter endpoints by partition
  • ea32ecd6 Merge pull request #2591 from hardys/e2e_empty_audit
  • b21a9a65 IndexByLogicalClusterPathAndName should return clusterpath and name
  • e5ce29aa Merge pull request #2595 from stevekuznetsov/skuznets/remove-tenancy-v1beta1
  • 444abccb *: remove tenancy.kcp.io/v1beta1
  • e3340e2c *: use tenancyv1alpha1.Workspace
  • 9942bb0d pkg/apis: add Workspace to tenancy.kcp.io/v1alpha1
  • b56311f0 Merge pull request #2600 from ncdc/fix-logger
  • 5d77df78 Merge pull request #2477 from vincepri/caching-authorizer
  • 844b2cee Merge pull request #2602 from sttts/sttts-statusless-committer-equal
  • 4c8fd05b committer: fix equality check in statusless committer
  • 8d9f71c2 Merge pull request #2594 from sttts/sttts-cache-nil
  • c90dbc5e Merge pull request #2599 from ncdc/bump-pr-verifier
  • 0831b69e reconciler/cache: switch to safer json.Marshal+Unmarshal
  • b28764ae Log each gvr by itself instead of accumulating
  • 9def0149 Stop checking PR descriptions in CI
  • f7fa645b lint: disable broken thelper
  • b34d3a43 reconciler/cache: clean up test
  • cde13bc5 reconciler/cache: fix deletion of gone objects with replicate false
  • 79639e15 reconciler/cache: remove nil equality reflection
  • c1ef69cd 🌱 Use caching authorizers per-workspace
  • d9ea7a60 PrivateKcpServer: enable audit-policy
  • 8568db4b Merge pull request #2586 from sttts/sttts-e2e-workspace-fixture
  • 9c49cc8b tunneler: type clusterName
  • 8e97f3db server: remove clusterworkspace references
  • 37113bf1 reconciler/workspace: fix nil pointer exception
  • f8acae0c reconciler/apibinding: prettier conflict message
  • 74960b45 cli/bind/compute: identify empty path, cluster name and canonical path
  • c35142b5 reconciler/workload: fix path references to location workspaces
  • 63d22a16 e2e/framework: print logical cluster on workspace create
  • cec64329 e2e: adapt tests
  • af8705f5 cache: stop reporting an error from a CRD lister on incorrect cluster name
  • ca40e168 Merge pull request #2562 from sttts/sttts-global-authz
  • 82b52e59 cmd/apigen: don't create rbacv1 schemas and export
  • 8a257377 Address review comments
  • 0ce4728c reconciler/committer: add commit for status-less resources like ClusterRoles
  • a2159125 Make 'make lint' happy
  • 52e52550 Makefile: add clean target
  • 8b5d4e43 apis/core: replace replication label with internal.kcp.io/replicate annotation in core
  • 696c6624 reconciler/workspace/scheduler: wire global APIExports
  • d8480e0c admission/webhooks: wire global APIExports
  • 21867764 admission/permissionclaims: wire global APIExports
  • 6ff714e2 cli: remove hack to hide 404 on workspaces
  • 16306377 admission/workspacetypeexists: wire global workspace types
  • c787e9af admission: add global informers to SetKcpInformers
  • a5dd0ebf cache: create rbac objects as CRDs
  • eb7b2577 Bump k/k
  • f10b47dd authorization: wire global informers
  • e60f9adb cache: replicate ClusterRoles+ClusterRoleBindings
  • ac5eba6a authorization/maxpermissionpolicy: find export in cache server
  • 5000d806 FIX: server: wire cache informers instead of root informers
  • b9cedbde Merge pull request #2590 from csams/dry-committer
  • 95c4b1a2 Merge pull request #2588 from vincepri/disallow-parent-fix-test
  • 50f251e5 Remove panic cleanup comment
  • dada21e1 e2e/framework: return path and object from workspace fixtures
  • 8ad4116b Satisfy the linter
  • 5457a13b DRY committer factory functions
  • 8d3a51e1 Merge pull request #2587 from vincepri/update-logcheck-040
  • 8fbc0467 Update logcheck to 0.4.0
  • 9aae0aab Merge pull request #2576 from stevekuznetsov/skuznets/more-logging
  • fd9f1b2c WorkspaceType admission should respect LimitAllowParents.None
  • 96b7ab34 *: update to some structured, contextual logging
  • 4b36a839 Merge pull request #2452 from davidfestal/refactor-syncer-resource-controller
  • 3de7ac8b Fix wrong informer use
  • d82daf79 Merge pull request #2578 from p0lyn0mial/replication-e2e-workspace-type
  • 6a0e24df Merge pull request #2580 from sttts/sttts-core-crd-ref
  • fd6cb5f1 Merge pull request #2577 from vincepri/fix-contextual-logging-diff
  • 7db7403d replication tests: document replicateResource and replicateResourceNegative
  • a22427d0 Fix PR comments
  • 7f76f5e3 Syncer: add endpoints controller as an example...
  • 104dc471 Syncer: Wire the Upsyncer ddsif
  • 8e1fe9cd Syncer: add controller manager
  • c5a4b0f3 Syncer: separate resource controller and informers
  • e2d3a45e Merge pull request #2570 from davidfestal/add-upsyncer-url-in-synctarget
  • 65fed5c2 crd-ref: update for core group
  • b362972d replication test: cover replication of WorkspaceType resources
  • 20567c04 replication tests: introduce generic functions for replication and make test scenarios use them
  • c3648821 replication tests: use dynamic client
  • 1ef7117f verify-contextual-logging should diff from old to new
  • c1052203 Merge pull request #2569 from vincepri/rename-clusterws
  • c7f0e68d Rename ClusterWorkspace
  • 5dcdd3ee Merge pull request #2575 from ncdc/strongly-typed-enqueues/apiexport
  • a9964dee Merge pull request #2542 from lionelvillard/dns-e2e-tests
  • ffbf976f Merge pull request #2574 from ncdc/strongly-typed-enqueues/vw-apiexport
  • 8e1e6096 Synctarget: Have URLs for both syncer and upsyncer
  • 1f75c0f5 Merge pull request #2573 from ncdc/strongly-typed-enqueues/crdcleanup
  • 1370853b apiexport: strongly type enqueue params
  • 8dfade17 vw/apiexport: strongly type enqueue params
  • 2b25d263 crdcleanup: strongly type enqueue params
  • 16e55421 Merge pull request #2543 from stevekuznetsov/skuznets/rename-this
  • e1320de8 test/e2e: create privileged workspaces as shard admin
  • bc2399d9 test/e2e: improve end-to-end authorizer tests
  • ea4dd9df *: removce tenancyv1alpha1.ClusterWorkspace types
  • d67c63ca *: remove ClusterWorkspace projection
  • 16a9ade9 teat/e2e: fixup a workspace location literal
  • 35b22675 *: automated refactor v1alpha1.ClusterWorkspace -> v1beta1.Workspace
  • 1a874893 pkg/apis: use tenancyv1alpha1.WorkspaceTypeReference
  • a133b778 test/e2e: update workspace options to use label selector
  • c29037ca Bump actions/cache from 3.0.11 to 3.2.3
  • 54e4bfd6 Merge pull request #2561 from s-urbaniak/index-controller-rename
  • 8559651f Merge pull request #2565 from p0lyn0mial/index-unit-test
  • c5915472 Merge pull request #2559 from sttts/sttts-remote-to-cache
  • 89f770f4 index: add missing unit tests
  • 031f0644 index: remove a workspace regardless of its current phase.
  • 600e3bc4 Merge pull request #2557 from vincepri/status-url-to-spec
  • 16dbd768 ⚠️ Move Workspace.Status.{Cluster, URL} to Spec
  • 2447ae5c Merge pull request #2564 from ncdc/fix-apiexport-vw-enqueue-from-schema
  • dc351329 Fix APIExport virtual workspace API bug
  • 53f8368f move and simplify CreateResource
  • c3e6caba add e2e DNS tests
  • d4870c0d cli: fix workspace type printing
  • e7899193 cache: replicate WorkspaceTypes
  • 72918934 reconcilers: unify global informer variable names
  • 583952bf reconciler/tenancy/initialization: lookup types and exports in cache
  • 752bf5f9 cli/ws/create: add --location-selector flag
  • ec541251 reconciler/workspace/scheduling: simplify chooseShardAndMarkCondition
  • 3a903239 virtual/initializingworkspaces: remove remaining ClusterWorkspace dependency
  • 59eac229 sharded-test-server: recolor cache output in cyan instead of red
  • fe891865 server: wire cache informers instead of root informers
  • 63ec1821 Merge pull request #2558 from s-urbaniak/cluster-workspace-rename
  • 6744cde1 pkg/proxy/index: rename cluster workspace index
  • cfe66ea8 pkg/virtual/initializingworkspaces/builder: rename cluster workspace
  • 513c3060 pkg/reconciler/kubequota: rename cluster workspace quota
  • b46668a2 pkg/reconciler/garbagecollector: rename cluster workspace garbage collector
  • 4a4eb7f5 pkg/admission/kubequota: rename cluster workspace deletion monitor
  • 031f3745 pkg/admission/kubequota: rename cluster workspace client getter
  • a7037ee5 Merge pull request #2556 from vincepri/cel-go-upstream
  • 5fa7e948 :seedling: Switch cel-go to upstream v0.12.6
  • b7c62361 use kind 0.17
  • f2b5907d install Calico in kind
  • fe313654 Merge pull request #2554 from hardys/shard_local_client
  • 0f494162 Merge pull request #2555 from davidfestal/debug-deployment-coordinator-e2e
  • d336e533 Merge pull request #2480 from vincepri/update-golanci-lint2
  • e5f1ad0c workspace controller: use loopback client for local shard
  • a70ae8fe Check deployment access in e2e test
  • ac0b2c42 Merge pull request #2547 from vincepri/add-path-home-ws
  • 84bc33e7 Merge pull request #2551 from astefanutti/pr-cross-compile-image
  • 0e0d1ded Fixup linters for tests files (helpers, http, comments)
  • 95daf4ab Fix noctx
  • fe1498db Fix revive:bool-literal-in-expr
  • 55a9f595 Fix usestdlibvars
  • 692473a4 Fix use of net.JoinHostPort
  • da3cddcc Add ReadHeaderTimeout to http.Server
  • 0dab397a Fix Implicit memory aliasing in for loop
  • 7dfae178 Fix gosec in profiling, test-server
  • 1bb513d0 Fix revive:package-comments
  • 308f510e Fix gocritic:sprintfQuotedString
  • 7100e4dc Fix gocritic:deferInloop
  • 4575c98d Fix gocritic unlambda, deferUnlambda
  • 9311dae1 Fix gocritic:captLocal
  • a5f7bcf4 Fix gocritic:indexAlloc
  • 3618edb1 Fix gocritic:newDeref
  • bb23b60d Fix gocritic:returnAfterHttpError
  • def57286 Fix dupword
  • ed1c41ce Fix revive fmt.Errorf
  • 6937583f Fix bodyclose
  • 8cb053ab Fix var-declaration
  • bc29d21c Fix prealloc
  • a8301182 Fix revive:if-return
  • 0c56a5f1 Fix errchkjson
  • f56f6340 Fix revive:receiver-naming rule
  • 0454ea68 Run golangci-lint --fix (comments, newlines, etc)
  • 4d956d08 Update golangci-lint 1.50.1, add more linters
  • c693005c Merge pull request #2535 from p0lyn0mial/path-annotation-ut
  • 059512d2 Merge pull request #2553 from sttts/sttts-workspace-refactor-cleanup
  • ca465743 Merge pull request #2432 from fgiloux/slice-reconciliation
  • e82f08e4 cli/bind: allow non-root export paths
  • d6698631 Address workspace refactor comments
  • 12d04732 Add shard filtering, enqueuing APIExportEndpointSlices only when the VirtualWorkspaceURL or labels have changed
  • 879c62c4 Add a second struct to have access to the APIExport informer from the enqueue logic but not from the reconcile one. Remove unnecessary getters.
  • f899fbe4 Rename ClusterWorkspaceShard -> Shard in messages and variable names
  • 1848e2e7 Deactivate server side apply for the cache server only in embedded mode.
  • e22a9240 Fix spelling in file test/e2e/cache/cache_server_test.go
  • 589e9e34 Remove the SSA deactivation introduced for the cache server. This prevents SSA to work with kcp when the cache server is embedded.
  • fe14d33b Make the cache server mandatory, either embedded (default) or as a remote server when cache-server-kubeconfig-file is specified
  • 3ffe547b First reconciliation of APIExportEndpointSlices, no filtering
  • c5820362 Merge pull request #2487 from vincepri/add-test-healthz
  • 5ebd9a03 Merge pull request #2545 from davidfestal/skip-upsynced-resouces-in-resource-scheduling
  • e7d58749 Skip upsynced resources in resource controller
  • 287a0f77 ci: Build container image on pull requests
  • 618d9868 Cross-compile container image binaries from host platform
  • c14bdeef Merge pull request #2546 from ncdc/apibinding-logging
  • 4353c45a Merge pull request #2549 from ncdc/bump-cel-go
  • 224fce3d Add path annotation key when creating home workspace
  • 4f142b6e cel-go: update to pull in data race fix
  • 6f07d587 Merge pull request #2544 from vincepri/kcp-image-workflow-fix
  • 5db356a7 Merge pull request #2540 from lionelvillard/fix-macos-static
  • 82504cf6 pathannotation admission plugin: provide getLogicalCluster function for easier unit testing
  • b7565b02 Merge pull request #2440 from davidfestal/more-useful-ddsif
  • c1290822 pathannotation admission plugin: add missing unit tests
  • 9a47d0df Add authorizer test for static endpoints
  • 5f544fda Scope APIBinding logger
  • 417e8e3a Merge pull request #2541 from kylape/fix-2507
  • aba1f58c :bug: Docker build/push should not use a matrix
  • 711844b4 Add buffering in crdGVRSource.Subscribe()...
  • bcab2554 Increase CRD cleanup requeue delay; remove e2e test
  • 60d2231d Add missing CGO_ENABLED flag in install target
  • 86ccd296 Fixes for new PR review comments
  • c6bea382 Merge pull request #2508 from tsuzu/main
  • bf532cea Merge pull request #2524 from stevekuznetsov/skuznets/rename-this
  • 3208272b Merge pull request #2536 from p0lyn0mial/kcp-fix-sync-for-optional
  • 1ca8aa37 *: use 'logicalCluster' instead of 'this'
  • b5eef4f5 Remove unnecessary contructor
  • 4ae782b7 Fix PR comments
  • 06670f25 DDSIF: Make it more generally useful by:
  • 574c65e4 kcp: fix waitForOptionalSync method to wait for a proper signal.
  • 326cb5b8 build(deps): bump uraimo/run-on-arch-action from 2.3.0 to 2.5.0
  • fb2af5d7 Merge pull request #2511 from s-urbaniak/fix-double-audits
  • 8263d499 Merge pull request #2528 from vincepri/use-buildx-kcp-image
  • 9373996f Use buildx to build KCP images
  • 372c93fd Merge pull request #2512 from vincepri/distroless-debug
  • babb3eee Merge pull request #2522 from stevekuznetsov/skuznets/remove-multi-cluster-round-tripper
  • 0758fa89 Merge pull request #2521 from stevekuznetsov/skuznets/rename-thing
  • f1fdb95b Add conditions to APIExportEndpointSlice
  • 73fca6a0 Fix spelling
  • dddaddb5 Fix comment
  • 4a4414c9 Use distroless/static:debug as base image
  • 759f5101 Merge pull request #2523 from fgiloux/sttts-kcp.io
  • 1af8fd98 kcp.dev -> kcp.io for kcp.dev/shard and kcp.dev/cluster
  • d89bf349 Merge pull request #2516 from ncdc/get-by-path-helper
  • dcd6fc9a test/e2e: remove MultiClusterRoundTripper
  • 0cca2e6a *: s/SystemBoundCRDSClusterName/SystemBoundCRDsClusterName/g
  • 400656e6 Merge pull request #2519 from ncdc/keyfunc
  • bf6ba0a5 pkg/authorization: prevent double audit logs
  • abf5e514 Merge pull request #2520 from ncdc/remove-cluster-ctx-roundtrip
  • a88a8c40 logicalcluster deletion: switch to .Cluster()
  • c297f353 Merge pull request #2515 from ncdc/deflake
  • 3577c3b9 Use deletion handling keyfunc where needed
  • dc8dd608 Add indexers.ByPathAndName helper
  • 7999eaa4 Fix up pkg/reconciler/core/logicalcluster
  • 58ba9766 Rename files with kcp.dev
  • d2c394dd Temporarily, rename kcp.io/cluster back to kcp.dev/cluster
  • 40d5f4d6 Replace kcp.dev domain with kcp.io
  • 4f03ae05 Merge pull request #2514 from ncdc/quiet-front-proxy
  • b584629f Deflake apibinding immutability test
  • 6debce3e sharded-test-server: add quiet support to front-proxy
  • c67d504c Merge pull request #2510 from sttts/sttts-clusterworkspace-phase-b-rebase-cluster-id
  • ac2163d7 test/e2e/virtual/syncer: use the root:compute logicalCluster
  • c340e0b1 reconciler/workspace: move CRB creation into a logicalcluster controller
  • 2d057a97 authorization/policy: grant logical-cluster-admin * on logicalclusters/status
  • 4dcefed0 shared-test-server: wire --logical-cluster-admin-kubeconfig
  • 3854f1bc Revert "server: wire through --external-admin-kubeconfig"
  • a30908e4 reconciler/tenancy/workspace: fix unit test typo
  • ff3dd46d e2e: do LogicalCluster in NewWorkspaceFixture check to avoid race with eventual consistent index
  • b1eacc12 e2e: implement NewOrganizationFixture through NewWorkspaceFixture
  • 8f87a265 proxy: finish ClusterWorkspace -> Workspace transition
  • 5075b74c reconciler/apibinding: add temporary root shard informer to export lookup
  • 34e349cd (sharded-)test-server: add --quiet flag for less noise
  • 339a071a server: wire through --external-admin-kubeconfig
  • b7ec85da sharded-test-server: restore sub-command output
  • 36347fdf shard-test-server: set default context to root to match kcp start
  • 2c1c47f6 reconciler/workspace/scheduling: log chosen shard
  • 1807ba97 reconciler/workspace/scheduling: remove condition side-effect in chooseShardAndMarkCondition
  • 66808902 syncer: fix boilerplate
  • 422b7347 proxy: fix redirecting to changed cluster paths
  • d35324aa shard-test-server: run proxy with --v=4, same as the shards
  • 2738898d proxy: fix shard URL in context
  • 431fe5ef proxy: start twInformer
  • c696f800 proxy: add logging
  • 3755f5b7 Address review comments
  • 1fc1a358 SQUASH: index: rewrite with ThisWorkspace logic - fix map panic
  • a305232c Adding back tests for the deletion of logical clusters after the workspace refactoring
  • 036f9d1a kubectl-sync: make syncer use the cluster name for workspace movement resilience
  • d03d037d syncer: clarify path and cluster name
  • c02d1cfc syncer: compute sync target key from cluster name
  • 533c6683 SQUASH: cliplugins/bind-compute: pretty up output
  • ff977596 REVISIT: apis/workload: restore local export reference in SyncTarget supported API default
  • d93cadae reconciler/apis/extraannotationsync: improve logging
  • 577f93a3 SQUASH: cliplugins/bind-compute: pretty up output
  • 4304088b logicalcluster v3: manual adaption - reconciler/workload/placement typo
  • 7c55f499 SQUASH: cliplugins/workspace: make --enter to use workspace name
  • 67ad48fd cliplugins/workspace: make --enter to use workspace name
  • d6866614 make update-contextual-logging
  • 56930993 SQUASH: apis: move & rename tenancy ClusterWorkspaceShard to core Shard – shard workspace bootstrap typo
  • 967cb164 apis/tenancy: remove unneeded root+system workspace naming restriction
  • 0ee36ddc apis: move RootCluster into pkg/apis/core
  • ba8fac39 SQUASH: apis: move & rename tenancy ClusterWorkspaceShard to core Shard – fix gvr in cache replicator
  • 79be3c51 bump(kcp-dev/logicalcluster): v3.0.1 to get proper system logical cluster handling
  • e85eb180 pkg/softimpersonation: remove soft impersonation
  • 12456295 config/root: fix home creation root policy
  • bb9fabb9 reconciler/workspacedeletion: rename to logical cluster
  • 8ac44e0a reconciler/workspacedeletion: split deletion finalizer from tenancy
  • 8e98f211 SQUASH: apis: rename & move tenancy ThisWorkspace to core LogicalCluster – logical cluster deletion
  • 7f827241 SQUASH: e2e/reconciler/clusterworkspace: switch to Workspace
  • 5a944f65 pkg/authorization: add delegation reason in audit
  • 0ed03b30 pkg/authorization/required_groups_authorizer: add delegateauthorization and unit tests
  • 669dc972 pkg/authorization/workspace_content_authorizer: add delegateauthorization
  • ee45587a SQUASH: apis: rename & move tenancy ThisWorkspace to core LogicalCluster
  • ab5f6b2d SQUASH: apis: move & rename tenancy ClusterWorkspaceShard to core Shard
  • 87d89996 boilerplate: fix apis/core/types.go
  • 568410dd apis/core: name LogicalCluster "cluster"
  • 8989503d make codegen
  • 53af6ba1 Address review comments
  • dd4c327f apis/apis: add path pattern
  • 7ef00ffd apis/apis: fix json name for path field
  • 84da15c5 logicalcluster v3: manual adaption - crd partial metadata e2e
  • 7bd4e7c1 go.mod
  • fd5a962b make update-contextual-logging
  • 7c5e625c server/home-workspace: add type initializers to LogicalCluster
  • d3c08859 admission/workspacetypeexists: lookup types also in root outside of a hierarchy subtree
  • 9535b927 indexers: fix and unify APIBindingsByAPIExport index usage
  • 35177067 apis: rename tenancy ClusterWorkspaceType to WorkspaceType
  • 315f7336 apis: move & rename tenancy ClusterWorkspaceShard to core Shard
  • 699697d0 apis: move types and constants from tenancy to core
  • 1a87ea25 apis: rename & move tenancy ThisWorkspace to core LogicalCluster
  • a6a928e9 apis: move path annotation to core package and shorten to kcp.dev/path
  • d4e56238 apis: add core.kcp.dev group
  • 199272eb Switch to random cluster name
  • 104f0560 make lint
  • 92784296 make codegen
  • dfd75ec7 logicalcluster v3: manual adaption - deployment splitter
  • 81ad7fe0 apimachinery/v2: mechanical rewrite
  • a7304a0d go.mod
  • 9a821cd7 logicalcluster v3: manual adaption
  • e113e05b reconciler/apis/apibinding: split up reconciler
  • 2d6aeaa8 REVISIT(dfestal): cliplugins/bind-compute: semi-correct handling of local bindings
  • 4a99fde1 reconciler/apis/apibinding: cosmetics in conflict checker
  • 8f798251 apis/workload: clean up
  • 3a31441e cliplugins/bind-compute: fix error logic
  • ddba4087 cliplugins/bind-compute: pretty up output
  • b50fbaa6 apis/apis: turn APIBinding export reference into path+name
  • 45e38a67 reconciler/workload/synctargetexports: fix error type
  • 99847ffe reconciler/workload/synctargetexports: fix of panic
  • 22b94bfa apis/*: make export refs path optional
  • 667c0388 apis: allow non-root path references
  • b74d7532 logicalcluster v3: manual adaption – e2e/reconciler/clusterworkspace
  • 7d731127 logicalcluster v3: manual adaption – e2e/reconciler/clusterworkspacedeletion
  • 9b7fddac REVISIT(sttts): special case thisworkspaces as identity-less
  • 55f8af2b Remove canonical path header
  • 66ba35ee reconciler/tenancy/workspace: store canonical path on ThisWorkspace and use for pathannotation admission
  • 17009290 REVISIT(dfestal): e2e/virtual/syncer: disable test depending on root:compute cluster name
  • 76a1dbe6 logicalcluster v3: manual adaption
  • ffe69ffd indexers: make ByLogicalClusterPath distinct from ByLogicalClusterPathAndName
  • 54968f08 reconciler/tenancy/workspace: test and fix scheduling with existing ThisWorkspace
  • d58ff24e reconciler/tenancy/workspace: readd TestReconcileScheduling
  • cd903170 logicalcluster v3: New -> NewPath
  • 84f1cd72 reconciler/tenancy/scheduler: double check already existing ThisWorkspace has right owner
  • d5429211 server/localproxy: combine with WithClusterScope to avoid forcing non-names into cluster.Name
  • 260fd7b5 logicalcluster v3: clarify genericrequest.Cluster wildcard handling
  • 8d95d652 logicalcluster v3: manual adaption
  • 3e152c01 reconciler/garbagecollector: port to ThisWorkspace
  • b87ea5bc admission/namespacelifecycle: port to ThisWorkspace
  • ac76eec5 admission/kubequota: finish ThisWorkspace port
  • c5f31786 Mechnical rewrite: logicalcluster.{Name -> Path}, tenancy.Cluster -> logicalcluster.Name
  • 2b974164 import github.com/kcp-dev/logicalcluster/v3
  • 4dfb80f3 logicalcluster v3: manual adaption - e2e
  • abc0b7a0 cli/bind+compute-bind: temporarily switch to "cluster" in bindings
  • 49c59982 admission/clusterworkspacetypeexists: port to path annotations
  • 4850745c apis/apis: adapt slices to cluster references
  • cb686d33 apis/tenancy: align APIExport reference with path and export
  • 4f50e645 apis/apis: switch export reference from path to cluster - manual type fixes
  • d007294e apis/apis: switch export reference from path to cluster – mechanical adaption
  • 976f2df8 apis/apis: switch export reference from path to cluster
  • e26d9a3f reconciler/workload/apiexport: TODO not to reference root:compute
  • 3309d1c7 apis/apis: rename workspace export reference to "export"
  • 03f533db apis/workload: split synctargets from apis group
  • 6e2c6b97 admission: add pathannotation plugin
  • dc23997f admission/clusterworkspacetypeexists: keep existing path in workspace type references
  • d03dad10 Decouple paths from etcd key cluster name
  • cd30f489 Limit temporary cluster name to 61 chars
  • 97e6c456 Temporary: use encoded path as canonical cluster name
  • 1b4fe0e5 server/homeworkspaces: remove legacy mode
  • fe564014 make codegen
  • b312a461 e2e/authorizer: port TestAuthorizer to ThisWorkspace
  • 745dba71 e2e/virtual/initializingworkspaces: port to ThisWorkspace
  • c22bcf06 e2e/conformance/cross_logical_cluster_list_test: fix TestCrossLogicalClusterList
  • 407b829c e2e/reconciler/clusterworkspacedeletion/controller_test: fix TestWorkspaceDeletionController
  • 47618f91 e2e/authorizer: recreate basic workspace access tests formally in vw package
  • e4d983be e2e/virtual/workspaces: adapt to clusterworkspaces
  • c652f962 e2e/virtual/initializingworkspaces/virtualworkspace_test: fix TestInitializingWorkspacesVirtualWorkspaceDiscovery
  • 6325a365 e2e/homeworkspaces/home_workspaces_test: fix "Create a workspace in the non-existing home and have it created automatically through ~" scenario
  • ce05c261 e2e/conformance: fix TestCrossLogicalClusterList
  • f88aaad1 e2e/reconciler/clusterworkspacedeletion/controller_test: deflake
  • 8657f621 e2e/workspacetype/controller_test: fix TestClusterWorkspaceTypes
  • 2e36152a e2e/framework: port AdmitWorkspaceAccess
  • 57eeb7a9 e2e/quota/quota_test: fix TestClusterScopedQuota
  • 2e36a33c e2e/reconciler/clusterworkspace: switch to Workspace
  • 2b4475f7 pkg/server/filters/filters_test.go: fix TestWorkspaceNamePattern
  • f8dbcaa2 reconcilers/tenancy: set Deleting phase annotation
  • c8167586 authorization: update docs
  • db665155 admission/workspace: inherit required groups for authorization
  • e9a55de0 authorization/requiredgroups: replace top-level authorizer
  • 34f2624c authorization/workspace_content_authorizer: port to in-cluster auth
  • eb9cce64 authorization: rm unused variable
  • ea6d498e admission/clusterworkspacetypeexists: use typed qualified CWT references
  • 5f707836 admission/clusterworkspacetypeexists: split up into workspace and thisworkspace
  • a495fb14 reconciler/tenancy/workspace: set type annotation on ThisWorkspace
  • 823a6d02 apis/tenancy: add temporary canonical-path-cluster-id translation
  • 28f54eac apis/tenancy: split workspace type reference from types themselves with different validation
  • 29e4077e apis/tenancy: fix optional path omitempty in ClusterWorkspaceTypeReference
  • d5eb1954 apis/tenancy: remove trivial helpers
  • 1211b095 apis/tenancy: add temporary tenancy.Cluster type
  • b4372f32 index+proxy: add x-kcp-workspace-path header
  • 6c9761a8 reconcilder/kubequota: port to ThisWorkspace
  • e370520c Switch everywhere from clusterworkspaces to workspaces informer
  • 72c21f1c admission/clusterworkspace: switch to workspace
  • 95d3b18a reconciler/workspace: switch to Workspaces
  • 3fc9d135 reconciler/tenancy/workspace: fix user agent
  • 741375ca reconciler/clusterworkspaces: rename to workspaces
  • 00754fdd virtual/workspaces: inverse direction from workspaces to cluster workspaces
  • 57244f95 virtual/workspaces: remove auth cache
  • fdfc1338 reconciler/tenancy/thisworkspace: adapt and split up reponsibility from clusterworkspaces reconciler
  • 0773cc7d reconciler/tenancy/thisworkspace: copied from clusterworkspaces reconciler
  • 811a89a1 reconciler/tenancy/bootstrap: port to ThisWorkspace
  • a483a305 apis/tenancy: ClusterWorkspaceInitializer -> WorkspaceInitializer
  • 9bd8e70d reconciler/tenancy/initialization: port to ThisWorkspace
  • 5755e163 virtual/initializingworkspaces: switch to ThisWorkspace
  • 0b6e7afd server: wire local proxy filter to rewrite with local knowledge
  • 481b4ada index: rewrite with ThisWorkspace logic
  • 63f81c59 apis/tenancy: add status.cluster to ClusterWorkspace and Workspace
  • dc53b5f7 homeworkspaces: rewrite with parent-less workspace
  • cb6b3424 reconciler/workspacedeletion: port to ThisWorkspace
  • a8c641d6 REVISIT(lukasz): skip quota and homeworkspace checks for thisworkspaces and workspace-admin binding for now
  • fdab8e67 authorization: add system:kcp:workspace:access cluster role
  • 108edb7e authorization: always let system:kcp:logical-cluster-admin into workspaces
  • 0957daa8 authorization: do not allow thisworkspaces access write access through local workspace
  • c55dad3d reconciler: rename clusterworkspacedeletion -> workspacedeletion
  • c69ce475 REVISIT(lukasz): controller-tests: fix add a shard after a workspace is unschedulable, expect it to be scheduled
  • c49e2982 scheduler: temporarily disable a few unit tests, enabled later again
  • 74bc3a71 reconciler/clusterworkspaces: add preThisWorkspaceDeletion reconcilers
  • 70632418 scheduler: create ThisWorkspace
  • 0f1b17f4 scheduler: wants logicalClusterAdminConfig
  • bc386969 server: add logical-cluster-admin-kubeconfig flag
  • d3759c7e bootstrap: define RBAC for system:kcp:logical-cluster-admin
  • 6b5e9e3f apis/apis/apiexport: forbid claims on thisworkspaces
  • 1e80f75f api: introduce ThisWorkspace type
  • df00dff8 apis/tenancy: remove unused workspaces.kcp.dev/name label
  • 12742666 apis/tenancy: split types.go
  • c0276a5f Makefile: create kubectl-ws+workspaces links
  • 7ce795d2 Makefile: add crds target
  • 1c20db9a REVISIT(sur): Revert "pkg/authorization: add delegation reason in audit"
  • 6b7eb2a7 REVISIT(sur): Revert "SQUASH: enhance godoc"
  • 71a08d98 Merge pull request #2509 from s-urbaniak/softimpersonate-copy-config
  • ab642243 pkg/softimpersonation: deep copy rest config
  • 2038e8b1 Update .goreleaser.yaml to build binaries with CGO_ENABLED=0
  • 2b5c1f10 Merge pull request #2505 from vincepri/partial-metadata-race
  • 293a1e7b :bug: metadata CRDs should not modify version schemas
  • 1fe58b2f Add test to capture a race w/ partial metadata in cache
  • 307d7c78 Merge pull request #2506 from apoorvajagtap/correct_err_typo
  • d7998fa5 corrected quote typos
  • f86d521e Merge pull request #2503 from ncdc/fix-docs-tag-builds
  • 747c8bc4 Merge pull request #2499 from MikeSpreitzer/wsdoc-to-v10
  • 2c9a0991 docs: mkdir before moving
  • 12ea6471 Merge pull request #2497 from vincepri/add-test-MakePartialMetadataCRD
  • 3b413d4c Add test for shallow copy and make partial metadata CRD
  • 4a3452d6 Attempt to update doc on workspaces
  • 70ce15ff Merge pull request #2405 from platform9/private/main/erwinvaneyk/fix-root-path-parsing
  • aa099bd0 Merge pull request #2483 from kcp-dev/dependabot/github_actions/goreleaser/goreleaser-action-4
  • 551ccb7f build(deps): bump goreleaser/goreleaser-action from 3 to 4
  • 2f21496f Merge pull request #2495 from ncdc/test-goreleaser-changes
  • d6a9c6d2 goreleaser: distinguish tags and PRs
  • 749687ee Merge pull request #2492 from ncdc/test-goreleaser-changes
  • ee9699b1 Test goreleaser changes in CI
  • fb4d4a42 Merge pull request #2488 from vincepri/actions-concurrency
  • ba5c8332 Add github action concurrency based on workflow-ref
  • a041a6f7 Support root path parsing