1. 23 Dec, 2016 1 commit
  2. 22 Dec, 2016 1 commit
    • Wesley Wiedenmeier's avatar
      integration test: initial commit of integration test framework · f53fc46a
      Wesley Wiedenmeier authored
      The adds in end-to-end testing of cloud-init. The framework utilizes
      LXD and cloud images as a backend to test user-data passed in.
      Arbitrary data is then captured from predefined commands specified
      by the user. After collection, data verification is completed by
      running a series of Python unit tests against the collected data.
      Currently only the Ubuntu Trusty, Xenial, Yakkety, and Zesty
      releases are supported. Test cases for 50% of the modules is
      complete and available.
      Additionally a Read the Docs file was created to guide test
      writing and execution.
  3. 19 Dec, 2016 1 commit
    • Anhad Jai Singh's avatar
      doc: change 'nobootwait' to 'nofail' in docs · 39fb5a02
      Anhad Jai Singh authored
      'nobootwait' is an upstart specific extension to the mount syntax that is
      not supported by other mount systems.  As Ubuntu 16.04 moved from upstart
      to systemd, support for 'nobootwait' was lost.
      All examples using 'nobootwait' are updated to use the standard 'nofail',
      which gives the expected behaviour of not failing to boot in case a volume
      is missing. There are subtle differences in semantics between
      'nobootwait' and 'nofail', but it is the best substitute that gives
      behaviour similar to the upstart specific option.
  4. 03 Dec, 2016 1 commit
    • Scott Moser's avatar
      fix decoding of utf-8 chars in yaml test · 166df605
      Scott Moser authored
      Python 3 would fail to load yaml from doc/examples/cloud-config-apt.txt
      when the LANG (specifically LC_CTYPE) was 'C'.
      The changes here do 2 things:
       a.) remove the non-ascii characters from the yaml file.
       b.) fix the validate-yaml.py program to decode using utf-8 specifically
           rather than using the inherited settings.
      This fixes it now for ascii and in the future also should non-ascii slip in.
  5. 22 Nov, 2016 1 commit
  6. 21 Nov, 2016 1 commit
  7. 10 Nov, 2016 2 commits
  8. 08 Nov, 2016 1 commit
  9. 20 Oct, 2016 2 commits
    • Wesley Wiedenmeier's avatar
      Add documentation for logging features. · f6ae1f9c
      Wesley Wiedenmeier authored
      Update the summary of rsyslog module and add logging.rst to docs.
    • Ryan Harper's avatar
      Add support for snap create-user on Ubuntu Core images. · d8534561
      Ryan Harper authored
      Ubuntu Core images use the `snap create-user` to add users to an
      Ubuntu Core system. Add support for creating snap users by adding
      a key to the users dictionary.
          - name: bob
            snapuser: bob@bobcom.io
      Or via the 'snappy' dictionary:
          email: bob@bobcom.io
      Users may also create a snap user without contacting the SSO by
      providing a 'system-user' assertion by importing them into snapd.
      Additionally, Ubuntu Core systems have a read-only /etc/passwd such that
      the normal useradd/groupadd commands do not function without an additional
      flag, '--extrausers', which redirects the pwd to /var/lib/extrausers.
      Move the system_is_snappy() check from cc_snappy module to util for
      re-use and then update the Distro class to append '--extrausers' if
      the system is Ubuntu Core.
  10. 30 Sep, 2016 1 commit
    • Wesley Wiedenmeier's avatar
      Improve module documentation and doc cleanup. · 1071b994
      Wesley Wiedenmeier authored
      This adds lots of config module documentation in a standard format.
      It will greatly improve the content at readthedocs.
       * Add a 'doc' env to tox.ini
       * Changed default highlight language for sphinx conf from python to yaml
         most examples in documentation are yaml configs
       * Updated datasource examples to highlight sh code properly
  11. 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.
  12. 18 Aug, 2016 1 commit
    • Christian Ehrhardt's avatar
      Apt: add new apt configuration format · d861415f
      Christian Ehrhardt authored
      This adds an improved apt configuration format that is fully backwards
      compatible with previous behavior. This is mostly copied from curtin's
      It does:
       * clean up and centralizes many of the top level 'apt_*' values that
         previously existed into a single top level 'apt'key.
       * support a 'source' in apt/sources/entry that has only a key
       * documents new features and adds tests.
      See the added doc/examples/cloud-config-apt.txt for more information.
  13. 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.
  14. 10 Aug, 2016 1 commit
    • Ryan Harper's avatar
      add ntp config module · b4559024
      Ryan Harper authored
      Add support for installing and configuring ntp service, exposing the
      minimum config of servers or pools to be added. If none are defined
      then fallback on generating a list of pools by distro hosted at
      pool.ntp.org (which matches what's found in the default ntp.conf
      shipped in the respective distro).
  15. 04 Jun, 2016 1 commit
    • Scott Moser's avatar
      tests: fix apt tests to run inside ubuntu build environment · 6c0fc6df
      Scott Moser authored
      This just mocks out use of lsb_release as it is not available
      in a build environment.
      Additionally mocks out use of getkeybyid.  This admittedly
      makes the test for a long key fingerprint not useful as it was
      broken only inside getkeybyid.
      Also fix 'make yaml' for cloud-config.txt
  16. 02 Jun, 2016 1 commit
  17. 30 May, 2016 1 commit
  18. 24 May, 2016 2 commits
  19. 23 May, 2016 1 commit
  20. 20 May, 2016 2 commits
  21. 17 May, 2016 1 commit
  22. 12 May, 2016 4 commits
  23. 12 Apr, 2016 1 commit
    • Scott Moser's avatar
      chef: straighten out validation_cert and validation_key · 7122f7d6
      Scott Moser authored
      Now, validation_key is always a path to a file, as it is in 
      chef's client.rb syntax.
      validation_cert is always the *content* of that file that should
      be written.  However, if validation_cert is the string "system",
      then we do not write that value, but rather assume the file exists.
      LP: #1568940
  24. 11 Apr, 2016 1 commit
  25. 08 Mar, 2016 1 commit
  26. 01 Mar, 2016 1 commit
    • Scott Moser's avatar
      lxd: general fix after testing · 14915526
      Scott Moser authored
      A few changes:
       a.) change to using '--name=value' rather than '--name' 'value'
       b.) make sure only strings are passed to command
           (useful for storage_create_loop: which is likely an integer)
       c.) document simple working example
       d.) support installing zfs if not present and storage_backedn has it.
  27. 04 Feb, 2016 2 commits
  28. 29 Jan, 2016 1 commit
  29. 17 Dec, 2015 1 commit
  30. 15 Nov, 2015 3 commits