tripleo-ansible/tripleo_ansible/roles/tripleo_ptp/tasks/tripleo_phc2sys.yml

48 lines
1.5 KiB
YAML

---
# Copyright 2019 Red Hat, Inc.
# All Rights Reserved.
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
- name: Check for phc capabilities
command: "phc_ctl -q {{ item }}"
changed_when: false
failed_when: false
with_items: "{{ tripleo_ptp_interfaces }}"
register: device_capabilities
- name: Validate hardware offload
set_fact:
tripleo_phc_interface: "{{ (device_capabilities.results | selectattr('rc', 'equalto', '0') | map(attribute='item') | list | first) | default('') }}"
when:
- tripleo_phc_interface is undefined
- name: Create ptp service config
copy:
content: |-
OPTIONS="{{ ((tripleo_phc_interface | length) > 0) | ternary('-s' ~ tripleo_phc_interface ~ '-w', '-a -r') }}"
dest: /etc/sysconfig/phc2sys
when:
- tripleo_phc_interface
register: _ptp_phc2sys_sysconfig_result
- name: Enable and start the phc2sys service
become: true
systemd:
name: phc2sys
state: restarted
enabled: true
when:
- _ptp_phc2sys_sysconfig_result.changed