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

vni phase 2 changes #5112

Merged
merged 1 commit into from
Feb 16, 2024
Merged

vni phase 2 changes #5112

merged 1 commit into from
Feb 16, 2024

Conversation

ujjwal-ibm
Copy link
Collaborator

@ujjwal-ibm ujjwal-ibm commented Feb 2, 2024

Support for virtual network interfaces across instance, bare metal servers, instance templates, shares.

New resources :

  1. ibm_is_bare_metal_server_network_attachment
  2. ibm_is_instance_network_attachment
  3. ibm_is_virtual_network_interface
  4. ibm_is_virtual_network_interface_floating_ip
  5. ibm_is_virtual_network_interface_ip

New datasources:

  1. ibm_is_bare_metal_server_network_attachment
  2. ibm_is_bare_metal_server_network_attachments
  3. ibm_is_instance_network_attachment
  4. ibm_is_instance_network_attachments
  5. ibm_is_virtual_network_interface_floating_ip
  6. ibm_is_virtual_network_interface_floating_ips
  7. ibm_is_virtual_network_interface_ip
  8. ibm_is_virtual_network_interface_ips

A virtual network interface (VNI) is a logical abstraction of a network interface in a subnet. It can be attached to a target resource, providing that resource with network connectivity. As a top-level resource with a CRN, a VNI's lifecycle is independent of the target resource it is attached to (unless auto_delete is set to true). In addition, it has its own set of IAM permissions.

A VNI has the following properties that define networking policies:

Primary IP and secondary IPs
Security groups
IP spoofing
Infrastructure NAT

Changes in datasource :

  • bare metal server profile
    • code
    • test
    • doc
=== RUN   TestAccIBMISBMSProfileDataSource_vni
--- PASS: TestAccIBMISBMSProfileDataSource_vni (34.23s)
PASS
ok      github.com/IBM-Cloud/terraform-provider-ibm/ibm/service/vpc     39.519s
  • bare metal server profiles
    • code
    • test
    • doc
=== RUN   TestAccIBMISBMSProfilesDataSource_vni
--- PASS: TestAccIBMISBMSProfilesDataSource_vni (22.20s)
PASS
ok      github.com/IBM-Cloud/terraform-provider-ibm/ibm/service/vpc     26.872s
  • bare metal server
    • code
    • test
    • doc
=== RUN   TestAccIBMISBMSDataSourceVNI_basic
--- PASS: TestAccIBMISBMSDataSourceVNI_basic (38.88s)
PASS
ok      github.com/IBM-Cloud/terraform-provider-ibm/ibm/service/vpc     42.882s
  • bare metal servers
    • code
    • test
    • doc
=== RUN   TestAccIBMISBMSsDataSourceVNI_basic
--- PASS: TestAccIBMISBMSsDataSourceVNI_basic (78.13s)
PASS
ok      github.com/IBM-Cloud/terraform-provider-ibm/ibm/service/vpc     82.822s
  • bare metal server NetworkAttachment
    • code
    • test
    • doc
=== RUN   TestAccIBMIsBareMetalServerNetworkAttachmentDataSourceBasic
--- PASS: TestAccIBMIsBareMetalServerNetworkAttachmentDataSourceBasic (18.89s)
PASS
ok      github.com/IBM-Cloud/terraform-provider-ibm/ibm/service/vpc     23.264s
  • bare metal server NetworkAttachments
    • code
    • test
    • doc
=== RUN   TestAccIBMIsBareMetalServerNetworkAttachmentsDataSourceBasic
--- PASS: TestAccIBMIsBareMetalServerNetworkAttachmentsDataSourceBasic (17.60s)
PASS
ok      github.com/IBM-Cloud/terraform-provider-ibm/ibm/service/vpc     22.063s
  • virtual_network_interface
    • code
    • test
    • doc
=== RUN   TestAccIBMIsVirtualNetworkInterfaceDataSourceVniBasic
--- PASS: TestAccIBMIsVirtualNetworkInterfaceDataSourceVniBasic (46.92s)
PASS
ok      github.com/IBM-Cloud/terraform-provider-ibm/ibm/service/vpc     49.156s
  • virtual_network_interfaces
    • code
    • test
    • doc
=== RUN   TestAccIBMIsVirtualNetworkInterfacesDataSourceVniBasic
--- PASS: TestAccIBMIsVirtualNetworkInterfacesDataSourceVniBasic (42.89s)
PASS
ok      github.com/IBM-Cloud/terraform-provider-ibm/ibm/service/vpc     44.980s
  • virtual_network_interface_floating_ip
    • code
    • test
    • doc
=== RUN   TestAccIBMIsVirtualNetworkInterfaceFloatingIPDataSourceBasic
--- PASS: TestAccIBMIsVirtualNetworkInterfaceFloatingIPDataSourceBasic (165.28s)
PASS
ok      github.com/IBM-Cloud/terraform-provider-ibm/ibm/service/vpc     167.334s
  • virtual_network_interface_floating_ips
    • code
    • test
    • doc
=== RUN   TestAccIBMIsVirtualNetworkInterfaceFloatingIPsDataSourceBasic
--- PASS: TestAccIBMIsVirtualNetworkInterfaceFloatingIPsDataSourceBasic (166.14s)
PASS
ok      github.com/IBM-Cloud/terraform-provider-ibm/ibm/service/vpc     168.242s
  • virtual_network_interface_ip
    • code
    • test
    • doc
=== RUN   TestAccIBMIsVirtualNetworkInterfaceIpDataSourceBasic
--- PASS: TestAccIBMIsVirtualNetworkInterfaceIpDataSourceBasic (153.44s)
PASS
ok      github.com/IBM-Cloud/terraform-provider-ibm/ibm/service/vpc     155.622s
  • virtual_network_interface_ips
    • code
    • test
    • doc
=== RUN   TestAccIBMIsVirtualNetworkInterfaceIpsDataSourceBasic
--- PASS: TestAccIBMIsVirtualNetworkInterfaceIpsDataSourceBasic (147.24s)
PASS
ok      github.com/IBM-Cloud/terraform-provider-ibm/ibm/service/vpc     149.332s

Changes in resource :

  • bare metal server

    • code
    • test
    • doc
  • bare metal server NetworkAttachment

    • code
    • test
    • doc
=== RUN   TestAccIBMIsBareMetalServerNetworkAttachmentVlan
--- PASS: TestAccIBMIsBareMetalServerNetworkAttachmentVlan (32.99s)
PASS
ok      github.com/IBM-Cloud/terraform-provider-ibm/ibm/service/vpc     38.984s
  • flow_log
    • code
    • test
    • doc
=== RUN   TestAccIBMISFlowLog_vni
--- PASS: TestAccIBMISFlowLog_vni (159.36s)
PASS
ok      github.com/IBM-Cloud/terraform-provider-ibm/ibm/service/vpc     161.166s
  • security_group

    • code
    • test
    • doc
  • subnet_reserved_ip

    • code
    • test
    • doc
  • virtual_network_interface

    • code
    • test
    • doc
=== RUN   TestAccIBMIsVirtualNetworkInterfaceBasic
--- PASS: TestAccIBMIsVirtualNetworkInterfaceBasic (141.15s)
PASS
ok      github.com/IBM-Cloud/terraform-provider-ibm/ibm/service/vpc     143.277s
=== RUN   TestAccIBMIsVirtualNetworkInterfaceAllArgs
--- PASS: TestAccIBMIsVirtualNetworkInterfaceAllArgs (250.12s)
PASS
ok      github.com/IBM-Cloud/terraform-provider-ibm/ibm/service/vpc     252.792s
  • virtual_network_interface_floating_ip
    • code
    • test
    • doc
=== RUN   TestAccIBMIsVirtualNetworkInterfaceFloatingIPBasic
--- PASS: TestAccIBMIsVirtualNetworkInterfaceFloatingIPBasic (164.57s)
PASS
ok      github.com/IBM-Cloud/terraform-provider-ibm/ibm/service/vpc     166.874s
  • virtual_network_interface_ip
    • code
    • test
    • doc
=== RUN   TestAccIBMIsVirtualNetworkInterfaceIPBasic
--- PASS: TestAccIBMIsVirtualNetworkInterfaceIPBasic (142.16s)
PASS
ok      github.com/IBM-Cloud/terraform-provider-ibm/ibm/service/vpc     144.214s

[] Develop resource/commands for VNI CRUD apis
[] Develop VNI floating ips CRUD apis
[] Develop VNI reserved ips CRUD apis
[] Revisit VNI prototype and add additional properties to the schema/commands
[] Develop secondary ips in file share mount target
[] develop vni ID and auto_delete in mount target


Community Note

  • Please vote on this pull request by adding a 👍 reaction to the original pull request comment to help the community and maintainers prioritize this request
  • Please do not leave "+1" or other comments that do not add relevant new information or questions, they generate extra noise for pull request followers and do not help prioritize the request

Relates OR Closes #0000

Output from acceptance testing:

=== RUN   TestAccIBMISInstance_vni_update
no message sent
no message sent
--- PASS: TestAccIBMISInstance_vni_update (325.15s)
PASS
ok      github.com/IBM-Cloud/terraform-provider-ibm/ibm/service/vpc     327.733s
=== RUN   TestAccIBMIsInstanceNetworkAttachmentAllArgsUpdate
no message sent
no message sent
--- PASS: TestAccIBMIsInstanceNetworkAttachmentAllArgsUpdate (260.31s)
PASS
ok      github.com/IBM-Cloud/terraform-provider-ibm/ibm/service/vpc     263.857s

Community Note

  • Please vote on this pull request by adding a 👍 reaction to the original pull request comment to help the community and maintainers prioritize this request
  • Please do not leave "+1" or other comments that do not add relevant new information or questions, they generate extra noise for pull request followers and do not help prioritize the request

Relates OR Closes #0000

Output from acceptance testing:

examples/ibm-is-ng/main.tf Outdated Show resolved Hide resolved
ibm/provider/provider.go Outdated Show resolved Hide resolved
ibm/service/vpc/data_source_ibm_is_bare_metal_servers.go Outdated Show resolved Hide resolved
ibm/service/vpc/data_source_ibm_is_instance.go Outdated Show resolved Hide resolved
ibm/service/vpc/data_source_ibm_is_instance.go Outdated Show resolved Hide resolved
ibm/service/vpc/data_source_ibm_is_instances.go Outdated Show resolved Hide resolved
scripts/build.sh Outdated Show resolved Hide resolved
@hkantare hkantare merged commit 0a5db2e into IBM-Cloud:master Feb 16, 2024
1 check passed
@ujjwal-ibm ujjwal-ibm deleted the vnip2-bm branch March 25, 2024 13:37
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants