1. 22 Dec, 2016 1 commit
    • Jon Grimm's avatar
      LICENSE: Allow dual licensing GPL-3 or Apache 2.0 · b2a9f336
      Jon Grimm authored
      This has been a recurring ask and we had initially just made the change to
      the cloud-init 2.0 codebase.  As the current thinking is we'll just
      continue to enhance the current codebase, its desirable to relicense to
      match what we'd intended as part of the 2.0 plan here.
      - put a brief description of license in LICENSE file
      - put full license versions in LICENSE-GPLv3 and LICENSE-Apache2.0
      - simplify the per-file header to reference LICENSE
      - tox: ignore H102 (Apache License Header check)
      Add license header to files that ship.
      Reformat headers, make sure everything has vi: at end of file.
      Non-shipping files do not need the copyright header,
      but at the moment tests/ have it.
  2. 22 Aug, 2016 1 commit
    • Scott Moser's avatar
      azure dhclient-hook cleanups · 64522efe
      Scott Moser authored
      This adds some function to the generator to maintain the presense of a
      flag file '/run/cloud-init/enabled' indicating that cloud-init is enabled.
      Then, only run the dhclient hooks if on Azure and cloud-init is enabled.
      The test for is_azure currently only checks to see that the board vendor
      is Microsoft, not actually that we are on azure.  Running should not be
      harmful anywhere, other than slowing down dhclient.
      The value of this additional code is that then dhclient having run
      does not task the system with the load of cloud-init.
      Additionally, some changes to config are done here.
       * rename 'dhclient_leases' to 'dhclient_lease_file'
       * move that to the datasource config (datasource/Azure/dhclient_lease_file)
      Also, it removes the config in config/cloud.cfg that set agent_command
      to __builtin__.  This means that by default cloud-init still needs
      the agent installed.  The suggested follow-on improvement is to
      use __builtin__ if there is no walinux-agent installed.
  3. 15 Aug, 2016 1 commit
    • Brent Baude's avatar
      Get Azure endpoint server from DHCP client · 648dbbf6
      Brent Baude authored
      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 providing shell scritps that are called by the hooks
      infrastructure of both dhclient and NetworkManager.  The hooks then
      invoke 'cloud-init dhclient-hook' that maintains json data
      with the dhclient options in
      /run/cloud-init/dhclient.hooks/<interface>.json .
      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.