Use package module to install distro packages

Consolidate distro package install tasks into a
single task using the package module and pass
the package list into the name instead of using
a with_items loop.

The minimum Ansible version is raised to 2.2 due to a
known bug [1] in Ansible's apt module which does not
update the cache properly if the cache update and the
install are combined in a single task.

[1] https://github.com/ansible/ansible-modules-core/issues/1497

Also:
- remove unused travis configuration file
- move release note to the proper location
- add license boilerplate to meta file

Change-Id: Ibc2d96a48f156f19235df8b7a25d59d433c3aad5
This commit is contained in:
Jesse Pretorius 2017-05-02 10:58:37 +01:00
parent 0045da5593
commit 7f399d384d
5 changed files with 26 additions and 66 deletions

View File

@ -1,29 +0,0 @@
---
language: python
python: "2.7"
# Use the new container infrastructure
sudo: false
# Install ansible
addons:
apt:
packages:
- python-pip
install:
# Install ansible
- pip install ansible
# Check ansible version
- ansible --version
# Create ansible.cfg with correct roles_path
- printf '[defaults]\nroles_path=../' >ansible.cfg
script:
# Basic role syntax check
- ansible-playbook tests/test.yml -i tests/inventory --syntax-check
notifications:
webhooks: https://galaxy.ansible.com/api/v1/notifications/

View File

@ -1,9 +1,24 @@
---
# Copyright 2017, 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.
galaxy_info:
author: OpenStack-Ansible
description: Deploy Barbican with OpenStack-Ansible
company: OpenStack
license: Apache-2.0
min_ansible_version: 2.0
min_ansible_version: 2.2
platforms:
- name: Ubuntu
versions:

View File

@ -13,10 +13,16 @@
# See the License for the specific language governing permissions and
# limitations under the License.
- include: barbican_install_apt.yml
static: no
when:
- ansible_pkg_mgr == 'apt'
- name: Install distro packages
package:
name: "{{ barbican_distro_packages }}"
state: "{{ barbican_package_state }}"
update_cache: "{{ (ansible_pkg_mgr == 'apt') | ternary('yes', omit) }}"
cache_valid_time: "{{ (ansible_pkg_mgr == 'apt') | ternary(cache_timeout, omit) }}"
register: install_packages
until: install_packages | success
retries: 5
delay: 2
- name: Create developer mode constraint file
copy:

View File

@ -1,32 +0,0 @@
# Copyright 2016, Intel Corporation.
#
# 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
- name: Install apt packages for Barbican
apt:
pkg: "{{ item }}"
state: "{{ barbican_package_state }}"
register: install_barbican_distro_packages
until: install_barbican_distro_packages |success
retries: 5
delay: 2
with_items: "{{ barbican_distro_packages }}"