azure

package
v1.6.2 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: May 14, 2026 License: MIT Imports: 24 Imported by: 0

Documentation

Overview

Package azure assembles CloudEmu's Azure-compatible HTTP server.

New takes a Drivers bundle and returns a *server.Server preloaded with the handler for each non-nil driver. Consumers that want a single service can skip this package and register the handler directly on their own server.Server.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func New

func New(d Drivers) *server.Server

New returns a server that speaks the Azure ARM JSON wire protocol for every non-nil driver in d. Routing is path-based on

/subscriptions/{sub}/resourceGroups/{rg}/providers/{provider}/{type}/...

so handlers can register independently — virtualMachines doesn't conflict with future blob storage or networking handlers.

Types

type Drivers

type Drivers struct {
	VirtualMachines computedriver.Compute
	Disks           computedriver.Compute
	Snapshots       computedriver.Compute
	Images          computedriver.Compute
	SSHPublicKeys   computedriver.Compute
	BlobStorage     storagedriver.Bucket
	CosmosDB        dbdriver.Database
	Network         netdriver.Networking
	Monitor         mondriver.Monitoring
	Functions       sdrv.Serverless
	ServiceBus      mqdriver.MessageQueue
	SQL             rdbdriver.RelationalDB
	PostgresFlex    rdbdriver.RelationalDB
	MySQLFlex       rdbdriver.RelationalDB
	AKS             aksserver.Backend
}

Drivers bundles the driver interfaces the Azure server can expose. Leave a field nil to omit that service; the server returns 501 Not Implemented for any request that no registered handler matches.

VirtualMachines / Disks / Snapshots / Images all delegate to the same compute driver — the driver's Volume*/Snapshot*/Image* methods back the corresponding resources.

Directories

Path Synopsis
Package aks implements the Azure Kubernetes Service (Microsoft.ContainerService) ARM REST API as a server.Handler.
Package aks implements the Azure Kubernetes Service (Microsoft.ContainerService) ARM REST API as a server.Handler.
Package azuresql implements the Azure SQL Database (Microsoft.Sql) ARM REST API as a server.Handler.
Package azuresql implements the Azure SQL Database (Microsoft.Sql) ARM REST API as a server.Handler.
Package blob implements the Azure Blob Storage REST+XML wire protocol as a server.Handler.
Package blob implements the Azure Blob Storage REST+XML wire protocol as a server.Handler.
Package cosmos implements the Azure Cosmos DB SQL data-plane REST API against a CloudEmu database driver.
Package cosmos implements the Azure Cosmos DB SQL data-plane REST API against a CloudEmu database driver.
Package disks serves Azure ARM Microsoft.Compute/disks requests against a CloudEmu compute driver's volume operations.
Package disks serves Azure ARM Microsoft.Compute/disks requests against a CloudEmu compute driver's volume operations.
Package functions serves Azure ARM Microsoft.Web/sites (Function Apps) requests against a CloudEmu serverless driver.
Package functions serves Azure ARM Microsoft.Web/sites (Function Apps) requests against a CloudEmu serverless driver.
Package images serves Azure ARM Microsoft.Compute/images requests.
Package images serves Azure ARM Microsoft.Compute/images requests.
Package monitor implements the Azure microsoft.insights metric-alerts resource against a CloudEmu monitoring driver.
Package monitor implements the Azure microsoft.insights metric-alerts resource against a CloudEmu monitoring driver.
Package mysqlflex implements the Azure Database for MySQL — Flexible Server (Microsoft.DBforMySQL/flexibleServers) ARM REST API as a server.Handler.
Package mysqlflex implements the Azure Database for MySQL — Flexible Server (Microsoft.DBforMySQL/flexibleServers) ARM REST API as a server.Handler.
Package network implements the Microsoft.Network ARM resources we expose: virtualNetworks, subnets (nested), and networkSecurityGroups.
Package network implements the Microsoft.Network ARM resources we expose: virtualNetworks, subnets (nested), and networkSecurityGroups.
Package postgresflex implements the Azure Database for PostgreSQL Flexible Server (Microsoft.DBforPostgreSQL/flexibleServers) ARM REST API as a server.Handler.
Package postgresflex implements the Azure Database for PostgreSQL Flexible Server (Microsoft.DBforPostgreSQL/flexibleServers) ARM REST API as a server.Handler.
Package servicebus serves Azure Service Bus ARM control-plane requests (Microsoft.ServiceBus/namespaces[/queues]) plus a raw-HTTP data plane for send/receive against a CloudEmu messagequeue driver.
Package servicebus serves Azure Service Bus ARM control-plane requests (Microsoft.ServiceBus/namespaces[/queues]) plus a raw-HTTP data plane for send/receive against a CloudEmu messagequeue driver.
Package snapshots serves Azure ARM Microsoft.Compute/snapshots requests.
Package snapshots serves Azure ARM Microsoft.Compute/snapshots requests.
Package sshpublickeys serves Azure ARM Microsoft.Compute/sshPublicKeys requests against the underlying compute driver's KeyPair operations.
Package sshpublickeys serves Azure ARM Microsoft.Compute/sshPublicKeys requests against the underlying compute driver's KeyPair operations.
Package virtualmachines serves Azure ARM Microsoft.Compute/virtualMachines requests against a CloudEmu compute driver.
Package virtualmachines serves Azure ARM Microsoft.Compute/virtualMachines requests against a CloudEmu compute driver.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL