Last active
August 29, 2015 14:16
-
-
Save dfarrell07/c2433a7d44c85d77c897 to your computer and use it in GitHub Desktop.
Proposal for ODL+OpenStack integration testing in ODL's CI
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| I took some time and clearly documented the ODL+OpenStack CI proposal | |
| that I've bounced off of many of you in various meetings and IRC chats | |
| recently. | |
| ## Proposal | |
| ### Objective | |
| Have unstable ODL + stable OpenStack testing as a part of ODL's CI process. | |
| ### Background | |
| OPNFV is working to create automated methods of deploying and configuring | |
| stable OpenStack+ODL, then running CI tests against them. | |
| I've been the primary ODL contact for those efforts, as (so far) they all | |
| interact with ODL via my ODL Puppet module[1]. I'm also driving the ODL | |
| Integration team's Neutron testing "epic" for Lithium[2]. | |
| Dan Radez and Tim Rozet (of OpenStack/OPNFV and mostly-OPNFV, CC'd) are | |
| the primary devs driving the creation of one method, based on Foreman | |
| and QuickStack. More info[3][4]. | |
| ### Overview | |
| We should be able to build on the OPNFV work mentioned above to automatically | |
| deploy and configure stable OpenStack + unstable ODL builds, then run tests | |
| against them. We'll additionally need to (at least): | |
| * Add the ability to deploy any ODL build, not just a release, via the | |
| ODL Puppet module. I'm actively working on this feature. | |
| * Tie everything into ODL's Jenkins setup, to kick off the tests. | |
| Given those TODOs, the devs I vetted this with don't see any blockers. | |
| Note that Tempest tests are being implemented first, other tests to follow. | |
| ### Advantages | |
| The main advantage of this method of ODL+OpenStack integration testing is | |
| that it's mostly done/working. | |
| It's also quite nice that we'll be running the same test setup against our | |
| pre-release builds that OPNFV (at least) will run against our releases. | |
| There are already a number of labs up and using early versions of this | |
| stack. In the short term, or even just while developing, we *optionally* | |
| could use the one owned by Red Hat. This would save our wonderful admins | |
| some work and likely allow us to get ODL+O/S CI faster. If we don't like | |
| that plan, I'm told it's not too hard to stand it all up. I suspect Dan and | |
| Tim would be willing to help. | |
| ### Known Disadvantages | |
| We'd likely have to leave part of the testing infrastructure, at least | |
| the Foreman server, up and configured (vs building fresh every run). | |
| ### FAQ | |
| Question: Does this support different Neutron providers? | |
| Answer: Yes, that's a key requirement. The general idea is to use the | |
| params of the ODL Puppet module to make any config changes, resulting | |
| in your requested ODL deployment once ODL is re-provisioned by Puppet. ODL | |
| features are already supported as a param. Any other required ODL config | |
| can be added as-needed. | |
| ## Questions | |
| * Is there any reason the proposal will not work? | |
| * Are there any requirements that are not met by the proposal? | |
| * Is someone willing to help with (or own!) the Jenkins tie-in TODO? | |
| * Anyone want to help in general? :) | |
| [1]: https://github.com/dfarrell07/puppet-opendaylight | |
| [2]: https://wiki.opendaylight.org/view/CrossProject:Integration_Group:Lithium_Test_Strategy | |
| [3]: https://wiki.opnfv.org/opendaylight_quickstack_guide | |
| [4]: https://wiki.opnfv.org/get_started_experiment1 |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment