Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

✨ Implement PV and PVC controllers #2338

Closed
wants to merge 1 commit into from
Closed

Conversation

leseb
Copy link
Contributor

@leseb leseb commented Nov 10, 2022

Summary

This implements two new syncers as laid out in
kcp-dev/contrib-tmc#98.

Related issue(s)

Fixes: kcp-dev/contrib-tmc#98
Signed-off-by: Sébastien Han seb@redhat.com

@leseb
Copy link
Contributor Author

leseb commented Nov 10, 2022

I still haven't had the chance to test this code but it's ready for initial reviews. Thanks!

@leseb leseb force-pushed the fix-1981 branch 2 times, most recently from 499a2dd to 6ba175a Compare November 10, 2022 16:42
pkg/syncer/status/status_controller.go Outdated Show resolved Hide resolved
pkg/syncer/status/status_process.go Outdated Show resolved Hide resolved
pkg/syncer/storage/storage_pvc_controller.go Outdated Show resolved Hide resolved
pkg/syncer/storage/storage_pv_controller.go Outdated Show resolved Hide resolved
pkg/syncer/storage/storage_pv_controller.go Show resolved Hide resolved
pkg/syncer/storage/storage_pv_controller.go Outdated Show resolved Hide resolved
pkg/syncer/storage/storage_pv_process.go Outdated Show resolved Hide resolved
pkg/syncer/storage/storage_pvc_controller.go Outdated Show resolved Hide resolved
pkg/syncer/storage/storage_pvc_process.go Show resolved Hide resolved
pkg/syncer/storage/storage_pvc_process.go Outdated Show resolved Hide resolved
@leseb leseb changed the title ✨ Implement PV and PVC syncers ✨ Implement PV and PVC controllers Nov 14, 2022
@openshift-merge-robot openshift-merge-robot added the needs-rebase Indicates a PR cannot be merged because it has merge conflicts with HEAD. label Nov 14, 2022
@openshift-merge-robot openshift-merge-robot removed the needs-rebase Indicates a PR cannot be merged because it has merge conflicts with HEAD. label Nov 15, 2022
@ncdc ncdc added the area/transparent-multi-cluster Related to scheduling of workloads into pclusters. label Nov 17, 2022
@openshift-merge-robot openshift-merge-robot added the needs-rebase Indicates a PR cannot be merged because it has merge conflicts with HEAD. label Nov 19, 2022
@openshift-merge-robot openshift-merge-robot removed the needs-rebase Indicates a PR cannot be merged because it has merge conflicts with HEAD. label Nov 21, 2022
@leseb leseb force-pushed the fix-1981 branch 2 times, most recently from 645ca2c to ed0f3be Compare November 21, 2022 10:23
@openshift-merge-robot openshift-merge-robot added the needs-rebase Indicates a PR cannot be merged because it has merge conflicts with HEAD. label Nov 22, 2022
@openshift-merge-robot openshift-merge-robot removed the needs-rebase Indicates a PR cannot be merged because it has merge conflicts with HEAD. label Nov 22, 2022
hack/logcheck.out Outdated Show resolved Hide resolved
hack/logcheck.out Outdated Show resolved Hide resolved
pkg/syncer/shared/namespace.go Outdated Show resolved Hide resolved
pkg/syncer/status/status_controller.go Outdated Show resolved Hide resolved
pkg/syncer/status/status_controller.go Outdated Show resolved Hide resolved
pkg/syncer/storage/storage_pv_controller.go Outdated Show resolved Hide resolved
pkg/syncer/storage/storage_pv_process.go Outdated Show resolved Hide resolved
pkg/syncer/storage/storage_pvc_controller.go Show resolved Hide resolved
pkg/syncer/storage/storage_pv_controller.go Outdated Show resolved Hide resolved
pkg/syncer/storage/storage_pvc_process.go Outdated Show resolved Hide resolved
pkg/syncer/storage/storage_pv_process.go Outdated Show resolved Hide resolved
pkg/syncer/storage/storage_pvc_process.go Outdated Show resolved Hide resolved
pkg/syncer/storage/storage_pvc_process.go Outdated Show resolved Hide resolved
pkg/syncer/storage/storage_pvc_process.go Outdated Show resolved Hide resolved
pkg/syncer/storage/storage_pvc_process.go Outdated Show resolved Hide resolved
}

// Update the PV with the Upsync requestState label for the current SyncTarget to trigger the Upsyncing of the PV to the upstream workspace
downstreamPV.SetLabels(c.addResourceStateUpsyncLabel(downstreamPV.GetLabels()))
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We sill also need to add the internal downstream label here, in addition to the Upsync RequestState label.

@openshift-merge-robot openshift-merge-robot added the needs-rebase Indicates a PR cannot be merged because it has merge conflicts with HEAD. label Dec 7, 2022
@openshift-merge-robot openshift-merge-robot removed the needs-rebase Indicates a PR cannot be merged because it has merge conflicts with HEAD. label Dec 7, 2022
pkg/syncer/storage/storage_pv_controller.go Outdated Show resolved Hide resolved
test/e2e/virtual/syncer/storage_pv_test.go Outdated Show resolved Hide resolved
test/e2e/virtual/syncer/storage_pv_test.go Outdated Show resolved Hide resolved
@davidfestal
Copy link
Member

I created PR leseb#2 against your branch (since it seems I cannot push directly to your PR forked branch). This fixes the pv e2e test.

Copy link
Member

@davidfestal davidfestal left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Before merging this PR, we should add a feature flag to enable these actions: KCPStorageMove.

pkg/features/kcp_features.go Outdated Show resolved Hide resolved
pkg/syncer/syncer.go Outdated Show resolved Hide resolved
@davidfestal
Copy link
Member

Do you think you could rebase the PR on top of main (should not hurt I assume) ?
A number of flakes on e2d tests have been fixed, so that it would be easier to understand if the failing tests in this PR come from this PR changes, or from old flakes.

@davidfestal davidfestal assigned leseb and unassigned davidfestal Feb 7, 2023
@leseb leseb force-pushed the fix-1981 branch 2 times, most recently from b42abf8 to e7d9655 Compare February 9, 2023 08:57
@leseb leseb force-pushed the fix-1981 branch 2 times, most recently from c7b75a2 to 2421a6c Compare February 17, 2023 07:58
@openshift-ci
Copy link
Contributor

openshift-ci bot commented Feb 17, 2023

[APPROVALNOTIFIER] This PR is NOT APPROVED

This pull-request has been approved by:
Once this PR has been reviewed and has the lgtm label, please assign sttts for approval. For more information see the Kubernetes Code Review Process.

The full list of commands accepted by this bot can be found here.

Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

This implements two new syncers as laid out in
/~https://github.com/kcp-dev/kcp/issues/1981.

Fixes: /~https://github.com/kcp-dev/kcp/issues/1981

Co-authored-by: David Festal <dfestal@redhat.com>
Signed-off-by: Sébastien Han <seb@redhat.com>
@openshift-ci
Copy link
Contributor

openshift-ci bot commented Feb 27, 2023

@leseb: The following tests failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:

Test name Commit Details Required Rerun command
ci/prow/test d5f4cdf link true /test test
ci/prow/lint d5f4cdf link true /test lint
ci/prow/e2e d5f4cdf link true /test e2e
ci/prow/e2e-sharded d5f4cdf link true /test e2e-sharded
ci/prow/e2e-shared d5f4cdf link true /test e2e-shared
ci/prow/e2e-multiple-runs d5f4cdf link true /test e2e-multiple-runs

Full PR test history. Your PR dashboard.

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@openshift-merge-robot openshift-merge-robot added the needs-rebase Indicates a PR cannot be merged because it has merge conflicts with HEAD. label Mar 10, 2023
@openshift-merge-robot
Copy link
Contributor

PR needs rebase.

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository.

@leseb leseb closed this Apr 24, 2023
@kcp-ci-bot
Copy link
Contributor

Adding the "do-not-merge/release-note-label-needed" label because no release-note block was detected, please follow our release note process to remove it.

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository.

@kcp-ci-bot kcp-ci-bot added do-not-merge/release-note-label-needed Indicates that a PR should not merge because it's missing one of the release note labels. size/XXL Denotes a PR that changes 1000+ lines, ignoring generated files. labels Nov 23, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area/transparent-multi-cluster Related to scheduling of workloads into pclusters. do-not-merge/release-note-label-needed Indicates that a PR should not merge because it's missing one of the release note labels. needs-rebase Indicates a PR cannot be merged because it has merge conflicts with HEAD. size/XXL Denotes a PR that changes 1000+ lines, ignoring generated files.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Storage controller (syncer)
6 participants