Rather than running all the facts for every invocation of
container-puppet.py, let's cache the facts for the entire container
config step. This is similar to what used to happen when we ran puppet
in a single instance for a given step. This improves the time it takes
puppet tp execute within the containers. When systems have large number
of interfaces, the fact generation for puppet can come to a crawl given
that puppet is not supposed to be invoked multiple times in parallel. By
pre-caching the facts, we eliminate the need for puppet to do the
network (and other fact) related lookups when running container
configuration generation.
This patch includes logic to exclude the puppet caching dirs that we
mount as read only in the config containers.
Reviewed: https:/ /review. opendev. org/671524 /git.openstack. org/cgit/ openstack/ tripleo- heat-templates/ commit/ ?id=08e34dbcaeb b0608df61d6540d 4919cab71632f5
Committed: https:/
Submitter: Zuul
Branch: master
commit 08e34dbcaebb060 8df61d6540d4919 cab71632f5
Author: Alex Schultz <email address hidden>
Date: Thu Jul 18 10:36:05 2019 -0600
Re-Add facter cache for container configurations
Rather than running all the facts for every invocation of puppet. py, let's cache the facts for the entire container
container-
config step. This is similar to what used to happen when we ran puppet
in a single instance for a given step. This improves the time it takes
puppet tp execute within the containers. When systems have large number
of interfaces, the fact generation for puppet can come to a crawl given
that puppet is not supposed to be invoked multiple times in parallel. By
pre-caching the facts, we eliminate the need for puppet to do the
network (and other fact) related lookups when running container
configuration generation.
This patch includes logic to exclude the puppet caching dirs that we
mount as read only in the config containers.
Change-Id: I94002572ec7ac1 767fbfbfdf4c6fa 6fbf0cd58d5
Closes-Bug: #1837082
Closes-Bug: #1835959