Describe virtual devops environments using templates instead of hardcoded generators with some external parameters

Registered by Dennis Dmitriev

Currently, we make virtual devops environments for run system tests, where a small amount of parameters can be used for configure nodes and networks in the virtual environment. This approach is hard to scale and cannot be used for making detailed hardware/network configs for each node in the environment.

Template based approach allows to make unique configuration for each node, make non-standard network topologies without re-writing the #fuel-devops code for each particular case, add new roles for nodes to get environment with pre-installed operation systems or use some external image to get prepared software on some nodes.

Blueprint information

Status:
Not started
Approver:
Nastya Urlapova
Priority:
High
Drafter:
Dennis Dmitriev
Direction:
Approved
Assignee:
None
Definition:
Review
Series goal:
Accepted for future
Implementation:
Unknown
Milestone target:
milestone icon next

Related branches

Sprints

Whiteboard

Gerrit topic: https://review.openstack.org/#q,topic:bp/template-based-virtual-devops-environments,n,z

Addressed by: https://review.openstack.org/240170
    Describe virtual devops environments using YAML templates

Addressed by: https://review.openstack.org/238105
    Move to template-based configuration of devops environments

Gerrit topic: https://review.openstack.org/#q,topic:flexible-object-model,n,z

Addressed by: https://review.openstack.org/242455
    Flexible object schema for template-based virtual environments

Addressed by: https://review.openstack.org/273975
    Update usage documentation for v3.0.0

Addressed by: https://review.openstack.org/274020
    v3.0.0: Additional changes to helpers

Addressed by: https://review.openstack.org/274578
    ParamedModel - Parameterizable model class

Addressed by: https://review.openstack.org/274749
    New Libvirt Driver Model

Addressed by: https://review.openstack.org/274750
    New Network Models

Addressed by: https://review.openstack.org/274751
    Volume model changes

Addressed by: https://review.openstack.org/274752
    Node model changes

Addressed by: https://review.openstack.org/274753
    New LibvirtXMLBuilder

Addressed by: https://review.openstack.org/274754
    Group and Environment changes

Addressed by: https://review.openstack.org/274755
    shell.py changes

Addressed by: https://review.openstack.org/274756
    Migration for new model schema.

Addressed by: https://review.openstack.org/274757
    Update unit tests Update verion to 3.0.0

Addressed by: https://review.openstack.org/262721
    Update dummy_driver

Addressed by: https://review.openstack.org/284324
    Add ip_reserved and ip_ranges attributes to AddressPool

Addressed by: https://review.openstack.org/257803
    Template validation

Addressed by: https://review.openstack.org/286172
    Use physical host interfaces to connect virtual and baremetal networks

Addressed by: https://review.openstack.org/291200
    Validator for test configurations

Addressed by: https://review.openstack.org/293034
    Remove deprecated 'verbose' argument

Addressed by: https://review.openstack.org/294143
    Do not raise exceptions if object not found in Libvirt for erase

Addressed by: https://review.openstack.org/301817
    Add a new option 'bootmenu_timeout' for libvirt Node

Addressed by: https://review.openstack.org/301834
    Define and start networks and nodes separatelly

Addressed by: https://review.openstack.org/302698
    Generate 'network_config' in compatibility layer

(?)

Work Items

Dependency tree

* Blueprints in grey have been implemented.

This blueprint contains Public information 
Everyone can see this information.

Subscribers

No subscribers.