tripleo-heat-templates/deployment/time/ptp-baremetal-puppet.yaml
David J Peacock cd331e44be flatten time service configuration
This change combines the previous puppet and docker files into a single
file that performs the docker service installation and configuration.

Change-Id: I6a9123627d754a153ab6cb68a33778a57846aeb7
Related-Blueprint: services-yaml-flattening
2018-12-18 10:41:15 -05:00

113 lines
3.2 KiB
YAML

heat_template_version: rocky
description: >
PTP service deployment using puppet, this YAML file
creates the interface between the HOT template and
the puppet manifest that actually installs and
configure PTP.
parameters:
ServiceData:
default: {}
description: Dictionary packing service data
type: json
ServiceNetMap:
default: {}
description: Mapping of service_name -> network name.
Typically set via parameter_defaults in
the resource registry. This mapping
overrides those in ServiceNetMapDefaults.
type: json
DefaultPasswords:
default: {}
type: json
RoleName:
default: ''
description: Role name on which the service is applied
type: string
RoleParameters:
default: {}
description: Parameters specific to the role
type: json
EndpointMap:
default: {}
description: Mapping of service endpoint -> protocol.
Typically set via parameter_defaults in
the resource registry.
type: json
PtpInterface:
default: nic1
description: PTP interface name.
type: string
tags:
- role_specific
PtpSlaveMode:
default: 1
description: Configure PTP clock in slave mode.
type: number
tags:
- role_specific
PtpMessageTransport:
default: UDPv4
description: Configure PTP message transport protocol.
type: string
tags:
- role_specific
resources:
RoleParametersValue:
type: OS::Heat::Value
properties:
type: json
value:
map_replace:
- map_replace:
- tripleo::profile::base::time::ptp::ptp4l_interface: PtpInterface
tripleo::profile::base::time::ptp::ptp4l_conf_slaveOnly: PtpSlaveMode
tripleo::profile::base::time::ptp::ptp4l_conf_network_transport: PtpMessageTransport
- values: {get_param: [RoleParameters]}
- values:
PtpInterface: {get_param: PtpInterface}
PtpSlaveMode: {get_param: PtpSlaveMode}
PtpMessageTransport: {get_param: PtpMessageTransport}
outputs:
role_data:
description: Role ptp using commposable services.
value:
service_name: ptp
config_settings:
map_merge:
- get_attr: [RoleParametersValue, value]
- tripleo::ptp::firewall_rules:
'151 ptp':
proto: udp
dport:
- 319
- 320
step_config: |
include ::tripleo::profile::base::time::ptp
upgrade_tasks:
- name: Check if NTP is deployed
command: systemctl is-enabled ntpd
tags: common
ignore_errors: True
register: ntp_enabled
- name: Validation
shell: /usr/bin/systemctl show 'ntpd' --property ActiveState | grep '\bactive\b'
tags: validation
when:
- step|int == 0
- ntp_enabled.rc == 0
- name: Stop NTP service
service: name=ntpd state=stopped
when:
- step|int == 2
- ntp_enabled.rc == 0
- name: Disable NTP service
service: name=ntpd state=stopped
ignore_errors: True
when:
- step|int == 2
- ntp_enabled.rc == 0