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

[WIP] Support REST API dual-stack #1133

Closed
wants to merge 1 commit into from

Conversation

YuviGold
Copy link
Contributor

@YuviGold YuviGold commented Oct 4, 2021

A lot of changes in order to support IPv4=true IPv6=true.

  • Remove env vars for SERVICE_CIDR, CLUSTER_CIDR, CLUSTER_HOST_PREFIX as
    no one uses them.
  • Support sending multiple values for cluster_networks,
    service_networks, and machine_networks.
  • Add constants for IPv4, IPv6, and IPv4v6 subnets.
  • Change controllers signatures from get_machine_cidr to
    get_machine_networks.
  • Support provisioning multiple networks via Terraform.
    Create a libvirt_network resource and a dynamic network_interface
    for each machine network available.
  • Deprecate provisioning_cidr network as it is mostly confusing and we
    would like to be allowed to add/remove networks without indication
    whether they are primary/secondary in Terraform.
  • Change assets to work with lists of two fields - cidrs and
    libvirt_network_interfaces.
    Interfaces are named ai-net<x>-<number>. The x represents
    the network number and the number represents the namespace index.

/cc @YuviGold

@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 Oct 4, 2021
@openshift-ci
Copy link

openshift-ci bot commented Oct 4, 2021

@YuviGold: GitHub didn't allow me to request PR reviews from the following users: YuviGold.

Note that only openshift members and repo collaborators can review this PR, and authors cannot review their own PRs.

In response to this:

A lot of changes in order to support IPv4=true IPv6=true.

  • Remove env vars for SERVICE_CIDR, CLUSTER_CIDR, CLUSTER_HOST_PREFIX as
    no one uses them.
  • Support sending multiple values for cluster_networks,
    service_networks, and machine_networks.
  • Add constants for IPv4, IPv6, and IPv4v6 subnets.
  • Change controllers signatures from get_machine_cidr to
    get_machine_networks.
  • Support provisioning multiple networks via Terraform.
    Create a libvirt_network resource and a dynamic network_interface
    for each machine network available.
  • Deprecate provisioning_cidr network as it is mostly confusing and we
    would like to be allowed to add/remove networks without indication
    whether they are primary/secondary in Terraform.
  • Change assets to work with lists of two fields - cidrs and
    libvirt_network_interfaces.
    Interfaces are named testinfra-net<x>-<number>. The x represents
    the network number and the number represents the namespace index.

/cc @YuviGold

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.

@openshift-ci openshift-ci bot added the size/XL Denotes a PR that changes 500-999 lines, ignoring generated files. label Oct 4, 2021
@openshift-ci
Copy link

openshift-ci bot commented Oct 4, 2021

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: YuviGold

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 Oct 4, 2021
@YuviGold
Copy link
Contributor Author

YuviGold commented Oct 4, 2021

/test e2e-metal-ipv6

@openshift-ci
Copy link

openshift-ci bot commented Oct 4, 2021

@YuviGold: The specified target(s) for /test were not found.
The following commands are available to trigger required jobs:

  • /test e2e-metal-assisted
  • /test e2e-metal-assisted-kube-api
  • /test images

The following commands are available to trigger optional jobs:

  • /test e2e-metal-assisted-ipv6
  • /test e2e-metal-assisted-kube-api-late-binding-single-node
  • /test e2e-metal-assisted-multi-version
  • /test e2e-metal-assisted-networking
  • /test e2e-metal-assisted-none
  • /test e2e-metal-assisted-none-ipv6
  • /test e2e-metal-assisted-olm
  • /test e2e-metal-assisted-single-node
  • /test e2e-metal-single-node-live-iso
  • /test system-test-operator

Use /test all to run the following jobs that were automatically triggered:

  • pull-ci-openshift-assisted-test-infra-master-e2e-metal-assisted
  • pull-ci-openshift-assisted-test-infra-master-e2e-metal-assisted-kube-api
  • pull-ci-openshift-assisted-test-infra-master-e2e-metal-assisted-kube-api-late-binding-single-node
  • pull-ci-openshift-assisted-test-infra-master-e2e-metal-assisted-networking
  • pull-ci-openshift-assisted-test-infra-master-e2e-metal-assisted-none
  • pull-ci-openshift-assisted-test-infra-master-images

In response to this:

/test e2e-metal-ipv6

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.

@YuviGold
Copy link
Contributor Author

YuviGold commented Oct 4, 2021

/test e2e-metal-assisted-ipv6
/test e2e-metal-assisted-olm
/test e2e-metal-assisted-single-node

@YuviGold
Copy link
Contributor Author

YuviGold commented Oct 5, 2021

/test e2e-metal-assisted-ipv6
/test e2e-metal-assisted-olm
/test e2e-metal-assisted-single-node

@openshift-ci openshift-ci bot added size/XXL Denotes a PR that changes 1000+ lines, ignoring generated files. and removed size/XL Denotes a PR that changes 500-999 lines, ignoring generated files. labels Oct 5, 2021
@YuviGold
Copy link
Contributor Author

YuviGold commented Oct 5, 2021

/test e2e-metal-assisted

@openshift-ci openshift-ci bot added size/XL Denotes a PR that changes 500-999 lines, ignoring generated files. and removed size/XXL Denotes a PR that changes 1000+ lines, ignoring generated files. labels Oct 6, 2021
A lot of changes in order to support `IPv4=true IPv6=true`.

- Remove env vars for SERVICE_CIDR, CLUSTER_CIDR, CLUSTER_HOST_PREFIX as
  no one uses them.
- Support sending multiple values for `cluster_networks`,
  `service_networks`, and `machine_networks`.
- Add constants for IPv4, IPv6, and IPv4v6 subnets.
- Change controllers signatures from `get_machine_cidr` to
  `get_machine_networks`.
- Support provisioning multiple networks via Terraform.
  Create a `libvirt_network` resource and a dynamic `network_interface`
  for each machine network available.
- Deprecate `provisioning_cidr` network as it is mostly confusing and we
  would like to be allowed to add/remove networks without indication
  whether they are primary/secondary in Terraform.
- Change assets to work with lists of two fields - `cidrs` and
  `libvirt_network_interfaces`.
  Interfaces are named `ai-net<x>-<number>`. The `x` represents
  the network number and the `number` represents the namespace index.
@openshift-ci openshift-ci bot added size/XXL Denotes a PR that changes 1000+ lines, ignoring generated files. and removed size/XL Denotes a PR that changes 500-999 lines, ignoring generated files. labels Oct 6, 2021
@openshift-ci
Copy link

openshift-ci bot commented Oct 6, 2021

@YuviGold: 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/e2e-metal-assisted-networking 3b1acac link false /test e2e-metal-assisted-networking
ci/prow/e2e-metal-assisted-kube-api-late-binding-single-node c421c48 link false /test e2e-metal-assisted-kube-api-late-binding-single-node
ci/prow/e2e-metal-assisted c421c48 link true /test e2e-metal-assisted
ci/prow/e2e-metal-assisted-none c421c48 link false /test e2e-metal-assisted-none
ci/prow/e2e-metal-assisted-ipv4v6 c421c48 link false /test e2e-metal-assisted-ipv4v6

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.

@YuviGold
Copy link
Contributor Author

YuviGold commented Oct 6, 2021

This PR was made at the beginning to resolve dual-tack and changed the whole TF for supporting multiple networks instead of the provisioning network we have today.
Seems like this isn't going to be an easy change, I am splitting this PR to the original purpose of dual-stack on #1136

@YuviGold YuviGold closed this Oct 6, 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. do-not-merge/work-in-progress Indicates that a PR should not merge because it is a work in progress. 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.

1 participant