Skip to content

Commit

Permalink
Add USE_REAL_HOSTNAME to inventory.py (#6293)
Browse files Browse the repository at this point in the history
inventory_builder creates hosts.yaml file with hostnames like "node1",
"node2", etc. Even if specifying override_system_hostname=false, the
output of "kubectl get nodes" shows those hostnames ("node1", etc.)
without using actual hostnames.
To solve this issue, this adds an option USE_REAL_HOSTNAME to get
actual hostnames when creating hosts.yaml file instead of "node1", etc.
  • Loading branch information
oomichi authored Jun 26, 2020
1 parent 45e12df commit 56f389a
Showing 1 changed file with 11 additions and 2 deletions.
13 changes: 11 additions & 2 deletions contrib/inventory_builder/inventory.py
Original file line number Diff line number Diff line change
Expand Up @@ -41,6 +41,7 @@

import os
import re
import subprocess
import sys

ROLES = ['all', 'kube-master', 'kube-node', 'etcd', 'k8s-cluster',
Expand Down Expand Up @@ -69,6 +70,7 @@ def get_var_as_bool(name, default):

DEBUG = get_var_as_bool("DEBUG", True)
HOST_PREFIX = os.environ.get("HOST_PREFIX", "node")
USE_REAL_HOSTNAME = get_var_as_bool("USE_REAL_HOSTNAME", False)

# Configurable as shell vars end

Expand Down Expand Up @@ -167,6 +169,7 @@ def build_hostnames(self, changed_hosts):

# FIXME(mattymo): Fix condition where delete then add reuses highest id
next_host_id = highest_host_id + 1
next_host = ""

all_hosts = existing_hosts.copy()
for host in changed_hosts:
Expand All @@ -191,8 +194,14 @@ def build_hostnames(self, changed_hosts):
self.debug("Skipping existing host {0}.".format(ip))
continue

next_host = "{0}{1}".format(HOST_PREFIX, next_host_id)
next_host_id += 1
if USE_REAL_HOSTNAME:
cmd = ("ssh -oStrictHostKeyChecking=no "
+ access_ip + " 'hostname -s'")
next_host = subprocess.check_output(cmd, shell=True)
next_host = next_host.strip().decode('ascii')
else:
next_host = "{0}{1}".format(HOST_PREFIX, next_host_id)
next_host_id += 1
all_hosts[next_host] = {'ansible_host': access_ip,
'ip': ip,
'access_ip': access_ip}
Expand Down

0 comments on commit 56f389a

Please sign in to comment.