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.2.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.2-py3-none-any.whl (12.4 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: cybergoatz_azure_lib-1.0.2.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.2.tar.gz
Algorithm Hash digest
SHA256 20d026d4e6d07bfc453307f53a5dfdf3c2c6433670ca34d9982a013711fe589b
MD5 115c55496424a0ce1fd47b01deede4f7
BLAKE2b-256 9aed7ac33fee45ae9743a7a1b1899941062819ffe03256525290f596b318b529

See more details on using hashes here.

File details

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

File metadata

  • Download URL: cybergoatz_azure_lib-1.0.2-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.2-py3-none-any.whl
Algorithm Hash digest
SHA256 c28422645b77054a663ebab81f6c59ae34198d82c0495a917834841dea62a37e
MD5 c37620c8dafcfeb514887bee83144566
BLAKE2b-256 511940561139fb4febecca8ba05fcf924bb09d32b48b1e82857cf78fda0a44de

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