summaryrefslogtreecommitdiff
path: root/tests/unittests/test_datasource
AgeCommit message (Collapse)Author
2015-01-26More test repairs.Barry Warsaw
2015-01-22Low hanging Python 3 fruit.Barry Warsaw
2015-01-22More conversions from mocker to mock.Barry Warsaw
2015-01-22More test ports from mocker to mock.Barry Warsaw
2015-01-22Use .addCleanup() instead of a .tearDown() where appropriate, although weBarry Warsaw
might have to rewrite this for Python 2.6. Disable Cepko tests (test_cs_util.py) since they are essentially worthless. Convert test_azure to unittest.mock.
2015-01-21Largely merge lp:~harlowja/cloud-init/py2-3 albeit manually because it seemedBarry Warsaw
to be behind trunk. `tox -e py27` passes full test suite. Now to work on replacing mocker.
2015-01-21More octal literal fixes.Barry Warsaw
2015-01-21Fix file modes to be Python 2/3 compatible.Barry Warsaw
2015-01-14Use the short name for GCE hostnames per GCE's request (LP: #1383794).Ben Howard
2015-01-06remove the user-data-encoding from test meta-dataScott Moser
just so we don't come to rely on it being set to 'base64' or ''. rather the default case is that it wont be present at all.
2015-01-06merge from trunkScott Moser
2015-01-06tools/run-pep8: remove leading ',' fed to --ignoreScott Moser
--ignore was being called with ',E121,E...' rather than 'E121,E...'. that resulted in odd behavior, missing the pep8 errors that are fixed here.
2015-01-06pep8Scott Moser
2014-12-19add user-data encoding support for gceWayne Witzel III
2014-10-20Add Digital Ocean Datasource.Scott Moser
This adds a DataSource for DigitalOcean's metadata service. The service is documented at https://developers.digitalocean.com/metadata/ .
2014-10-17Explicitly import only types being comparedNeal Shrader
2014-10-17Correct handling of single/multiple ssh keysNeal Shrader
2014-10-16Use existing metadata crawler to populate datasourceNeal Shrader
2014-10-16Add tests for DigitalOcean datasourceNeal Shrader
2014-10-10Fix some of the erroring out test casesJoshua Harlow
There are a couple new test cases that are now erroring out. - A usage of the non helper unit testcase base which is trigging and error on python 2.6 due to lack of method, fix this by using the base helper class. - A freebsd distro test check thats looking for /etc/resolv.conf and examining its contents, which won't exist due to our mocking routine that does not allow that file to be read. - A freebsd distro test where the distro class tries to call into ['ifconfig', '-a'] for a set of values, those values don't exist on the machine I am running on (and likely others machines) so we should mock the subp function out (that the distro class calls) and correctly return values that will work for the testcase.
2014-09-10Openstack: Vendor data cleanupScott Moser
For now, this vendor data handling is just added to openstack. However, in an effort to allow sanely handling of multi-part vendor-data that is namespaced, we add openstack.convert_vendordata_json . That basically takes whatever was loaded from vendordata and takes the 'cloud-init' key if it is a dict. This way the author can namespace cloud-init, basically telling it to ignore everything else.
2014-09-10drop version= from readersScott Moser
instead of taking a version that they should look for, the readers now just select the highest supported version. definitely a use case later for having version= but nothing is using it now.
2014-09-10pyflakes fixes.Scott Moser
make pyflakes now passes.
2014-08-27no functional changes, but some minor changes.Scott Moser
2014-08-27Fixed more of the slowness around fetching and retryingJoshua Harlow
2014-08-26fix(pep8): Fix various pep8 violations and version-lock pep8Jay Faulkner
Fixed all complaints from running "make pep8". Also version locked pep8 in test-requirements.txt to ensure that pep8 requirements don't change without an explicit commit.
2014-08-22ec2_utils.py: get_instance_metadata explicitly add trailing /Scott Moser
This change works around a bug in CloudStack's EC2 api implementation. That is filed upstream at [1]. The fix is safe for openstack and EC2 use cases as well. EC2 and OpenStacks' EC2 metadata service both return a list with access to either of: <url_base>/latest/meta-data <url_base>/latest/meta-data/ Additionally, the responses explicitly contain a trailing '/' for items that have a child. The ec2_utils code then just re-uses the trailng / there. Thus, only the top level request for 'meta-data/' needs the explicit fix. This also changes test cases. Those test cases failed without fixing them. If ever this regressed, those would fail again. -- [1] https://issues.apache.org/jira/browse/CLOUDSTACK-7405 LP: #1356855
2014-07-24merge from trunkScott Moser
2014-07-23fix httpretty based test cases if http_proxy is set.Scott Moser
previously this would fail: http_proxy=http://foo.bar make test now it will pass. This works around a bug where httpretty is not able to patch http operations if http_proxy is set. https://github.com/gabrielfalcao/HTTPretty/issues/122
2014-07-23moreDimitri John Ledkov
2014-07-23moreDimitri John Ledkov
2014-07-16Fix a few tests that have been failing in python 2.6Joshua Harlow
A few of the current tests have been continually failing in python 2.6 based systems, due to lack of unit test functions that are now added to ensure we can run the unit tests (and not have to ignore those failures) on python 2.6
2014-06-02SmartOS test: do not require existance of /dev/ttyS1.Scott Moser
LP: #1316597
2014-05-30CloudSigma: only poll on serial device after dmidecode check.Kiril Vladimiroff
On systems with a ttyS1 and nothing attached, the read attempts that the cloud sigma datasource would do would block. Also, Add timeouts for reading/writting from/to the serial console LP: #1316475
2014-05-30add vendordata support to cloudsigma datasourceScott Moser
LP: #1303986
2014-05-30Use dmidecode to detect if cloud-init runs in CloudSigma's infrastructureKiril Vladimiroff
2014-05-27Enable vendordata for CloudSigma (LP: #1303986)Ben Howard
2014-04-01pyflakes cleanupsScott Moser
2014-03-27change 'default' encoding to be "None"Scott Moser
Instead of just trying to see if userdata decodes as the indication that it should be encoded, the user must explicitly set this. The "just try it" will fail in the case where the user had other use of user-data and wanted a blob of data to go through unrecognized by cloud-init. In cases where there can be mistake in automatic behavior, and some users may be relaying on old behavior, its best to just require explicit use.
2014-03-25Added base64 decoding of user data for OpenNebula.Enol Fernandez
2014-03-04CloudSigma: support user-data being base64 encodedKiril Vladimiroff
This adds the ability to read a 'base64_fields' entry in the metadata, and if cloud-init-userdata is listed in that, then content will be base64 decoded first.
2014-02-27test_altcloud: fix altcloud tests when running on armScott Moser
Similar test-hack as the SmartOS one. Here we just pretend that we're running on x86_64 so as to avoid re-writing the tests to expect otherwise on arm.
2014-02-27AltCloud: fix test failures related to new arm-specific behaviorOleg Strikov
2014-02-26pep8 and pylintScott Moser
2014-02-26SmartOS: do not run on arm as dmidecode causes problemsScott Moser
See LP: #1243287 for more information, but the easiest thing to do here is just not run smartos on arm. LP: #1243287
2014-02-24test_smartos: remove bad test caseScott Moser
This test case isn't really valid any more as we've changed the way this works.
2014-02-19Read encoded with base64 user dataKiril Vladimiroff
This allows users of CloudSigma's VM to encode their user data with base64. In order to do that thet have to add the ``cloudinit-user-data`` field to the ``base64_fields``. The latter is a comma-separated field with all the meta fields whit base64 encoded values.
2014-02-13re-work vendor-data and smartosScott Moser
This reduces how much cloud-init is explicitly involved in what "vendor-data" could accomplish. The goal of vendor-data was to provide the vendor with a channel to run arbitrary code that accomodate for their specific platform. Much of those accomodations are currently being done in cloud-init. However, this now moves some of those things to default "vendor-data", instead of cloud-init proper. Basically, now we have an 'sdc:vendor-data' key in the metadata. If that does not exist, then cloud-init will use the default. The default, provides a boothook. That boothook writes a file into /var/lib/cloud/per-boot/ . That file will be both written on every boot and then executed at rc.local time frame (by 'scripts-per-boot'). It will then execute /var/lib/cloud/instance/data/user-script and /var/lib/cloud/instance/data/operator-script if they exist. So, the things that cloud-init is now doing outside of the default vendor-data that I would rather be done in vendor-data is: * managing the population of instance/data/user-script and instance/data/operator-script. These could very easily be done from the boothook, but doing them in cloud-init removes the necessity for having a 'mdata-get' command in the image (or some other way for the boothook script to query the datasource). * managing the LEGACY things.
2014-02-13merge from trunkScott Moser
2014-02-13Define default vendordata for SmartOS. In absence of a vendordata, use aBen Howard
default #cloud-config that writes per-boot script that fetches subsequent sdc:operator-scripts and executes it.