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

Update vSphere CSI driver to v2.7.0 #11517

Closed
wants to merge 17 commits into from
Closed

Conversation

mate4st
Copy link
Contributor

@mate4st mate4st commented Dec 6, 2022

What this PR does / why we need it:

Updates all CSI components for vsphere to version 2.7.0
This includes Snapshot controller.

In addition the namespace for the csi driver to work with all its features is required to be vmware-system-csi. This PR migrated the csi driver component to its desired namespace.

Usually we remove obsolete addons via kubectl --prune however this does not work between namespaces. Therefore a manual deletion of the resources in the old namespace is needed.

Note that --prune is an alpha/beta command. More information here:
https://kubernetes.io/docs/reference/generated/kubectl/kubectl-commands

Which issue(s) this PR fixes:

Fixes #10719

What type of PR is this?

/kind cleanup
/kind chore

Special notes for your reviewer:

Does this PR introduce a user-facing change? Then add your Release Note here:

Update vSphere CSI driver to v2.7.0. In addition the csi driver components have been moved to to their desired namespace.

Documentation:

None

@kubermatic-bot kubermatic-bot added release-note Denotes a PR that will be considered when it comes time to generate release notes. docs/none Denotes a PR that doesn't need documentation (changes). do-not-merge/work-in-progress Indicates that a PR should not merge because it is a work in progress. kind/cleanup Categorizes issue or PR as related to cleaning up code, process, or technical debt. kind/chore Updating grunt tasks etc; no production code changes. dco-signoff: yes Denotes that all commits in the pull request have the valid DCO signoff message. size/XXL Denotes a PR that changes 1000+ lines, ignoring generated files. sig/app-management Denotes a PR or issue as being assigned to SIG App Management. sig/cluster-management Denotes a PR or issue as being assigned to SIG Cluster Management. labels Dec 6, 2022
@mate4st
Copy link
Contributor Author

mate4st commented Dec 8, 2022

/retest

1 similar comment
@mate4st
Copy link
Contributor Author

mate4st commented Dec 8, 2022

/retest

@mate4st mate4st changed the title [WIP] Update vSphere CSI driver to v2.7.0 Update vSphere CSI driver to v2.7.0 Dec 8, 2022
@kubermatic-bot kubermatic-bot removed the do-not-merge/work-in-progress Indicates that a PR should not merge because it is a work in progress. label Dec 8, 2022
@mate4st mate4st requested a review from xmudrii December 9, 2022 07:50
Copy link
Member

@xmudrii xmudrii left a comment

Choose a reason for hiding this comment

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

Please replace all occurrences of k8s.gcr.io with registry.k8s.io.

addons/csi/vsphere/csi-snapshot-validatingwebhook.yaml Outdated Show resolved Hide resolved
addons/csi/vsphere/setup-snapshot-controller.yaml Outdated Show resolved Hide resolved
@@ -50,7 +51,7 @@ func CloudConfigSecretNameReconciler(data *resources.TemplateData) reconciling.N
return nil, err
}

cloudConfig, err := CloudConfigCSIToString(vsphereCloudConfig)
cloudConfig, err := vsphere.CloudConfigToString(vsphereCloudConfig)
Copy link
Member

Choose a reason for hiding this comment

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

Is this using the regular cloud-config? cloud-config for the CCM and the CSI is different, hence the CloudConfigCSIToString function. I don't think we should get rid of this function.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Your are probably right with this one. It makes more sense to unify this in another PR as well. Right now we have multiple places where we maintain the conversion.

pkg/resources/resources.go Outdated Show resolved Hide resolved
@xmudrii
Copy link
Member

xmudrii commented Dec 12, 2022

/retest

@xmudrii
Copy link
Member

xmudrii commented Dec 13, 2022

@WeirdMachine LGTM, but please fix the verify job.

@xrstf
Copy link
Contributor

xrstf commented Jan 4, 2023

@xmudrii PTALA

Copy link
Member

@xmudrii xmudrii left a comment

Choose a reason for hiding this comment

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

/lgtm
/approve
/hold
for manual testing

@kubermatic-bot kubermatic-bot added do-not-merge/hold Indicates that a PR should not merge because someone has issued a /hold command. lgtm Indicates that a PR is ready to be merged. labels Jan 4, 2023
@kubermatic-bot
Copy link
Contributor

[APPROVALNOTIFIER] This PR is NOT APPROVED

This pull-request has been approved by: WeirdMachine, xmudrii
Once this PR has been reviewed and has the lgtm label, please assign xrstf for approval by writing /assign @xrstf in a comment. 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

@kubermatic-bot
Copy link
Contributor

@WeirdMachine: 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
pre-kubermatic-test-integration a8e0bba link true /test pre-kubermatic-test-integration
pre-kubermatic-mla-e2e a8e0bba link true /test pre-kubermatic-mla-e2e
pre-kubermatic-opa-e2e a8e0bba link true /test pre-kubermatic-opa-e2e

Full PR test history

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.

@@ -264,6 +263,21 @@ func (r *Reconciler) reconcile(ctx context.Context, log *zap.SugaredLogger, addo
return reqeueAfter, nil
}

// This handles manifests that should be removed manually, because kubectl --prune does not always delete obsolete resources.
Copy link
Contributor

Choose a reason for hiding this comment

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

Please explain more why this is here. Is kubectl broken? What is this "not always"?

/lgtm cancel

@kubermatic-bot kubermatic-bot removed the lgtm Indicates that a PR is ready to be merged. label Jan 10, 2023
Name: "internal-delete",
},
Spec: kubermaticv1.AddonSpec{
Name: "internal-delete",
Copy link
Contributor

Choose a reason for hiding this comment

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

I do not understand what is happening here... Why are we deleting an internal-delete addon when the CSI addon is being deleted?

@mate4st
Copy link
Contributor Author

mate4st commented Jan 20, 2023

Looking at this PR I am ashamed of myself. Therefore the csi driver is updated here: #11724

And the namespace migration should be done in another way.

@mate4st mate4st closed this Jan 20, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
dco-signoff: yes Denotes that all commits in the pull request have the valid DCO signoff message. do-not-merge/hold Indicates that a PR should not merge because someone has issued a /hold command. docs/none Denotes a PR that doesn't need documentation (changes). kind/chore Updating grunt tasks etc; no production code changes. kind/cleanup Categorizes issue or PR as related to cleaning up code, process, or technical debt. release-note Denotes a PR that will be considered when it comes time to generate release notes. sig/app-management Denotes a PR or issue as being assigned to SIG App Management. sig/cluster-management Denotes a PR or issue as being assigned to SIG Cluster Management. 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.

vsphere csi addon - vmware-system-csi namespace mandate
4 participants