Simple interface pour OVH, afin d'accéder au KVM des serveurs et à des infos basiques mais indispensables...
Go to file
Pierre Ducroquet ba8a41ef6f parallelize fetching of server info 2024-01-15 11:35:32 +01:00
.gitignore ... 2023-05-10 22:18:55 +02:00
CMakeLists.txt update dependencies 2023-10-20 17:40:03 +02:00
COPYING Add GPL3 license 2023-10-20 15:01:49 +02:00
OvhKvm_fr_FR.ts wip 2023-10-16 09:44:58 +02:00
README.md update dependencies 2023-10-20 17:40:03 +02:00
dedicatedservergroupwidget.cpp parallelize fetching of server info 2024-01-15 11:35:32 +01:00
dedicatedservergroupwidget.h parallelize fetching of server info 2024-01-15 11:35:32 +01:00
dedicatedservergroupwidget.ui small cleanups 2023-06-23 12:08:08 +02:00
dedicatedserverinfowidget.cpp show and edit ovh monitoring 2023-06-23 09:12:52 +02:00
dedicatedserverinfowidget.h show and edit ovh monitoring 2023-06-23 09:12:52 +02:00
dedicatedserverinfowidget.ui show and edit ovh monitoring 2023-06-23 09:12:52 +02:00
main.cpp fix Qt6 compatibility 2023-05-23 23:39:50 +02:00
mainwindow.cpp wip 2023-10-16 09:44:58 +02:00
mainwindow.h add a group table 2023-06-23 10:18:58 +02:00
mainwindow.ui add purge logins action 2023-06-23 07:24:53 +02:00
ovh.svg prettify 2023-05-17 11:04:53 +02:00
ovhapi.cpp add server group page (basic so far) 2023-06-23 09:52:35 +02:00
ovhapi.h Add services view, making it possible to stop engagements 2023-06-22 00:03:45 +02:00
ovhwebauthentication.cpp cleanup 2023-06-08 15:07:17 +02:00
ovhwebauthentication.h fix broken ovh bill urls 2023-06-08 11:32:34 +02:00
ovhwebauthentication.ui fix broken ovh bill urls 2023-06-08 11:32:34 +02:00
pendingtasks.cpp show server tasks (basic) 2023-06-23 13:48:56 +02:00
pendingtasks.h show server tasks (basic) 2023-06-23 13:48:56 +02:00
pendingtasks.ui show server tasks (basic) 2023-06-23 13:48:56 +02:00
resources.qrc prettify 2023-05-17 11:04:53 +02:00
servicesview.cpp small cleanups 2023-06-23 12:08:08 +02:00
servicesview.h Add services view, making it possible to stop engagements 2023-06-22 00:03:45 +02:00
servicesview.ui Add services view, making it possible to stop engagements 2023-06-22 00:03:45 +02:00

README.md

OvhKvm

A simple Qt interface for OVH services management.

Why?

Because I was tired of waiting for OVH manager to load, especially during emergencies.

Features

I implemented what I needed so far:

  • browsing your dedicated servers, grouped by reverse domain,
  • showing basic server info (name, location, network settings),
  • opening a KVM interface,
  • getting the last bill for a given server,
  • checking/changing server monitoring status,
  • revoking service engagement,
  • downloading all bills of previous month (directly instead of running the async job on OVH side)

What I plan to add:

  • using SQLite to cache OVH API answers. Because it's so incredibly slow and inefficient, esp when searching bills.
  • a better interface to get the KVM,
  • hardware information
  • server monthly cost
  • view of pending tasks on a given server (in progress),
  • support for vrack on dedicated servers,
  • a dedicated searchable bill view, because it's an ugly mess on OVH side.
  • switch to KDDockWidgets for a nicer interface, maybe

How to build?

Easy peasy, mkdir build && pushd build && cmake .. && make -j 42

Dependencies are in debian testing and likely elsewhere, but for fun and learning I decided to use C++20 and coroutines. It means GCC 10 or Clang 11 minimum. I test mostly on Qt5 but I sometimes launch it with Qt6 to make sure it remains compatible as much as possible. For the KVM, I had no choice but to use QtWebEngine, sadly. JavaWS KVM are also supported, but only when HTML5 is not available. And obviously, in order to bind these requirements in the darkness, QCoro, tested with versions 0.8 and 0.9.

So debian dependencies: apt install cmake qttools5-dev qcoro-qt5-dev qtwebengine5-dev libkf5archive-dev

I have not tested this on Windows nor MacOS. I'm more likely to test it on Haiku than on these OSs... As a matter of fact I do, cubbie. It is not flawless sure, but it works and the bugs are mostly in Qt/QtWebEngine or lower level issues.