Releases: kcp-dev/kcp
Releases · kcp-dev/kcp
v0.4.0-alpha.0
What's Changed
- manifest: Add explicit port number to external hostname by @kylape in #819
- Enable CI/CD for release branches by @kylape in #822
- kubectl-kcp: fix user-agent regression by @sttts in #824
- pkg/gvk: remove by @sttts in #825
- kubectl-kcp: add --short to current command for use in prompt by @sttts in #826
- tenancy: clean up ClusterWorkspaceShard type by @sttts in #827
- Referencing k8s CRB by workspace admins by @slaskawi in #762
- dockerfile: Use make to build go binaries by @kylape in #850
- Ignore missing namespace on p-cluster by @csams in #851
- Fix git version string returned by kcp server by @kylape in #859
- virtual: Grant 'access' verb to user upon workspace creation by @kylape in #858
- workaround for #730: API import does not work when adding the same cluster into multiple workspaces by @fgiloux in #856
- actions: add Github's beta add-to-project by @sttts in #866
- actions/add-to-project: set environment to projects by @sttts in #868
- e2e Syncer fixture by @jmprusi in #861
- manifest: add resources to sync by @ncdc in #871
- Stop apiimporter, syncer, heartbeat from fighting over the Ready condition by @csams in #864
- Update namespace scheduler to enqueue resources on scheduling change by @marun in #749
- tenancy: Increase ClusterWorkspace name max length to 63 characters by @astefanutti in #834
- reconcilers: move apis.kcp.dev controllers into sub-dir by @sttts in #847
- Add clustername to apiimporter manager, syncer manager, and namespace reconciler logs by @csams in #874
- server: Set external address based on completed serving config by @astefanutti in #855
- Move api importer to the syncer by @marun in #810
- virtual: Disable workspace deletion for now by @kylape in #880
- manifest: set --v=2 by @ncdc in #885
- specsyncer: fix when logging namespace creation by @ncdc in #884
- syncer: add more details to log messages by @ncdc in #886
- syncer: fix logging (Info->Infof) by @ncdc in #888
- Disable deploy pipeline on release branch by @kylape in #882
- Apply resource constraints to kcp instance by @kylape in #863
- Check out code in deploy job by @kylape in #892
- Remove the global config embedding. by @jpeach in #894
- Remove stty dependency. by @jpeach in #895
- Replace managed syncer with deployed syncer by @marun in #881
- e2e: Enable testing against a deployed syncer with kind by @marun in #909
- Delete sync managers (replaced by deployed syncers) by @marun in #911
- e2e/authorizer: make test idem-potent for COUNT > 1 by @sttts in #921
- update / fix development guide by @xrstf in #918
- Add e2e-shared-server task to ci-docs-only flow by @kylape in #924
- apibindings: check for conflicts, refactor controller by @ncdc in #823
- docs: add virtual-workspaces.md by @sttts in #926
- Upgrade openshift-goimports. by @jpeach in #929
- cli/workload: fix "Use" string by @sttts in #931
- cmd/kcp: add --feature-gates flag by @sttts in #930
- server: fix --features-gates typo by @sttts in #936
- Ensure the kcp config root has reasonable permissions. by @jpeach in #908
- apis/tenancy: add validation to (Cluster)Workspace.spec.type by @sttts in #935
- apis: non-pointer subresources in APIResourceSchema for easier equality by @sttts in #938
- apis: allow APIResourceSchemas with single word groups used by kube by @sttts in #937
- Add branch name to the tag list of kcp and syncer images by @fgiloux in #887
- delete resources in workspace when workspace is deleted by @qiujian16 in #913
- Revert "virtual: Disable workspace deletion for now" by @sttts in #939
- apis: add scheduling.kcp.dev/v1alpha1 API by @sttts in #829
- Enabling Validating and Mutating Webhook's for KCP by @shawn-hurley in #818
- e2e/syncer: check deployment available independently and output yaml by @sttts in #949
- CONTRIBUTING.md: add feature-gates by @sttts in #951
- Add APIExport controller by @ncdc in #877
- ci: make artifact names unique by @ncdc in #954
- e2e: create syncer log artifacts when running in kind by @sttts in #952
- Adding admission plugin to validate CRDs by @shawn-hurley in #901
- syncer: don't sync standard resources twice by @sttts in #956
- e2e: only collect syncer logs for deployed syncer by @sttts in #957
- ci: use cytopia/upload-artifact-retry-action to survive transient errors by @sttts in #960
- e2e/syncer: stop (some of) the bleeding by @sttts in #959
- fix syncer image name by @geoberle in #953
- workloads: make --auto-publish-apis default to on by @sttts in #961
New Contributors
- @jpeach made their first contribution in #894
- @xrstf made their first contribution in #918
- @qiujian16 made their first contribution in #913
- @geoberle made their first contribution in #953
Full Changelog: v0.3.0-beta.1...v0.4.0-alpha.0
v0.3.0-beta.1
What's Changed
- Implement root workspace and organization workspaces by @sttts in #508
- Add a label to deactivate automatic namespace scheduling by @astefanutti in #537
- e2e: Ensure cfg is written to temp dir for virtual workspace test by @marun in #585
- e2e: Remove scheduler dependency on controller patch method by @marun in #586
- Refactor namespace scheduler queueing behavior for testability by @marun in #587
- ci: don't run e2e & other tests for documentation-only PRs by @avinal in #589
- Rename namespace scheduler labels (kcp.dev -> workloads.kcp.dev) by @marun in #593
- Add epic template, update CONTRIBUTING by @ncdc in #594
- kube: back to upstream (dd0f1685f84) by @ncdc in #599
- Generators outside gopath by @ncdc in #533
- refactor: remove syncChecks in controllers by @ReToCode in #579
- Refactor namespace scheduler cluster assignment for testability by @marun in #559
- Add .github/ISSUE_TEMPLATE/* to paths to ignore for CI by @avinal in #603
- Refactor namespace scheduler status maintenance for testability by @marun in #592
- Add workspace invariant of valid baseURL by @sttts in #582
- Ensure consistent logging of resource names (
s+%q|%q/%q+%s|%s/%s+
) by @marun in #600 - e2e: Cleanup namespace scheduler e2e in light of unit-test additions by @marun in #598
- Rename the Cluster type and its group for clarity by @marun in #605
- admission: simplify informer sync in ClusterWorkspaceTypeExists by @sttts in #609
- admission: add SubjectAccessReview to ClusterWorkspaceType use by @sttts in #611
- Document ClusterWorkspaceType authz by @sttts in #612
- e2e: Fix broken workspacetype initializer test by @marun in #616
- README clarifications by @ncdc in #576
- admission: add ClusterWorkspaceType plugin to reserve organization type for root by @sttts in #608
- Set up deploy pipeline using Github Actions by @kylape in #483
- apis: add APIExport/Binding/ResourceSchema types by @sttts in #583
- clusterworkspace: admission: fix initializers check by @ncdc in #629
- Remove workloadclusters, apiresourceimports, negotiatedapiresources from root and org workspaces by @sttts in #619
- Rename workspaces to clusterworkspaces by @slaskawi in #639
- kubectl-kcp: add ws alias for workspace by @jbpratt in #637
- Adapt personal workspaces to orgs by @davidfestal in #613
- e2e: Enable use of persistent server fixture by @marun in #614
- config/organization: fix clusterrolebindings by @sttts in #646
- Increase V log level for resources the DynamicDiscoverySharedInformerFactory can't list+watch by @pradeepnnv in #652
- e2e: Switch to DefaultConfig() function from Config("system:admin") by @marun in #650
- e2e: Remove unused constant to satisfy linter by @marun in #660
- Move
TEST_ARGS
formake test-e2e
to after the package list by @marun in #649 - ci: use lint make target by @jbpratt in #635
- make signal handling consistent by @ramessesii2 in #615
- kubectl-kcp: fix logic to derive the orgClusterName by @sttts in #663
- Rbac for orgs in virtual workspaces by @davidfestal in #648
- bootstrap: support create-only resources by @ncdc in #675
- virtual-workspaces: wire into kcp server and remove topology leaking to cli plugin by @sttts in #640
- Better scope management and CLI plugin cleanup by @davidfestal in #673
- disable etcd fsync on github actions tests, fail fast if kcp binary not found and increase kcp verbosity by @aojea in #656
- kubectl-kcp: readd parent logic dropped in rebase by @sttts in #677
- prototype2-script: adapting the script to org workspaces by @sttts in #578
- Handle name transformation to avoid default object conflicts by @jmprusi in #679
- prototype2-script: Fix virtual-workspace-address option to start KCP by @astefanutti in #683
- server: add --experimental-bind-free-port by @sttts in #666
- Update deployment manifest by @kylape in #682
- Rename Github Actions step to avoid conflict by @kylape in #689
- Add DCO information by @ncdc in #669
- prototype2-script: the Ingress demo can run on MacOS by @astefanutti in #584
- Wildcard cluster authorization test by @slaskawi in #664
- Fix resource bootstrapping flake by @aojea in #672
- config/universal: create default namespace by default by @sttts in #691
- e2e/workspace: fix flake by quorum read shard before moving to initializing by @sttts in #700
- e2e/virtual: fix races due to stale authz informers by @sttts in #703
- e2e: Pass
t
to DefaultConfig() to allow failing on error by @marun in #694 - e2e/virtual: fix flake failing on not true WorkspaceShardValid condition by @sttts in #705
- apis/apiresource: fix subresource panic by @sttts in #699
- Link Github projects board from CONTRIBUTING.md by @sttts in #706
- Start service account controller and enable legacy+bound service account token authn+authz by @sttts in #681
- Add CICD options to kubectl for external hostname discovery by @csams in #697
- Convert cmd/syncer/main.go to be a cobra.Command by @ramessesii2 in #601
- contrib/prototype3: start demo script by @sttts in #704
- e2e: Update authorizer testing to use shared fixture by @marun in #698
- kcp terminology doc by @pkprzekwas in #684
- admission: move to runtime.DefaultUnstructuredConverter by @sttts in #577
- reconcilers: get rid of clientcmdapi.Config and pass rest.Config by @sttts in #711
- Enable the RootCACertPublisher by @jmprusi in #667
- kubectl-kcp: point to authInfo config instead of clone by @kylape in #686
- Proxy to terminate TLS and handle client cert auth by @csams in #659
- [kcp-plugin] add org name to kubectl-kcp ws use|current output by @varshaprasad96 in #693
- README.md: Adds the prototype2 demo screencast by @jmprusi in #626
- apis/apibinding: make reference required by @sttts in #713
- apibinding: add admission by @ncdc in #653
- reconcilers: add user-agent to all controller clients by @sttts in #712
- Support adding labels to workspace on creation by @marun in #710
- Fix TestClusterController tests by @jmprusi in #722
- Make namespace scheduling opt-in via label on containing workspace by @marun in #695
- Adds serviceaccounts,secrets and configmaps GVRs to the default Syncer sync list by @jmprusi in #680
- to-kubeconfig is not required, if used InCluster is not set by @aojea in #733
- instructions to install a syncer on a pcluster by @aojea in #723
- go get was deprecated and no longer works with 1.18 by @aojea in #690
- apis/apiexports: remove status.resourceSchemasInUse by @sttts in #732
- Add initial controller developer docs by @ncdc in #734
- e2e: Update workspace shard tests to use shared fixture by @marun in #736
- fix unknown command options for kcp by @UtkarshChaurasia in #737
- kcp-front-proxy: implement options pattern by @sttts in #715
- return error on context cancellation by @A...