Skip to main content

Azure CLI automation via Docker-based isolation

Project description

PyzureCLI

Asynchronous Azure CLI automation via Docker-based isolation.

PyzureCLI runs every az command inside a disposable Docker container, providing:

  • Interactive login (device-code flow) with persistent session cache at ./azure/user
  • Service principal creation and managed login, cached under ./azure/sp
  • App registration for multi-tenant OAuth flows, configured in ./azure/app_registration
import asyncio
from pathlib import Path
from src.pyzurecli import az


async def main():
    # Initialize AzureCLI client (entry via factory.py)
    cli = await az.__async_init__(Path.cwd())

    # Inspect current subscription metadata
    meta = await cli.metadata
    print("Subscription ID:", meta.subscription_id)

    # Create or retrieve a Service Principal
    sp = await cli.service_principal
    print("SP App ID:", sp.creds.appId)

    # Create or retrieve an App Registration
    ar = await cli.app_registration
    client_id = await ar.client_id
    print("App Registration Client ID:", client_id)

    # Generate an admin-consent URL
    url = await ar.generate_admin_consent_url()
    print("Consent URL:", url)


asyncio.run(main())

License

MIT © genderlesspit

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

pyzurecli-0.7.2.tar.gz (68.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

pyzurecli-0.7.2-py3-none-any.whl (378.6 kB view details)

Uploaded Python 3

File details

Details for the file pyzurecli-0.7.2.tar.gz.

File metadata

  • Download URL: pyzurecli-0.7.2.tar.gz
  • Upload date:
  • Size: 68.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/2.1.3 CPython/3.13.2 Windows/11

File hashes

Hashes for pyzurecli-0.7.2.tar.gz
Algorithm Hash digest
SHA256 6e3b9608f8a94500d508fed1248ceb110dcf1b03b8e6387db6ba51a254632c7e
MD5 599f12364204627d93f7e4e7779ec1c8
BLAKE2b-256 1c2013e7353a75b21bb0ba4d25ce229e2f7973dd4e5c7750e51a09b7157eb85c

See more details on using hashes here.

File details

Details for the file pyzurecli-0.7.2-py3-none-any.whl.

File metadata

  • Download URL: pyzurecli-0.7.2-py3-none-any.whl
  • Upload date:
  • Size: 378.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/2.1.3 CPython/3.13.2 Windows/11

File hashes

Hashes for pyzurecli-0.7.2-py3-none-any.whl
Algorithm Hash digest
SHA256 3d0866f84ac60fff42fb0d8d4bc4e7bd8051c736e867bb4e4bc9f8d121c7d56f
MD5 3ef8c3d3864fb3cb6842475e906fe091
BLAKE2b-256 2bf97975639ed6cc80d5dcbc04feba66d29cc0625cfa322f5e112578b4643769

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page