From 3b62292d5f44a102361159ff9b05ec11786d8b29 Mon Sep 17 00:00:00 2001 From: Emiliano Vavassori Date: Tue, 29 Sep 2015 23:06:49 +0200 Subject: [PATCH] Adding checksum fact. --- roles/prereq/tasks/prereq.yml | 8 ++++++++ roles/prereq/templates/checksum.fact | 25 +++++++++++++++++++++++++ 2 files changed, 33 insertions(+) create mode 100644 roles/prereq/templates/checksum.fact diff --git a/roles/prereq/tasks/prereq.yml b/roles/prereq/tasks/prereq.yml index 0a5f205..9c59424 100644 --- a/roles/prereq/tasks/prereq.yml +++ b/roles/prereq/tasks/prereq.yml @@ -28,6 +28,14 @@ group: root mode: 0755 +- name: Creating facts.d script for repo/pkg versions + template: + src: checksum.fact + dest: /etc/ansible/facts.d/checksum.fact + mode: 0755 + owner: root + group: root + - name: Loading domain variables setup: filter: ansible_local diff --git a/roles/prereq/templates/checksum.fact b/roles/prereq/templates/checksum.fact new file mode 100644 index 0000000..97d341b --- /dev/null +++ b/roles/prereq/templates/checksum.fact @@ -0,0 +1,25 @@ +#!/usr/bin/env python + +from os.path import isfile +from json import dumps + +pkgver_file = '/var/lib/{{ ansible_local.domain.domainfull }}/pkg-ver.txt' +repover_file = '/var/lib/{{ ansible_local.domain.domainfull }}/repo-ver.txt' + +local_pkg_hash = '' +local_repo_hash = '' + +if isfile(pkgver_file): + local_pkg_hash = open(pkgver_file, 'r').read().strip() + +if isfile(repover_file): + local_repo_hash = open(repover_file, 'r').read().strip() + +retval = { + 'repover': local_repo_hash, + 'repover_file': repover_file, + 'pkgver': local_pkg_hash, + 'pkgver_file': pkgver_file +} + +print(dumps(retval))