summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* Merge "Add support for configuring dogpile.cache"0.5.0Jenkins2015-03-011-0/+12
|\
| * Add support for configuring dogpile.cacheMonty Taylor2015-03-011-0/+12
| | | | | | | | | | | | | | | | shade has added dogpile.cache support. Since os-client-config already supports processing global cache settings, go ahead and add support for a couple of settings that can be used to feed dogpile.cache. Change-Id: I4d40753b83041c8a48b5c0a6d446f9e0de68220a
* | Merge "Fix coverage report"Jenkins2015-03-011-2/+2
|\ \
| * | Fix coverage reportClint Byrum2015-02-281-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | Coverage can't handle package names that have dashes, as it uses the package name to look for the base module name. So we need to pass in the base module name as it is imported. Change-Id: I2840eea85acaee2d05cab47fb67010e002a14bc0
* | | Merge "Add more testing of vendor yaml loading"Jenkins2015-03-011-22/+54
|\ \ \
| * | | Add more testing of vendor yaml loadingClint Byrum2015-02-281-22/+54
| |/ / | | | | | | | | | | | | | | | | | | Adding coverage for vendor yaml loading and refactoring some tests to make the structure for that sane. Change-Id: I7aca0fcc0b04371f9a71e71c0224897b19cb04af
* | | Merge "Allow keystone validation bypass for noauth usage"Jenkins2015-03-011-0/+4
|\ \ \ | |/ / |/| |
| * | Allow keystone validation bypass for noauth usageJulia Kreger2015-02-271-0/+4
| |/ | | | | | | | | | | | | | | | | | | | | To enable the eventual use of the shade library for communication with ironic in situations where authentication is set to noauth, it is necessary to not attempt to validate a user's credentials. Added a check to disable authentication validation when the auth_plugin is set to '' or 'None' or None. Change-Id: I3807b4724ce5e204b5857c1dbf5325f0e3f4a78d
* | More comprehensive unit tests for os-client-configClint Byrum2015-02-272-0/+43
| | | | | | | | | | | | This includes ensuring that yaml of a sane format can be loaded. Change-Id: I698b3139b7e44f000d2a413d17e79914ef542a22
* | Add basic unit test for configClint Byrum2015-02-262-2/+26
|/ | | | | | Adding this exposed some python3 compatibility issues with iteritems. Change-Id: Ia78bd8edd17c7d2360ad958b3de734503d400774
* Prefer dest value when option is depricated0.4.3Julia Kreger2015-02-111-1/+7
| | | | | | | | Changed logic that re-assigns depricated key names while preserving their values, to prefer the value stored in the dest key if it exists, instead of attempting to generate the new key name. Change-Id: Ibe961688cdb6bd4c9b2dbd27b08c722c3c741586
* Allow region_name to be NoneJulia Kreger2015-02-111-1/+1
| | | | | | | | | | | | | | | | | When using the shade library with ansible playbooks and classical environment variables for authentication, it is possible for a region_name value to be passed in with the value of None. When the value is set to and preserved as None, the logic later on in the method will fail to create a config key/value entry for region_name which is required by code later on in the method. Modified the region_name check to not only check for the presence of a missing region_name value, but to check to see if that value is set to None. This allows the value to be reset preventing the method from failing on the return call due to a missing key. Change-Id: Id8a3edf53ac751f0c6ee4d71405a926ba90c0602
* Don't return the auth dict inside the loop0.4.2Monty Taylor2015-02-111-1/+1
| | | | | | | | It turns out that when you're looping over a set of params to move them into an internal dict, returning inside the loop results in processing exactly one of them. This is not, it turns out, what you wanted. Change-Id: If1bf0c22b758e7238846b08991f4b0d25c841583
* Make sure we're deep-copying the auth dictMonty Taylor2015-02-111-2/+6
| | | | | | | | Having a defaults dict that has an empty dict and then does a bunch of updates means you have ONE instance of a dict that all of the other instances have references to. Change-Id: Id008f7ec98ff7b392553cebca5a5b301330e67a3
* Remove runtime depend on pbr0.4.1Monty Taylor2015-01-271-3/+0
| | | | | | | os-client-config is not using pbr during runtime, so the runtime requirement for it was a lie. Change-Id: I3ed57ec5c2b0fdf4060ef17d6df1fa801cfa14cd
* Provide Rackspace service_name overrideMonty Taylor2015-01-271-0/+1
| | | | | | | | Rackspace puts two compute services in their catalog. This means that keystone session code cannot find the right one without a name match override. Change-Id: I1bc06b97261341ad01bf84ebf5a12294cd0d383c
* Merge "Workflow documentation is now in infra-manual"0.4.0Jenkins2015-01-211-4/+3
|\
| * Workflow documentation is now in infra-manualJeremy Stanley2014-12-051-4/+3
| | | | | | | | | | | | | | Replace URLs for workflow documentation to appropriate parts of the OpenStack Project Infrastructure Manual. Change-Id: I97d11d3a24a374c9212cd29f49472e199b1c8bc0
* | Merge "Start keeping default versions for all services"Jenkins2015-01-211-5/+9
|\ \
| * | Start keeping default versions for all servicesMonty Taylor2015-01-211-5/+9
| | | | | | | | | | | | | | | | | | It turns out we need to do the evil glance dance for almost everything. Change-Id: Ic0ad77ba0627bd4be88bdf0136aa04c2ba43afe6
* | | Merge "Support keystone auth plugins in a generic way."Jenkins2015-01-213-34/+104
|\ \ \ | |/ /
| * | Support keystone auth plugins in a generic way.Monty Taylor2015-01-213-34/+104
| | | | | | | | | | | | | | | | | | | | | | | | | | | Basically, if keystoneclient is available, validate arguments into the auth dict. If it's not - we should probably be talking about what possible use this library has - but it should degrade cleanly and treat everything as passthrough. Change-Id: Ia31039d5c724eba22d053a004eefeaf6857f500d
* | | Merge "Corrections to readme"Jenkins2015-01-211-3/+1
|\ \ \ | |/ / |/| |
| * | Corrections to readmeJeremy Stanley2014-11-241-3/+1
| |/ | | | | | | | | | | | | | | * README.rst: Remove docs and bugs links since the project is not currently publishing/consuming these anywhere that I can find. Also correct the source URL. Change-Id: I2b7002f7ea301a2c03a2e41e904de0c91a14831a
* | Replace defaults_dict with scanning env varsMonty Taylor2015-01-212-47/+10
|/ | | | | | | | | All of the OS_ env vars start with OS_. Also, because of keystoneclient auth plugins, we have no idea which ones we need. Instead of positively identifying them - just grab them all - since they're all base layer and can be overridden by everything else anyway. Change-Id: I633f5e7d27c0a6a5c9b25f53cb99fe05b63c78ae
* Merge "Use yaml.safe_load instead of load."Jenkins2014-11-221-2/+4
|\
| * Use yaml.safe_load instead of load.Alex Gaynor2014-11-091-2/+4
| | | | | | | | | | | | | | | | yaml.load will execute arbitrary code. Also use context managers to ensure files are closed Change-Id: I704baa7916ee834c12821009d8e3029b1b8fa340
* | Throw error if a non-existent cloud is requestedMonty Taylor2014-11-022-17/+16
|/ | | | | | | | The error messages when a bogus cloud is requested are very confusing. (They'll be things like "no auth url provided") Instead, be explicit on the problem. Change-Id: Idf68d1db7e5fccd712283775eb4d636d78ae5fc7
* Merge "Fix a missed argument from a previous refactor"0.3.0Jenkins2014-10-261-1/+1
|\
| * Fix a missed argument from a previous refactorMonty Taylor2014-10-261-1/+1
| | | | | | | | | | | | | | | | | | Region name support got changed a little while ago, and a call that should now be a keyword argument style stayed as a positional ... which means that we lost region name support for clouds with more than one region. (it treated all of them like the first region) Change-Id: I666758a775b8fc8e03b7e9ddd3aa494c13505612
* | Map CloudConfig attributes to CloudConfig.configDean Troyer2014-10-212-0/+58
|/ | | | | | | | | | | | Treat the CloudConfig object as if it has the config attributes directly. And add some simple tests. This makes it easier to replace an argparse.Namespace() object with a CloudConfig object. It also might make initialization of some of the default attributes unnecessary. An example of this usage is in https://review.openstack.org/#/c/129795/1/openstackclient/shell.py Change-Id: I00ced540cf94742e8cb738f8f0767445ffeb4bfe
* Add support for argparse Namespace objectsDean Troyer2014-10-111-19/+49
| | | | | | | | | The Namespace objects returned by argparse contain all defined options even if they are unspecified and default to None or ''. Also it is not iterable. Change all that to add only the options presented to argparse to the cloud_config. Change-Id: Ia22fad60c81ab0b2878b404c0c8608d903ca964b
* Add support for command line argument processingMonty Taylor2014-10-111-6/+32
| | | | | | | | Now takes the ability to pass in a dict of key/value pairs, probably from a command line processing thing like argparse, and to overlay them on the config that came from the files or env vars. Change-Id: I830699476e2340389979b34704c0dfbfe97a1e08
* Handle lack of username for project_name defaultsMonty Taylor2014-10-101-1/+3
| | | | | | | It's possible that there will not be a value in username, so we can't use it as a blind default. Change-Id: Iae93b9ec0e691c7b2174a0138c5455e36ad77ad7
* Handle the project/tenant nonesense more cleanlyMonty Taylor2014-10-101-2/+20
| | | | | | | devstack clouds are more strict that public ones, so it's more important to get project_name vs. project_id correct. Solve it with brute force. Change-Id: I957b19c23266d379834361ab6a5b3b2dc5d15d3d
* Add cache control settingsMonty Taylor2014-10-102-0/+41
| | | | | | | Things need to do local caching, which means they need to control some settings about that. Add simple cache settings support. Change-Id: I7b56cc25ebe7a803816d95b79d0329f8e42025ba
* Handle no vendor clouds config filesMonty Taylor2014-10-101-3/+4
| | | | Change-Id: If0ab1db3df8ba3a2880473f2287ae3f85c84d9d5
* Remove unused class method get_servicesMonty Taylor2014-10-101-4/+0
| | | | Change-Id: Id133bc3c39b97a4489e75c3d38df601f999e8f3a
* Merge pull request #4 from dtroyer/vendor-configDean Troyer2014-09-231-6/+19
|\ | | | | Add clouds-public.yaml
| * Add clouds-public.yamlDean Troyer2014-09-231-6/+19
|/ | | | | | | | | Put vendor config outside of the code in clouds-public.yaml. Fall back to vendors.py if clouds-public.yaml not found. The search follows the same rules as clouds.yaml, the file is the same format except the top-level key is 'public-clouds'. Typically only auth_url and region_name are populated.
* Prep for move to stackforgeMonty Taylor2014-09-221-1/+1
|
* Merge pull request #3 from dtroyer/vendor-key0.2.0Monty Taylor2014-09-211-1/+5
|\ | | | | Handle missing vendor key
| * Handle missing vendor keyDean Troyer2014-09-211-1/+5
| | | | | | | | Continue on if the configured vendor config is not present
* | Merge pull request #1 from dtroyer/env-varsMonty Taylor2014-09-211-1/+3
|\ \ | | | | | | Make env vars lowest priority
| * | Make env vars lowest priorityDean Troyer2014-09-211-1/+3
| |/ | | | | | | | | | | | | | | | | | | | | When working with multiple tools the project CLIs only know about options and environment variables. When selecting a cloud config that includes a section from vendors.py environment vars overwrite that data if they are defined. The priority order should be: * command line args * cloud config selection * environment variables
* | Merge pull request #2 from dtroyer/null-regionMonty Taylor2014-09-211-1/+6
|\ \ | |/ |/| Handle null region
| * Handle null regionDean Troyer2014-09-211-1/+6
|/ | | | Not all clouds define/require region_name to be set
* Update the README file for more completenessMonty Taylor2014-09-212-3/+16
|
* Get rid of extra complexity with service values0.1.0Monty Taylor2014-09-212-11/+4
| | | | | We don't need to enumerate the service types - we can simply match at consumption time on patterns.
* Remove babel and add pyyamlMonty Taylor2014-09-214-17/+3
|