Skip to main content

Cybegoatz platform Azure Driver Python lib

Project description

cybergoatz-azure-lib

Python library that serves as the Azure driver for CyberGoatz Platform sandbox provisioning. It is intended to be an installable component consumed by backend-terraform-client, not a stand-alone application.

This is not a strict AWS/OpenStack port. The implementation is intentionally Azure-shaped:

  • Linux-first
  • SSH-first
  • Azure VM, NIC, subnet, VNet, NSG, and Public IP provisioning through OpenTofu/Terraform
  • Azure-managed SSH public key resources for cloud-side key lifecycle
  • compatibility acceptance of x509 keypair create/get/delete calls even though VM provisioning remains SSH-based

Key design choices

  • The library implements CrczpCloudClientBase from crczp-python-commons.
  • Sandboxes are rendered into a dedicated Azure virtual network with subnets for all topology networks.
  • The MAN node receives a public IP so the existing platform can keep using topology_instance.ip as the SSH target.
  • SSH keypairs are persisted as Azure SSH public key resources and then injected into rendered VM definitions during template creation.
  • Legacy x509 keypair lifecycle calls are accepted as a compatibility path so higher layers can stay provider-agnostic while Azure remains SSH-first.

Expected Azure image format

Topology image references should be either:

  • an Azure image resource ID
  • a URN in the form publisher:offer:sku:version

Contents

  • cybergoatz/azure_driver -- Azure cloud client implementation
  • pyproject.toml -- package metadata
  • tox.ini -- lint and test configuration

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

cybergoatz_azure_lib-1.0.3.tar.gz (70.4 kB view details)

Uploaded Source

Built Distribution

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

cybergoatz_azure_lib-1.0.3-py3-none-any.whl (12.4 kB view details)

Uploaded Python 3

File details

Details for the file cybergoatz_azure_lib-1.0.3.tar.gz.

File metadata

  • Download URL: cybergoatz_azure_lib-1.0.3.tar.gz
  • Upload date:
  • Size: 70.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.28 {"installer":{"name":"uv","version":"0.11.28","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for cybergoatz_azure_lib-1.0.3.tar.gz
Algorithm Hash digest
SHA256 dedef3a17ce0213a6bde75f3c7d8cc6550a6aaeaf7523f86180f988939ae65ab
MD5 91e485fe216ae3b5b9730e0e18acf543
BLAKE2b-256 18476dab21aa19652b45c7a5885ddc6fb7de3be4400c00f8d2fa6e0f41c62451

See more details on using hashes here.

File details

Details for the file cybergoatz_azure_lib-1.0.3-py3-none-any.whl.

File metadata

  • Download URL: cybergoatz_azure_lib-1.0.3-py3-none-any.whl
  • Upload date:
  • Size: 12.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.28 {"installer":{"name":"uv","version":"0.11.28","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for cybergoatz_azure_lib-1.0.3-py3-none-any.whl
Algorithm Hash digest
SHA256 b7be84f705629a1154cc350c66b570ef563eaa08ebe966846308137d77d6d06d
MD5 fd53c96b95a62d461e57409dbd4e6d4c
BLAKE2b-256 b527cb9702861627cd7d4fb8f0b70f2d0e31c35dcf77f43960c5f5babe769803

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