diff options
author | Harry Huang <huangxiangyu5@huawei.com> | 2017-01-23 15:38:52 +0800 |
---|---|---|
committer | Harry Huang <huangxiangyu5@huawei.com> | 2017-02-04 14:39:32 +0800 |
commit | 53916ab0e407f29b33a72c721f424284567636ce (patch) | |
tree | 45c3574657ebecda7d34c707bab8ec61cd519408 /deploy/adapters/ansible/roles/congress/tasks | |
parent | bf6f490bbac43392db6d0d3a5f27d4209b3967dc (diff) |
Congress support for Newton
Modification:
1.Add congress support in deploy/compass_conf
2.Optimize congress role to be more independant.
Separate congress role into install, keystone,
database, start.
3.Support both ubuntu and centos
Change-Id: I1c9a458addd84133652fb7c0563bc287d161d129
Signed-off-by: Harry Huang <huangxiangyu5@huawei.com>
Diffstat (limited to 'deploy/adapters/ansible/roles/congress/tasks')
-rw-r--r-- | deploy/adapters/ansible/roles/congress/tasks/congress_config.yml | 17 | ||||
-rwxr-xr-x[-rw-r--r--] | deploy/adapters/ansible/roles/congress/tasks/congress_database.yml (renamed from deploy/adapters/ansible/roles/congress/tasks/congress_db.yml) | 13 | ||||
-rwxr-xr-x[-rw-r--r--] | deploy/adapters/ansible/roles/congress/tasks/congress_install.yml | 10 | ||||
-rwxr-xr-x | deploy/adapters/ansible/roles/congress/tasks/congress_keystone.yml | 70 | ||||
-rwxr-xr-x | deploy/adapters/ansible/roles/congress/tasks/congress_start.yml | 12 | ||||
-rwxr-xr-x[-rw-r--r--] | deploy/adapters/ansible/roles/congress/tasks/main.yml | 27 |
6 files changed, 123 insertions, 26 deletions
diff --git a/deploy/adapters/ansible/roles/congress/tasks/congress_config.yml b/deploy/adapters/ansible/roles/congress/tasks/congress_config.yml deleted file mode 100644 index c85057e8..00000000 --- a/deploy/adapters/ansible/roles/congress/tasks/congress_config.yml +++ /dev/null @@ -1,17 +0,0 @@ -############################################################################## -# Copyright (c) 2016 HUAWEI TECHNOLOGIES CO.,LTD and others. -# -# All rights reserved. This program and the accompanying materials -# are made available under the terms of the Apache License, Version 2.0 -# which accompanies this distribution, and is available at -# http://www.apache.org/licenses/LICENSE-2.0 -############################################################################## ---- -- name: congress db sync - shell: | - /usr/local/bin/congress-db-manage \ - --config-file /etc/congress/congress.conf upgrade head - when: inventory_hostname == haproxy_hosts.keys()[0] - -- name: start congress service - shell: systemctl start congress.service diff --git a/deploy/adapters/ansible/roles/congress/tasks/congress_db.yml b/deploy/adapters/ansible/roles/congress/tasks/congress_database.yml index 16832eaa..009e3488 100644..100755 --- a/deploy/adapters/ansible/roles/congress/tasks/congress_db.yml +++ b/deploy/adapters/ansible/roles/congress/tasks/congress_database.yml @@ -1,4 +1,4 @@ -############################################################################## +############################################################################# # Copyright (c) 2016 HUAWEI TECHNOLOGIES CO.,LTD and others. # # All rights reserved. This program and the accompanying materials @@ -12,7 +12,7 @@ login_unix_socket: /var/run/mysqld/mysqld.sock name: "{{ item.db }}" state: present - with_items: "{{ credentials }}" + with_items: "{{ congress_database }}" - name: create congress db user mysql_user: @@ -23,5 +23,12 @@ host: "{{ item[1] }}" state: present with_nested: - - "{{ credentials }}" + - "{{ congress_database }}" - ['%', 'localhost'] + +- name: congress db sync + shell: | + "{{ congress_path }}"/congress-db-manage \ + --config-file /etc/congress/congress.conf upgrade head + notify: + - restart congress services diff --git a/deploy/adapters/ansible/roles/congress/tasks/congress_install.yml b/deploy/adapters/ansible/roles/congress/tasks/congress_install.yml index 4269b5e6..40d5d78e 100644..100755 --- a/deploy/adapters/ansible/roles/congress/tasks/congress_install.yml +++ b/deploy/adapters/ansible/roles/congress/tasks/congress_install.yml @@ -7,11 +7,9 @@ # http://www.apache.org/licenses/LICENSE-2.0 ############################################################################## --- -- include_vars: "{{ ansible_os_family }}.yml" - - name: install congress packages pip: name={{ item }} state=present - with_items: "{{ packages }}" + with_items: "{{ pip_packages | union(packages_noarch) }}" - name: create congress etc directory file: path=/etc/congress state=directory @@ -23,9 +21,13 @@ - congress.conf - api-paste.ini - policy.json + notify: + - restart congress services - name: create congress service - copy: src=congress.service dest=/lib/systemd/system/ + template: src=congress.service dest=/lib/systemd/system/ + notify: + - restart congress services - name: create congress service work dir file: path=/var/lib/congress state=directory diff --git a/deploy/adapters/ansible/roles/congress/tasks/congress_keystone.yml b/deploy/adapters/ansible/roles/congress/tasks/congress_keystone.yml new file mode 100755 index 00000000..b7f00b88 --- /dev/null +++ b/deploy/adapters/ansible/roles/congress/tasks/congress_keystone.yml @@ -0,0 +1,70 @@ +############################################################################## +# Copyright (c) 2016 HUAWEI TECHNOLOGIES CO.,LTD and others. +# +# All rights reserved. This program and the accompanying materials +# are made available under the terms of the Apache License, Version 2.0 +# which accompanies this distribution, and is available at +# http://www.apache.org/licenses/LICENSE-2.0 +############################################################################### +--- +- name: add service + os_keystone_service: + cloud: opnfv + name: "{{ item.name }}" + description: "{{ item.description }}" + service_type: "{{ item.type }}" + with_items: "{{ congress_service }}" + +- name: add user + os_user: + cloud: opnfv + domain: default + name: "{{ item.user }}" + password: "{{ item.password }}" + default_project: "{{ item.tenant }}" + email: "{{ item.email }}" + with_items: "{{ congress_user }}" + +- name: grant roles + os_user_role: + cloud: opnfv + user: "{{ item.user }}" + role: "{{ item.role }}" + project: "{{ item.tenant }}" + with_items: "{{ congress_user }}" + +- name: create admin url for service's endpoint + keystone_endpoint: + cloud: opnfv + endpoint_type: admin + name: "{{ item.name }}" + service_type: "{{ item.type }}" + state: present + interface: admin + region: "{{ item.region}}" + url: "{{ item.adminurl }}" + with_items: "{{ congress_service }}" + +- name: create internal url for service's endpoint + keystone_endpoint: + cloud: opnfv + endpoint_type: admin + name: "{{ item.name }}" + service_type: "{{ item.type }}" + state: present + interface: internal + region: "{{ item.region}}" + url: "{{ item.internalurl }}" + with_items: "{{ congress_service }}" + +- name: create public url for service'e endpoint + keystone_endpoint: + cloud: opnfv + endpoint_type: admin + name: "{{ item.name }}" + service_type: "{{ item.type }}" + state: present + interface: public + region: "{{ item.region}}" + url: "{{ item.publicurl }}" + with_items: "{{ congress_service }}" diff --git a/deploy/adapters/ansible/roles/congress/tasks/congress_start.yml b/deploy/adapters/ansible/roles/congress/tasks/congress_start.yml new file mode 100755 index 00000000..1d7d5e52 --- /dev/null +++ b/deploy/adapters/ansible/roles/congress/tasks/congress_start.yml @@ -0,0 +1,12 @@ +############################################################################## +## Copyright (c) 2016 HUAWEI TECHNOLOGIES CO.,LTD and others. +## +## All rights reserved. This program and the accompanying materials +## are made available under the terms of the Apache License, Version 2.0 +## which accompanies this distribution, and is available at +## http://www.apache.org/licenses/LICENSE-2.0 +############################################################################### +--- +- name: start congress services + service: name={{ item }} state=started enabled=yes + with_items: "{{ services | union(services_noarch) }}" diff --git a/deploy/adapters/ansible/roles/congress/tasks/main.yml b/deploy/adapters/ansible/roles/congress/tasks/main.yml index f8056d15..6aad108f 100644..100755 --- a/deploy/adapters/ansible/roles/congress/tasks/main.yml +++ b/deploy/adapters/ansible/roles/congress/tasks/main.yml @@ -7,10 +7,33 @@ # http://www.apache.org/licenses/LICENSE-2.0 ############################################################################## --- +- include_vars: "{{ ansible_os_family }}.yml" + tags: + - install + - start + - include: congress_install.yml + tags: + - install -- include: congress_db.yml +- include: congress_keystone.yml when: - inventory_hostname == haproxy_hosts.keys()[0] + tags: + - keystone + +- include: congress_database.yml + when: + - inventory_hostname == haproxy_hosts.keys()[0] + tags: + - database + +- include: congress_start.yml + tags: + - start -- include: congress_config.yml +- meta: flush_handlers + tags: + - install + - keystone + - database |