diff --git a/openstack-tf/garr-na/escriptorium/README-escriptorium.md b/openstack-tf/garr-na/escriptorium/README-escriptorium.md new file mode 100644 index 0000000..3890d6d --- /dev/null +++ b/openstack-tf/garr-na/escriptorium/README-escriptorium.md @@ -0,0 +1,4 @@ +# eScriptorium + +* Ticket request: +* Gitlab reference to the code: diff --git a/openstack-tf/garr-na/escriptorium/main.tf b/openstack-tf/garr-na/escriptorium/main.tf new file mode 100644 index 0000000..2bc6d8e --- /dev/null +++ b/openstack-tf/garr-na/escriptorium/main.tf @@ -0,0 +1,215 @@ +# +# https://support.d4science.org/issues/28405 +# https://gitlab.com/scripta/escriptorium/ +# +# Define required providers +terraform { + required_version = ">= 0.14.0" + required_providers { + openstack = { + source = "terraform-provider-openstack/openstack" + version = ">= 1.54.0" + } + } +} + +data "terraform_remote_state" "privnet_dns_router" { + backend = "local" + + config = { + path = "../project-setup/terraform.tfstate" + } +} + +# +# Uses common_variables as module +# +module "common_variables" { + # source = "../../modules/common_variables" + source = "../../modules/garr_common_variables" +} + +# Module used +module "ssh_settings" { + source = "../../modules/ssh-key-ref" +} + +resource "openstack_blockstorage_volume_v3" "escriptorium_vm_vol" { + name = "eScriptorium VM, data for the Docker stuff" + size = 30 +} + +resource "openstack_blockstorage_volume_v3" "escriptorium_data_vol" { + name = "eScriptorium data volume" + size = 50 +} + +resource "openstack_blockstorage_volume_v3" "escriptorium_media_vol" { + name = "eScriptorium media volume" + size = 50 +} + +resource "openstack_networking_port_v2" "escriptorium_ip_in_main_net" { + name = "escriptorium_main_interface" + admin_state_up = "true" + network_id = data.terraform_remote_state.privnet_dns_router.outputs.main_private_network.id + security_group_ids = [ + data.terraform_remote_state.privnet_dns_router.outputs.default_security_group.id, + ] +} + +resource "openstack_compute_instance_v2" "escriptorium_server" { + name = "escriptorium-service" + availability_zone_hints = "nova" + flavor_name = "m3.large" + key_pair = module.ssh_settings.ssh_key_name + block_device { + uuid = module.common_variables.ubuntu_2404.uuid + source_type = "image" + volume_size = 10 + boot_index = 0 + destination_type = "volume" + delete_on_termination = true + } + + network { + port = openstack_networking_port_v2.escriptorium_ip_in_main_net.id + } + + user_data = file("${module.common_variables.ubuntu2404_data_file}") + # Do not replace the instance when the ssh key changes + lifecycle { + ignore_changes = [ + # Ignore changes to tags, e.g. because a management agent + # updates these based on some ruleset managed elsewhere. + key_pair, user_data, network + ] + } +} + +resource "openstack_compute_volume_attach_v2" "escriptorium_docker_attach_vol" { + instance_id = openstack_compute_instance_v2.escriptorium_server.id + volume_id = openstack_blockstorage_volume_v3.escriptorium_vm_vol.id + device = "/dev/vdb" +} + +resource "openstack_compute_volume_attach_v2" "escriptorium_data_attach_vol" { + instance_id = openstack_compute_instance_v2.escriptorium_server.id + volume_id = openstack_blockstorage_volume_v3.escriptorium_data_vol.id + device = "/dev/vdc" +} + +resource "openstack_compute_volume_attach_v2" "escriptorium_media_attach_vol" { + instance_id = openstack_compute_instance_v2.escriptorium_server.id + volume_id = openstack_blockstorage_volume_v3.escriptorium_media_vol.id + device = "/dev/vdd" +} + +resource "openstack_networking_floatingip_v2" "escriptorium_floating_ip" { + pool = data.terraform_remote_state.privnet_dns_router.outputs.external_network.name + description = "eScriptorium test server" +} + +resource "openstack_networking_floatingip_associate_v2" "escriptorium_server" { + floating_ip = openstack_networking_floatingip_v2.escriptorium_floating_ip.address + port_id = openstack_networking_port_v2.escriptorium_ip_in_main_net.id +} + +# Ingress to the Postgresql port +resource "openstack_networking_secgroup_v2" "escriptorium_postgresql_access" { + name = "access_to_the_escriptorium_postgresql_service" + delete_default_rules = "true" + description = "Access the eScriptorium PostgreSQL service" +} + +resource "openstack_networking_secgroup_rule_v2" "escriptorium_postgresql_access_from_the_private_network" { + security_group_id = openstack_networking_secgroup_v2.escriptorium_postgresql_access.id + description = "Allow connections to port 5432 from the 192.168.102.0/24 network" + direction = "ingress" + ethertype = "IPv4" + protocol = "tcp" + port_range_min = 5432 + port_range_max = 5432 + remote_ip_prefix = data.terraform_remote_state.privnet_dns_router.outputs.main_private_subnet.cidr +} + +resource "openstack_networking_secgroup_rule_v2" "escriptorium_postgresql_access_from_the_infrascience_network" { + security_group_id = openstack_networking_secgroup_v2.escriptorium_postgresql_access.id + description = "Allow connections to port 5432 from the 146.48.122.0/23 network" + direction = "ingress" + ethertype = "IPv4" + protocol = "tcp" + port_range_min = 5432 + port_range_max = 5432 + remote_ip_prefix = "146.48.122.0/23" +} + +resource "openstack_networking_secgroup_rule_v2" "escriptorium_postgresql_access_from_the_s2i2s_network" { + security_group_id = openstack_networking_secgroup_v2.escriptorium_postgresql_access.id + description = "Allow connections to port 5432 from the 146.48.28.0/22 network" + direction = "ingress" + ethertype = "IPv4" + protocol = "tcp" + port_range_min = 5432 + port_range_max = 5432 + remote_ip_prefix = "146.48.28.0/22" +} + +resource "openstack_blockstorage_volume_v3" "escriptorium_pg_test_vol" { + name = "eScriptorium test postgresql data" + size = 10 +} + +resource "openstack_networking_port_v2" "escriptorium_pg_test_ip_in_main_net" { + name = "escriptorium_postgres_test_main_interface" + admin_state_up = "true" + network_id = data.terraform_remote_state.privnet_dns_router.outputs.main_private_network.id + security_group_ids = [ + data.terraform_remote_state.privnet_dns_router.outputs.default_security_group.id, openstack_networking_secgroup_v2.escriptorium_postgresql_access.id + ] +} + +resource "openstack_compute_instance_v2" "escriptorium_pg_test_server" { + name = "escriptorium-postgresql-test-service" + availability_zone_hints = "nova" + flavor_name = "m1.medium" + key_pair = module.ssh_settings.ssh_key_name + block_device { + uuid = module.common_variables.ubuntu_2404.uuid + source_type = "image" + volume_size = 10 + boot_index = 0 + destination_type = "volume" + delete_on_termination = true + } + + network { + port = openstack_networking_port_v2.escriptorium_pg_test_ip_in_main_net.id + } + + user_data = file("${module.common_variables.ubuntu2404_data_file}") + # Do not replace the instance when the ssh key changes + lifecycle { + ignore_changes = [ + # Ignore changes to tags, e.g. because a management agent + # updates these based on some ruleset managed elsewhere. + key_pair, user_data, network + ] + } +} + +resource "openstack_compute_volume_attach_v2" "escriptorium_pg_test_attach_pg_vol" { + instance_id = openstack_compute_instance_v2.escriptorium_pg_test_server.id + volume_id = openstack_blockstorage_volume_v3.escriptorium_pg_test_vol.id + device = "/dev/vdb" +} + +resource "openstack_networking_floatingip_v2" "escriptorium_pg_test_floating_ip" { + pool = data.terraform_remote_state.privnet_dns_router.outputs.external_network.name + description = "eScriptorium postgresql test server" +} + +resource "openstack_networking_floatingip_associate_v2" "escriptorium_pg_server" { + floating_ip = openstack_networking_floatingip_v2.escriptorium_pg_test_floating_ip.address + port_id = openstack_networking_port_v2.escriptorium_pg_test_ip_in_main_net.id +} diff --git a/openstack-tf/garr-na/escriptorium/outputs-escriptorium.tf b/openstack-tf/garr-na/escriptorium/outputs-escriptorium.tf new file mode 100644 index 0000000..1ee1323 --- /dev/null +++ b/openstack-tf/garr-na/escriptorium/outputs-escriptorium.tf @@ -0,0 +1,17 @@ +output "escriptorium_instance" { + value = openstack_compute_instance_v2.escriptorium_server + sensitive = true +} + +output "escriptorium_floating_ip" { + value = openstack_networking_floatingip_v2.escriptorium_floating_ip +} + +output "escriptorium_pg_test_instance" { + value = openstack_compute_instance_v2.escriptorium_pg_test_server + sensitive = true +} + +output "escriptorium_pg_test_floating_ip" { + value = openstack_networking_floatingip_v2.escriptorium_pg_test_floating_ip +} diff --git a/openstack-tf/garr-na/escriptorium/provider.tf b/openstack-tf/garr-na/escriptorium/provider.tf new file mode 100644 index 0000000..b26302b --- /dev/null +++ b/openstack-tf/garr-na/escriptorium/provider.tf @@ -0,0 +1,3 @@ +provider "openstack" { + cloud = "garr-na" +} diff --git a/openstack-tf/garr-na/escriptorium/terraform.tfstate b/openstack-tf/garr-na/escriptorium/terraform.tfstate new file mode 100644 index 0000000..58f49fe --- /dev/null +++ b/openstack-tf/garr-na/escriptorium/terraform.tfstate @@ -0,0 +1,1473 @@ +{ + "version": 4, + "terraform_version": "1.9.8", + "serial": 23, + "lineage": "70745d5d-a795-e7b2-72e5-11e67580e4b2", + "outputs": { + "escriptorium_floating_ip": { + "value": { + "address": "90.147.152.34", + "all_tags": [], + "description": "eScriptorium test server", + "dns_domain": "", + "dns_name": "", + "fixed_ip": "192.168.102.89", + "id": "e86c0d86-7cd0-4ba5-b311-7b54a27e97c5", + "pool": "floating-ip", + "port_id": "910f51af-12af-403c-be46-ca29813c7324", + "region": "garr-na", + "subnet_id": null, + "subnet_ids": null, + "tags": [], + "tenant_id": "a2de533851354b1f8d99ac6b6216d92e", + "timeouts": null, + "value_specs": null + }, + "type": [ + "object", + { + "address": "string", + "all_tags": [ + "set", + "string" + ], + "description": "string", + "dns_domain": "string", + "dns_name": "string", + "fixed_ip": "string", + "id": "string", + "pool": "string", + "port_id": "string", + "region": "string", + "subnet_id": "string", + "subnet_ids": [ + "list", + "string" + ], + "tags": [ + "set", + "string" + ], + "tenant_id": "string", + "timeouts": [ + "object", + { + "create": "string", + "delete": "string" + } + ], + "value_specs": [ + "map", + "string" + ] + } + ] + }, + "escriptorium_instance": { + "value": { + "access_ip_v4": "192.168.102.89", + "access_ip_v6": "", + "admin_pass": null, + "all_metadata": {}, + "all_tags": [], + "availability_zone": "nova", + "availability_zone_hints": "nova", + "block_device": [ + { + "boot_index": 0, + "delete_on_termination": true, + "destination_type": "volume", + "device_type": "", + "disk_bus": "", + "guest_format": "", + "multiattach": false, + "source_type": "image", + "uuid": "b2f00e68-3847-4f48-a8a6-b28012d57095", + "volume_size": 10, + "volume_type": "" + } + ], + "config_drive": null, + "created": "2024-11-19 17:58:30 +0000 UTC", + "flavor_id": "ae62dc9d-d091-4162-8cc2-da6657a9038a", + "flavor_name": "m3.large", + "force_delete": false, + "id": "546b23f2-33f5-4918-a723-a33d9c09de3d", + "image_id": "Attempt to boot from volume - no image supplied", + "image_name": null, + "key_pair": "adellam-ed25519", + "metadata": null, + "name": "escriptorium-service", + "network": [ + { + "access_network": false, + "fixed_ip_v4": "192.168.102.89", + "fixed_ip_v6": "", + "mac": "fa:16:3e:44:94:46", + "name": "isti-VM-NA-net", + "port": "910f51af-12af-403c-be46-ca29813c7324", + "uuid": "a326a836-6883-43ef-9383-64f0876b0a25" + } + ], + "network_mode": null, + "personality": [], + "power_state": "active", + "region": "garr-na", + "scheduler_hints": [], + "security_groups": [ + "default" + ], + "stop_before_destroy": false, + "tags": [], + "timeouts": null, + "updated": "2024-11-19 17:59:30 +0000 UTC", + "user_data": "164cdf695f3b4a01a2f8b9dc0af2f87629bd89a7", + "vendor_options": [] + }, + "type": [ + "object", + { + "access_ip_v4": "string", + "access_ip_v6": "string", + "admin_pass": "string", + "all_metadata": [ + "map", + "string" + ], + "all_tags": [ + "set", + "string" + ], + "availability_zone": "string", + "availability_zone_hints": "string", + "block_device": [ + "list", + [ + "object", + { + "boot_index": "number", + "delete_on_termination": "bool", + "destination_type": "string", + "device_type": "string", + "disk_bus": "string", + "guest_format": "string", + "multiattach": "bool", + "source_type": "string", + "uuid": "string", + "volume_size": "number", + "volume_type": "string" + } + ] + ], + "config_drive": "bool", + "created": "string", + "flavor_id": "string", + "flavor_name": "string", + "force_delete": "bool", + "id": "string", + "image_id": "string", + "image_name": "string", + "key_pair": "string", + "metadata": [ + "map", + "string" + ], + "name": "string", + "network": [ + "list", + [ + "object", + { + "access_network": "bool", + "fixed_ip_v4": "string", + "fixed_ip_v6": "string", + "mac": "string", + "name": "string", + "port": "string", + "uuid": "string" + } + ] + ], + "network_mode": "string", + "personality": [ + "set", + [ + "object", + { + "content": "string", + "file": "string" + } + ] + ], + "power_state": "string", + "region": "string", + "scheduler_hints": [ + "set", + [ + "object", + { + "additional_properties": [ + "map", + "string" + ], + "build_near_host_ip": "string", + "different_cell": [ + "list", + "string" + ], + "different_host": [ + "list", + "string" + ], + "group": "string", + "query": [ + "list", + "string" + ], + "same_host": [ + "list", + "string" + ], + "target_cell": "string" + } + ] + ], + "security_groups": [ + "set", + "string" + ], + "stop_before_destroy": "bool", + "tags": [ + "set", + "string" + ], + "timeouts": [ + "object", + { + "create": "string", + "delete": "string", + "update": "string" + } + ], + "updated": "string", + "user_data": "string", + "vendor_options": [ + "set", + [ + "object", + { + "detach_ports_before_destroy": "bool", + "ignore_resize_confirmation": "bool" + } + ] + ] + } + ], + "sensitive": true + }, + "escriptorium_pg_test_floating_ip": { + "value": { + "address": "90.147.152.32", + "all_tags": [], + "description": "eScriptorium postgresql test server", + "dns_domain": "", + "dns_name": "", + "fixed_ip": "192.168.102.125", + "id": "8d2781fe-306c-4437-af51-1c4570de063e", + "pool": "floating-ip", + "port_id": "8ee9fee5-c827-4d43-9cb7-6d1aeb9316fe", + "region": "garr-na", + "subnet_id": null, + "subnet_ids": null, + "tags": [], + "tenant_id": "a2de533851354b1f8d99ac6b6216d92e", + "timeouts": null, + "value_specs": null + }, + "type": [ + "object", + { + "address": "string", + "all_tags": [ + "set", + "string" + ], + "description": "string", + "dns_domain": "string", + "dns_name": "string", + "fixed_ip": "string", + "id": "string", + "pool": "string", + "port_id": "string", + "region": "string", + "subnet_id": "string", + "subnet_ids": [ + "list", + "string" + ], + "tags": [ + "set", + "string" + ], + "tenant_id": "string", + "timeouts": [ + "object", + { + "create": "string", + "delete": "string" + } + ], + "value_specs": [ + "map", + "string" + ] + } + ] + }, + "escriptorium_pg_test_instance": { + "value": { + "access_ip_v4": "192.168.102.125", + "access_ip_v6": "", + "admin_pass": null, + "all_metadata": {}, + "all_tags": [], + "availability_zone": "nova", + "availability_zone_hints": "nova", + "block_device": [ + { + "boot_index": 0, + "delete_on_termination": true, + "destination_type": "volume", + "device_type": "", + "disk_bus": "", + "guest_format": "", + "multiattach": false, + "source_type": "image", + "uuid": "b2f00e68-3847-4f48-a8a6-b28012d57095", + "volume_size": 10, + "volume_type": "" + } + ], + "config_drive": null, + "created": "2024-11-19 17:58:32 +0000 UTC", + "flavor_id": "f44339cb-49e9-4db8-9ee4-cf87a556da65", + "flavor_name": "m1.medium", + "force_delete": false, + "id": "71b67a61-0faf-4fc9-9a63-615a5a894945", + "image_id": "Attempt to boot from volume - no image supplied", + "image_name": null, + "key_pair": "adellam-ed25519", + "metadata": null, + "name": "escriptorium-postgresql-test-service", + "network": [ + { + "access_network": false, + "fixed_ip_v4": "192.168.102.125", + "fixed_ip_v6": "", + "mac": "fa:16:3e:8b:a7:d4", + "name": "isti-VM-NA-net", + "port": "8ee9fee5-c827-4d43-9cb7-6d1aeb9316fe", + "uuid": "a326a836-6883-43ef-9383-64f0876b0a25" + } + ], + "network_mode": null, + "personality": [], + "power_state": "active", + "region": "garr-na", + "scheduler_hints": [], + "security_groups": [ + "access_to_the_escriptorium_postgresql_service", + "default" + ], + "stop_before_destroy": false, + "tags": [], + "timeouts": null, + "updated": "2024-11-19 17:59:30 +0000 UTC", + "user_data": "164cdf695f3b4a01a2f8b9dc0af2f87629bd89a7", + "vendor_options": [] + }, + "type": [ + "object", + { + "access_ip_v4": "string", + "access_ip_v6": "string", + "admin_pass": "string", + "all_metadata": [ + "map", + "string" + ], + "all_tags": [ + "set", + "string" + ], + "availability_zone": "string", + "availability_zone_hints": "string", + "block_device": [ + "list", + [ + "object", + { + "boot_index": "number", + "delete_on_termination": "bool", + "destination_type": "string", + "device_type": "string", + "disk_bus": "string", + "guest_format": "string", + "multiattach": "bool", + "source_type": "string", + "uuid": "string", + "volume_size": "number", + "volume_type": "string" + } + ] + ], + "config_drive": "bool", + "created": "string", + "flavor_id": "string", + "flavor_name": "string", + "force_delete": "bool", + "id": "string", + "image_id": "string", + "image_name": "string", + "key_pair": "string", + "metadata": [ + "map", + "string" + ], + "name": "string", + "network": [ + "list", + [ + "object", + { + "access_network": "bool", + "fixed_ip_v4": "string", + "fixed_ip_v6": "string", + "mac": "string", + "name": "string", + "port": "string", + "uuid": "string" + } + ] + ], + "network_mode": "string", + "personality": [ + "set", + [ + "object", + { + "content": "string", + "file": "string" + } + ] + ], + "power_state": "string", + "region": "string", + "scheduler_hints": [ + "set", + [ + "object", + { + "additional_properties": [ + "map", + "string" + ], + "build_near_host_ip": "string", + "different_cell": [ + "list", + "string" + ], + "different_host": [ + "list", + "string" + ], + "group": "string", + "query": [ + "list", + "string" + ], + "same_host": [ + "list", + "string" + ], + "target_cell": "string" + } + ] + ], + "security_groups": [ + "set", + "string" + ], + "stop_before_destroy": "bool", + "tags": [ + "set", + "string" + ], + "timeouts": [ + "object", + { + "create": "string", + "delete": "string", + "update": "string" + } + ], + "updated": "string", + "user_data": "string", + "vendor_options": [ + "set", + [ + "object", + { + "detach_ports_before_destroy": "bool", + "ignore_resize_confirmation": "bool" + } + ] + ] + } + ], + "sensitive": true + } + }, + "resources": [ + { + "mode": "data", + "type": "terraform_remote_state", + "name": "privnet_dns_router", + "provider": "provider[\"terraform.io/builtin/terraform\"]", + "instances": [ + { + "schema_version": 0, + "attributes": { + "backend": "local", + "config": { + "value": { + "path": "../project-setup/terraform.tfstate" + }, + "type": [ + "object", + { + "path": "string" + } + ] + }, + "defaults": null, + "outputs": { + "value": { + "availability_zone": { + "name": "nova" + }, + "default_security_group": { + "id": "b1dca1a8-4eb4-43b0-9fe1-e6a399e23fbb", + "name": "default" + }, + "external_network": { + "id": "8a14fb84-2ab4-4114-a95e-1acc029850ff", + "name": "floating-ip" + }, + "external_router": { + "description": "GARR-NA main router", + "name": "isti-router" + }, + "jump_proxy_ssh_shell": { + "cidr": "192.168.102.151/24", + "hostname": "shell.garr-na1.d4science.org", + "private_ip": "192.168.102.151", + "public_ip": "90.147.152.217" + }, + "main_private_network": { + "description": "GARR NA main network", + "id": "a326a836-6883-43ef-9383-64f0876b0a25", + "name": "isti-VM-NA-net" + }, + "main_private_subnet": { + "allocation_end": "192.168.102.250", + "allocation_start": "192.168.102.2", + "cidr": "192.168.102.0/24", + "description": "GARR-NA main subnet", + "gateway_ip": "192.168.102.1", + "id": "dd42322a-a4c4-4364-9d23-1e9806e9b9fa", + "name": "isti-na-subnet" + }, + "mtu_size": 9000, + "os_project_data": { + "id": "a2de533851354b1f8d99ac6b6216d92e" + }, + "os_region_data": { + "name": "garr-na" + }, + "prometheus_host": { + "hostname": "prometheus-na1.garr.d4science.net", + "private_ip": "192.168.102.12", + "public_ip": "90.147.152.45" + }, + "resolvers_ip": [ + "193.206.141.38", + "193.206.141.42" + ] + }, + "type": [ + "object", + { + "availability_zone": [ + "map", + "string" + ], + "default_security_group": [ + "map", + "string" + ], + "external_network": [ + "map", + "string" + ], + "external_router": [ + "map", + "string" + ], + "jump_proxy_ssh_shell": [ + "map", + "string" + ], + "main_private_network": [ + "map", + "string" + ], + "main_private_subnet": [ + "map", + "string" + ], + "mtu_size": "number", + "os_project_data": [ + "map", + "string" + ], + "os_region_data": [ + "map", + "string" + ], + "prometheus_host": [ + "map", + "string" + ], + "resolvers_ip": [ + "list", + "string" + ] + } + ] + }, + "workspace": null + }, + "sensitive_attributes": [] + } + ] + }, + { + "mode": "managed", + "type": "openstack_blockstorage_volume_v3", + "name": "escriptorium_data_vol", + "provider": "provider[\"registry.terraform.io/terraform-provider-openstack/openstack\"]", + "instances": [ + { + "schema_version": 0, + "attributes": { + "attachment": [], + "availability_zone": "nova", + "backup_id": "", + "consistency_group_id": null, + "description": "", + "enable_online_resize": null, + "id": "e339d0fc-e835-44bd-a042-18b7adad4ad1", + "image_id": null, + "metadata": {}, + "name": "eScriptorium data volume", + "region": "garr-na", + "scheduler_hints": [], + "size": 50, + "snapshot_id": "", + "source_replica": null, + "source_vol_id": "", + "timeouts": null, + "volume_type": "__DEFAULT__" + }, + "sensitive_attributes": [], + "private": "eyJlMmJmYjczMC1lY2FhLTExZTYtOGY4OC0zNDM2M2JjN2M0YzAiOnsiY3JlYXRlIjo2MDAwMDAwMDAwMDAsImRlbGV0ZSI6NjAwMDAwMDAwMDAwfX0=" + } + ] + }, + { + "mode": "managed", + "type": "openstack_blockstorage_volume_v3", + "name": "escriptorium_media_vol", + "provider": "provider[\"registry.terraform.io/terraform-provider-openstack/openstack\"]", + "instances": [ + { + "schema_version": 0, + "attributes": { + "attachment": [], + "availability_zone": "nova", + "backup_id": "", + "consistency_group_id": null, + "description": "", + "enable_online_resize": null, + "id": "081d47b3-0e3a-499b-a157-5706ee370c39", + "image_id": null, + "metadata": {}, + "name": "eScriptorium media volume", + "region": "garr-na", + "scheduler_hints": [], + "size": 50, + "snapshot_id": "", + "source_replica": null, + "source_vol_id": "", + "timeouts": null, + "volume_type": "__DEFAULT__" + }, + "sensitive_attributes": [], + "private": "eyJlMmJmYjczMC1lY2FhLTExZTYtOGY4OC0zNDM2M2JjN2M0YzAiOnsiY3JlYXRlIjo2MDAwMDAwMDAwMDAsImRlbGV0ZSI6NjAwMDAwMDAwMDAwfX0=" + } + ] + }, + { + "mode": "managed", + "type": "openstack_blockstorage_volume_v3", + "name": "escriptorium_pg_test_vol", + "provider": "provider[\"registry.terraform.io/terraform-provider-openstack/openstack\"]", + "instances": [ + { + "schema_version": 0, + "attributes": { + "attachment": [ + { + "device": "/dev/vdb", + "id": "b45703f1-9903-4ac7-b094-0bd9545b75c6", + "instance_id": "71b67a61-0faf-4fc9-9a63-615a5a894945" + } + ], + "availability_zone": "nova", + "backup_id": "", + "consistency_group_id": null, + "description": "", + "enable_online_resize": null, + "id": "b45703f1-9903-4ac7-b094-0bd9545b75c6", + "image_id": null, + "metadata": {}, + "name": "eScriptorium test postgresql data", + "region": "garr-na", + "scheduler_hints": [], + "size": 10, + "snapshot_id": "", + "source_replica": null, + "source_vol_id": "", + "timeouts": null, + "volume_type": "__DEFAULT__" + }, + "sensitive_attributes": [], + "private": "eyJlMmJmYjczMC1lY2FhLTExZTYtOGY4OC0zNDM2M2JjN2M0YzAiOnsiY3JlYXRlIjo2MDAwMDAwMDAwMDAsImRlbGV0ZSI6NjAwMDAwMDAwMDAwfX0=" + } + ] + }, + { + "mode": "managed", + "type": "openstack_blockstorage_volume_v3", + "name": "escriptorium_vm_vol", + "provider": "provider[\"registry.terraform.io/terraform-provider-openstack/openstack\"]", + "instances": [ + { + "schema_version": 0, + "attributes": { + "attachment": [ + { + "device": "/dev/vdb", + "id": "f176d7db-03a7-4c9a-8750-cab14b7204b2", + "instance_id": "546b23f2-33f5-4918-a723-a33d9c09de3d" + } + ], + "availability_zone": "nova", + "backup_id": "", + "consistency_group_id": null, + "description": "", + "enable_online_resize": null, + "id": "f176d7db-03a7-4c9a-8750-cab14b7204b2", + "image_id": null, + "metadata": {}, + "name": "eScriptorium VM, data for the Docker stuff", + "region": "garr-na", + "scheduler_hints": [], + "size": 30, + "snapshot_id": "", + "source_replica": null, + "source_vol_id": "", + "timeouts": null, + "volume_type": "__DEFAULT__" + }, + "sensitive_attributes": [], + "private": "eyJlMmJmYjczMC1lY2FhLTExZTYtOGY4OC0zNDM2M2JjN2M0YzAiOnsiY3JlYXRlIjo2MDAwMDAwMDAwMDAsImRlbGV0ZSI6NjAwMDAwMDAwMDAwfX0=" + } + ] + }, + { + "mode": "managed", + "type": "openstack_compute_instance_v2", + "name": "escriptorium_pg_test_server", + "provider": "provider[\"registry.terraform.io/terraform-provider-openstack/openstack\"]", + "instances": [ + { + "schema_version": 0, + "attributes": { + "access_ip_v4": "192.168.102.125", + "access_ip_v6": "", + "admin_pass": null, + "all_metadata": {}, + "all_tags": [], + "availability_zone": "nova", + "availability_zone_hints": "nova", + "block_device": [ + { + "boot_index": 0, + "delete_on_termination": true, + "destination_type": "volume", + "device_type": "", + "disk_bus": "", + "guest_format": "", + "multiattach": false, + "source_type": "image", + "uuid": "b2f00e68-3847-4f48-a8a6-b28012d57095", + "volume_size": 10, + "volume_type": "" + } + ], + "config_drive": null, + "created": "2024-11-19 17:58:32 +0000 UTC", + "flavor_id": "f44339cb-49e9-4db8-9ee4-cf87a556da65", + "flavor_name": "m1.medium", + "force_delete": false, + "id": "71b67a61-0faf-4fc9-9a63-615a5a894945", + "image_id": "Attempt to boot from volume - no image supplied", + "image_name": null, + "key_pair": "adellam-ed25519", + "metadata": null, + "name": "escriptorium-postgresql-test-service", + "network": [ + { + "access_network": false, + "fixed_ip_v4": "192.168.102.125", + "fixed_ip_v6": "", + "mac": "fa:16:3e:8b:a7:d4", + "name": "isti-VM-NA-net", + "port": "8ee9fee5-c827-4d43-9cb7-6d1aeb9316fe", + "uuid": "a326a836-6883-43ef-9383-64f0876b0a25" + } + ], + "network_mode": null, + "personality": [], + "power_state": "active", + "region": "garr-na", + "scheduler_hints": [], + "security_groups": [ + "access_to_the_escriptorium_postgresql_service", + "default" + ], + "stop_before_destroy": false, + "tags": [], + "timeouts": null, + "updated": "2024-11-19 17:59:30 +0000 UTC", + "user_data": "164cdf695f3b4a01a2f8b9dc0af2f87629bd89a7", + "vendor_options": [] + }, + "sensitive_attributes": [ + [ + { + "type": "get_attr", + "value": "admin_pass" + } + ] + ], + "private": "eyJlMmJmYjczMC1lY2FhLTExZTYtOGY4OC0zNDM2M2JjN2M0YzAiOnsiY3JlYXRlIjoxODAwMDAwMDAwMDAwLCJkZWxldGUiOjE4MDAwMDAwMDAwMDAsInVwZGF0ZSI6MTgwMDAwMDAwMDAwMH19", + "dependencies": [ + "data.terraform_remote_state.privnet_dns_router", + "openstack_networking_port_v2.escriptorium_pg_test_ip_in_main_net", + "openstack_networking_secgroup_v2.escriptorium_postgresql_access" + ] + } + ] + }, + { + "mode": "managed", + "type": "openstack_compute_instance_v2", + "name": "escriptorium_server", + "provider": "provider[\"registry.terraform.io/terraform-provider-openstack/openstack\"]", + "instances": [ + { + "schema_version": 0, + "attributes": { + "access_ip_v4": "192.168.102.89", + "access_ip_v6": "", + "admin_pass": null, + "all_metadata": {}, + "all_tags": [], + "availability_zone": "nova", + "availability_zone_hints": "nova", + "block_device": [ + { + "boot_index": 0, + "delete_on_termination": true, + "destination_type": "volume", + "device_type": "", + "disk_bus": "", + "guest_format": "", + "multiattach": false, + "source_type": "image", + "uuid": "b2f00e68-3847-4f48-a8a6-b28012d57095", + "volume_size": 10, + "volume_type": "" + } + ], + "config_drive": null, + "created": "2024-11-19 17:58:30 +0000 UTC", + "flavor_id": "ae62dc9d-d091-4162-8cc2-da6657a9038a", + "flavor_name": "m3.large", + "force_delete": false, + "id": "546b23f2-33f5-4918-a723-a33d9c09de3d", + "image_id": "Attempt to boot from volume - no image supplied", + "image_name": null, + "key_pair": "adellam-ed25519", + "metadata": null, + "name": "escriptorium-service", + "network": [ + { + "access_network": false, + "fixed_ip_v4": "192.168.102.89", + "fixed_ip_v6": "", + "mac": "fa:16:3e:44:94:46", + "name": "isti-VM-NA-net", + "port": "910f51af-12af-403c-be46-ca29813c7324", + "uuid": "a326a836-6883-43ef-9383-64f0876b0a25" + } + ], + "network_mode": null, + "personality": [], + "power_state": "active", + "region": "garr-na", + "scheduler_hints": [], + "security_groups": [ + "default" + ], + "stop_before_destroy": false, + "tags": [], + "timeouts": null, + "updated": "2024-11-19 17:59:30 +0000 UTC", + "user_data": "164cdf695f3b4a01a2f8b9dc0af2f87629bd89a7", + "vendor_options": [] + }, + "sensitive_attributes": [ + [ + { + "type": "get_attr", + "value": "admin_pass" + } + ] + ], + "private": "eyJlMmJmYjczMC1lY2FhLTExZTYtOGY4OC0zNDM2M2JjN2M0YzAiOnsiY3JlYXRlIjoxODAwMDAwMDAwMDAwLCJkZWxldGUiOjE4MDAwMDAwMDAwMDAsInVwZGF0ZSI6MTgwMDAwMDAwMDAwMH19", + "dependencies": [ + "data.terraform_remote_state.privnet_dns_router", + "openstack_networking_port_v2.escriptorium_ip_in_main_net" + ] + } + ] + }, + { + "mode": "managed", + "type": "openstack_compute_volume_attach_v2", + "name": "escriptorium_data_attach_vol", + "provider": "provider[\"registry.terraform.io/terraform-provider-openstack/openstack\"]", + "instances": [ + { + "schema_version": 0, + "attributes": { + "device": "/dev/vdd", + "id": "546b23f2-33f5-4918-a723-a33d9c09de3d/e339d0fc-e835-44bd-a042-18b7adad4ad1", + "instance_id": "546b23f2-33f5-4918-a723-a33d9c09de3d", + "multiattach": null, + "region": "garr-na", + "tag": null, + "timeouts": null, + "vendor_options": [], + "volume_id": "e339d0fc-e835-44bd-a042-18b7adad4ad1" + }, + "sensitive_attributes": [], + "private": "eyJlMmJmYjczMC1lY2FhLTExZTYtOGY4OC0zNDM2M2JjN2M0YzAiOnsiY3JlYXRlIjo2MDAwMDAwMDAwMDAsImRlbGV0ZSI6NjAwMDAwMDAwMDAwfX0=", + "dependencies": [ + "data.terraform_remote_state.privnet_dns_router", + "openstack_blockstorage_volume_v3.escriptorium_data_vol", + "openstack_compute_instance_v2.escriptorium_server", + "openstack_networking_port_v2.escriptorium_ip_in_main_net" + ] + } + ] + }, + { + "mode": "managed", + "type": "openstack_compute_volume_attach_v2", + "name": "escriptorium_docker_attach_vol", + "provider": "provider[\"registry.terraform.io/terraform-provider-openstack/openstack\"]", + "instances": [ + { + "schema_version": 0, + "attributes": { + "device": "/dev/vdb", + "id": "546b23f2-33f5-4918-a723-a33d9c09de3d/f176d7db-03a7-4c9a-8750-cab14b7204b2", + "instance_id": "546b23f2-33f5-4918-a723-a33d9c09de3d", + "multiattach": null, + "region": "garr-na", + "tag": null, + "timeouts": null, + "vendor_options": [], + "volume_id": "f176d7db-03a7-4c9a-8750-cab14b7204b2" + }, + "sensitive_attributes": [], + "private": "eyJlMmJmYjczMC1lY2FhLTExZTYtOGY4OC0zNDM2M2JjN2M0YzAiOnsiY3JlYXRlIjo2MDAwMDAwMDAwMDAsImRlbGV0ZSI6NjAwMDAwMDAwMDAwfX0=", + "dependencies": [ + "data.terraform_remote_state.privnet_dns_router", + "openstack_blockstorage_volume_v3.escriptorium_vm_vol", + "openstack_compute_instance_v2.escriptorium_server", + "openstack_networking_port_v2.escriptorium_ip_in_main_net" + ] + } + ] + }, + { + "mode": "managed", + "type": "openstack_compute_volume_attach_v2", + "name": "escriptorium_media_attach_vol", + "provider": "provider[\"registry.terraform.io/terraform-provider-openstack/openstack\"]", + "instances": [ + { + "schema_version": 0, + "attributes": { + "device": "/dev/vdc", + "id": "546b23f2-33f5-4918-a723-a33d9c09de3d/081d47b3-0e3a-499b-a157-5706ee370c39", + "instance_id": "546b23f2-33f5-4918-a723-a33d9c09de3d", + "multiattach": null, + "region": "garr-na", + "tag": null, + "timeouts": null, + "vendor_options": [], + "volume_id": "081d47b3-0e3a-499b-a157-5706ee370c39" + }, + "sensitive_attributes": [], + "private": "eyJlMmJmYjczMC1lY2FhLTExZTYtOGY4OC0zNDM2M2JjN2M0YzAiOnsiY3JlYXRlIjo2MDAwMDAwMDAwMDAsImRlbGV0ZSI6NjAwMDAwMDAwMDAwfX0=", + "dependencies": [ + "data.terraform_remote_state.privnet_dns_router", + "openstack_blockstorage_volume_v3.escriptorium_media_vol", + "openstack_compute_instance_v2.escriptorium_server", + "openstack_networking_port_v2.escriptorium_ip_in_main_net" + ] + } + ] + }, + { + "mode": "managed", + "type": "openstack_compute_volume_attach_v2", + "name": "escriptorium_pg_test_attach_pg_vol", + "provider": "provider[\"registry.terraform.io/terraform-provider-openstack/openstack\"]", + "instances": [ + { + "schema_version": 0, + "attributes": { + "device": "/dev/vdb", + "id": "71b67a61-0faf-4fc9-9a63-615a5a894945/b45703f1-9903-4ac7-b094-0bd9545b75c6", + "instance_id": "71b67a61-0faf-4fc9-9a63-615a5a894945", + "multiattach": null, + "region": "garr-na", + "tag": null, + "timeouts": null, + "vendor_options": [], + "volume_id": "b45703f1-9903-4ac7-b094-0bd9545b75c6" + }, + "sensitive_attributes": [], + "private": "eyJlMmJmYjczMC1lY2FhLTExZTYtOGY4OC0zNDM2M2JjN2M0YzAiOnsiY3JlYXRlIjo2MDAwMDAwMDAwMDAsImRlbGV0ZSI6NjAwMDAwMDAwMDAwfX0=", + "dependencies": [ + "data.terraform_remote_state.privnet_dns_router", + "openstack_blockstorage_volume_v3.escriptorium_pg_test_vol", + "openstack_compute_instance_v2.escriptorium_pg_test_server", + "openstack_networking_port_v2.escriptorium_pg_test_ip_in_main_net", + "openstack_networking_secgroup_v2.escriptorium_postgresql_access" + ] + } + ] + }, + { + "mode": "managed", + "type": "openstack_networking_floatingip_associate_v2", + "name": "escriptorium_pg_server", + "provider": "provider[\"registry.terraform.io/terraform-provider-openstack/openstack\"]", + "instances": [ + { + "schema_version": 0, + "attributes": { + "fixed_ip": "192.168.102.125", + "floating_ip": "90.147.152.32", + "id": "8d2781fe-306c-4437-af51-1c4570de063e", + "port_id": "8ee9fee5-c827-4d43-9cb7-6d1aeb9316fe", + "region": "garr-na" + }, + "sensitive_attributes": [], + "private": "bnVsbA==", + "dependencies": [ + "data.terraform_remote_state.privnet_dns_router", + "openstack_networking_floatingip_v2.escriptorium_pg_test_floating_ip", + "openstack_networking_port_v2.escriptorium_pg_test_ip_in_main_net", + "openstack_networking_secgroup_v2.escriptorium_postgresql_access" + ] + } + ] + }, + { + "mode": "managed", + "type": "openstack_networking_floatingip_associate_v2", + "name": "escriptorium_server", + "provider": "provider[\"registry.terraform.io/terraform-provider-openstack/openstack\"]", + "instances": [ + { + "schema_version": 0, + "attributes": { + "fixed_ip": "192.168.102.89", + "floating_ip": "90.147.152.34", + "id": "e86c0d86-7cd0-4ba5-b311-7b54a27e97c5", + "port_id": "910f51af-12af-403c-be46-ca29813c7324", + "region": "garr-na" + }, + "sensitive_attributes": [], + "private": "bnVsbA==", + "dependencies": [ + "data.terraform_remote_state.privnet_dns_router", + "openstack_networking_floatingip_v2.escriptorium_floating_ip", + "openstack_networking_port_v2.escriptorium_ip_in_main_net" + ] + } + ] + }, + { + "mode": "managed", + "type": "openstack_networking_floatingip_v2", + "name": "escriptorium_floating_ip", + "provider": "provider[\"registry.terraform.io/terraform-provider-openstack/openstack\"]", + "instances": [ + { + "schema_version": 0, + "attributes": { + "address": "90.147.152.34", + "all_tags": [], + "description": "eScriptorium test server", + "dns_domain": "", + "dns_name": "", + "fixed_ip": "192.168.102.89", + "id": "e86c0d86-7cd0-4ba5-b311-7b54a27e97c5", + "pool": "floating-ip", + "port_id": "910f51af-12af-403c-be46-ca29813c7324", + "region": "garr-na", + "subnet_id": null, + "subnet_ids": null, + "tags": [], + "tenant_id": "a2de533851354b1f8d99ac6b6216d92e", + "timeouts": null, + "value_specs": null + }, + "sensitive_attributes": [], + "private": "eyJlMmJmYjczMC1lY2FhLTExZTYtOGY4OC0zNDM2M2JjN2M0YzAiOnsiY3JlYXRlIjo2MDAwMDAwMDAwMDAsImRlbGV0ZSI6NjAwMDAwMDAwMDAwfX0=", + "dependencies": [ + "data.terraform_remote_state.privnet_dns_router" + ] + } + ] + }, + { + "mode": "managed", + "type": "openstack_networking_floatingip_v2", + "name": "escriptorium_pg_test_floating_ip", + "provider": "provider[\"registry.terraform.io/terraform-provider-openstack/openstack\"]", + "instances": [ + { + "schema_version": 0, + "attributes": { + "address": "90.147.152.32", + "all_tags": [], + "description": "eScriptorium postgresql test server", + "dns_domain": "", + "dns_name": "", + "fixed_ip": "192.168.102.125", + "id": "8d2781fe-306c-4437-af51-1c4570de063e", + "pool": "floating-ip", + "port_id": "8ee9fee5-c827-4d43-9cb7-6d1aeb9316fe", + "region": "garr-na", + "subnet_id": null, + "subnet_ids": null, + "tags": [], + "tenant_id": "a2de533851354b1f8d99ac6b6216d92e", + "timeouts": null, + "value_specs": null + }, + "sensitive_attributes": [], + "private": "eyJlMmJmYjczMC1lY2FhLTExZTYtOGY4OC0zNDM2M2JjN2M0YzAiOnsiY3JlYXRlIjo2MDAwMDAwMDAwMDAsImRlbGV0ZSI6NjAwMDAwMDAwMDAwfX0=", + "dependencies": [ + "data.terraform_remote_state.privnet_dns_router" + ] + } + ] + }, + { + "mode": "managed", + "type": "openstack_networking_port_v2", + "name": "escriptorium_ip_in_main_net", + "provider": "provider[\"registry.terraform.io/terraform-provider-openstack/openstack\"]", + "instances": [ + { + "schema_version": 0, + "attributes": { + "admin_state_up": true, + "all_fixed_ips": [ + "192.168.102.89" + ], + "all_security_group_ids": [ + "b1dca1a8-4eb4-43b0-9fe1-e6a399e23fbb" + ], + "all_tags": [], + "allowed_address_pairs": [], + "binding": [ + { + "host_id": "", + "profile": "", + "vif_details": {}, + "vif_type": "", + "vnic_type": "normal" + } + ], + "description": "", + "device_id": "546b23f2-33f5-4918-a723-a33d9c09de3d", + "device_owner": "compute:nova", + "dns_assignment": [ + { + "fqdn": "escriptorium-service.garr.cloud.na.", + "hostname": "escriptorium-service", + "ip_address": "192.168.102.89" + } + ], + "dns_name": "escriptorium-service", + "extra_dhcp_option": [], + "fixed_ip": [], + "id": "910f51af-12af-403c-be46-ca29813c7324", + "mac_address": "fa:16:3e:44:94:46", + "name": "escriptorium_main_interface", + "network_id": "a326a836-6883-43ef-9383-64f0876b0a25", + "no_fixed_ip": null, + "no_security_groups": null, + "port_security_enabled": true, + "qos_policy_id": "", + "region": "garr-na", + "security_group_ids": [ + "b1dca1a8-4eb4-43b0-9fe1-e6a399e23fbb" + ], + "tags": [], + "tenant_id": "a2de533851354b1f8d99ac6b6216d92e", + "timeouts": null, + "value_specs": null + }, + "sensitive_attributes": [], + "private": "eyJlMmJmYjczMC1lY2FhLTExZTYtOGY4OC0zNDM2M2JjN2M0YzAiOnsiY3JlYXRlIjo2MDAwMDAwMDAwMDAsImRlbGV0ZSI6NjAwMDAwMDAwMDAwfX0=", + "dependencies": [ + "data.terraform_remote_state.privnet_dns_router" + ] + } + ] + }, + { + "mode": "managed", + "type": "openstack_networking_port_v2", + "name": "escriptorium_pg_test_ip_in_main_net", + "provider": "provider[\"registry.terraform.io/terraform-provider-openstack/openstack\"]", + "instances": [ + { + "schema_version": 0, + "attributes": { + "admin_state_up": true, + "all_fixed_ips": [ + "192.168.102.125" + ], + "all_security_group_ids": [ + "8442fbe0-2f93-4e5f-9fbf-ad9da813b6c6", + "b1dca1a8-4eb4-43b0-9fe1-e6a399e23fbb" + ], + "all_tags": [], + "allowed_address_pairs": [], + "binding": [ + { + "host_id": "", + "profile": "", + "vif_details": {}, + "vif_type": "", + "vnic_type": "normal" + } + ], + "description": "", + "device_id": "71b67a61-0faf-4fc9-9a63-615a5a894945", + "device_owner": "compute:nova", + "dns_assignment": [ + { + "fqdn": "escriptorium-postgresql-test-service.garr.cloud.na.", + "hostname": "escriptorium-postgresql-test-service", + "ip_address": "192.168.102.125" + } + ], + "dns_name": "escriptorium-postgresql-test-service", + "extra_dhcp_option": [], + "fixed_ip": [], + "id": "8ee9fee5-c827-4d43-9cb7-6d1aeb9316fe", + "mac_address": "fa:16:3e:8b:a7:d4", + "name": "escriptorium_postgres_test_main_interface", + "network_id": "a326a836-6883-43ef-9383-64f0876b0a25", + "no_fixed_ip": null, + "no_security_groups": null, + "port_security_enabled": true, + "qos_policy_id": "", + "region": "garr-na", + "security_group_ids": [ + "8442fbe0-2f93-4e5f-9fbf-ad9da813b6c6", + "b1dca1a8-4eb4-43b0-9fe1-e6a399e23fbb" + ], + "tags": [], + "tenant_id": "a2de533851354b1f8d99ac6b6216d92e", + "timeouts": null, + "value_specs": null + }, + "sensitive_attributes": [], + "private": "eyJlMmJmYjczMC1lY2FhLTExZTYtOGY4OC0zNDM2M2JjN2M0YzAiOnsiY3JlYXRlIjo2MDAwMDAwMDAwMDAsImRlbGV0ZSI6NjAwMDAwMDAwMDAwfX0=", + "dependencies": [ + "data.terraform_remote_state.privnet_dns_router", + "openstack_networking_secgroup_v2.escriptorium_postgresql_access" + ] + } + ] + }, + { + "mode": "managed", + "type": "openstack_networking_secgroup_rule_v2", + "name": "escriptorium_postgresql_access_from_the_infrascience_network", + "provider": "provider[\"registry.terraform.io/terraform-provider-openstack/openstack\"]", + "instances": [ + { + "schema_version": 0, + "attributes": { + "description": "Allow connections to port 5432 from the 146.48.122.0/23 network", + "direction": "ingress", + "ethertype": "IPv4", + "id": "cac92298-f5f8-4ee8-a05b-443b2b8fe446", + "port_range_max": 5432, + "port_range_min": 5432, + "protocol": "tcp", + "region": "garr-na", + "remote_group_id": "", + "remote_ip_prefix": "146.48.122.0/23", + "security_group_id": "8442fbe0-2f93-4e5f-9fbf-ad9da813b6c6", + "tenant_id": "a2de533851354b1f8d99ac6b6216d92e", + "timeouts": null + }, + "sensitive_attributes": [], + "private": "eyJlMmJmYjczMC1lY2FhLTExZTYtOGY4OC0zNDM2M2JjN2M0YzAiOnsiZGVsZXRlIjo2MDAwMDAwMDAwMDB9fQ==", + "dependencies": [ + "openstack_networking_secgroup_v2.escriptorium_postgresql_access" + ] + } + ] + }, + { + "mode": "managed", + "type": "openstack_networking_secgroup_rule_v2", + "name": "escriptorium_postgresql_access_from_the_private_network", + "provider": "provider[\"registry.terraform.io/terraform-provider-openstack/openstack\"]", + "instances": [ + { + "schema_version": 0, + "attributes": { + "description": "Allow connections to port 5432 from the 192.168.102.0/24 network", + "direction": "ingress", + "ethertype": "IPv4", + "id": "b990fa6b-ed16-4a52-8a64-b49ff3fd254d", + "port_range_max": 5432, + "port_range_min": 5432, + "protocol": "tcp", + "region": "garr-na", + "remote_group_id": "", + "remote_ip_prefix": "192.168.102.0/24", + "security_group_id": "8442fbe0-2f93-4e5f-9fbf-ad9da813b6c6", + "tenant_id": "a2de533851354b1f8d99ac6b6216d92e", + "timeouts": null + }, + "sensitive_attributes": [], + "private": "eyJlMmJmYjczMC1lY2FhLTExZTYtOGY4OC0zNDM2M2JjN2M0YzAiOnsiZGVsZXRlIjo2MDAwMDAwMDAwMDB9fQ==", + "dependencies": [ + "data.terraform_remote_state.privnet_dns_router", + "openstack_networking_secgroup_v2.escriptorium_postgresql_access" + ] + } + ] + }, + { + "mode": "managed", + "type": "openstack_networking_secgroup_rule_v2", + "name": "escriptorium_postgresql_access_from_the_s2i2s_network", + "provider": "provider[\"registry.terraform.io/terraform-provider-openstack/openstack\"]", + "instances": [ + { + "schema_version": 0, + "attributes": { + "description": "Allow connections to port 5432 from the 146.48.28.0/22 network", + "direction": "ingress", + "ethertype": "IPv4", + "id": "123c5834-e45a-4a05-b879-9c70e7f3d55f", + "port_range_max": 5432, + "port_range_min": 5432, + "protocol": "tcp", + "region": "garr-na", + "remote_group_id": "", + "remote_ip_prefix": "146.48.28.0/22", + "security_group_id": "8442fbe0-2f93-4e5f-9fbf-ad9da813b6c6", + "tenant_id": "a2de533851354b1f8d99ac6b6216d92e", + "timeouts": null + }, + "sensitive_attributes": [], + "private": "eyJlMmJmYjczMC1lY2FhLTExZTYtOGY4OC0zNDM2M2JjN2M0YzAiOnsiZGVsZXRlIjo2MDAwMDAwMDAwMDB9fQ==", + "dependencies": [ + "openstack_networking_secgroup_v2.escriptorium_postgresql_access" + ] + } + ] + }, + { + "mode": "managed", + "type": "openstack_networking_secgroup_v2", + "name": "escriptorium_postgresql_access", + "provider": "provider[\"registry.terraform.io/terraform-provider-openstack/openstack\"]", + "instances": [ + { + "schema_version": 0, + "attributes": { + "all_tags": [], + "delete_default_rules": true, + "description": "Access the eScriptorium PostgreSQL service", + "id": "8442fbe0-2f93-4e5f-9fbf-ad9da813b6c6", + "name": "access_to_the_escriptorium_postgresql_service", + "region": "garr-na", + "stateful": true, + "tags": [], + "tenant_id": "a2de533851354b1f8d99ac6b6216d92e", + "timeouts": null + }, + "sensitive_attributes": [], + "private": "eyJlMmJmYjczMC1lY2FhLTExZTYtOGY4OC0zNDM2M2JjN2M0YzAiOnsiZGVsZXRlIjo2MDAwMDAwMDAwMDB9fQ==" + } + ] + } + ], + "check_results": null +}