ProviderCli (providers/_base.py)

zeenie-ai/OpenCompany · cli/commands/deploy/providers/_base.py · python · MIT
infra

The provider-CLI adapter contract (Stage 1 of ``company deploy``).

# Source: https://github.com/zeenie-ai/OpenCompany | License: MIT | Copyright 2025 MachinaOs
# Provided via justclaw.it.com; keep this notice with the code.
"""The provider-CLI adapter contract (Stage 1 of ``company deploy``)."""

from __future__ import annotations

from typing import Protocol


class ProviderCli(Protocol):
    """Auth + context + API-enablement over a cloud provider's own CLI.

    All methods shell out via ``cli.run``; failures abort with ``typer.Exit``
    and ``error_block`` remediation. None of these create cloud resources --
    Terraform (Stage 2) owns that, using the credentials these methods verify.
    """

    name: str
    #: Instance size used when ``--machine-type`` is not given.
    default_machine_type: str
    #: Install sources the provider's Terraform mo

... (truncated -- full source via MCP)

See the full source, get the GitHub permalink, and search for more like it.

Get a free API key