diff --git a/defaults/main.yml b/defaults/main.yml index 68c1226..5445dc6 100644 --- a/defaults/main.yml +++ b/defaults/main.yml @@ -162,6 +162,9 @@ designate_role_name: admin # algorithm: "hmac-md5" # secret: "" +# Owner of all managed resources - like auto-created records etc. +designate_managed_resource_project_name: "{{ designate_service_project_name }}" + ## Service Type and Data designate_service_region: RegionOne designate_service_endpoint_type: internalURL diff --git a/tasks/designate_post_install.yml b/tasks/designate_post_install.yml index f4d5da9..f3687a5 100644 --- a/tasks/designate_post_install.yml +++ b/tasks/designate_post_install.yml @@ -13,6 +13,25 @@ # See the License for the specific language governing permissions and # limitations under the License. +- name: Get project id for managed resources + delegate_to: "{{ designate_service_setup_host }}" + vars: + ansible_python_interpreter: >- + {{ (designate_service_setup_host == 'localhost') | ternary(ansible_playbook_python, ansible_python['executable']) }} + os_project_facts: + cloud: default + name: "{{ designate_managed_resource_project_name }}" + interface: internal + validate_certs: "{{ not (keystone_service_internaluri_insecure | bool) }}" + register: _get_managed_resource_project + until: _get_managed_resource_project is success + retries: 5 + delay: 15 + +- name: Store project id for managed resources + set_fact: + designate_managed_resource_tenant_id: "{{ ansible_facts.openstack_projects[0].id }}" + - name: Copy designate config config_template: src: "{{ item.src }}" diff --git a/templates/designate.conf.j2 b/templates/designate.conf.j2 index a1f2aa9..cae96a3 100644 --- a/templates/designate.conf.j2 +++ b/templates/designate.conf.j2 @@ -66,8 +66,7 @@ transport_url = {{ designate_oslomsg_notify_transport }}://{% for host in design #managed_resource_email = hostmaster@example.com. # Tenant ID to own all managed resources - like auto-created records etc. -# TODO(odyssey4me) - Check on whether this should be set to something -#managed_resource_tenant_id = 123456 +managed_resource_tenant_id = {{ designate_managed_resource_tenant_id }} #----------------------- # API Service