---
# Copyright 2014, Rackspace US, Inc.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
#     http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.

- name: Update apt sources
  apt:
    update_cache: yes
    cache_valid_time: 600
  register: apt_update
  until: apt_update|success
  retries: 5
  delay: 2
  tags:
    - horizon-apt-packages

- name: Install apt packages
  apt:
    pkg: "{{ item }}"
    state: latest
  register: install_packages
  until: install_packages|success
  retries: 5
  delay: 2
  with_items: horizon_apt_packages
  tags:
    - horizon-install
    - horizon-apt-packages

- name: Install pip packages (venv)
  pip:
    name: "{{ item }}"
    state: present
    virtualenv: "{{ horizon_venv_bin | dirname }}"
    virtualenv_site_packages: "no"
    extra_args: "{{ pip_install_options|default('') }}"
  register: install_packages
  until: install_packages|success
  retries: 5
  delay: 2
  with_items:
    - "{{ horizon_pip_packages }}"
  when:
    - horizon_venv_enabled | bool
    - horizon_get_venv | failed
  tags:
    - horizon-pip-packages

- name: Install pip packages (no venv)
  pip:
    name: "{{ item }}"
    state: present
    extra_args: "{{ pip_install_options|default('') }}"
  register: install_packages
  until: install_packages|success
  retries: 5
  delay: 2
  with_items:
    - "{{ horizon_pip_packages }}"
  when: not horizon_venv_enabled | bool
  tags:
    - horizon-pip-packages