mirror of
https://github.com/kevingruesser/bootstrap-vz.git
synced 2025-08-24 23:36:29 +00:00
Merge pull request #134 from jkaplowitz/hostname-fix
Reinstate hostname hook for GCE
This commit is contained in:
commit
a449990756
2 changed files with 16 additions and 3 deletions
|
@ -36,7 +36,7 @@ def resolve_tasks(taskset, manifest):
|
||||||
tasks.configuration.GatherReleaseInformation,
|
tasks.configuration.GatherReleaseInformation,
|
||||||
|
|
||||||
tasks.host.DisableIPv6,
|
tasks.host.DisableIPv6,
|
||||||
tasks.host.SetHostname,
|
tasks.host.InstallHostnameHook,
|
||||||
tasks.boot.ConfigureGrub,
|
tasks.boot.ConfigureGrub,
|
||||||
initd.InstallInitScripts,
|
initd.InstallInitScripts,
|
||||||
ssh.AddSSHKeyGeneration,
|
ssh.AddSSHKeyGeneration,
|
||||||
|
|
|
@ -17,12 +17,25 @@ class DisableIPv6(Task):
|
||||||
print >>config_file, "net.ipv6.conf.all.disable_ipv6 = 1"
|
print >>config_file, "net.ipv6.conf.all.disable_ipv6 = 1"
|
||||||
|
|
||||||
|
|
||||||
class SetHostname(Task):
|
class InstallHostnameHook(Task):
|
||||||
description = "Setting hostname"
|
description = "Installing hostname hook"
|
||||||
phase = phases.system_modification
|
phase = phases.system_modification
|
||||||
|
|
||||||
@classmethod
|
@classmethod
|
||||||
def run(cls, info):
|
def run(cls, info):
|
||||||
|
# There's a surprising amount of software out there which doesn't react well to the system
|
||||||
|
# hostname being set to a potentially long the fully qualified domain name, including Java 7
|
||||||
|
# and lower, quite relevant to a lot of cloud use cases such as Hadoop. Since Google Compute
|
||||||
|
# Engine's out-of-the-box domain names are long but predictable based on project name, we
|
||||||
|
# install this hook to set the hostname to the short hostname but add a suitable /etc/hosts
|
||||||
|
# entry.
|
||||||
|
#
|
||||||
|
# Since not all operating systems which Google supports on Compute Engine work with the
|
||||||
|
# /etc/dhcp/dhclient-exit-hooks.d directory, Google's internally-built packaging uses the
|
||||||
|
# consistent install path of /usr/share/google/set-hostname, and OS-specific build steps are
|
||||||
|
# used to activate the DHCP hook. In any future Debian-maintained distro-specific packaging,
|
||||||
|
# the updated deb could handle installing the below symlink or the script itself into
|
||||||
|
# /etc/dhcp/dhclient-exit-hooks.d.
|
||||||
log_check_call(['chroot', info.root, 'ln', '-s',
|
log_check_call(['chroot', info.root, 'ln', '-s',
|
||||||
'/usr/share/google/set-hostname',
|
'/usr/share/google/set-hostname',
|
||||||
'/etc/dhcp/dhclient-exit-hooks.d/set-hostname'])
|
'/etc/dhcp/dhclient-exit-hooks.d/set-hostname'])
|
||||||
|
|
Loading…
Add table
Reference in a new issue