tripleo-docs/doc/source/install/developer/tht_walkthrough/changes-puppet-tripleo.rst

57 lines
2.0 KiB
ReStructuredText

Updating puppet-tripleo
-----------------------
.. include:: ../../links.rst
The puppet manifests that currently define overcloud node configuration are
moved from the tripleo-heat-templates to new puppet-tripleo class definitions
as part of the composable services approach. In next iterations, all service
configuration should be moved also to puppet-tripleo.
This section considers the addition of the ntp definition to puppet-tripleo.
Folder structure convention
~~~~~~~~~~~~~~~~~~~~~~~~~~~
Services should be defined in the services folder, depending on the service
purpose.
::
manifests
profile/base ---> To host all services not using pacemaker.
time ---> Specific folder for time services (NTP, timezone, Chrony among others).
ntp.pp ---> Puppet manifest to configure the service.
.. note::
For further information related to the current folders manifests structure
refer to the `puppet-tripleo repository`_.
Adding the puppet manifest
~~~~~~~~~~~~~~~~~~~~~~~~~~
This step will reference how the puppet logic should be organized in
puppet-tripleo.
Inside the manifests folder, add the service manifest following the folder
structure (``manifests/profile/base/time/ntp.pp``) as:
::
class tripleo::profile::base::time::ntp (
#We get the configuration step in which we can choose which steps to execute
$step = hiera('step'),
) {
#step assigned for core modules.
#(Check for further referencies about the configuration steps)
#http://git.openstack.org/cgit/openstack/tripleo-heat-templates/tree/puppet/services/README.rst
if ($step >= 2){
#We will call the NTP puppet class and assign our configuration values.
#If needed additional Puppet packages can be added/installed by using the repo tripleo-puppet-elements
if count($ntpservers) > 0 {
include ::ntp
}
}
}
If users have followed all the previous steps, they should be able to configure
their services using the composable services within roles guidelines.