Skip to content

[CI-v2] Add networking job with Github Action#2318

Merged
mandre merged 1 commit intogophercloud:masterfrom
EmilienM:civ2_networking
Jan 26, 2022
Merged

[CI-v2] Add networking job with Github Action#2318
mandre merged 1 commit intogophercloud:masterfrom
EmilienM:civ2_networking

Conversation

@EmilienM
Copy link
Copy Markdown
Contributor

@EmilienM EmilienM commented Jan 11, 2022

This runs a Github Action to:

  • Deploy Devstack with Neutron
  • Run acceptance/openstack/networking
  • Unskip a lot of tests
  • Do not test FWaaS v1, too old and will be removed from Gophercloud via Remove FWaaS v1 support #2320
  • Skip FWAAS v2 testing after Ussuri (service was removed); and deploy it only on
    Ussuri and Train, so it can still be tested.
  • Fix a test for FWAAS, where ICMP rule can't have a port in source
  • Skip TestAgentsRUD because it can't work with OVN (default in devstack
    now). This test will have to be reworked in the future.
  • Fix TestDNSPortCRUDL test (some typos)
  • Skip TestLayer3RouterAgents because it can't work with OVN (default
    in devstack now). This test will have to be rewored in the future.
  • Skip TestDNSFloatingIPCRDL which doesn't work with ML2/OVN
  • Skip LBAAS (v1 and v2) from Neutron API, it was removed and replaced by Octavia.
    We'll need to deprecate and remove it from Gophercloud as well.
  • In TestMTUNetworkCRUDL, reduce the MTU to 1440. With OVN + Geneve, we
    can't go above 1442, so let's set 1440 for the test to be safe.
  • Skip VlanTransparent, Trunk and QoS testing if the extension is not there.
  • Post logs if we encounter a failure

@coveralls
Copy link
Copy Markdown

coveralls commented Jan 11, 2022

Coverage Status

Coverage remained the same at 79.91% when pulling f232e76 on EmilienM:civ2_networking into 86aa60d on gophercloud:master.

@theopenlab-ci
Copy link
Copy Markdown

theopenlab-ci bot commented Jan 11, 2022

Build succeeded.

th.AssertNoErr(t, err)
th.AssertEquals(t, agent.Description, allAgents[0].Description)

// skip this part
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Any reason you didn't remove the t.Skip("Skip DHCP agent deletion") below?

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

I think it's causing problem because there is no DHCP agent when deploying with OVN (the default in recent devstack). Also another issue is that if you remove the agent, later in the tests, you'll have networking issue if you start a VM.
Honestly, this can be re-worked later. But I think it's fine to skip it now like it was the case already.

@theopenlab-ci
Copy link
Copy Markdown

theopenlab-ci bot commented Jan 12, 2022

Build failed.

@theopenlab-ci
Copy link
Copy Markdown

theopenlab-ci bot commented Jan 13, 2022

Build failed.

@theopenlab-ci
Copy link
Copy Markdown

theopenlab-ci bot commented Jan 13, 2022

Build failed.

@theopenlab-ci
Copy link
Copy Markdown

theopenlab-ci bot commented Jan 18, 2022

Build failed.

@theopenlab-ci
Copy link
Copy Markdown

theopenlab-ci bot commented Jan 18, 2022

Build failed.

@theopenlab-ci
Copy link
Copy Markdown

theopenlab-ci bot commented Jan 19, 2022

Build failed.

@theopenlab-ci
Copy link
Copy Markdown

theopenlab-ci bot commented Jan 19, 2022

Build failed.

@theopenlab-ci
Copy link
Copy Markdown

theopenlab-ci bot commented Jan 20, 2022

Build failed.

@theopenlab-ci
Copy link
Copy Markdown

theopenlab-ci bot commented Jan 20, 2022

Build succeeded.

@theopenlab-ci
Copy link
Copy Markdown

theopenlab-ci bot commented Jan 21, 2022

Build succeeded.

@theopenlab-ci
Copy link
Copy Markdown

theopenlab-ci bot commented Jan 21, 2022

Build succeeded.

@theopenlab-ci
Copy link
Copy Markdown

theopenlab-ci bot commented Jan 21, 2022

Build succeeded.

client, err := clients.NewNetworkV2Client()
th.AssertNoErr(t, err)

extension, err := extensions.Get(client, "qos").Extract()
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Yes! I like that we check the capability of the cloud to enable tests dynamically. It's a nice pattern to follow.
Much better than what I originally did in 22e6520

Q_ML2_PLUGIN_EXT_DRIVERS=qos,port_security,dns_domain_keywords
enable_plugin neutron-vpnaas https://opendev.org/openstack/neutron-vpnaas ${{ matrix.openstack_version }}
${{ matrix.devstack_conf_overrides }}
enabled_services: 'neutron-dns,neutron-qos,neutron-segments,neutron-trunk,neutron-uplink-status-propagation,neutron-network-segment-range,neutron-port-forwarding'
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

Honestly, I'm not sure how to enable VLAN transparent, and I'm not even sure it works for OVN.
As for Train, I'm sure it's because of the default Neutron plugins (ML2/OVS). We could change that in the future if you don't mind, but I think the coverage is pretty good now.

This runs a Github Action to:
* Deploy Devstack with Neutron
* Run acceptance/openstack/networking
* Unskip a lot of tests
* Do not test FWaaS v1, too old and will be removed from Gophercloud via #2320
* Skip FWAAS v2 testing after Ussuri (service was removed); and deploy it only on
  Ussuri and Train, so it can still be tested.
* Fix a test for FWAAS, where ICMP rule can't have a port in source and
  source/dest have to be comma separated ranges.
* Skip TestAgentsRUD because it can't work with OVN (default in devstack
  now). This test will have to be reworked in the future.
* Fix TestDNSPortCRUDL test (some typos)
* Skip TestLayer3RouterAgents because it can't work with OVN (default
  in devstack now). This test will have to be rewored in the future.
* Skip TestDNSFloatingIPCRDL which doesn't work with ML2/OVN
* Skip LBAAS (v1 and v2) from Neutron API, it was removed and replaced by Octavia.
  We'll need to deprecate and remove it from Gophercloud as well.
* In TestMTUNetworkCRUDL, reduce the MTU to 1440. With OVN + Geneve, we
  can't go above 1442, so let's set 1440 for the test to be safe.
* Skip VlanTransparent, Trunk and QoS testing if the extension is not there.
* Post logs if we encounter a failure
@mandre mandre merged commit a09e723 into gophercloud:master Jan 26, 2022
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.

3 participants