Add support for indicating default_interface. Also, add some validation
and normalization code, some interface methods and, shockingly,
documentation.
Change-Id: Ib45b68894585ac02821d5d2376510fd7a8e8ee40
Networks can have more information than just internal or external. Notably,
if you have two private networks and you're trying to assign floating
ips, you need to know which network should be the recipient.
This should be backwards compatible with existing external_network and
internal_network options.
Change-Id: I0d469339ba00486683fcd3ce2995002fa0a576d1
Cleaned up example references to now-not-existing HP Public Cloud. Also
added a named-cloud entry to the make_client section.
Change-Id: I398c438e22eb84d6079a5c45f068753c3bcaa216
make_client is a great, simple yet flexible way to get a fully featured
Client object. simple_client is similar for Session objects, but lacks
the argparse and arbitrary kwargs that make_client - plus it has a weird
name. Since adding those two features to make_client did not make it too
confusing - do the same for simple_client. Also, rename it to
session_client (with a backwards-compat alias) and add it to the README
docs.
In the process of doing this, extract the "get me a cloud config"
functinality into an additional helper function - get_config.
Change-Id: Iadd24dfa021f870b3e5858bab8cd91fc96a373c2
Catch up the release notes from the previous release to current state.
This does not catch up from the beginning of oscc's history.
Change-Id: Ic981fdfbb79cd7fc70167091bdfed281c11eff03
For longer-lived operations, tokens can timeout and we need to get new
ones. While in theory we should be keystoneauth aware and passing around
sessions, swiftclient does not yet support this. So, instead of passing
in just a preauthtoken, also pass in credentials if we have them. However, for
plugin types that swift does not know about directly, only preauthtoken will
be used as before.
Change-Id: If724fdcd0649d9fa3b3ee7b127e49a3f77e3b767
HP has already shut down its public cloud. RunAbove is shutting down
17th February as part of the migration to OVH.com. Neither are therefore
valid vendors any longer.
Change-Id: I8d305ca2b1cbaf67e6711eedaa1a4c5668a42be7
VEXXHOST cloud uses SSL for Keystone and all other services,
change the auth URL to the SSL endpoint.
Change-Id: If80c76603de44d005d6af1726f34d924384bf747
We have no codepaths that currently set v2password plugin by default.
However, there are some cases, such as old clouds, where a user needs
to explicitly set v2password as the auth_type to avoid version discovery
because their cloud is old enough to not support it. If the user
sets v2password, keep it and align the auth parameters the other
direction to set tenant_name and tenant_id.
Co-Authored-By: David Shrewsbury <shrewsbury.dave@gmail.com>
Change-Id: Ib9eb3ae163b79b67737d01868868187b6dee1756
os-client-config is clean on E125 and E123 is ignored in recent pep8 by
default. Also, even though they are not 'valid' pep8 rules, they are
actually both nice styles and consistent with how we code
os-client-config anyway.
Change-Id: I7764e1511ed580d37b9a0a8be6743a5fa50441e5
The code to expand domain_{name,id} to {user,project}_domain_{name,id}
is flawed in that it sets a project_domain_{name,id} even if a
project_{name,id} is not set. There is a valid use case for not having
a project_{name,id} - specifically getting a domain-scoped token.
In the case where we do not set a project, check for that and don't make
further assumptions that the domain input needs to be "fixed".
Closes-Bug: #1535676
Change-Id: I825fe4bc375687208bb176bb5990c23fe87c8f9d
We bump hacking>=0.10.2, and hacking removed some rules, for
the full list of rules please see [1]. So don't need them any more.
Hacking related commits:
Remove H904 in commit b1fe19ebebe47a36b905d709467f5e82521bbd96
Remove H803 in commit f01ce4fd822546cbd52a0aedc49184bddbfe1b10
Remove H307 in commit ec4833b206c23b0b6f9c6b101c70ab925a5e9c67
Remove H305 in commit 8f1fcbdb9aa4fc61349e5e879153c722195b1233
[1]https://github.com/openstack-dev/hacking/blob/master/setup.cfg#L30
Change-Id: I24b82c1913d3d42cc5228b1db700b787623fcdc5
Add release notes build files and tox environment so the existing
release notes job has something to build from.
Change-Id: I717d4e7af438cbc94eecf32472f6d1f8213761b8
With the current code, OS_TENANT_NAME will take precednece over
--os-project-name beause OS_TENANT_NAME gets early-moved to
config['auth']['project_name'], then when the argparse value gets put
into config['project_name'] the auth fixing sees auth['project_name']
and thinks it should win.
Change-Id: I97084ea221eb963f14d98cf550a04bbd5c7d954c
We return None for the file content for non-existent files as a
fallback. This is normally fine, but in the case of a person having
_only_ a secure.conf file, this means that the dictionary merge fails.
Change-Id: I61cc0a8c709ea3510428fc3dfce63dc254c07c83
Everyone except neutron has a first parameter called "version" - so we
can pass it by name. For neutron, add a workaround, becuase YAY people
being different.
Change-Id: Icfd92e5e31763ffccc1ff673298f89d1888941fe
We have a capability to know what constructor is needed for make_client,
but we didn't plumb it in. Make sure that the only thing needed is:
os_client_config.make_client('compute')
Change-Id: I02aa1c46fa7cdfdb1409f8e1232e364b5ba48cd2
barbicanclient is a lovely client library, so we should add support
for make_legacy_client to doing the right things constructing a Client
object.
Change-Id: Idf015b1119ef76b951c195a6498cbb7a928d6e44
Replace assertEqual(None, *) with assertIsNone in tests to have
more clear messages in case of failure.
There have one more place should be modified.
Change-Id: I53a8f129db0108892b8377edce2dbf19b0b95f5d
Closes-bug: #1280522
There's a debug leftover oops where we just passed 'compute' rather than
the service_key requested.
Change-Id: Id8c82e43ba34859426b1fdc93dcf3ab2bbde4966
Cinder has deprecated API version v1 since Juno release, and
there is a blueprint to remove v1 API support which is in progress.
We should default to v2 API when it's there.
Closes-Bug: 1467589
Change-Id: I83aef4c681cbe342c445f02436fcd40cf1222f23