| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
|
|
|
|
|
|
|
|
| |
ogClient may runs on an OS that do not have all the dependencies needed
to use virtual functions.
This commit change the behaviour to only import virtual functions when
the ogClient has to work with Virtual Machines. This way ogClient works
on environments which do not need virtual functions.
|
|
|
|
|
|
|
| |
Ths patch handles different cases when a /refresh request can be made. More
specifically this handles the situation in which the VM is stopped when /refresh
is called but it starts during the processing of /refresh, in this case we just
send the last recorded setup.
|
|
|
|
|
|
|
|
|
|
|
| |
This patch:
- Fixes logic errors in the communication with QMP (the order of handshake
messages was not right).
- Rewrite parts of OgQMP class.
- Enforces better coding practices by using Python's "context managers" to avoid
forgeting an open socket in case exceptions occur.
- Adapt virtual operations to the use of "context managers" using the "with"
statement.
|
|
|
|
| |
This updates partitions.json filesystems.
|
|
|
|
|
|
| |
This is the device that has the best empirical performance right now and it
seems like it is where most of the qemu development is directed towards for the
future.
|
|
|
|
|
|
|
| |
ogClient changed its config file format to json. This patch adapts
ogLinuxOperation to use new config file.
Co-authored-by: Roberto Hueso <rhueso@soleta.eu>
|
|
|
|
|
| |
This patch waits before polling qemu with QMP so that it has time to be ready
for requests. It also increases wait time in case the host machine is slow.
|
| |
|
|
|
|
| |
This patch also ignores calls to shellrun when virtual mode is activated.
|
| |
|
|
|
|
|
| |
Write permission is not needed to get information about each virtual drive so
this patch changes permissions to 'only read'. This can prevent race conditions.
|
|
|
|
|
| |
This patch makes possible to interact with guest OS from a remote machine using
VNC.
|
|
|
|
|
| |
This patch makes configuration parsing easier as well as making the full
configuration available in many subclasses.
|
|
|
|
|
| |
This is a refactor to consolidate the use of this single variable across all
virtual operations.
|
|
|
|
|
|
| |
This patch calls poweroff in virtual mode when no VM is running and no jobs are
being executed. This is useful when the guest OS shutdowns so that the host OS
does not continue to run.
|
|
|
|
|
| |
This patch implements OgVM class. OgVM abstracts VM emulator from its
operations.
|
|
|
|
|
|
| |
This patch includes changes to:
- Poweroff VM before running operations that require access to virtual disks.
- Poweroff VM before host system poweroff.
|
|
|
|
|
| |
When virtual mode is activated, send the last stored partitions setup because
it is not possible to access a running virtual drive to get its information.
|
|
|
|
|
|
| |
recv method is useful for receiving information that was not previously
requested (such as "events"). This patch also implements automatic handshake
on OgQMP by sending an "qmp_capabilities" request.
|
|
|
|
|
| |
This patch calculates correctly the percentage of disk used. This could cause
an overflow on the ogAdmSever DB.
|
|
|
|
|
| |
This patch handles possible communication errors between ogclient and Qemu when
making QMP requests.
|
|
|
|
|
|
|
|
|
|
|
| |
We observed that with the new ogClient the ogLive did not show the
realtime log menu*.
This commit changes the ogClient to launch the browser and show the
realtime log menu when some commands are executed.
* The realtime log menu is a menu that shows current status and info
about the command that the ogLive is executing.
|
| |
|
| |
|
|
|
|
| |
This requires to configure user and password for samba repositories.
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
| |
We have observed that the ogLive browser did not show the changes when
an image restoration o script execution was called. The problem was that
the HTML menu was not updated/regenerated in these cases.
This commit adds the call to the HTML regeneration function to image
restore and script execution commands. This way, when the browser is
restarted it loads the updated HTML menu.
|
|
|
|
|
|
|
|
|
|
| |
We have observed that the browser did not show changes. This happens
because the ogClient opens the browser at the beginning and forget
about it. To show correctly the changes ogClient had to restart the
browser every time the menu html changes.
This commit changes the behaviour to restart the browser when the menu
html has changed.
|
| |
|
| |
|
|
|
|
| |
This patch avoids infinite writting of connection status messages to the log.
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
| |
This commit changes the OG_PATH to a public varible of the class
ogConfig. This way we improve the configurability of the path.
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
As defined by the HTTP standard.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Testing the ogClient I found that if a value of the json match a key the
ogClient has an exception. For example:
body = "... shell/run {"run": "fdisk -l"} ..."
CURRENT
Enters in
if "disk" in body:...
if "run" in body:...
EXPECTED
Enters in
if "run" in body:...
This commit changes the behaviour to search for the keys in the
dictionary returned by json.loads() instead of searching in the raw
string. This way the ogClient looks for the keys without searching in
the values.
|
| |
|
|
|
|
|
|
| |
With our client disconnection, we hid that the ogClient process will be
closed too. This new way only close the subprocess keeping the ogClient
still working.
|