[INTPAK-224] Support and test ansible-odl deployments will all defaults vars Created: 27/Nov/18  Updated: 10/Dec/18

Status: In Progress
Project: integration-packaging
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: Improvement Priority: Medium
Reporter: Daniel Farrell Assignee: Taseer Ahmed
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Blocks
blocks INTPAK-223 Updates for Fluorine SR1 Resolved

 Description   

The current design of the ansible-opendaylight test logic is such that there is a builder/script that is meant to apply ODL with all default vars, then run tests. A second builder/script runs serially to override some default param and run tests again.

However, the default buildr/script still uses a playbook that overrides the default rpm_repo_url var. That result in verify jobs always testing that version of ODL, not whatever version the actual defaults point to. This is evident when changing the defaults, like in INTPAK-223.

Should add test coverage that actually uses all default vars.

Update: Discovered while adding test coverage that the rpm_repo_url var we always override is actually broken out of the box. See comments for details. Re-scoped this issue to cover.



 Comments   
Comment by Daniel Farrell [ 27/Nov/18 ]

Add playboks that don't override rpm_repo_url, including one that still installs REST API so we can switch to that in tests: https://git.opendaylight.org/gerrit/78186

Comment by Daniel Farrell [ 27/Nov/18 ]

Switch ansible-odl RPM tests to default ODL vers: https://git.opendaylight.org/gerrit/78187

Comment by Daniel Farrell [ 29/Nov/18 ]

Well, this is interesting. Running with the two changes so far in the sandbox, I'm seeing a failure:

TASK [opendaylight : Download ODL yum repo cfg file] ***************************
fatal: [localhost]: FAILED! => {"msg": "The task includes an option with an undefined variable. The error was: Unable to look up a name or access an attribute in template string (

Unknown macro: {% if 'latest_release' not in odl_version %}

https://git.opendaylight.org/gerrit/gitweb?p=integration/packaging.git;a=blob_plain;f=packages/rpm/example_repo_configs/opendaylight-\{{ odl_version_dict[odl_version] }}-devel.repo{% else %}https://git.opendaylight.org/gerrit/gitweb?p=integration/packaging.git;a=blob_plain;f=packages/rpm/example_repo_configs/opendaylight-9-release.repo\{% endif %}).\n

https://logs.opendaylight.org/sandbox/vex-yul-odl-jenkins-2/ansible-test-rpm-master/1/console.log.gz

I think what's going on is that we always override rpm_repo_url in CI, so some contributions from the OPNFV XCI folks introduced vars here that work in there env but don't work in an all-defaults deployment. I remember being worried about this at the time but not having proper CI coverage to validate myself.

I think we might need to simplify that default var, at the expense of potentially requiring some changes from OPNFV folks.

Generated at Wed Feb 07 20:03:57 UTC 2024 using Jira 8.20.10#820010-sha1:ace47f9899e9ee25d7157d59aa17ab06aee30d3d.