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

Uploaded Python 3

File details

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

File metadata

  • Download URL: cybergoatz_azure_lib-1.0.1.tar.gz
  • Upload date:
  • Size: 70.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.17 {"installer":{"name":"uv","version":"0.11.17","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.1.tar.gz
Algorithm Hash digest
SHA256 f4696817044e2a14c27ff224fa9bcc93377acb246e188b71de6ad0ab118f36d8
MD5 22fd367539be11bcbb7fe694525e62fc
BLAKE2b-256 1b816299a2be6cde7f1acfe3ab5181fcadfb64b53f936436dc4e2fe8f5df1c60

See more details on using hashes here.

File details

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

File metadata

  • Download URL: cybergoatz_azure_lib-1.0.1-py3-none-any.whl
  • Upload date:
  • Size: 12.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.17 {"installer":{"name":"uv","version":"0.11.17","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.1-py3-none-any.whl
Algorithm Hash digest
SHA256 09fbcf1c41b0dead2434a3c5e5b2a58d16e77cd5331cc59165bf40fc4c4a2bf5
MD5 c9731b6e8f64daef9186c09fa22159e6
BLAKE2b-256 58f4091f0c11bda92f0d34f00263f7134373dea7acb7f372cebf21148786a967

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