]> Frank Brehm's Git Trees - pixelpark/create-terraform.git/commitdiff
Adding execution of fix-etc-hosts as a postinstall script.
authorFrank Brehm <frank.brehm@pixelpark.com>
Tue, 25 Jun 2024 09:29:55 +0000 (11:29 +0200)
committerFrank Brehm <frank.brehm@pixelpark.com>
Tue, 25 Jun 2024 09:29:55 +0000 (11:29 +0200)
lib/create_terraform/handler/files.py

index a3b651f4c2a754e64c01e4a536031ed26ed37e22..862e82fa34a3033d2c08e857b66712f72742d2ea 100644 (file)
@@ -28,7 +28,7 @@ from ..errors import AbortExecution
 
 from ..xlate import XLATOR
 
-__version__ = '0.5.4'
+__version__ = '0.5.5'
 LOG = logging.getLogger(__name__)
 
 _ = XLATOR.gettext
@@ -770,7 +770,7 @@ class CrTfHandlerFilesMixin():
 
         # ## Copying postinstall scripts to VM
 
-        files = ['functions.rc', 'conf-resolver', 'create-motd']
+        files = ['functions.rc', 'fix-etc-hosts', 'conf-resolver', 'create-motd']
         if vm.is_rhel:
             files.append('register-rhel')
             files.append('update-networkmanager')
@@ -823,9 +823,16 @@ class CrTfHandlerFilesMixin():
         # ## Postinstall commands on host
         commands = []
 
+        commands.append("Setting gecos of root to 'root {}'.".format(vm.fqdn))
         commands.append("usermod -c 'root {}' root".format(vm.fqdn))
 
-        commands.append("chmod +x /tmp/conf-resolver")
+        commands.append("echo '------------------------------'")
+        commands.append("chmod -v +x /tmp/fix-etc-hosts")
+        commands.append("/tmp/fix-etc-hosts --no-ipv6")
+        commands.append("rm -fv /tmp/fix-etc-hosts")
+
+        commands.append("echo '------------------------------'")
+        commands.append("chmod -v +x /tmp/conf-resolver")
         cmd = '/tmp/conf-resolver'
         for ns in vm.nameservers:
             cmd += ' --ns {!r}'.format(str(ns))
@@ -838,11 +845,10 @@ class CrTfHandlerFilesMixin():
         commands.append(cmd)
         commands.append("rm -fv /tmp/conf-resolver")
 
+        commands.append("echo '------------------------------'")
         purpose = self.re_doublequote.sub('\\\"', vm.purpose)
-
         zone = "{z}/{c}".format(z=vm.vsphere, c=vm.cluster)
-
-        commands.append("chmod +x /tmp/create-motd")
+        commands.append("chmod -v +x /tmp/create-motd")
         cmd = (
             "/tmp/create-motd --purpose '{p}' --hardware 'vmware (x86_64)' --owner '{o}' "
             "--location 'VMWare' --zone '{z}' --customer '{c}' --email '{m}' --tier '{t}' "
@@ -857,13 +863,15 @@ class CrTfHandlerFilesMixin():
 
         # ## Registring RHEL on RedHat Subscription Management
         if vm.is_rhel:
-            commands.append("chmod +x /tmp/register-rhel")
+            commands.append("echo '------------------------------'")
+            commands.append("chmod -v +x /tmp/register-rhel")
             commands.append("/tmp/register-rhel -v -U '${var.rhsm_user_name}'")
             commands.append("rm -fv /tmp/rhsm-user-passwd /tmp/register-rhel")
 
         # ## Configuring and starting puppet
         if vm.has_puppet:
-            commands.append("chmod +x /tmp/init-puppet")
+            commands.append("echo '------------------------------'")
+            commands.append("chmod -v +x /tmp/init-puppet")
             cmd = "/tmp/init-puppet --environment '{e}' --customer '{c}' "
             if vm.puppet_project:
                 cmd += "--project '{pr}' "