close nova <-> cinder binding
The snippet can be accessed without any authentication.
Authored by
František Řezníček
Edited
nova-cinder.tf 2.38 KiB
# --- this role MAY be bootstrapped, if this is the case use terraform import to import it to the tf state
# This role is needed by tight cinder <-> nova service user linking
# see https://docs.openstack.org/cinder/latest/configuration/block-storage/service-token.html and https://docs.openstack.org/releasenotes/cinder/yoga.html#upgrade-notes
resource "openstack_identity_role_v3" "service" {
name = "service"
}
# --- data source to get IDs, these domain + project are normally bootstrapped
# recognize service domain (created by deployed OpenStack components)
data "openstack_identity_project_v3" "service" {
name = "service"
is_domain = true
}
# recognize project service in domain service (created by deployed OpenStack components)
data "openstack_identity_project_v3" "service_service" {
name = "service"
domain_id = data.openstack_identity_project_v3.service.id
}
# ---
# This role assignment is needed by tight cinder <-> nova service user linking
# see https://docs.openstack.org/cinder/latest/configuration/block-storage/service-token.html and https://docs.openstack.org/releasenotes/cinder/yoga.html#upgrade-notes
# recognize user nova in domain service (created by OpenStack nova bootstrap)
data "openstack_identity_user_v3" "service_nova" {
name = "nova"
domain_id = data.openstack_identity_project_v3.service.id
}
# add role service to service user nova
resource "openstack_identity_role_assignment_v3" "service_nova_service" {
user_id = data.openstack_identity_user_v3.service_nova.id
project_id = data.openstack_identity_project_v3.service_service.id
role_id = openstack_identity_role_v3.service.id
}
# ---
# This role assignment is needed by tight cinder <-> nova service user linking
# see https://docs.openstack.org/cinder/latest/configuration/block-storage/service-token.html and https://docs.openstack.org/releasenotes/cinder/yoga.html#upgrade-notes
# recognize user cinder in domain service (created by OpenStack cinder bootstrap)
data "openstack_identity_user_v3" "service_cinder" {
name = "cinder"
domain_id = data.openstack_identity_project_v3.service.id
}
# add role service to service user cinder
resource "openstack_identity_role_assignment_v3" "service_cinder_service" {
user_id = data.openstack_identity_user_v3.service_cinder.id
project_id = data.openstack_identity_project_v3.service_service.id
role_id = openstack_identity_role_v3.service.id
}
Please register or sign in to comment