summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2016-06-09mock is_resolvable in mirrorfail tests to remove dependency to external netChristian Ehrhardt
2016-06-09fix docstring for check connectivityChristian Ehrhardt
2016-06-09remove unused BIN_APT constantChristian Ehrhardt
2016-06-09move SkipTest definition to tests/unittests/helpers.py to be reusableChristian Ehrhardt
2016-06-09improve error handling and reporting in gpg functionsChristian Ehrhardt
2016-06-09move gpg functions into gpg.pyChristian Ehrhardt
This helps for cleaner code structuring. ALong that makeing sure all these functions have a gpg_prefix.
2016-06-07merge with upstream to avoid merge conflicts on the merge proposalChristian Ehrhardt
2016-06-07enable test_handler_apt_source unittests on CentOSChristian Ehrhardt
Tested and working on CentOS7 (container), so we can enable the tests
2016-06-07mock get_primary_arch for TestAptSourceConfigSourceList for CentOSChristian Ehrhardt
This allows the unittest to pass on CentOS, before it failed as it had no dpkg available.
2016-06-07allow others to sign dsc with --signuser for packages/bddebChristian Ehrhardt
2016-06-07harden mirrorfail tests for the fact that even good mirrors can failChristian Ehrhardt
This might happen e.g. in locked down build environments. In those cases this is detected and the test skipped while not giving up testing it in more capable environments.
2016-06-07drop gpg activity from aot-source key testsChristian Ehrhardt
While the unittest gets a bit less real by that change, it will work in protected environment (e.g. sbuild) and leave the developers .gpg keyring alone.
2016-06-06make unittests more readableChristian Ehrhardt
By moving the "what it does" into the first line of the docstrings output becomes much more useful.
2016-06-06capture output of gpg calls to avoid messing up stdout/stderrChristian Ehrhardt
2016-06-06rename fucntion to mirrorurl_to_apt_fileprefix to reflect what it actually doesChristian Ehrhardt
2016-06-06remove check that fails if user has installed tested keysChristian Ehrhardt
The overall check for the expected key is a superset and would spot an issue.
2016-06-06apt_src_keyid_real: drop unused exception variableChristian Ehrhardt
2016-06-06fix alternate keyserver dnsChristian Ehrhardt
The intentionally false name was meant for testing of abug, now we can and should use a proper third party keyserver.
2016-06-06only test the apt feature in environments with aptChristian Ehrhardt
2016-06-06rename add_key / add_source to add_apt_key / add_apt_sourceChristian Ehrhardt
The functions clearly are apt specific so the name should reflect that.
2016-06-06fixup key tests for cases where network isn't availableChristian Ehrhardt
2016-06-06add_key_raw - make exceptions more specificChristian Ehrhardt
2016-06-06pythonify getkeybyid and move it to uitl.pyChristian Ehrhardt
2016-06-06test alternate keyserverChristian Ehrhardt
2016-06-06make _get_default_params method staticChristian Ehrhardt
2016-06-06unify testing of real gpg key addsChristian Ehrhardt
2016-06-04skip test_apt_source_list_debian_mirrorfail for nowScott Moser
I've opened bug 1589174 with the intent to fix these tests that I quickly fixed in the last 2 commits. Those were done in haste so that we could get a functional trunk build again.
2016-06-03tests: fix apt tests to run inside ubuntu build environmentScott Moser
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
2016-06-03improve network configurationScott Moser
This branch accomplishes several things: - centrally handle 'dsmode' to be 'local' or 'net. This allows local data sources to run before networking but still have user-data read by default when networking is available. - support networking information being read on dreamcompute dreamcompute's openstack declares networking via the /etc/network/interfaces style 'network_config' format. - support reading and applying networking information on SmartOS - improve reading networking from openstack network_data.json (LP: #1577982) add support for mtu and routes and many miscellaneous fixes. - support for renaming devices in a container (LP: #1579130). Also rename network devices as instructed by the host on every boot where cloud-init networking is enabled. This is required because a.) containers do not get systemd.link files applied as they do not have udev. b.) if the initramfs is out of date then we need to apply them. - remove blocking of udev rules (LP: #1577844, LP: #1571761) LP: #1577982, #1579130, #1577844, #1571761
2016-06-03Apt sources configuration improvementsScott Moser
- keyid-only (no source statement) - key only (no source statement) - custom source.list template - support long gpg key fingerprints with spaces - fix issue with key's that were already in the local gpg keyring - allowing a new format to specify apt_sources in a dictionary instead of a list to allow merging of configurations LP: #1574113
2016-06-03fix tox -e flake8Scott Moser
2016-06-03config drive conversion: recognize 'bridge' as a physical type, fix mtuScott Moser
the network json in openstack provides a type of 'bridge' when the underlying (host) type is a bridge. Silly, but we need to consider that a physical device as it will be for us. also, the 'mtu' will appear on the link, not on the route
2016-06-03fix issue with routes on subnets not getting renderedScott Moser
2016-06-03avoid rendering 'lo' twice by not writing it in network config.Scott Moser
2016-06-03lxd: fix log messsageScott Moser
2016-06-02ConfigDrive: do not use 'id' on a link for the device nameScott Moser
'id' on a link in the openstack spec should be "Generic, generated ID". current implementation was to use the host's name for the host side nic. Which provided names like 'tap-adfasdffd'. We do not want to name devices like that as its quite unexpected and non user friendly. So here we use the system name for any nic that is present, but then require that the nics found also be present at the time of rendering. The end result is that if the system boots with net.ifnames=0 then it will get 'eth0' like names. and if it boots without net.ifnames then it will get enp0s1 like names.
2016-06-02merge with trunkScott Moser
2016-06-02re-add the 'Net' classes for datasourcesScott Moser
When the .pkl file is loaded, the module that it is loaded from must have the same symbol. Ie, if booted once and got DataSourceConfigDriveNet then upgraded and rebooted, then next boot would show Can't get attribute 'DataSourceConfigDriveNet'
2016-06-02fix untested previous change to smartosScott Moser
2016-06-02smartos: do not raise error when not on smartosScott Moser
if get_smartos_environ() returned a None, then the datasoure would raise a ValueError when get_data was called. Fix that.
2016-06-02eni parsing: support 'ether' in hwaddress, netmask and broadcastScott Moser
this adds ability to support ENI that has: hwadress ether 36:4c:e1:3b:14:31 or hwaddress 36:4c:e1:3b:14:31 the former is written by openstack (at least on dreamhost). Also, in the conversion of eni to network config support broadcast and netmask.
2016-06-02openstack: support decoding when reading files, use that for network_configScott Moser
The network config file is /etc/network/interfaces formated. We will decode that here so that the user can expect that it is a string. The issue was that it was bytes but convert_eni_data was expecting a string.
2016-06-02Improve merging documentationDaniel Watkins
2016-06-02Integrate MP feedbackDaniel Watkins
2016-06-02fix toxScott Moser
2016-06-02fix log message in emit_upstartScott Moser
2016-06-02SmartOS: datasource improvements, support for networking information.Scott Moser
This adds support for reading networking information from the SmartOS metadata service and applying.
2016-06-01revert unintended change to tox.iniScott Moser
2016-06-01clean up log message a bit.Scott Moser
2016-06-01cloudinit/stages.py: if no datasource found, do not attempt is_new_instanceScott Moser
if local does not find a datasource, then we try to apply networking. but that would then hit the NULL_DATA_SOURCE which does not work with is_new_instance. avoid that.