Restart services and coordinate data migration on Heat config changes.
Go to file
Doug Hellmann a1dad6998d import zuul job settings from project-config
This is a mechanically generated patch to complete step 1 of moving
the zuul job settings out of project-config and into each project
repository.

Because there will be a separate patch on each branch, the branch
specifiers for branch-specific jobs have been removed.

Because this patch is generated by a script, there may be some
cosmetic changes to the layout of the YAML file(s) as the contents are
normalized.

See the python3-first goal document for details:
https://governance.openstack.org/tc/goals/stein/python3-first.html

Change-Id: I341bff5554c5ebc67af6fce8b54b60d4a3b8b902
Story: #2002586
Task: #24341
2018-08-29 10:15:25 -04:00
os_refresh_config Adjust test suite for new psutil versions 2017-01-18 20:19:36 +01:00
tests Initial commit 2013-02-06 16:59:40 -08:00
zuul.d import zuul job settings from project-config 2018-08-29 10:15:25 -04:00
.coveragerc Change ignore-errors to ignore_errors 2015-09-21 14:41:56 +00:00
.gitignore Switch to stestr 2018-07-10 18:41:32 +07:00
.gitreview Update .gitreview for stable/rocky 2018-08-24 14:42:01 +00:00
.stestr.conf Switch to stestr 2018-07-10 18:41:32 +07:00
LICENSE Adding setup.py to make for an easier installation 2013-02-12 07:04:28 -08:00
README.rst Update links in README 2018-03-02 18:05:11 +08:00
requirements.txt Updated from global requirements 2017-09-27 17:18:26 +00:00
setup.cfg Support building wheels (PEP-427) 2013-11-19 10:33:09 +01:00
setup.py Updated from global requirements 2017-03-06 01:16:55 +00:00
test-requirements.txt Switch to stestr 2018-07-10 18:41:32 +07:00
tox.ini Update UPPER_CONSTRAINTS_FILE for stable/rocky 2018-08-24 14:42:03 +00:00

README.rst

Team and repository tags

image

os-refresh-config

os-refresh-config uses dib-run-parts to run scripts in a pre-defined set of directories:

/opt/stack/os-config-refresh/pre-configure.d
/opt/stack/os-config-refresh/configure.d
/opt/stack/os-config-refresh/post-configure.d
/opt/stack/os-config-refresh/migration.d
/opt/stack/os-config-refresh/error.d

/opt/stack/os-config-refresh is the default base directory. You can set OS_REFRESH_CONFIG_BASE_DIR environment variable to override the default one.

Its intended purpose is to separate scripts execution into 4 phases:

  1. Quiesce(pre-configure.d),
  2. Configure(configure.d),
  3. Activate(post-configure.d).
  4. Migrate(migration.d),

It runs through all the phases above to ensure configuration is applied and enabled on a machine. It will run the scripts in error.d and then exit with a non-zero exit status if any phase has a problem. The scripts in each phase should not depend on each other having worked properly.

Note: Earlier versions of os-refresh-config ran migration before post-configure. This was an oversight in the initial design, as migrations are intended to be online migrations after the host is fully configured.

For things which must happen while the service is quiesced, that should be done in the post-configure scripts which control the service state.