From 0606eb6483bd5c8afb1217ab52c1512d1b16d257 Mon Sep 17 00:00:00 2001 From: Alex Schultz Date: Mon, 18 Nov 2019 07:33:58 -0700 Subject: [PATCH] Check that facter.conf is a file If docker-puppet.py (or container-puppet.py) is run under docker prior to the facter config being generated, the file is created as a directory. This causes a failure later when we try to write the file out. Change-Id: I9b5a1e06e73b3b4cfc0ebfaeba8f1eb4b5d6fcfe Closes-Bug: #1852606 (cherry picked from commit 3e25c2c48308694bbae737ad7699fe540ed1a098) --- common/deploy-steps-tasks.yaml | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/common/deploy-steps-tasks.yaml b/common/deploy-steps-tasks.yaml index 96d689a573..364b4e6525 100644 --- a/common/deploy-steps-tasks.yaml +++ b/common/deploy-steps-tasks.yaml @@ -130,6 +130,22 @@ setype: svirt_sandbox_file_t selevel: s0 recurse: True + - name: Check for facter.conf + check_mode: false + stat: + path: "/var/lib/container-puppet/puppetlabs/facter.conf" + register: _facter_conf_file + # See LP#1852606 for context + - name: Remove facter.conf if directory + check_mode: false + become: true + file: + path: "/var/lib/container-puppet/puppetlabs/facter.conf" + state: absent + force: true + when: + - _facter_conf_file.stat.isdir is defined + - _facter_conf_file.stat.isdir - name: Write facter cache config copy: dest: /var/lib/container-puppet/puppetlabs/facter.conf