Only update apt cache if necessary

Workarounding the upstream ansible apt module bug

documented here:

https://github.com/ansible/ansible-modules-core/pull/1517

For the next versions of ansible we'll be using, we should

check if the apt bug is fixed. When it's fixed, we could

abandon this change and use the standard apt module

with correct cache handling.

Change-Id: I4390b7ec1104d79b60965be8dc7317ac3075207d
This commit is contained in:
Jean-Philippe Evrard
2016-02-15 14:49:43 +01:00
parent bb0bc5eb7a
commit 1477df22f7
2 changed files with 15 additions and 6 deletions

View File

@@ -13,6 +13,9 @@
# See the License for the specific language governing permissions and
# limitations under the License.
## APT Cache Options
cache_timeout: 600
openstack_code_name: Mitaka
openstack_release: master

View File

@@ -13,14 +13,20 @@
# See the License for the specific language governing permissions and
# limitations under the License.
- name: Update apt sources
#TODO(evrardjp): Replace the next 2 tasks by a standard apt with cache
#when https://github.com/ansible/ansible-modules-core/pull/1517 is merged
#in 1.9.x or we move to 2.0 (if tested working)
- name: Check apt last update file
stat:
path: /var/cache/apt
register: apt_cache_stat
tags:
- openstack-apt-packages
- name: Update apt if needed
apt:
update_cache: yes
cache_valid_time: 600
register: apt_update
until: apt_update|success
retries: 5
delay: 2
when: "ansible_date_time.epoch|float - apt_cache_stat.stat.mtime > {{cache_timeout}}"
tags:
- openstack-apt-packages