
Bootstrap host is relying on hostname ansible module to set hostname. On Leap 15, we are using /etc/os-release instead of suse-release, which breaks the platform stdlib on python2 and python3. There is no intention upstream to patch `platform`, as this has been deprecated, to accept any workaround SUSE needs to implement. Instead, it is advised to move to the `distro` library. Hopefully, Ansible is already moving to this. Because it's very internal to ansible, ansible vendors-in its own version of it. When we'll upgrade ansible to 2.8 or above, we should get an improvement (to be tested), or be able to fix it in Ansible and in distro. Without this patch, we don't know how to fix, nor who is responsible of the fix. This should clarify things. Change-Id: I4394755fbcc91c56e11037729a7683ff658a9f59
48 lines
1.6 KiB
YAML
48 lines
1.6 KiB
YAML
---
|
|
# Copyright 2018, Rackspace US, Inc.
|
|
#
|
|
# 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: Ensure the hosts file is templated appropriately
|
|
copy:
|
|
content: |
|
|
127.0.0.1 localhost aio1
|
|
127.0.1.1 aio1.openstack.local aio1
|
|
|
|
# The following lines are desirable for IPv6 capable hosts
|
|
::1 ip6-localhost ip6-loopback
|
|
fe00::0 ip6-localnet
|
|
ff00::0 ip6-mcastprefix
|
|
ff02::1 ip6-allnodes
|
|
ff02::2 ip6-allrouters
|
|
ff02::3 ip6-allhosts
|
|
dest: /etc/hosts
|
|
backup: yes
|
|
|
|
- name: Ensure hostname is set
|
|
block:
|
|
- name: Set hostname using the Ansible module
|
|
hostname:
|
|
name: aio1
|
|
# NOTE(hwoarang) The hostname module does not work on Leap 15 because of
|
|
# https://bugzilla.novell.com/show_bug.cgi?id=997614
|
|
# As such we need to fallback to using the command directly.
|
|
# NOTE(evrardjp): Remove this when Ansible 2.8 is out, as Ansible now
|
|
# vendors in the distro python package, which _should_ technically help.
|
|
# (To be tested)
|
|
rescue:
|
|
- name: Set hostname using hostnamectl
|
|
command: hostnamectl set-hostname aio1
|
|
tags:
|
|
- skip_ansible_lint
|