summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2014-01-27populate_dir: only makedir if it doesn't existScott Moser
2014-01-24read_file_or_url: raise UrlError with 404 on ENOENTScott Moser
This makes it easier to call read_file_or_url and handle file or url errors. Now read_file_or_url will raise a UrlError in either case on errors.
2014-01-24Don't try to create members if group creation failsJoshua Harlow
2014-01-24Fix logexc usage in freebsd distroJoshua Harlow
- There appeared to be a few logexc calls that did not pass the logger in, fix those locations where this occured. - When a group member adding fails, log the error and try the next member instead of failing adding any more members
2014-01-24Fixes for SmartOS datasourceScott Moser
1. fixed conflation of user-data and cloud-init user-data. Cloud-init user-data is now namespaced as 'cloud-init:user-data'. 2. user-scripts (not user-data) are now fetched from the meta-data service each boot and executed as in the scripts directory 3. datacenter name is now namespaced as sdc:datacenter 4. user-scripts will now have '#!/bin/bash' magically prepended if the 'file' thinks its plain text and it does not start with '#!' LP: #1272115
2014-01-24minor changes for pylint, write_boot_content improvement.Scott Moser
if write_boot_content is given somethign that starts with #!, then there isn't a reason to invoke 'file' to tell us that it starts with shebang. This way, we only run file in 2 cases: a.) binary content (don't really know if that is supported or not) b.) magic "user meant to run this with /bin/bash but couldn't be bothered to type that"
2014-01-24Log failure to restore backup locale fileJoshua Harlow
2014-01-24Freebsd cleanupsJoshua Harlow
- Remove direct usage of open() and use the corresponding helpers instead. - Fix the non-existence of the copyfile routine and just use the ones that do exist in the utils module to do the file backup. - Use class level constants for the various file names read, this matches the same usage in the other distro types.
2014-01-24Make SmartOS script handling self-contained in datasource.Ben Howard
2014-01-24Rebasing on trunkBen Howard
2014-01-24pylint and long line fixes.Scott Moser
This fixes up many long lines to be < 80 chars and some other pylint issues. pylint 1.1 (in trusty) is now complaining about the lazy logging, so I'll clean that up when I touch things.
2014-01-24add --dummy-variables-rgx= param when calling pylintScott Moser
new pylint in trusty complains about '_' variables if we don't do this. This seems to be ok in older versions of pylint also.
2014-01-24Fixed flip-flopped commentBen Howard
2014-01-24pep8/pylint fixesScott Moser
tools/run-pep8 wasn't checking all python files. tools/run-pylint wasnt checking bin/cloud-init fixed resultant pep8 issues after finding them.
2014-01-24Fixes for SmartOS datasource (LP: #1272115):Ben Howard
1. fixed conflation of user-data and cloud-init user-data. Cloud-init user-data is now namespaced as 'cloud-init:user-data'. 2. user-scripts are now fetched from the meta-data service each boot and executed as in the scripts directory 3. datacenter name is now namespaced as sdc:datacenter 4. user-scripts should be shebanged if there is no file magic
2014-01-24url_helper: call exception_cb with the UrlError exceptionScott Moser
previously, we were calling with the exception that was caught rather than the UrlException, which meant the exception callback couldn't be assured there would be a status_code.
2014-01-23Use the right exceptionJoshua Harlow
2014-01-23Skip retry and continued fetch of userdata when NOT_FOUNDScott Moser
When a 404 http code comes back from the fetching of ec2 data, instead of retrying immediately stop the fetching process and in the userdata fetching function handle this case as a special case of no userdata being fetched (an empty string in this case).
2014-01-23Remove pylint warning about unused request_argsJoshua Harlow
2014-01-23Skip retry and continued fetch of userdata when NOT_FOUNDJoshua Harlow
When a 404 http code comes back from the fetching of ec2 data, instead of retrying immediatly stop the fetching process and in the userdata fetching function handle this case as a special case of no userdata being fetched (an empty string in this case).
2014-01-23fix util.which if PATH is not in environmentScott Moser
This fixes a test case that failed because PATH was unset in the os.environ.
2014-01-23Add freebsd sysvinit scriptsJoshua Harlow
2014-01-23Initial Freebsd supportHarm Weites
This gets initial support for freebsd.
2014-01-23fix freebsd new file headerScott Moser
2014-01-23pep8/tab to 8 spacesScott Moser
2014-01-23pep8, use which rather than hard coded pathScott Moser
2014-01-23pep8Scott Moser
2014-01-23fix broken consumption of /proc/mountsScott Moser
this was checking that the lenghth of the mount line from /proc/mounts was 6, not the number of tokens.
2014-01-23merge from trunkScott Moser
2014-01-23pep8Scott Moser
2014-01-23Consider partitions as sources for configdrive if labelled correctlyPaul Querna
This change removes the filtering of partitions from potential ConfigDrive sources, if the LABEL of the partition is set to "config-2". This is useful for a bare metal device. It may not have a separate device for ConfigDrive, but instead have a ConfigDrive available on a partition.
2014-01-23Split net-parsing into own moduleJoshua Harlow
The ubuntu/debian networking file parsing function really is more generic than just a rhel utility function and can be used by others that want to use this functionality for there own purposes (say in writing down a freebsd network format instead) so moving this to its own module to encourage its usage outside of rhel.
2014-01-23remove some white spaceScott Moser
2014-01-22cc_resizefs: figure out what /dev/root means via kernel cmdlineScott Moser
If mount_info says that the root filesystem is on /dev/root and /dev/root does not exist, then we'll try to glean that information from the linux kernel cmdline. This situation occurs at least when you boot without an initramfs for the current ppc64el cloud images: qemu-system-ppc64 ... -kernel my.kernel -append 'root=/dev/sda' When doing that, /proc/1/mountinfo will say '/dev/root' for '/'.
2014-01-22Add a new lineJoshua Harlow
2014-01-22Add comments as to format with example in/outJoshua Harlow
2014-01-22Split net-parsing into own moduleJoshua Harlow
The ubuntu/debian networking file parsing function really is more generic than just a rhel utility function and can be used by others that want to use this functionality for there own purposes (say in writing down a freebsd network format instead) so moving this to its own module to encourage its usage outside of rhel.
2014-01-22tools/read-dependencies tools/read-version: rewrite in pythonScott Moser
This just does python rewrites of these tools that were shell or sed or grep. Clearly the user of cloud-init has python, but it turns out that getting sane versions of sed or grep on different unixes is less than simple.
2014-01-21cloud-config-landscape.txt: improve documentationScott Moser
2014-01-20merge requirement changesJoshua Harlow
This splits up 'Requires' into requirements.txt and test-requirements.txt to differenciate the build dependencies and runtime dependencies. one sticky thing still exists in that the packages/bddeb doesn't: - list any Build-Depends - address versions in the requirements.txt
2014-01-19Add output when starting to run testsJoshua Harlow
2014-01-19Phony not phoneJoshua Harlow
2014-01-17Run pyc cleaning before running testsJoshua Harlow
2014-01-17Update makefile to install from updated requirements filesJoshua Harlow
2014-01-17Fix defaultingJoshua Harlow
2014-01-17more boto removal. move httpretty from 'Requires'Scott Moser
the Requires would get that string rendered into the package's Depends/Requires (rather than BuildDepends/BuildRequires). We should have BuildDepends/BuildRequires too, but since trunk's package builds do not run 'make test', this isn't a big deal. This also adds 'test-requires' for httpretty.
2014-01-17Add 'Requires' or 'Recommends' on sudo in packaging files.Vlastimil Holer
2014-01-17drop requirement on boto for its boto.utils.get_instance_metadata()Scott Moser
We had a requirement on boto only to use boto.utils.get_instance_metadata(). That had actually caused some pain in the past. This removes a Requires and also one that wasn't python3.
2014-01-17initial vendordata supportScott Moser
This adds the ability for a datasource to provide "vendordata". The difference here is that vendordata is from the vendor (cloud provider) where user-data is from the user. By enabling this channel, the vendor can have input on how the instance is set up without modifying or needing to understand the user-data. vendordata is generally consumed exactly like user-data, but the user has the ability to disable its consumption. The only datasource supporting this at the moment is SmartOS.
2014-01-17remove creation of some vestigial dirsScott Moser