Initial commit: stateful OpenStack API laboratory simulator.

Ship Keystone auth, multi-service handlers (Yoga→Dalmatian), Compose/Helm
packaging, API contract packs, and pytest/Pulumi coverage labs.
This commit is contained in:
2026-07-18 04:26:48 +03:00
commit 6033967e6a
509 changed files with 464404 additions and 0 deletions
+326
View File
@@ -0,0 +1,326 @@
{
"version": 4,
"terraform_version": "1.9.8",
"serial": 25,
"lineage": "1a96c121-a3b5-f759-513e-99d9ea2fbc67",
"outputs": {
"network_id": {
"value": "e32feab4-8e14-49d6-9e17-7d9a6476f118",
"type": "string"
},
"server_id": {
"value": "12edaad6-b6e9-4dbd-a425-dbf5cc922989",
"type": "string"
},
"server_name": {
"value": "tf-cookbook-vm",
"type": "string"
},
"volume_id": {
"value": "64a899aa-48fd-43d8-9e2b-af8b0111b1f5",
"type": "string"
}
},
"resources": [
{
"mode": "data",
"type": "openstack_images_image_v2",
"name": "boot",
"provider": "provider[\"registry.terraform.io/terraform-provider-openstack/openstack\"]",
"instances": [
{
"schema_version": 0,
"attributes": {
"checksum": "",
"container_format": "bare",
"created_at": "2026-07-16T03:36:07Z",
"disk_format": "qcow2",
"file": "/v2/images/c58b99c0-2d7b-5842-b260-b617db2f7803/file",
"hidden": false,
"id": "c58b99c0-2d7b-5842-b260-b617db2f7803",
"member_status": null,
"metadata": {},
"min_disk_gb": 0,
"min_ram_mb": 0,
"most_recent": true,
"name": "cirros",
"name_regex": null,
"owner": "cfe100d7-d64c-530c-8286-4772dfea88ad",
"properties": {},
"protected": false,
"region": "RegionOne",
"schema": "/v2/schemas/image",
"size_bytes": 13287936,
"size_max": null,
"size_min": null,
"sort": "name:asc",
"tag": null,
"tags": [],
"updated_at": "2026-07-16T03:36:07Z",
"visibility": "public"
},
"sensitive_attributes": []
}
]
},
{
"mode": "data",
"type": "openstack_networking_network_v2",
"name": "private",
"provider": "provider[\"registry.terraform.io/terraform-provider-openstack/openstack\"]",
"instances": [
{
"schema_version": 0,
"attributes": {
"admin_state_up": "true",
"all_tags": [],
"availability_zone_hints": [],
"description": "",
"dns_domain": "",
"external": false,
"id": "a245268b-88ba-597a-b8db-017810782f98",
"matching_subnet_cidr": null,
"mtu": 1450,
"name": "demo-net",
"network_id": null,
"region": "RegionOne",
"segments": [
{
"network_type": "vxlan",
"physical_network": "",
"segmentation_id": 0
}
],
"shared": "false",
"status": null,
"subnets": [],
"tags": null,
"tenant_id": "8924e279-51c7-582e-b6f5-8e41b33e7581",
"transparent_vlan": false
},
"sensitive_attributes": []
}
]
},
{
"mode": "managed",
"type": "openstack_blockstorage_volume_v3",
"name": "data",
"provider": "provider[\"registry.terraform.io/terraform-provider-openstack/openstack\"]",
"instances": [
{
"schema_version": 0,
"attributes": {
"attachment": [],
"availability_zone": "",
"backup_id": "",
"consistency_group_id": null,
"description": "",
"enable_online_resize": null,
"id": "64a899aa-48fd-43d8-9e2b-af8b0111b1f5",
"image_id": null,
"metadata": {},
"name": "tf-cookbook-vol",
"region": "RegionOne",
"scheduler_hints": [],
"size": 10,
"snapshot_id": "",
"source_replica": null,
"source_vol_id": "",
"timeouts": null,
"volume_type": "lvmdriver-1"
},
"sensitive_attributes": [],
"private": "eyJlMmJmYjczMC1lY2FhLTExZTYtOGY4OC0zNDM2M2JjN2M0YzAiOnsiY3JlYXRlIjo2MDAwMDAwMDAwMDAsImRlbGV0ZSI6NjAwMDAwMDAwMDAwfX0="
}
]
},
{
"mode": "managed",
"type": "openstack_compute_instance_v2",
"name": "app",
"provider": "provider[\"registry.terraform.io/terraform-provider-openstack/openstack\"]",
"instances": [
{
"schema_version": 0,
"attributes": {
"access_ip_v4": "10.0.0.173",
"access_ip_v6": "",
"admin_pass": null,
"all_metadata": {},
"all_tags": [
"demo"
],
"availability_zone": "",
"availability_zone_hints": null,
"block_device": [],
"config_drive": null,
"created": "2026-07-16 03:36:12 +0000 UTC",
"flavor_id": "1",
"flavor_name": "m1.tiny",
"force_delete": false,
"id": "12edaad6-b6e9-4dbd-a425-dbf5cc922989",
"image_id": "c58b99c0-2d7b-5842-b260-b617db2f7803",
"image_name": "cirros",
"key_pair": "",
"metadata": {
"managed_by": "terraform",
"stack": "openstack-api-simulator"
},
"name": "tf-cookbook-vm",
"network": [
{
"access_network": false,
"fixed_ip_v4": "10.0.0.173",
"fixed_ip_v6": "",
"mac": "fa:16:3e:12:ed:aa",
"name": "demo-net",
"port": "",
"uuid": "a245268b-88ba-597a-b8db-017810782f98"
}
],
"network_mode": null,
"personality": [],
"power_state": "active",
"region": "RegionOne",
"scheduler_hints": [],
"security_groups": [],
"stop_before_destroy": false,
"tags": null,
"timeouts": null,
"updated": "2026-07-16 03:36:12 +0000 UTC",
"user_data": null,
"vendor_options": []
},
"sensitive_attributes": [
[
{
"type": "get_attr",
"value": "admin_pass"
}
]
],
"private": "eyJlMmJmYjczMC1lY2FhLTExZTYtOGY4OC0zNDM2M2JjN2M0YzAiOnsiY3JlYXRlIjoxODAwMDAwMDAwMDAwLCJkZWxldGUiOjE4MDAwMDAwMDAwMDAsInVwZGF0ZSI6MTgwMDAwMDAwMDAwMH19",
"dependencies": [
"data.openstack_images_image_v2.boot",
"data.openstack_networking_network_v2.private"
]
}
]
},
{
"mode": "managed",
"type": "openstack_compute_volume_attach_v2",
"name": "data",
"provider": "provider[\"registry.terraform.io/terraform-provider-openstack/openstack\"]",
"instances": [
{
"schema_version": 0,
"attributes": {
"device": "/dev/vdb",
"id": "12edaad6-b6e9-4dbd-a425-dbf5cc922989/1662ea63-0b2e-4a54-8d78-ad218134fd5b",
"instance_id": "12edaad6-b6e9-4dbd-a425-dbf5cc922989",
"multiattach": null,
"region": "RegionOne",
"tag": null,
"timeouts": null,
"vendor_options": [],
"volume_id": "64a899aa-48fd-43d8-9e2b-af8b0111b1f5"
},
"sensitive_attributes": [],
"private": "eyJlMmJmYjczMC1lY2FhLTExZTYtOGY4OC0zNDM2M2JjN2M0YzAiOnsiY3JlYXRlIjo2MDAwMDAwMDAwMDAsImRlbGV0ZSI6NjAwMDAwMDAwMDAwfX0=",
"dependencies": [
"data.openstack_images_image_v2.boot",
"data.openstack_networking_network_v2.private",
"openstack_blockstorage_volume_v3.data",
"openstack_compute_instance_v2.app"
]
}
]
},
{
"mode": "managed",
"type": "openstack_networking_network_v2",
"name": "app",
"provider": "provider[\"registry.terraform.io/terraform-provider-openstack/openstack\"]",
"instances": [
{
"schema_version": 0,
"attributes": {
"admin_state_up": true,
"all_tags": [],
"availability_zone_hints": [],
"description": "",
"dns_domain": "",
"external": false,
"id": "e32feab4-8e14-49d6-9e17-7d9a6476f118",
"mtu": 1450,
"name": "tf-app-net",
"port_security_enabled": false,
"qos_policy_id": "",
"region": "RegionOne",
"segments": [
{
"network_type": "vxlan",
"physical_network": "",
"segmentation_id": 0
}
],
"shared": false,
"tags": null,
"tenant_id": "8924e279-51c7-582e-b6f5-8e41b33e7581",
"timeouts": null,
"transparent_vlan": false,
"value_specs": null
},
"sensitive_attributes": [],
"private": "eyJlMmJmYjczMC1lY2FhLTExZTYtOGY4OC0zNDM2M2JjN2M0YzAiOnsiY3JlYXRlIjo2MDAwMDAwMDAwMDAsImRlbGV0ZSI6NjAwMDAwMDAwMDAwfX0="
}
]
},
{
"mode": "managed",
"type": "openstack_networking_subnet_v2",
"name": "app",
"provider": "provider[\"registry.terraform.io/terraform-provider-openstack/openstack\"]",
"instances": [
{
"schema_version": 0,
"attributes": {
"all_tags": [],
"allocation_pool": [],
"cidr": "10.99.0.0/24",
"description": "",
"dns_nameservers": [
"8.8.8.8"
],
"dns_publish_fixed_ip": false,
"enable_dhcp": true,
"gateway_ip": "",
"id": "956c5f10-205b-484c-813a-ec5eafe02f1b",
"ip_version": 4,
"ipv6_address_mode": "",
"ipv6_ra_mode": "",
"name": "tf-app-subnet",
"network_id": "e32feab4-8e14-49d6-9e17-7d9a6476f118",
"no_gateway": true,
"prefix_length": null,
"region": "RegionOne",
"service_types": [],
"subnetpool_id": "",
"tags": null,
"tenant_id": "8924e279-51c7-582e-b6f5-8e41b33e7581",
"timeouts": null,
"value_specs": null
},
"sensitive_attributes": [],
"private": "eyJlMmJmYjczMC1lY2FhLTExZTYtOGY4OC0zNDM2M2JjN2M0YzAiOnsiY3JlYXRlIjo2MDAwMDAwMDAwMDAsImRlbGV0ZSI6NjAwMDAwMDAwMDAwfX0=",
"dependencies": [
"openstack_networking_network_v2.app"
]
}
]
}
],
"check_results": null
}