The dib-utils repository was retired when TripleO was retired. We
decided to vendor the dib-run-parts script in os-refresh-config so
we no longer need the separate tiny package for the dib-run-parts
script.
Depends-on: https://review.opendev.org/c/openstack/os-refresh-config/+/910574
Change-Id: Id35efa4b387bd0fa21c1d73a4fe59f88c197f500
The os-refresh-config scripts directory is currently set to
/opt/stack/os-config-refresh, but the latest os-refresh-config expects it to be
/usr/libexec/os-refresh-config
Change-Id: Ic3f61ea88fd431e7d9893c6930c778f6fbf21147
Using --no-cache-dir flag in pip install ,make sure dowloaded packages
by pip don't cached on system . This is a best practise which make sure
to fetch ftom repo instead of using local cached one . Further , in case
of Docker Containers , by restricing caching , we can reduce image size.
In term of stats , it depends upon the number of python packages
multiplied by their respective size . e.g for heavy packages with a lot
of dependencies it reduce a lot by don't caching pip packages.
Further , more detail information can be found at
https://medium.com/sciforce/strategies-of-docker-images-optimization-2ca9cc5719b6
Change-Id: I99570e8da62205498bdba6064160d2592a86ad3e
Signed-off-by: Pratik Raj <rajpratik71@gmail.com>
Remove all deprecated hooks and tests.
Also since all test and hooks are removed,
we can remove the declare of python language in classifier.
Since we didn't actually provide any document,
we should remove docs too.
Hooks are maintained as Agents under heat-agents repo now.
Hooks in heat-templates are deprecated for a while. Hence, remove
hooks in heat-templates.
Depends-On: https://review.openstack.org/#/c/584774/
Change-Id: Ia886f71eaf99d75db0f9a6a7dfbe8664995c26e7
We already create repository `heat-agents` for hooks and will keep
maintain hooks there, so we should deprecate all hooks in
heat-templates and plan to remove it in futuer.
Change-Id: Ie2d89d5bab7db2bc6a2e171dc455098811519440
This example seems broken. Though it will work if you
change the auth_url to point to /v2.0 rather than /v3, it's
better to make it work with v3 (the default now for all
keystone deployments).
Change-Id: I411a0f50ae50ee5b7c2564a7764ee9a01b00afea
In py3 basestring and unicode are no longer valid,
and should use `str` instead. In order to cover
py2 and py3, we change to use six lib to cover both.
Closes-Bug: #1682015
Change-Id: I3159470965e3a20161ff0e997af625b45ebe21fa
* use fedora base image from fedora registry
* fix ADD and run script
* move package install in Dockerfile for layers
* add zaqarclient
Change-Id: Iaa82fcd7af25ec81e982e6b170aa1d449f6e1166
The splay option was added in I88f623c9e8db9ed4a186918206a63faec8f7f673
but was missing a trailing } which leads to parse errors. This fixes the
parse errors.
Change-Id: Ic5783220f5d027e0bde0080f50f9e10cbb68289f
Closes-Bug: #1686455
Add the ability to configure the splay option that was recently added to
os-collect-config.
Change-Id: I88f623c9e8db9ed4a186918206a63faec8f7f673
Related-Bug: #1677314
Yaml.load() return Python object may be dangerous if
you receive a YAML document from an untrusted source
such as the Internet. The function yaml.safe_load()
limits this ability to simple Python objects like
integers or lists.
Reference:
https://security.openstack.org/guidelines/dg_avoid-dangerous-input-parsing-libraries.html
Change-Id: Ib2bfd11354c6b35c90938c1075729dc7028236a3
This patch adds a new Heat software configuration hook that
can be used to generate Json config files in a composable manner
within Heat templates.
This can be useful for everything from providing data to ad-hoc
scripts from configuring kolla containers.
Change-Id: I2b372ac2e291339e436202c9fe58a681ed6a743f
Early in a server boot the file /var/run/heat-config/heat-config may
exist but be empty. This causes a stack trace to be raised in this
script.
This change detects a json parse error and exits gracefully.
Change-Id: I29d731098659bfbf10a2caf80c2cfc49de5df4cc
Closes-Bug: #1648249
What the heat-config-notify actually POSTs/PUTs to heat is JSON, so
the content-type should be updated as such.
Change-Id: I85e116bec524ba37e96c5761346084ab149601cc
Related-Bug: #1641589
This change updates the puppet hook to write out logs to the local node
if verbose or debug is enabled for the hook. The logs will be written
out to the /var/log/puppet/ folder that currently is empty at all times.
We will continue to output logs to the console for the traditional heat
processing of the stdout and stderr but will also write out the logs
locally only if debug or verbose is enabled for the puppet apply.
Change-Id: Idfbfc030350827a4653b26cef7c7deca92b0e05d
Closes-Bug: #1536009
This hook takes the same format as the docker-compose hook, but makes
calls directly to the docker command rather than calling
docker-compose.
This hook currently supports the docker-compose v1 format, but in the
future will support other formats such as the kubernetes pod format.
TripleO will adopt this hook and will transition to using the pod
format when this hook supports it.
Co-Authored-By: Ian Main <imain@redhat.com>
Change-Id: I699107c3df64723a945c5d5ac82ae3a48b76700e
Currently we don't support options for the ansible hook, but it would
be useful to enable passing tags, like we already do for the puppet
hook.
Change-Id: Idf7e3aa520fd40a2c4c00b2d26c3c608059bb51d
This patch creates a hook that writes hiera.yaml and datafiles
to disk. This approach works well for users (like TripleO)
who prefer to maintain Hiera in a more composable manner with
Heat structured config resources rather than specifying all
the Hiera values for each puppet config resource.
Partial-bug: #1596373
Change-Id: I21639f6aadabf9e49f40d1bb0b1d0edcfc4dbc5e
The intent is for this element (hook script) to be used in place of the
one in tripleo-image-elements which relies on an external signal handling
shell script at the end of the os-refresh-config run
(99-refresh-completed).
This version will run os-apply-config and return a signal immediately.
Because it uses the heat-hook mechanisms it also supports a broader set of
signal handling capabilities... which 99-refresh-completed doesn't fully
support.
Change-Id: Ic9402ff93cbc840bec1debcd8881de563d03cbf0
This patch set modifies lines which are importing objects instead
of modules. As per openstack import guide lines, user should
import modules in a file not objects.
http://docs.openstack.org/developer/hacking/#imports
Change-Id: I4c34416623ac6899ab8b780bdd668acb414d09ef
Currently the hooks dir is statically set to $HEAT_CONFIG_HOOKS or
/var/lib/heat-config/hooks.
This commit changes the approach to finding the hook to execute, it
now looks for the requested hook from a list of directories. The new
directory /usr/libexec/heat-config/hooks has precedence over the old
/var/lib/heat-config/hooks.
The reason for this is that /usr/libexec is a more appropriate
location for downstream packaging to install hook scripts (RDO, debian
etc).
This approach will gracefully handle upgrading an image built with
hooks in /var/lib/heat-config/hooks followed by a package based
upgrade which switches some or all of the hooks to
/usr/libexec/heat-config/hooks.
Change-Id: Id0262e8ab1f96fa556e2ffbdf8b1b25be14ea97b
These are better on their own for maintainability.
Tested locally by successfully launching stack
example-config-pristine-image.yaml with CentOS 7 and the previous
change in this series.
Change-Id: I44650f6b40c8b7a8060f8b7408b2f3d8695aaf36
This adds an environment centos7_rdo_env.yaml which defines
Heat::InstallConfigAgent to install agent packages from the RDO
package repository.
Change-Id: I28b4315ec0261598867d7632f4f75774f3ef8e60
/var/run isn't persisted during image building, so relying on
os-apply-config preserving the permissions of the existing file won't
work because there isn't one.
Instead, 55-heat-config needs to check and fix the permissions of this
file on each run. Once it is set by 55-heat-config, os-apply-config
will respect the corrected permissions when overwriting.
Change-Id: Iecce01d31d66f217ccf4b34cc29f05465dc1886d
Closes-Bug: #1520347
This allow the user to pass a string (or path to a file) for the
ansible inventory so it is not just localhost. This is important for
things like setting up groups and possible inventory scoped variables.
Added test to ensure ansible is getting called properly using the ENV
inventory value.
Change-Id: I9440ff9dae3595a1c57b2511f03792105f1beb88
This change corrects many problems detected by the `yamllint` linter.
It's a preparation for enabling this linter in change
Ie746230f28fe3ed0cf218201d5a3810f7bc44070.
For instance, the first run of the YAML linter helped discovering a key
duplication problem in `oso_ha.yaml`: the `depends_on` key was present
twice, so the first occurence was ignored.
Other changes are cosmetic: extra spaces, extra blank lines, missing
newlines at end-of-file, etc.
Change-Id: I7f2369adfb152fd2a74b9b105e969e653e592922
In mitaka, a new feature is introduced to ignore a given
set of errors and is used here to fix the zuul faliure.
In addition, it fixes the invalid template errors.
For those templates which causes circular error is
moved to invalid folder
NOTE: openshift-origin/centos65/highly-available is marked
as invald to make the build jobs to pass.
depends-on: I4a3043fd17b69a346d447dfbd17488040cf9b387
Change-Id: I7b5b72cb8f6ff53b82edf92799a57917c718e032
Closes-bug: #1554380
This patch changes heat-container-agent to
a. pip install docker-compose
b. use latest fedora image(f23)
Change-Id: Ia1a841a3f0054c5c322eea118bdc6de3258eba34