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

BUILD-159: add projected share resource csi driver operator to the list managed by the CSO #952

Conversation

gabemontero
Copy link
Contributor

make update etc. is behaving weird for me today ... I think my upgrading controller-gen for v0.5 for tekton has introduced formatting differences.

initially submitting with WIP and with any make update changes to see exactly how the verify job fails, and then see if I can split the difference

or I may have to maintain 2 versions of controller-gen

@openshift-ci openshift-ci bot added the do-not-merge/work-in-progress Indicates that a PR should not merge because it is a work in progress. label Jun 23, 2021
@gabemontero
Copy link
Contributor Author

OK everything is green ... interesting. Moving forward.

/assign @jsafrane
/assign @adambkaplan

PTAL ... my early testing in trying to construct a CSO managed operator for the projected shared resource CSI driver is that I need these updates vendored into openshift/apiserver in order to mirror the build and run locally instructions articulated at https://github.com/openshift/gcp-pd-csi-driver-operator#quick-start

without this, even with CVO and CSO disabled, I get

The ClusterCSIDriver "csi-driver-projected-resource.openshift.io" is invalid: metadata.name: Unsupported valucsi.projected.shared.resources.openshift.ioe: "csi.projected.shared.resources.openshift.io": supported values: "ebs.csi.aws.com", "disk.csi.azure.com", "pd.csi.storage.gke.io", "cinder.csi.openstack.org", "csi.vsphere.vmware.com", "manila.csi.openstack.org", "csi.ovirt.org", "csi.kubevirt.io"

@gabemontero gabemontero changed the title WIP: BUILD-159: add projected share resource csi driver operator to the list managed by the CSO BUILD-159: add projected share resource csi driver operator to the list managed by the CSO Jun 23, 2021
@openshift-ci openshift-ci bot removed the do-not-merge/work-in-progress Indicates that a PR should not merge because it is a work in progress. label Jun 23, 2021
ManilaCSIDriver CSIDriverName = "manila.csi.openstack.org"
OvirtCSIDriver CSIDriverName = "csi.ovirt.org"
KubevirtCSIDriver CSIDriverName = "csi.kubevirt.io"
AWSEBSCSIDriver CSIDriverName = "ebs.csi.aws.com"
Copy link
Contributor Author

Choose a reason for hiding this comment

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

@jsafrane - per the comment on line 41, I see you removed use of the kubebuilder:validation:Enum directive for the CSIDriverName type with #718

Hence, the manual update of both 000_90... yaml files

Now, I did try in my local copy of this branch adding that directive back, and after undoing the change to the crd yam (but not the patch yaml) a make update did add my new driver to the crd yaml

I take your #718 (comment) as meaning the removal of the kubebuilder comment for CSIDriverName was intentional.

Anyway, it seems to me if we leave things as is, the comment saying update kubebuilder:validation:Enum should be changed, since that directive is no longer specified.

Or would you like me to add it back?

Copy link
Contributor

Choose a reason for hiding this comment

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

Yes, the comment is wrong, there is no kubebuilder:validation:Enum now. Can you please remove the comment?

If I remember correctly, a patch was the only way to add validation of metadata.name.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

yep I'll update the comment ... fighting a few fires this AM, but hopefully will still circle back to this today

Copy link
Contributor Author

Choose a reason for hiding this comment

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

mention of kubebuilder Enum in the comment removed @jsafrane

@openshift-ci openshift-ci bot added the needs-rebase Indicates a PR cannot be merged because it has merge conflicts with HEAD. label Jun 25, 2021
@gabemontero gabemontero force-pushed the add-proj-share-csi-driver-for-cso branch from 6b0a5c6 to 592fb86 Compare June 25, 2021 23:12
@openshift-ci openshift-ci bot removed the needs-rebase Indicates a PR cannot be merged because it has merge conflicts with HEAD. label Jun 25, 2021
@gabemontero
Copy link
Contributor Author

/assign @bparees

need an OWNERS approve to sign off on this next step in installing via the cluster storage operator the projected resource csi driver we are going to use to mount entitlement secrets in build without having to copy the secret to the same namespace as the build.

@bparees
Copy link
Contributor

bparees commented Jun 28, 2021

/approve

@openshift-ci openshift-ci bot added the approved Indicates a PR has been approved by an approver from all required OWNERS files. label Jun 28, 2021
Copy link
Contributor

@adambkaplan adambkaplan left a comment

Choose a reason for hiding this comment

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

Some necessary bike-shedding on the name

@@ -13,3 +13,4 @@
- manila.csi.openstack.org
- csi.ovirt.org
- csi.kubevirt.io
- csi.projected.shared.resources.openshift.io
Copy link
Contributor

Choose a reason for hiding this comment

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

Is this the name we want? I'd think one of the following would be better:

  1. csi.projected-resources.openshift.io
  2. csi.shared-resources.openshift.io

Copy link
Contributor Author

Choose a reason for hiding this comment

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

So none of the other names I hyphens, so I was not comfortable introducing that pattern, though I thought of it. So unless @jsafrane says it is OK, I disagree there.

Of the two reduced versions you have, and losing hyphens, I like csi.shared.resources.openshift.io better.

You good with that @adambkaplan or are do you want to hold out for the hyphens being blessed?

Copy link
Contributor

Choose a reason for hiding this comment

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

These are ultimately used as the name for a k8s CSIDriver object, which at worst requires us to meet the DNS Label requirement [1]. Hyphens in the middle are OK.

Let's go with csi.shared-resources.openshift.io.

https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#dns-label-names

Copy link
Contributor

Choose a reason for hiding this comment

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

since this is a product-facing name, does @smarterclayton need to sign off?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

updated @adambkaplan

@@ -46,6 +46,7 @@ spec:
- manila.csi.openstack.org
- csi.ovirt.org
- csi.kubevirt.io
- csi.projected.shared.resources.openshift.io
Copy link
Contributor

Choose a reason for hiding this comment

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

ditto

Copy link
Contributor Author

Choose a reason for hiding this comment

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

updated

ManilaCSIDriver CSIDriverName = "manila.csi.openstack.org"
OvirtCSIDriver CSIDriverName = "csi.ovirt.org"
KubevirtCSIDriver CSIDriverName = "csi.kubevirt.io"
ProjectedSharedResourceCSIDriver CSIDriverName = "csi.projected.shared.resources.openshift.io"
Copy link
Contributor

Choose a reason for hiding this comment

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

ditto

Copy link
Contributor Author

Choose a reason for hiding this comment

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

updated

@gabemontero gabemontero force-pushed the add-proj-share-csi-driver-for-cso branch from 592fb86 to 5bf387a Compare June 28, 2021 20:55
@gabemontero gabemontero force-pushed the add-proj-share-csi-driver-for-cso branch from 08107d9 to 32d62d0 Compare June 29, 2021 12:34
@gabemontero
Copy link
Contributor Author

your suggested commit has been pulled in @adambkaplan and commits have been squashed

@gabemontero gabemontero force-pushed the add-proj-share-csi-driver-for-cso branch from 32d62d0 to 1048cce Compare June 29, 2021 12:50
@jsafrane
Copy link
Contributor

jsafrane commented Jun 29, 2021

Just to be sure, is csi.shared-resources.openshift.io really name of the driver? The name must match CSIDriver instance name and also driver name in StorageClasses and PVs and it's basically impossible to change it later.

@gabemontero
Copy link
Contributor Author

Just to be sure, is csi.shared-resources.openshift.io really name of the driver? The name must match CSIDriver instance name and also driver name in StorageClasses and PVs and it's basically impossible to change it later.

Thanks for the pointer @jsafrane

Yep I'll need to update our new shared resources CSO operator repo and the existing csi driver repo to make sure things line up with the name @adambkaplan has directed me to before we connect the dots and install via the CSO.

@jsafrane
Copy link
Contributor

jsafrane commented Jul 2, 2021

/lgtm
From storage perspective.

@openshift-ci openshift-ci bot added the lgtm Indicates that a PR is ready to be merged. label Jul 2, 2021
@openshift-ci
Copy link
Contributor

openshift-ci bot commented Jul 2, 2021

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: bparees, gabemontero, jsafrane

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

The pull request process is described 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

@openshift-merge-robot openshift-merge-robot merged commit edc45a4 into openshift:master Jul 2, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
approved Indicates a PR has been approved by an approver from all required OWNERS files. lgtm Indicates that a PR is ready to be merged.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

5 participants