← Back to team overview

cloud-init-dev team mailing list archive

[Merge] lp:~bbaude/cloud-init/azure_dhcp into lp:cloud-init


The proposal to merge lp:~bbaude/cloud-init/azure_dhcp into lp:cloud-init has been updated.

Commit Message changed to:

Get Azure endpoint server from DHCP client

It is more efficient and cross-distribution safe to use the hooks function from dhclient to obtain the Azure endpoint server (DHCP option 245).  This is done by having a small bash script that is called when dhclient is nearly done.  The script logs all the known dhcp options it received. For native networking, the script goes in /etc/dhcp/dhclient-exit-hooks.d and for NetworkManager it goes in /etc/NetworkManager/dispatcher.d.  These small scripts call a subcommand 'dhclient_hook' of cloud-init that writes the output to /run/cloud-init/dhclient.hooks/<interface>.json.

This output file from the script is in JSON format.

The azure helper then pulls the value from /run/cloud-init/dhclient.hooks/<interface>.json file(s).  If that file does not exist or the value is not present, it will then fall back to the original method of scraping the dhcp client lease file.

For more details, see:
Your team cloud init development team is requested to review the proposed merge of lp:~bbaude/cloud-init/azure_dhcp into lp:cloud-init.