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

SPLAT-1385: introduce TagIDs field to vSphere providerSpec #1697

Merged
merged 1 commit into from Jan 15, 2024

Conversation

rvanderp3
Copy link
Contributor

@rvanderp3 rvanderp3 commented Dec 6, 2023

This PR intends to address RFE https://issues.redhat.com/browse/RFE-1799. Additional tags are provided by the declaring a slice of tags referenced by their URN ID. This is consistent with how CAPV ingests additional tags for a VM.

@openshift-ci-robot openshift-ci-robot added the jira/valid-reference Indicates that this PR references a valid Jira ticket of any type. label Dec 6, 2023
@openshift-ci-robot
Copy link

openshift-ci-robot commented Dec 6, 2023

@rvanderp3: This pull request references SPLAT-1281 which is a valid jira issue.

Warning: The referenced jira issue has an invalid target version for the target branch this PR targets: expected the spike to target the "4.15.0" version, but no target version was set.

In response to this:

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.

Copy link
Contributor

openshift-ci bot commented Dec 6, 2023

Hello @rvanderp3! Some important instructions when contributing to openshift/api:
API design plays an important part in the user experience of OpenShift and as such API PRs are subject to a high level of scrutiny to ensure they follow our best practices. If you haven't already done so, please review the OpenShift API Conventions and ensure that your proposed changes are compliant. Following these conventions will help expedite the api review process for your PR.

@openshift-ci openshift-ci bot added the size/S Denotes a PR that changes 10-29 lines, ignoring generated files. label Dec 6, 2023
@openshift-ci-robot
Copy link

openshift-ci-robot commented Dec 6, 2023

@rvanderp3: This pull request references SPLAT-1281 which is a valid jira issue.

Warning: The referenced jira issue has an invalid target version for the target branch this PR targets: expected the spike to target the "4.15.0" version, but no target version was set.

In response to this:

This PR intends to address RFE https://issues.redhat.com/browse/RFE-2176. Additional tags are provided by the declaring a slice of tags referenced by their URN ID. This is consistent with how CAPV ingests additional tags for a VM.

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.

@rvanderp3
Copy link
Contributor Author

/assign @JoelSpeed

@vr4manta
Copy link
Contributor

vr4manta commented Dec 6, 2023

/lgtm

@openshift-ci openshift-ci bot added the lgtm Indicates that a PR is ready to be merged. label Dec 6, 2023
@rvanderp3
Copy link
Contributor Author

/payload 4.15 nightly informing

Copy link
Contributor

openshift-ci bot commented Dec 6, 2023

@rvanderp3: trigger 62 job(s) of type informing for the nightly release of OCP 4.15

  • periodic-ci-openshift-release-master-nightly-4.15-e2e-agent-compact-ipv4
  • periodic-ci-openshift-release-master-nightly-4.15-e2e-agent-ha-dualstack
  • periodic-ci-openshift-release-master-nightly-4.15-e2e-agent-sno-ipv6
  • periodic-ci-openshift-release-master-nightly-4.15-console-aws
  • periodic-ci-openshift-cluster-control-plane-machine-set-operator-release-4.15-periodics-e2e-aws
  • periodic-ci-openshift-release-master-nightly-4.15-e2e-aws-csi
  • periodic-ci-openshift-release-master-ci-4.15-e2e-aws-ovn
  • periodic-ci-openshift-release-master-nightly-4.15-e2e-aws-ovn-fips
  • periodic-ci-openshift-release-master-nightly-4.15-e2e-aws-ovn-single-node
  • periodic-ci-openshift-release-master-nightly-4.15-e2e-aws-ovn-single-node-serial
  • periodic-ci-openshift-release-master-nightly-4.15-e2e-aws-ovn-upgrade-rollback-oldest-supported
  • periodic-ci-openshift-release-master-nightly-4.15-e2e-aws-sdn
  • periodic-ci-openshift-release-master-nightly-4.15-e2e-aws-sdn-cgroupsv2
  • periodic-ci-openshift-release-master-ci-4.15-e2e-aws-sdn-techpreview
  • periodic-ci-openshift-release-master-ci-4.15-e2e-aws-sdn-techpreview-serial
  • periodic-ci-openshift-release-master-nightly-4.15-e2e-aws-ovn-upi
  • periodic-ci-openshift-cluster-control-plane-machine-set-operator-release-4.15-periodics-e2e-azure
  • periodic-ci-openshift-release-master-nightly-4.15-e2e-azure-csi
  • periodic-ci-openshift-release-master-ci-4.15-e2e-azure-ovn
  • periodic-ci-openshift-release-master-nightly-4.15-e2e-azure-sdn
  • periodic-ci-openshift-release-master-ci-4.15-e2e-azure-sdn-techpreview
  • periodic-ci-openshift-release-master-ci-4.15-e2e-azure-sdn-techpreview-serial
  • periodic-ci-openshift-release-master-ci-4.15-e2e-azure-sdn-upgrade
  • periodic-ci-openshift-release-master-nightly-4.15-e2e-azure-deploy-cnv
  • periodic-ci-openshift-release-master-nightly-4.15-e2e-azure-upgrade-cnv
  • periodic-ci-openshift-release-master-nightly-4.15-e2e-aws-driver-toolkit
  • periodic-ci-openshift-cluster-control-plane-machine-set-operator-release-4.15-periodics-e2e-gcp
  • periodic-ci-openshift-release-master-ci-4.15-e2e-gcp-ovn
  • periodic-ci-openshift-release-master-nightly-4.15-e2e-gcp-ovn-csi
  • periodic-ci-openshift-release-master-nightly-4.15-e2e-gcp-ovn-rt
  • periodic-ci-openshift-release-master-ci-4.15-upgrade-from-stable-4.14-e2e-gcp-ovn-upgrade
  • periodic-ci-openshift-release-master-nightly-4.15-e2e-gcp-sdn
  • periodic-ci-openshift-release-master-nightly-4.15-e2e-gcp-sdn-serial
  • periodic-ci-openshift-release-master-ci-4.15-e2e-gcp-sdn-techpreview
  • periodic-ci-openshift-release-master-ci-4.15-e2e-gcp-sdn-techpreview-serial
  • periodic-ci-openshift-release-master-nightly-4.15-e2e-gcp-sdn-upgrade
  • periodic-ci-openshift-release-master-ci-4.15-upgrade-from-stable-4.14-e2e-gcp-sdn-upgrade
  • periodic-ci-openshift-release-master-nightly-4.15-e2e-metal-ipi-ovn-dualstack
  • periodic-ci-openshift-release-master-nightly-4.15-e2e-metal-ipi-sdn-bm-upgrade
  • periodic-ci-openshift-release-master-nightly-4.15-upgrade-from-stable-4.14-e2e-metal-ipi-sdn-bm-upgrade
  • periodic-ci-openshift-release-master-nightly-4.15-e2e-metal-ipi-sdn-serial-ipv4
  • periodic-ci-openshift-release-master-nightly-4.15-e2e-metal-ipi-sdn-serial-virtualmedia-bond
  • periodic-ci-openshift-release-master-nightly-4.15-e2e-metal-ipi-serial-ovn-ipv6
  • periodic-ci-openshift-release-master-nightly-4.15-e2e-metal-ipi-serial-ovn-dualstack
  • periodic-ci-openshift-release-master-nightly-4.15-e2e-metal-ipi-upgrade-ovn-ipv6
  • periodic-ci-openshift-release-master-nightly-4.15-upgrade-from-stable-4.14-e2e-metal-ipi-upgrade-ovn-ipv6
  • periodic-ci-openshift-release-master-nightly-4.15-e2e-metal-ovn-assisted
  • periodic-ci-openshift-osde2e-main-nightly-4.15-osd-aws
  • periodic-ci-openshift-osde2e-main-nightly-4.15-osd-gcp
  • periodic-ci-openshift-release-master-nightly-4.15-e2e-aws-ovn-proxy
  • periodic-ci-openshift-release-master-nightly-4.15-e2e-metal-ovn-single-node-live-iso
  • periodic-ci-openshift-osde2e-main-nightly-4.15-rosa-classic-sts
  • periodic-ci-openshift-release-master-nightly-4.15-e2e-aws-sdn-upgrade
  • periodic-ci-openshift-release-master-nightly-4.15-e2e-telco5g
  • periodic-ci-openshift-release-master-nightly-4.15-upgrade-from-stable-4.14-e2e-aws-sdn-upgrade
  • periodic-ci-openshift-release-master-nightly-4.15-e2e-vsphere-ovn-csi
  • periodic-ci-openshift-release-master-nightly-4.15-e2e-vsphere-ovn-serial
  • periodic-ci-openshift-release-master-nightly-4.15-e2e-vsphere-ovn-techpreview
  • periodic-ci-openshift-release-master-nightly-4.15-e2e-vsphere-ovn-techpreview-serial
  • periodic-ci-openshift-release-master-nightly-4.15-e2e-vsphere-ovn-upi
  • periodic-ci-openshift-release-master-nightly-4.15-e2e-vsphere-ovn-upi-serial
  • periodic-ci-openshift-release-master-nightly-4.15-e2e-vsphere-sdn

See details on https://pr-payload-tests.ci.openshift.org/runs/ci/e8685230-9466-11ee-9db6-e3855f6b6c8d-0

@rvanderp3
Copy link
Contributor Author

/payload-abort

Copy link
Contributor

openshift-ci bot commented Dec 6, 2023

@rvanderp3: aborted active payload jobs for pull request #1697

// must use URN-notation instead of display names.
// For example: urn:vmomi:InventoryServiceTag:5736bf56-49f5-4667-b38c-b97e09dc9578:GLOBAL
// +optional
TagIDs []string `json:"tagIDs,omitempty"`
Copy link
Contributor

Choose a reason for hiding this comment

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

How is this handled in the upstream CAPV?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

This mirrors the CAPV API.

@openshift-ci-robot
Copy link

openshift-ci-robot commented Dec 11, 2023

@rvanderp3: This pull request references SPLAT-1281 which is a valid jira issue.

Warning: The referenced jira issue has an invalid target version for the target branch this PR targets: expected the spike to target the "4.16.0" version, but no target version was set.

In response to this:

This PR intends to address RFE https://issues.redhat.com/browse/RFE-1799. Additional tags are provided by the declaring a slice of tags referenced by their URN ID. This is consistent with how CAPV ingests additional tags for a VM.

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.

@@ -51,6 +51,11 @@ type VSphereMachineProviderSpec struct {
// This parameter will be ignored if 'LinkedClone' CloneMode is set.
// +optional
DiskGiB int32 `json:"diskGiB,omitempty"`
// TagIDs is an optional set of tags to add to an instance. Specified tagIDs
Copy link
Contributor

Choose a reason for hiding this comment

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

Suggested change
// TagIDs is an optional set of tags to add to an instance. Specified tagIDs
// tagIDs is an optional set of tags to add to an instance. Specified tagIDs

// must use URN-notation instead of display names.
// For example: urn:vmomi:InventoryServiceTag:5736bf56-49f5-4667-b38c-b97e09dc9578:GLOBAL
// +optional
TagIDs []string `json:"tagIDs,omitempty"`
Copy link
Contributor

Choose a reason for hiding this comment

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

Is there a limit to the number of tags that can be applied?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

There isn't a hard limit upstream but excessive tags could cause latency in machine reconciliation. We could impose an arbitrary maximum.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

There isn't a hard limit, but there is performance hit if we allow too many tags to be reconciled and attached. For now, setting a 10 tag limit.

@@ -51,6 +51,11 @@ type VSphereMachineProviderSpec struct {
// This parameter will be ignored if 'LinkedClone' CloneMode is set.
// +optional
DiskGiB int32 `json:"diskGiB,omitempty"`
// TagIDs is an optional set of tags to add to an instance. Specified tagIDs
// must use URN-notation instead of display names.
// For example: urn:vmomi:InventoryServiceTag:5736bf56-49f5-4667-b38c-b97e09dc9578:GLOBAL
Copy link
Contributor

Choose a reason for hiding this comment

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

Where will this format be validated?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

At present, we are relying on the vCenter API to perform validation during reconciliation but I'll add regex to enforce this in the CRD.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Introduced validation in the machine webhook

@openshift-ci openshift-ci bot removed the lgtm Indicates that a PR is ready to be merged. label Jan 10, 2024
@rvanderp3 rvanderp3 changed the title SPLAT-1281: introduce TagIDs field to vSphere providerSpec SPLAT-1385: introduce TagIDs field to vSphere providerSpec Jan 12, 2024
@openshift-ci-robot
Copy link

openshift-ci-robot commented Jan 12, 2024

@rvanderp3: This pull request references SPLAT-1385 which is a valid jira issue.

Warning: The referenced jira issue has an invalid target version for the target branch this PR targets: expected the task to target the "4.16.0" version, but no target version was set.

In response to this:

This PR intends to address RFE https://issues.redhat.com/browse/RFE-1799. Additional tags are provided by the declaring a slice of tags referenced by their URN ID. This is consistent with how CAPV ingests additional tags for a VM.

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 openshift-eng/jira-lifecycle-plugin repository.

@JoelSpeed
Copy link
Contributor

/lgtm

@openshift-ci openshift-ci bot added the lgtm Indicates that a PR is ready to be merged. label Jan 15, 2024
Copy link
Contributor

openshift-ci bot commented Jan 15, 2024

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: JoelSpeed, rvanderp3, vr4manta

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-ci openshift-ci bot added the approved Indicates a PR has been approved by an approver from all required OWNERS files. label Jan 15, 2024
@openshift-ci-robot
Copy link

/retest-required

Remaining retests: 0 against base HEAD 412e126 and 2 for PR HEAD 56958b4 in total

Copy link
Contributor

openshift-ci bot commented Jan 15, 2024

@rvanderp3: all tests passed!

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-bot openshift-merge-bot bot merged commit 0793e91 into openshift:master Jan 15, 2024
16 checks passed
@openshift-bot
Copy link

[ART PR BUILD NOTIFIER]

This PR has been included in build ose-cluster-config-api-container-v4.16.0-202401161431.p0.g0793e91.assembly.stream for distgit ose-cluster-config-api.
All builds following this will include this PR.

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. jira/valid-reference Indicates that this PR references a valid Jira ticket of any type. lgtm Indicates that a PR is ready to be merged. size/S Denotes a PR that changes 10-29 lines, ignoring generated files.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

5 participants