diff options
| author | Scott Moser <smoser@brickies.net> | 2016-08-22 17:00:50 -0400 |
|---|---|---|
| committer | Scott Moser <smoser@brickies.net> | 2016-08-22 17:00:50 -0400 |
| commit | c0c45eba28e623751d71a7fa3cb27c87300b851e (patch) | |
| tree | 67fbb66105b1b81fa92240c59543962d716087e3 /tools/hook-dhclient | |
| parent | c13f800d19884a28c57745f692d1b5221c6c3a6c (diff) | |
| parent | 40a2f621b05c11ed6397a1735b6bfff0ea07b097 (diff) | |
| download | vyos-cloud-init-c0c45eba28e623751d71a7fa3cb27c87300b851e.tar.gz vyos-cloud-init-c0c45eba28e623751d71a7fa3cb27c87300b851e.zip | |
merge from master at 0.7.7-17-g40a2f62
Diffstat (limited to 'tools/hook-dhclient')
| -rwxr-xr-x | tools/hook-dhclient | 25 |
1 files changed, 20 insertions, 5 deletions
diff --git a/tools/hook-dhclient b/tools/hook-dhclient index d099979a..6a4626c6 100755 --- a/tools/hook-dhclient +++ b/tools/hook-dhclient @@ -1,9 +1,24 @@ #!/bin/sh # This script writes DHCP lease information into the cloud-init run directory # It is sourced, not executed. For more information see dhclient-script(8). +is_azure() { + local dmi_path="/sys/class/dmi/id/board_vendor" vendor="" + if [ -e "$dmi_path" ] && read vendor < "$dmi_path"; then + [ "$vendor" = "Microsoft Corporation" ] && return 0 + fi + return 1 +} -case "$reason" in - BOUND) cloud-init dhclient-hook up "$interface";; - DOWN|RELEASE|REBOOT|STOP|EXPIRE) - cloud-init dhclient-hook down "$interface";; -esac +is_enabled() { + # only execute hooks if cloud-init is enabled and on azure + [ -e /run/cloud-init/enabled ] || return 1 + is_azure +} + +if is_enabled; then + case "$reason" in + BOUND) cloud-init dhclient-hook up "$interface";; + DOWN|RELEASE|REBOOT|STOP|EXPIRE) + cloud-init dhclient-hook down "$interface";; + esac +fi |
