summaryrefslogtreecommitdiff
path: root/cloudinit/sources
AgeCommit message (Collapse)Author
2014-02-13do not warn on waiting for urlScott Moser
2014-02-13wait less for the metadata service (by default)Scott Moser
Waiting around for a metadata service in a given datasource means that if its not there all the subsequent datasources have to wait, and boot is slowed down. As it is right now, EC2 is the only one that has the right to wait. In the past, we had to wait around for the EC2 metadata service. I really do not want to extend that courtesy to other cloud platforms. A network based metadata service should be up as soon as networking is up.
2014-02-13merge from trunkScott Moser
2014-02-13Add initial GCE datasourceScott Moser
There are some rough edges here and its missing some test, but I want to get this pulled in.
2014-02-13add 'user-data' support.Scott Moser
This just adds user-data in 'instance/attributes/user-data'. Also turns retries to 0 on all other things.
2014-02-13cloudsigma: change default dsmode to 'net'Scott Moser
Previously this had 'local' as the default datasource mode, meaning that user-data code such as boot hooks and such would not be guaranteed to have network access. That would be out of sync with the expectation on other platforms where the default is 'network up'. The user can still specify 'dsmode' as local if necessary and the local datasource will claim itself found.
2014-02-13merge from trunkScott Moser
2014-02-12support configuration of MD_URL, disable if not resolvable.Scott Moser
this allows the metadata url to be configured by setting: datasource: GCE: metadata_url: <value> Then also, if its not resolvable, we just deactivate the datasource quickly.
2014-02-12Add CloudSigma data sourceKiril Vladimiroff
2014-02-10DataSourceEc2: Fix incorrect return in _get_url_settingsScott Moser
get_url_settings should return a pair of max wait and timeout and not false, fix this bug by checking the max_wait <= 0 in the calling function and returning correctly from there instead.
2014-02-10make a defined var of DATA_DIR_CLEAN_LIST, some pylint cleanupsScott Moser
2014-02-10change behavior to only delete SharedConfig.xml.Scott Moser
2014-02-08Handle code not existing in older requests versionsJoshua Harlow
2014-02-08Capture IOError and use LOG betterJoshua Harlow
2014-02-08wrap url get call in try/except clauseVaidas Jablonskis
2014-02-08Remove HEAD usage and other small adjustmentsJoshua Harlow
2014-02-07Add a bunch of new testsJoshua Harlow
2014-02-07Remerged with trunkJoshua Harlow
2014-02-07Forgot to include _trim_key functionVaidas Jablonskis
Got removed somehow
2014-02-07Made new ovf-env.xml handling more robust. Test cases includedBen Howard
2014-02-07use url_helper instead of requestsVaidas Jablonskis
2014-02-07Rebase on upstreamBen Howard
2014-02-03Add Google Compute Engine data source support.Vaidas Jablonskis
2014-02-01Don't forget the rest of the files!Joshua Harlow
2014-02-01Add a openstack specific datasourceJoshua Harlow
Openstack has a unique derivative datasource that is gaining usage. Previously the config drive datasource provided part of this functionality as well as the ec2 datasource, but since new functionality is being added to openstack is seems benefical to combine the used parts into one datasource just made for handling openstack deployments. This patch factors out the common logic shared between the config drive and the openstack metadata datasource and places that in a shared helper file and then creates a new openstack datasource that readers from the openstack metadata service and refactors the config drive datasource to use this common logic.
2014-02-01Fix incorrect returnJoshua Harlow
get_url_settings should return a pair of max wait and timeout and not false, fix this bug by checking the max_wait <= 0 in the calling function and returning correctly from there instead.
2014-01-28DataSourceNoCloud: support reading vendor-data Scott Moser
Here we add the ability to read vendor-data from a file named vendor-data at the same location as the user-data and meta-data files. At the moment, vendor-data is not read at all from 'seedfrom'.
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-24Make SmartOS script handling self-contained in datasource.Ben Howard
2014-01-24Fixed flip-flopped commentBen Howard
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-23merge from trunkScott 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-17merge from trunkScott Moser
2014-01-16DataSourceOpenNebula:parse_shell_config skip 'SECONDS' var if seenScott Moser
SECONDS is a special variable in bash, it gets set to the time the shell has been alive. This would cause us to fail randomly (if the process happened to take more than 1 second, then SECONDS would be defined).
2014-01-16Fixed typosBen Howard
2014-01-16DataSource: remove has_vendordata and consume_vendordata, drop filtersScott Moser
remove apply_filter from get_vendordata. I can't think of a good reason to filter vendor-data per instance-id. remove has_vendordata and consume_vendordata. has vendordata is always "true", whether or not there is something to operate is determined by: if ds.vendordata_raw() consume_vendordata is based on config entirely.
2014-01-15Fix for race condition where 'captured' Windows Azure instances identifyBen Howard
as the previous instance (LP: #1269626).
2014-01-15merge from trunkScott Moser
2014-01-09Allow a Config Drive source on a partition, if the label matches.Paul Querna
2014-01-09Azure: minor changes for filename as strings and logging.Scott Moser
We were passing a unicode string to 'runcmd' in the path to the .crt file. That is because the keyname was coming from ovf file as unicode. Ie: u'/var/lib/waagent/6BE7A7C3C8A8F4B123CCA5D0C2F1BE4CA7B63ED7.crt' Then, logging was extending not appending errors.
2014-01-09Added vendordata to SmartOSBen Howard
2014-01-08Significant re-working of the userdata handling and introduction ofBen Howard
vendordata. Vendordata is a datasource provided userdata-like blob that is parsed similiarly to userdata, execept at the user's pleasure. cloudinit/config/cc_scripts_vendor.py: added vendor script cloud config cloudinit/config/cc_vendor_scripts_per_boot.py: added vendor per boot cloud config cloudinit/config/cc_vendor_scripts_per_instance.py: added vendor per instance vendor cloud config cloudinit/config/cc_vendor_scripts_per_once.py: added per once vendor cloud config script doc/examples/cloud-config-vendor-data.txt: documentation of vendor-data examples doc/vendordata.txt: documentation of vendordata for vendors (RENAMED) tests/unittests/test_userdata.py => tests/unittests/test_userdata.py TO: tests/unittests/test_userdata.py => tests/unittests/test_data.py: userdata test cases are not expanded to confirm superiority over vendor data. bin/cloud-init: change instances of 'consume_userdata' to 'consume_data' cloudinit/handlers/cloud_config.py: Added vendor script handling to default cloud-config modules cloudinit/handlers/shell_script.py: Added ability to change the path key to support vendor provided 'vendor-scripts'. Defaults to 'script'. cloudinit/helpers.py: - Changed ConfigMerger to include handling of vendordata. - Changed helpers to include paths for vendordata. cloudinit/sources/__init__.py: Added functions for helping vendordata - get_vendordata_raw(): returns vendordata unprocessed - get_vendordata(): returns vendordata through userdata processor - has_vendordata(): indicator if vendordata is present - consume_vendordata(): datasource directive for indicating explict user approval of vendordata consumption. Defaults to 'false' cloudinit/stages.py: Re-jiggered for handling of vendordata - _initial_subdirs(): added vendor script definition - update(): added self._store_vendordata() - [ADDED] _store_vendordata(): store vendordata - _get_default_handlers(): modified to allow for filtering which handlers will run against vendordata - [ADDED] _do_handlers(): moved logic from consume_userdata to _do_handlers(). This allows _consume_vendordata() and _consume_userdata() to use the same code path. - [RENAMED] consume_userdata() to _consume_userdata() - [ADDED] _consume_vendordata() for handling vendordata - run after userdata to get user cloud-config - uses ConfigMerger to get the configuration from the instance perspective about whether or not to use vendordata - [ADDED] consume_data() to call _consume_{user,vendor}data cloudinit/util.py: - [ADDED] get_nested_option_as_list() used by cc_vendor* for getting a nested value from a dict and returned as a list - runparts(): added 'exe_prefix' for running exe with a prefix, used by cc_vendor* config/cloud.cfg: Added vendor script execution as default tests/unittests/test_runs/test_merge_run.py: changed consume_userdata() to consume_data() tests/unittests/test_runs/test_simple_run.py: changed consume_userdata() to consume_data()
2013-12-06new: FreeBSD module to support cloud-init on the FBSD10 platform. In itsHarm Weites
current form its still missing some modules though. Supported: -SSH-keys -growpart -growfs -adduser -powerstate
2013-11-07Change SmartOS verb for availability zone (LP: #1249124)Ben Howard
2013-10-17fix DataSourceAzure incompatibility with 2.6Scott Moser
LP: #1232175
2013-10-07trim trailing whitespace on smartos hostname when it came from dmidecode.Scott Moser
LP: #1236445
2013-10-07Fixed SmartOS hostname whitespace bug (LP: #1236445).Ben Howard
2013-10-04DataSourceSmartOS: remove unnecessary availability_zone attributeScott Moser
The use of availability-zone or availability_zone is provided by the base classes's behavior.
2013-10-03Configure SmartOS Datasource to be region awareBen Howard