Skip to content

RHVH-QE/rhvhauto_common_utils

Repository files navigation

Common utils for RHVH automation project

Prerequisite

  • Python == "^3.7"

use poetry for dependency management and packaging

For dev

  • install dependencies
dnf install -y python3-devel libcurl-devel libxml-devel libxslt-devel
  • install poetry
curl -sSL https://raw.githubusercontent.com/python-poetry/poetry/master/get-poetry.py | python
  • then follow the Document for next setup

  • cd to $PROJECT root

$> poetry install && poetry shell

for detail usage, please see Document

use this package for other project

$> poetry add rhvhauto-common-utils

or

$> pip install rhvhauto-common-utils

common_utils/rhv

a simple ovirt-sdk4 wrapper

HE Dashboard
  • add host
  • migrate vm
Upgrade
  • add data-center
  • remove data-center
  • add cluster
  • remove cluster
  • add host
  • list host
  • deactivate host
  • remove host
  • check_update_available
  • upgrade_host
  • update_network
  • add_plain_storage_domain
  • remove_storage_domain
  • create_vm_from_tpl
  • list_vm(self, vm_name)
  • start_vm(self, vm_name)
  • operate_vm(self, vm_name, operation)
  • remove_vm(self, vm_name)
  • create_vm_image_disk(self, vm_name, sd_name, disk_name, disk_size
  • attach_disk_to_vm(self, disk_name, vm_name, bootable=False)
  • migrate_vm(self, vm_name)

Examples

Basic Usage
from rhvhauto_common_utils.rhv.base import BaseRhvAPI

if __name__ == '__main__':
    url = "https://FQDN/ovirt-engine/api"
    api = BaseRhvAPI(url)

    ret = api.add_data_center("atv_dc_01", local=False, wait=True)
    print(ret)

    ret = api.del_data_center("atv_dc_01")
    print(ret)

    ret = api.add_cluster(
        "atv_cl_01",
        data_center_name="atv_dc_01",
        cpu_type="Intel Skylake Server Family"
    )
    print(ret)

    ret = api.del_cluster("atv_cl_03")
    print(ret)

    ret = api.add_host(
        "atv_host_01",
        address="10.73.73.69",
        root_password="redhat",
        cluster_name="atv_cl_01",
        deploy_hosted_engine=False
    )
    print(ret)

    ret = api.deactivate_host("atv_host_01")
    print(ret)

    ret = api.activate_host('atv_host_01')
    print(ret)
    
    ret = api.add_iscsi_storage("name",
                                data_center_name="dc_name",
                                host_name="host_name",
                                lun_id="xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
                                address="0.0.0.0",
                                target="iqn.xxxxxxx:xxxx.xxxxxx.xxxxx",
                                port=3260)
    print(ret)
    

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages