apache / apache/libcloud

[Docs] Add "Feature Matrix" or "Capability Status" table to Provider pages

Offen
#2,084 0 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen
Vorherrschende Sprache
Python
Sterne
2.1k
Forks
931
Ø Merge
1 T. 2 Std.
Gemergte PRs (30 T.)
4

Beschreibung

### Is your feature request related to a problem? Please describe.
Currently, the "Supported Providers" documentation lists which drivers exist (e.g., EC2, Azure ARM, GCE), but it is difficult for a user to determine the **depth of support** for each provider without diving into the source code.

**The Problem:**
A user looking at the [Compute Providers page](https://libcloud.apache.org/supported_providers.html) sees that "Amazon EC2" is supported. However, they cannot easily verify:
1. Does it support recent features like IMDSv2 (Instance Metadata Service v2)?
2. Does it support Spot Instance requests via the unified API?
3. Are the `list_sizes` or `list_images` methods hardcoded or dynamically fetched?

This opacity makes it hard for architects to evaluate Libcloud against the native SDKs (Boto3, Azure SDK) for their specific needs.

### Describe the solution you'd like
I propose enhancing the documentation for major providers (Compute/Storage) to include a **Capability Status Matrix**.

**Proposed Documentation Update:**
On the individual provider pages (or a centralized matrix), we should track the support status of standard API methods.

*Example Table:*
| Feature | Support Status | Notes |
| :--- | :--- | :--- |
| `create_node` | ✅ Full | Supports user_data, SSH keys |
| `list_sizes` | ⚠️ Partial | Hardcoded list (last updated 2024) |
| `deploy_node` | ✅ Full | |
| `ex_start_node` | ✅ Extension | Provider-specific extension |
| `IPv6 Support` | ❌ No | |

### Describe alternatives you've considered
* **Status Quo:** Users must install the library and run `dir(driver)` or inspect the source code to find capabilities.
* **Automated Badge:** Generating this matrix automatically from the test suite (e.g., based on which methods are overridden in the driver class). This would be the ideal long-term solution.

### Additional Context
As cloud providers add features rapidly, Libcloud's value proposition is "unification." Clear documentation on *what* is unified vs. what requires extension methods (`ex_*`) is critical for adoption.

Beitragsleitfaden

Beitragsleitfaden öffnen

Rechercherichtung

Beginne mit der Seite „Supported Providers“ unter libcloud.apache.org/supported_providers.html und prüfe die einzelnen Compute- und Storage-Provider-Seiten. Bestimme, ob die Matrix auf den Provider-Seiten oder in einem zentralen Dokument geführt werden sollte, und erfasse anschließend die Standardmethoden sowie die providerspezifischen ex_*-Erweiterungen aus den relevanten Treibern. Als abgeschlossen gilt die Aufgabe, wenn für die ausgewählten wichtigen Provider die dokumentierten Unterstützungsstatus und Hinweise vorliegen und der Umfang sowie der Wartungsansatz ausdrücklich festgelegt sind.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
python
Bereich
cloud, documentation
Issue-Typ
Dokumentation
Schwierigkeit
5/5
Geschätzter Aufwand
Über eine Woche
Aktivitätsstatus
Veraltet
Klarheit
Größtenteils klar
Anfängerfreundlichkeit
35/100

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.