Implements parser for otopi machine dialog.
Project description
python-otopi-mdp
otopi Machine Dialog Parser for python
This module allows you automate installation process based on otopi installator.
Requirements
six
otopi
WARNING: The otopi package is not hosted on PyPi site, so it couldn’t be included as dependency of this package. It is maintaned by oVirt community, they ship this module for several package managements.
Usage
Set otopi environment to enable machine dialect
DIALOG/dialect=str:machine
Spawn desired installer and pass stdin and stdout to parser
Process all otopi events in the loop
Example for oVirt Hosted Engine
import subprocess
import otopimdp as mdp
# 1. Set machine dialog option
with open("/etc/ovirt-hosted-engine-setup.env.d/mycustom.env") as fd:
fd.write(
'export environment="${environment} DIALOG/dialect=str:machine"\n'
)
# 2. Spawn installer
installer = subprocess.Popen(["hosted-engine", "--deploy"])
parser = mdp.MachineDialogParser(
input_=installer.stdout, output=installer.stdin
)
# 3. Process events
while True:
event = parser.next_event()
if event is None:
continue
event_type = event[mdp.TYPE_KEY]
if event_type == mdp.TERMINATE_EVENT:
break
event_name = event[mdp.ATTRIBUTES_KEY]['name']
if event_name == "OVEHOSTED_HOST_ID":
event[mdp.REPLY_KEY] = "1"
....
parser.send_response(event)
Run tests
tox
NOTE: For testing purposes, the otopi package is being run from sources.
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
python-otopi-mdp-0.2.2.zip
(25.9 kB
view hashes)
Built Distributions
python_otopi_mdp-0.2.2-py2.7.egg
(16.0 kB
view hashes)
python-otopi-mdp-0.2.2-1.src.rpm
(26.8 kB
view hashes)
Close
Hashes for python_otopi_mdp-0.2.2-py2.7.egg
Algorithm | Hash digest | |
---|---|---|
SHA256 | 922a7476e489c58f91efa81b2d13b55c0b972780ac7874e2042003e59ccd20c4 |
|
MD5 | 59008b7cb13120030747f9ae0a44f541 |
|
BLAKE2b-256 | 7b252339c0cc9aa8b072780a9019fb880f7140bb8b1e2b636e24b51546ed82bc |
Close
Hashes for python-otopi-mdp-0.2.2-1.src.rpm
Algorithm | Hash digest | |
---|---|---|
SHA256 | 08fb13bc27722d62457e0b6f624d167c1dcc9d0103a0b31aec05aafd3ddb18ce |
|
MD5 | bcb8a9a81d8604687c3bdeb0ab04fc69 |
|
BLAKE2b-256 | 24139a964e6a92b3ba4fec8b362df8a5919ebb3d604fe834931d8be4feac6286 |
Close
Hashes for python-otopi-mdp-0.2.2-1.noarch.rpm
Algorithm | Hash digest | |
---|---|---|
SHA256 | c715c885e2552967369cd84437cba9b0de089ff66939755d88091b6801a8f2f9 |
|
MD5 | 03c752861a802a396aba9d9c990f2d93 |
|
BLAKE2b-256 | 22164e9e4adff80facca2742c5ce7c3d96bc386ad7663bd4e42a8474407ba046 |