diff --git a/defaults/main.yml b/defaults/main.yml index 8688011..1cdf185 100644 --- a/defaults/main.yml +++ b/defaults/main.yml @@ -69,7 +69,7 @@ cloudkitty_git_repo: https://git.openstack.org/openstack/cloudkitty cloudkitty_git_install_branch: master cloudkitty_developer_constraints: - - "git+{{ cloudkitty_git_repo }}@{{ cloudkitty_requirements_git_install_branch }}#egg=cloudkitty" + - "git+{{ cloudkitty_git_repo }}@{{ cloudkitty_git_install_branch }}#egg=cloudkitty" cloudkitty_developer_mode: false cloudkitty_notification_topics: notifications diff --git a/extras/os-cloudkitty-install.yml b/extras/os-cloudkitty-install.yml index b5c2497..fecb4b5 100644 --- a/extras/os-cloudkitty-install.yml +++ b/extras/os-cloudkitty-install.yml @@ -15,122 +15,29 @@ - name: Install cloudkitty server hosts: cloudkitty_all - max_fail_percentage: 20 user: root + tags: + - cloudkitty + vars: + cloudkitty_venv_tag: "{{ openstack_release }}" + cloudkitty_venv_download_url: "{{ venv_base_download_url }}/cloudkitty-{{ openstack_release }}-{{ ansible_architecture | lower }}.tgz" pre_tasks: - - name: Use the lxc-openstack aa profile - lxc_container: - name: "{{ container_name }}" - container_config: - - "lxc.aa_profile=lxc-openstack" - delegate_to: "{{ physical_host }}" - when: not is_metal | bool - register: container_config - tags: - - lxc-aa-profile - - name: Wait for container ssh - wait_for: - port: "22" - delay: "{{ ssh_delay }}" - search_regex: "OpenSSH" - host: "{{ ansible_host }}" - delegate_to: "{{ physical_host }}" - when: container_config is defined and container_config is changed - register: ssh_wait_check - until: ssh_wait_check is success - retries: 3 - tags: - - ssh-wait - - name: Sort the rabbitmq servers - dist_sort: - value_to_lookup: "{{ container_name }}" - ref_list: "{{ groups['cloudkitty_all'] }}" - src_list: "{{ rabbitmq_servers }}" - register: servers - tags: - - always - - name: Set rabbitmq servers - set_fact: - rabbitmq_servers: "{{ servers.sorted_list }}" - tags: - - always - - name: Create log dir - file: - path: "{{ item.path }}" - state: directory - with_items: - - { path: "/openstack/log/{{ inventory_hostname }}-cloudkitty" } - when: is_metal | bool - tags: - - cloudkitty-logs - - cloudkitty-log-dirs - - name: Create log aggregation links - file: - src: "{{ item.src }}" - dest: "{{ item.dest }}" - state: "{{ item.state }}" - force: "yes" - with_items: - - { src: "/openstack/log/{{ inventory_hostname }}-cloudkitty", dest: "/var/log/cloudkitty", state: "link" } - when: is_metal | bool - tags: - - cloudkitty-logs - - name: Ensure Rabbitmq vhost - rabbitmq_vhost: - name: "{{ cloudkitty_rabbitmq_vhost }}" - state: "present" - delegate_to: "{{ groups['rabbitmq_all'][0] }}" - when: - - inventory_hostname == groups['cloudkitty_all'][0] - - groups['rabbitmq_all']|length > 0 - tags: - - cloudkitty-rabbitmq - - cloudkitty-rabbitmq-vhost - - name: Ensure rabbitmq user - rabbitmq_user: - user: "{{ cloudkitty_rabbitmq_userid }}" - password: "{{ cloudkitty_rabbitmq_password }}" - vhost: "{{ cloudkitty_rabbitmq_vhost }}" - configure_priv: ".*" - read_priv: ".*" - write_priv: ".*" - state: "present" - no_log: true - delegate_to: "{{ groups['rabbitmq_all'][0] }}" - when: - - inventory_hostname == groups['cloudkitty_all'][0] - - groups['rabbitmq_all']|length > 0 - tags: - - cloudkitty-rabbitmq - - cloudkitty-rabbitmq-user + - include: "common-tasks/os-{{ container_tech | default('lxc') }}-container-setup.yml" + static: no + when: not is_metal + + - include: common-tasks/os-log-dir-setup.yml + vars: + log_dirs: + - src: "/openstack/log/{{ inventory_hostname }}-barbican" + dest: "/var/log/barbican" + roles: - role: "os_cloudkitty" - cloudkitty_venv_tag: "{{ openstack_release }}" - cloudkitty_venv_download_url: "{{ openstack_repo_url }}/venvs/{{ openstack_release }}/{{ ansible_distribution | lower }}/cloudkitty-{{ openstack_release }}.tgz" - cloudkitty_galera_address: "{{ galera_address }}" - tags: - - "os-cloudkitty" - - role: "rsyslog_client" - rsyslog_client_log_rotate_file: cloudkitty_log_rotate - rsyslog_client_log_dir: "/var/log/cloudkitty" - rsyslog_client_config_name: "99-cloudkitty-rsyslog-client.conf" - tags: - - "cloudkitty-rsyslog-client" - - "rsyslog-client" - - role: "system_crontab_coordination" - tags: - - "system-crontab-coordination" - vars: - galera_address: "{{ internal_lb_vip_address }}" - is_metal: "{{ properties.is_metal|default(false) }}" - cloudkitty_rabbitmq_userid: cloudkitty - cloudkitty_rabbitmq_vhost: /cloudkitty - cloudkitty_rabbitmq_servers: "{{ rabbitmq_servers }}" - cloudkitty_rabbitmq_port: "{{ rabbitmq_port }}" - cloudkitty_rabbitmq_use_ssl: "{{ rabbitmq_use_ssl }}" - galera_root_user: root - vars_prompt: - - name: "galera_root_password" - prompt: "What is galera_root_password?" - vars_files: - - defaults/repo_packages/openstack_services.yml + + post_tasks: + - include_tasks: "common-tasks/rsyslog-client.yml" + vars: + rsyslog_client_log_rotate_file: cloudkitty_log_rotate + rsyslog_client_log_dir: "/var/log/cloudkitty" + rsyslog_client_config_name: "99-cloudkitty-rsyslog-client.conf" diff --git a/tests/os_cloudkitty-overrides.yml b/tests/os_cloudkitty-overrides.yml index 272a229..60f664e 100644 --- a/tests/os_cloudkitty-overrides.yml +++ b/tests/os_cloudkitty-overrides.yml @@ -13,11 +13,8 @@ # See the License for the specific language governing permissions and # limitations under the License. -cloudkitty_venv_tag: "testing" cloudkitty_developer_mode: true -cloudkitty_git_install_branch: master -cloudkitty_requirements_git_install_branch: master -cloudkitty_galera_address: "{{ hostvars[groups['galera_all'][0]]['ansible_host'] }}" +cloudkitty_galera_address: "{{ test_galera_host }}" cloudkitty_container_mysql_password: "SuperSecrete" cloudkitty_service_password: "secrete" cloudkitty_oslomsg_rpc_password: "secrete"