From a3d8ae8f5fa092fe99a35c0ea714eb5ce81bcc0b Mon Sep 17 00:00:00 2001 From: Brant Knudson Date: Tue, 7 Apr 2015 19:35:00 -0500 Subject: [PATCH 01/10] Work with pymongo 3.0 pymongo 3.0 renamed mongos_enum to read_pref_mode_from_name which was causing the unit tests to fail. Change-Id: Iaa7fd7221c2e6c865633ef342e6b83304a1de655 Closes-Bug: 1441393 (cherry picked from commit 7c3fe6acaef6fc283c383fb79f06e388df6e6926) --- keystone/common/cache/backends/mongo.py | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/keystone/common/cache/backends/mongo.py b/keystone/common/cache/backends/mongo.py index b5de9bc4ca..58856ac8f6 100644 --- a/keystone/common/cache/backends/mongo.py +++ b/keystone/common/cache/backends/mongo.py @@ -360,8 +360,12 @@ class MongoApi(object): self._assign_data_mainpulator() if self.read_preference: - self.read_preference = pymongo.read_preferences.mongos_enum( - self.read_preference) + # pymongo 3.0 renamed mongos_enum to read_pref_mode_from_name + f = getattr(pymongo.read_preferences, + 'read_pref_mode_from_name', None) + if not f: + f = pymongo.read_preferences.mongos_enum + self.read_preference = f(self.read_preference) coll.read_preference = self.read_preference if self.w > -1: coll.write_concern['w'] = self.w From f1cd53aa5461e28120c97378ab749571c41a5bc1 Mon Sep 17 00:00:00 2001 From: lin-hua-cheng Date: Wed, 8 Apr 2015 17:03:23 -0700 Subject: [PATCH 02/10] WebSSO should use remote_id_attribute by protocol WebSSO always use the remote_id_attribute from the [federation] group. Fix the issue, by consuming the protocol specific remote_id_attribute if available. Change-Id: Icdc693965ec53e5ff8f1901af26c9232a20aef7e Closes-Bug: #1441827 (cherry picked from commit 9b11d13856034e3a2cf6ab1f6ca80a6965818d17) --- keystone/contrib/federation/controllers.py | 2 +- keystone/contrib/federation/utils.py | 16 +++++++++++----- keystone/tests/unit/test_v3_federation.py | 13 +++++++++++++ 3 files changed, 25 insertions(+), 6 deletions(-) diff --git a/keystone/contrib/federation/controllers.py b/keystone/contrib/federation/controllers.py index 7ffaad547e..cdbba4162d 100644 --- a/keystone/contrib/federation/controllers.py +++ b/keystone/contrib/federation/controllers.py @@ -268,7 +268,7 @@ class Auth(auth_controllers.Auth): def federated_sso_auth(self, context, protocol_id): try: - remote_id_name = CONF.federation.remote_id_attribute + remote_id_name = utils.get_remote_id_parameter(protocol_id) remote_id = context['environment'][remote_id_name] except KeyError: msg = _('Missing entity ID from environment') diff --git a/keystone/contrib/federation/utils.py b/keystone/contrib/federation/utils.py index afc4d42e83..6fca2143df 100644 --- a/keystone/contrib/federation/utils.py +++ b/keystone/contrib/federation/utils.py @@ -191,10 +191,7 @@ def validate_groups_cardinality(group_ids, mapping_id): raise exception.MissingGroups(mapping_id=mapping_id) -def validate_idp(idp, protocol, assertion): - """Validate the IdP providing the assertion is registered for the mapping. - """ - +def get_remote_id_parameter(protocol): # NOTE(marco-fargetta): Since we support any protocol ID, we attempt to # retrieve the remote_id_attribute of the protocol ID. If it's not # registered in the config, then register the option and try again. @@ -210,10 +207,19 @@ def validate_idp(idp, protocol, assertion): except AttributeError: pass if not remote_id_parameter: - LOG.debug('Cannot find "remote_id_attibute" in configuration ' + LOG.debug('Cannot find "remote_id_attribute" in configuration ' 'group %s. Trying default location in ' 'group federation.', protocol) remote_id_parameter = CONF.federation.remote_id_attribute + + return remote_id_parameter + + +def validate_idp(idp, protocol, assertion): + """Validate the IdP providing the assertion is registered for the mapping. + """ + + remote_id_parameter = get_remote_id_parameter(protocol) if not remote_id_parameter or not idp['remote_ids']: LOG.debug('Impossible to identify the IdP %s ', idp['id']) # If nothing is defined, the administrator may want to diff --git a/keystone/tests/unit/test_v3_federation.py b/keystone/tests/unit/test_v3_federation.py index 2207f3500d..c1a4a677a0 100644 --- a/keystone/tests/unit/test_v3_federation.py +++ b/keystone/tests/unit/test_v3_federation.py @@ -3678,6 +3678,7 @@ class WebSSOTests(FederatedTokenTests): SSO_TEMPLATE_PATH = os.path.join(core.dirs.etc(), SSO_TEMPLATE_NAME) TRUSTED_DASHBOARD = 'http://horizon.com' ORIGIN = urllib.parse.quote_plus(TRUSTED_DASHBOARD) + PROTOCOL_REMOTE_ID_ATTR = uuid.uuid4().hex def setUp(self): super(WebSSOTests, self).setUp() @@ -3705,6 +3706,18 @@ class WebSSOTests(FederatedTokenTests): resp = self.api.federated_sso_auth(context, self.PROTOCOL) self.assertIn(self.TRUSTED_DASHBOARD, resp.body) + def test_federated_sso_auth_with_protocol_specific_remote_id(self): + self.config_fixture.config( + group=self.PROTOCOL, + remote_id_attribute=self.PROTOCOL_REMOTE_ID_ATTR) + + environment = {self.PROTOCOL_REMOTE_ID_ATTR: self.REMOTE_IDS[0]} + context = {'environment': environment} + query_string = {'origin': self.ORIGIN} + self._inject_assertion(context, 'EMPLOYEE_ASSERTION', query_string) + resp = self.api.federated_sso_auth(context, self.PROTOCOL) + self.assertIn(self.TRUSTED_DASHBOARD, resp.body) + def test_federated_sso_auth_bad_remote_id(self): environment = {self.REMOTE_ID_ATTR: self.IDP} context = {'environment': environment} From 21a1daeaad0e54c373ed91c9e6dbd6391c03eeff Mon Sep 17 00:00:00 2001 From: guang-yee Date: Wed, 8 Apr 2015 16:07:02 -0700 Subject: [PATCH 03/10] make sure we properly initialize the backends before using the drivers Change-Id: I298515dafd7f8eb8a02745d128296a0da596adf6 closes-bug: #1441386 (cherry picked from commit da2effe7f33f5822da33b3966e3afd386d6f43cb) --- keystone/cli.py | 31 ++++++++----------------------- 1 file changed, 8 insertions(+), 23 deletions(-) diff --git a/keystone/cli.py b/keystone/cli.py index c50cebf44d..1cb32d0870 100644 --- a/keystone/cli.py +++ b/keystone/cli.py @@ -21,7 +21,7 @@ from oslo_config import cfg from oslo_log import log import pbr.version -from keystone import assignment +from keystone import backends from keystone.common import driver_hints from keystone.common import openssl from keystone.common import sql @@ -30,8 +30,6 @@ from keystone.common import utils from keystone import config from keystone import exception from keystone.i18n import _, _LW -from keystone import identity -from keystone import resource from keystone import token @@ -296,16 +294,16 @@ class MappingPurge(BaseApp): def get_domain_id(name): try: - identity.Manager() - # init assignment manager to avoid KeyError in resource.core - assignment.Manager() - resource_manager = resource.Manager() return resource_manager.get_domain_by_name(name)['id'] except KeyError: raise ValueError(_("Unknown domain '%(name)s' specified by " "--domain-name") % {'name': name}) validate_options() + drivers = backends.load_backends() + resource_manager = drivers['resource_api'] + mapping_manager = drivers['id_mapping_api'] + # Now that we have validated the options, we know that at least one # option has been specified, and if it was the --all option then this # was the only option specified. @@ -322,7 +320,6 @@ class MappingPurge(BaseApp): if CONF.command.type is not None: mapping['type'] = CONF.command.type - mapping_manager = identity.MappingManager() mapping_manager.purge_mappings(mapping) @@ -337,21 +334,9 @@ class DomainConfigUploadFiles(object): self.load_backends() def load_backends(self): - """Load the backends needed for uploading domain configs. - - We only need the resource and domain_config managers, but there are - some dependencies which mean we have to load the assignment and - identity managers as well. - - The order of loading the backends is important, since the resource - manager depends on the assignment manager, which in turn depends on - the identity manager. - - """ - identity.Manager() - assignment.Manager() - self.resource_manager = resource.Manager() - self.domain_config_manager = resource.DomainConfigManager() + drivers = backends.load_backends() + self.resource_manager = drivers['resource_api'] + self.domain_config_manager = drivers['domain_config_api'] def valid_options(self): """Validate the options, returning True if they are indeed valid. From b679e7d6be18d33ebdfe133161a3daf2f305d954 Mon Sep 17 00:00:00 2001 From: Lance Bragstad Date: Tue, 7 Apr 2015 18:47:34 +0000 Subject: [PATCH 04/10] Update man pages for the Kilo release The current man pages for keystone-manage don't include commands relating to Fernet setup, or the domain configuration upload. Change-Id: Ifd208151470d8d39d3d4851557e45dc12d1a577b Closes-Bug: #1441300 (cherry picked from commit 7d8b6eb2ac4f46dbe63e3883de5b8ad85b7e8251) --- doc/source/man/keystone-manage.rst | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/doc/source/man/keystone-manage.rst b/doc/source/man/keystone-manage.rst index b2ea39246a..feeeb142c2 100644 --- a/doc/source/man/keystone-manage.rst +++ b/doc/source/man/keystone-manage.rst @@ -7,9 +7,9 @@ Keystone Management Utility --------------------------- :Author: openstack@lists.openstack.org -:Date: 2014-10-16 +:Date: 2015-4-7 :Copyright: OpenStack Foundation -:Version: 2014.2 +:Version: 2015.1 :Manual section: 1 :Manual group: cloud computing @@ -42,6 +42,9 @@ Available commands: * ``db_sync``: Sync the database. * ``db_version``: Print the current migration version of the database. +* ``domain_config_upload``: Upload domain configuration file. +* ``fernet_rotate``: Rotate keys in the Fernet key repository. +* ``fernet_setup``: Setup a Fernet key repository. * ``mapping_purge``: Purge the identity mapping table. * ``pki_setup``: Initialize the certificates used to sign tokens. * ``saml_idp_metadata``: Generate identity provider metadata. From 86df39c01e96ad3b15e33eb6fc1bf726a0a704c5 Mon Sep 17 00:00:00 2001 From: Eric Brown Date: Mon, 13 Apr 2015 11:37:53 -0700 Subject: [PATCH 05/10] backend_argument should be marked secret Since the backend_argument can potentially contain a password, it should be marked secret to avoid leakage into the logs. Closes-Bug: #1443598 Change-Id: I55663db4cf2df84a66de8f64fba4b4f129ae827d (cherry picked from commit f9db1a65bd4d83d12c572ba4d5807845996ef410) --- keystone/common/config.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/keystone/common/config.py b/keystone/common/config.py index ebc1c2fa77..7a8c385a34 100644 --- a/keystone/common/config.py +++ b/keystone/common/config.py @@ -326,7 +326,7 @@ FILE_OPTIONS = { 'deployments. Small workloads (single process) ' 'like devstack can use the dogpile.cache.memory ' 'backend.'), - cfg.MultiStrOpt('backend_argument', default=[], + cfg.MultiStrOpt('backend_argument', default=[], secret=True, help='Arguments supplied to the backend module. ' 'Specify this option once per argument to be ' 'passed to the dogpile.cache backend. Example ' From cedce339a08d475617c7f57c148e192dc3709a34 Mon Sep 17 00:00:00 2001 From: Thierry Carrez Date: Thu, 16 Apr 2015 22:19:42 +0200 Subject: [PATCH 06/10] Set default branch to stable/kilo Open stable/kilo branch by setting defaultbranch for git-review. Change-Id: If5b35b0fc5a85ba8dda16dc6b365537ed0d839bc --- .gitreview | 1 + 1 file changed, 1 insertion(+) diff --git a/.gitreview b/.gitreview index cd914fe02a..53fafcfda7 100644 --- a/.gitreview +++ b/.gitreview @@ -2,3 +2,4 @@ host=review.openstack.org port=29418 project=openstack/keystone.git +defaultbranch=stable/kilo From 18ca7fabece4837ad56e435bc9d5f0b6278fa4be Mon Sep 17 00:00:00 2001 From: Alexander Makarov Date: Mon, 6 Apr 2015 15:49:41 +0300 Subject: [PATCH 07/10] Make memcache client reusable across threads memcache.Client is inherited from threading._local so instances are only accessible from current thread or eventlet. Present workaround broke inheritance chain so super() call is unusable. This patch makes artificial client class mimic inheritance from threading._local while using generic object methods allowing reusability. Change-Id: Ic5d5709695877afb995fd816bb0e4ce711b99b60 Closes-Bug: #1440493 (cherry picked from commit 33a95575fc3778bf8ef054f7b9d24fcb7c75100b) --- keystone/common/cache/_memcache_pool.py | 21 ++++++++++++++----- .../tests/unit/common/test_connection_pool.py | 16 ++++++++++++++ 2 files changed, 32 insertions(+), 5 deletions(-) diff --git a/keystone/common/cache/_memcache_pool.py b/keystone/common/cache/_memcache_pool.py index b15332db05..bc559781ab 100644 --- a/keystone/common/cache/_memcache_pool.py +++ b/keystone/common/cache/_memcache_pool.py @@ -35,11 +35,22 @@ from keystone.i18n import _ LOG = log.getLogger(__name__) -# This 'class' is taken from http://stackoverflow.com/a/22520633/238308 -# Don't inherit client from threading.local so that we can reuse clients in -# different threads -_MemcacheClient = type('_MemcacheClient', (object,), - dict(memcache.Client.__dict__)) + +class _MemcacheClient(memcache.Client): + """Thread global memcache client + + As client is inherited from threading.local we have to restore object + methods overloaded by threading.local so we can reuse clients in + different threads + """ + __delattr__ = object.__delattr__ + __getattribute__ = object.__getattribute__ + __new__ = object.__new__ + __setattr__ = object.__setattr__ + + def __del__(self): + pass + _PoolItem = collections.namedtuple('_PoolItem', ['ttl', 'connection']) diff --git a/keystone/tests/unit/common/test_connection_pool.py b/keystone/tests/unit/common/test_connection_pool.py index 74d0420ce0..3813e03395 100644 --- a/keystone/tests/unit/common/test_connection_pool.py +++ b/keystone/tests/unit/common/test_connection_pool.py @@ -10,9 +10,11 @@ # License for the specific language governing permissions and limitations # under the License. +import threading import time import mock +import six from six.moves import queue import testtools from testtools import matchers @@ -117,3 +119,17 @@ class TestConnectionPool(core.TestCase): # after it is available. connection_pool.put_nowait(conn) _acquire_connection() + + +class TestMemcacheClientOverrides(core.BaseTestCase): + + def test_client_stripped_of_threading_local(self): + """threading.local overrides are restored for _MemcacheClient""" + client_class = _memcache_pool._MemcacheClient + # get the genuine thread._local from MRO + thread_local = client_class.__mro__[2] + self.assertTrue(thread_local is threading.local) + for field in six.iterkeys(thread_local.__dict__): + if field not in ('__dict__', '__weakref__'): + self.assertNotEqual(id(getattr(thread_local, field, None)), + id(getattr(client_class, field, None))) From 906485152a8ec886cf4a45cbe1037184ce39f1a1 Mon Sep 17 00:00:00 2001 From: Andreas Jaeger Date: Mon, 20 Apr 2015 11:11:25 +0200 Subject: [PATCH 08/10] Release Import of Translations from Transifex Manual import of Translations from Transifex. This change also removes all po files that are less than 66 per cent translated since such partially translated files will not help users. This change needs to be done manually since the automatic import does not handle the proposed branches and we need to sync with latest translations. Change-Id: Iaf4bdae303b06c1af4023fe2daa3a6b03c195ee9 --- .../de/LC_MESSAGES/keystone-log-info.po | 212 --- .../en_AU/LC_MESSAGES/keystone-log-error.po | 179 -- keystone/locale/en_AU/LC_MESSAGES/keystone.po | 1548 ---------------- .../en_GB/LC_MESSAGES/keystone-log-info.po | 214 --- .../es/LC_MESSAGES/keystone-log-error.po | 177 -- .../fr/LC_MESSAGES/keystone-log-warning.po | 298 ---- .../it/LC_MESSAGES/keystone-log-error.po | 173 -- .../it/LC_MESSAGES/keystone-log-info.po | 211 --- .../ja/LC_MESSAGES/keystone-log-error.po | 177 -- .../pt_BR/LC_MESSAGES/keystone-log-error.po | 179 -- keystone/locale/pt_BR/LC_MESSAGES/keystone.po | 1552 ----------------- .../vi_VN/LC_MESSAGES/keystone-log-info.po | 211 --- .../zh_CN/LC_MESSAGES/keystone-log-error.po | 65 +- 13 files changed, 35 insertions(+), 5161 deletions(-) delete mode 100644 keystone/locale/de/LC_MESSAGES/keystone-log-info.po delete mode 100644 keystone/locale/en_AU/LC_MESSAGES/keystone-log-error.po delete mode 100644 keystone/locale/en_AU/LC_MESSAGES/keystone.po delete mode 100644 keystone/locale/en_GB/LC_MESSAGES/keystone-log-info.po delete mode 100644 keystone/locale/es/LC_MESSAGES/keystone-log-error.po delete mode 100644 keystone/locale/fr/LC_MESSAGES/keystone-log-warning.po delete mode 100644 keystone/locale/it/LC_MESSAGES/keystone-log-error.po delete mode 100644 keystone/locale/it/LC_MESSAGES/keystone-log-info.po delete mode 100644 keystone/locale/ja/LC_MESSAGES/keystone-log-error.po delete mode 100644 keystone/locale/pt_BR/LC_MESSAGES/keystone-log-error.po delete mode 100644 keystone/locale/pt_BR/LC_MESSAGES/keystone.po delete mode 100644 keystone/locale/vi_VN/LC_MESSAGES/keystone-log-info.po diff --git a/keystone/locale/de/LC_MESSAGES/keystone-log-info.po b/keystone/locale/de/LC_MESSAGES/keystone-log-info.po deleted file mode 100644 index fdf84ad92c..0000000000 --- a/keystone/locale/de/LC_MESSAGES/keystone-log-info.po +++ /dev/null @@ -1,212 +0,0 @@ -# Translations template for keystone. -# Copyright (C) 2015 OpenStack Foundation -# This file is distributed under the same license as the keystone project. -# -# Translators: -msgid "" -msgstr "" -"Project-Id-Version: Keystone\n" -"Report-Msgid-Bugs-To: https://bugs.launchpad.net/keystone\n" -"POT-Creation-Date: 2015-03-09 06:03+0000\n" -"PO-Revision-Date: 2015-03-07 04:31+0000\n" -"Last-Translator: openstackjenkins \n" -"Language-Team: German (http://www.transifex.com/projects/p/keystone/language/" -"de/)\n" -"Language: de\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Generated-By: Babel 1.3\n" -"Plural-Forms: nplurals=2; plural=(n != 1);\n" - -#: keystone/assignment/core.py:250 -#, python-format -msgid "Creating the default role %s because it does not exist." -msgstr "" - -#: keystone/assignment/core.py:258 -#, python-format -msgid "Creating the default role %s failed because it was already created" -msgstr "" - -#: keystone/auth/controllers.py:64 -msgid "Loading auth-plugins by class-name is deprecated." -msgstr "" - -#: keystone/auth/controllers.py:106 -#, python-format -msgid "" -"\"expires_at\" has conflicting values %(existing)s and %(new)s. Will use " -"the earliest value." -msgstr "" - -#: keystone/common/openssl.py:81 -#, python-format -msgid "Running command - %s" -msgstr "" - -#: keystone/common/wsgi.py:79 -msgid "No bind information present in token" -msgstr "" - -#: keystone/common/wsgi.py:83 -#, python-format -msgid "Named bind mode %s not in bind information" -msgstr "" - -#: keystone/common/wsgi.py:90 -msgid "Kerberos credentials required and not present" -msgstr "" - -#: keystone/common/wsgi.py:94 -msgid "Kerberos credentials do not match those in bind" -msgstr "" - -#: keystone/common/wsgi.py:98 -msgid "Kerberos bind authentication successful" -msgstr "" - -#: keystone/common/wsgi.py:105 -#, python-format -msgid "Couldn't verify unknown bind: {%(bind_type)s: %(identifier)s}" -msgstr "" - -#: keystone/common/environment/eventlet_server.py:103 -#, python-format -msgid "Starting %(arg0)s on %(host)s:%(port)s" -msgstr "Starten von %(arg0)s auf %(host)s:%(port)s" - -#: keystone/common/kvs/core.py:138 -#, python-format -msgid "Adding proxy '%(proxy)s' to KVS %(name)s." -msgstr "" - -#: keystone/common/kvs/core.py:188 -#, python-format -msgid "Using %(func)s as KVS region %(name)s key_mangler" -msgstr "" - -#: keystone/common/kvs/core.py:200 -#, python-format -msgid "Using default dogpile sha1_mangle_key as KVS region %s key_mangler" -msgstr "" - -#: keystone/common/kvs/core.py:210 -#, python-format -msgid "KVS region %s key_mangler disabled." -msgstr "" - -#: keystone/contrib/example/core.py:64 keystone/contrib/example/core.py:73 -#, python-format -msgid "" -"Received the following notification: service %(service)s, resource_type: " -"%(resource_type)s, operation %(operation)s payload %(payload)s" -msgstr "" - -#: keystone/openstack/common/eventlet_backdoor.py:146 -#, python-format -msgid "Eventlet backdoor listening on %(port)s for process %(pid)d" -msgstr "Eventlet backdoor hört auf %(port)s für Prozess %(pid)d" - -#: keystone/openstack/common/service.py:173 -#, python-format -msgid "Caught %s, exiting" -msgstr "%s abgefangen. Vorgang wird beendet" - -#: keystone/openstack/common/service.py:231 -msgid "Parent process has died unexpectedly, exiting" -msgstr "" -"Übergeordneter Prozess wurde unerwartet abgebrochen. Vorgang wird beendet" - -#: keystone/openstack/common/service.py:262 -#, python-format -msgid "Child caught %s, exiting" -msgstr "Untergeordnetes Element %s abgefangen; Vorgang wird beendet" - -#: keystone/openstack/common/service.py:301 -msgid "Forking too fast, sleeping" -msgstr "Verzweigung zu schnell; im Ruhemodus" - -#: keystone/openstack/common/service.py:320 -#, python-format -msgid "Started child %d" -msgstr "Untergeordnetes Element %d gestartet" - -#: keystone/openstack/common/service.py:330 -#, python-format -msgid "Starting %d workers" -msgstr "Starten von %d Workers" - -#: keystone/openstack/common/service.py:347 -#, python-format -msgid "Child %(pid)d killed by signal %(sig)d" -msgstr "Untergeordnetes Element %(pid)d durch Signal %(sig)d abgebrochen" - -#: keystone/openstack/common/service.py:351 -#, python-format -msgid "Child %(pid)s exited with status %(code)d" -msgstr "Untergeordnete %(pid)s mit Status %(code)d beendet" - -#: keystone/openstack/common/service.py:390 -#, python-format -msgid "Caught %s, stopping children" -msgstr "%s abgefangen, untergeordnete Elemente werden gestoppt" - -#: keystone/openstack/common/service.py:399 -msgid "Wait called after thread killed. Cleaning up." -msgstr "" - -#: keystone/openstack/common/service.py:415 -#, python-format -msgid "Waiting on %d children to exit" -msgstr "Warten auf Beenden von %d untergeordneten Elementen" - -#: keystone/token/persistence/backends/sql.py:279 -#, python-format -msgid "Total expired tokens removed: %d" -msgstr "" - -#: keystone/token/providers/fernet/utils.py:72 -msgid "" -"[fernet_tokens] key_repository does not appear to exist; attempting to " -"create it" -msgstr "" - -#: keystone/token/providers/fernet/utils.py:130 -#, python-format -msgid "Created a new key: %s" -msgstr "" - -#: keystone/token/providers/fernet/utils.py:143 -msgid "Key repository is already initialized; aborting." -msgstr "" - -#: keystone/token/providers/fernet/utils.py:179 -#, python-format -msgid "Starting key rotation with %(count)s key files: %(list)s" -msgstr "" - -#: keystone/token/providers/fernet/utils.py:185 -#, python-format -msgid "Current primary key is: %s" -msgstr "" - -#: keystone/token/providers/fernet/utils.py:187 -#, python-format -msgid "Next primary key will be: %s" -msgstr "" - -#: keystone/token/providers/fernet/utils.py:197 -#, python-format -msgid "Promoted key 0 to be the primary: %s" -msgstr "" - -#: keystone/token/providers/fernet/utils.py:213 -#, python-format -msgid "Excess keys to purge: %s" -msgstr "" - -#: keystone/token/providers/fernet/utils.py:237 -#, python-format -msgid "Loaded %(count)s encryption keys from: %(dir)s" -msgstr "" diff --git a/keystone/locale/en_AU/LC_MESSAGES/keystone-log-error.po b/keystone/locale/en_AU/LC_MESSAGES/keystone-log-error.po deleted file mode 100644 index 977af694e9..0000000000 --- a/keystone/locale/en_AU/LC_MESSAGES/keystone-log-error.po +++ /dev/null @@ -1,179 +0,0 @@ -# Translations template for keystone. -# Copyright (C) 2015 OpenStack Foundation -# This file is distributed under the same license as the keystone project. -# -# Translators: -msgid "" -msgstr "" -"Project-Id-Version: Keystone\n" -"Report-Msgid-Bugs-To: https://bugs.launchpad.net/keystone\n" -"POT-Creation-Date: 2015-03-09 06:03+0000\n" -"PO-Revision-Date: 2015-03-07 04:31+0000\n" -"Last-Translator: openstackjenkins \n" -"Language-Team: English (Australia) (http://www.transifex.com/projects/p/" -"keystone/language/en_AU/)\n" -"Language: en_AU\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Generated-By: Babel 1.3\n" -"Plural-Forms: nplurals=2; plural=(n != 1);\n" - -#: keystone/notifications.py:304 -msgid "Failed to construct notifier" -msgstr "" - -#: keystone/notifications.py:389 -#, python-format -msgid "Failed to send %(res_id)s %(event_type)s notification" -msgstr "Failed to send %(res_id)s %(event_type)s notification" - -#: keystone/notifications.py:606 -#, python-format -msgid "Failed to send %(action)s %(event_type)s notification" -msgstr "" - -#: keystone/catalog/core.py:62 -#, python-format -msgid "Malformed endpoint - %(url)r is not a string" -msgstr "" - -#: keystone/catalog/core.py:66 -#, python-format -msgid "Malformed endpoint %(url)s - unknown key %(keyerror)s" -msgstr "Malformed endpoint %(url)s - unknown key %(keyerror)s" - -#: keystone/catalog/core.py:71 -#, python-format -msgid "" -"Malformed endpoint '%(url)s'. The following type error occurred during " -"string substitution: %(typeerror)s" -msgstr "" - -#: keystone/catalog/core.py:77 -#, python-format -msgid "" -"Malformed endpoint %s - incomplete format (are you missing a type notifier ?)" -msgstr "" -"Malformed endpoint %s - incomplete format (are you missing a type notifier ?)" - -#: keystone/common/openssl.py:93 -#, python-format -msgid "Command %(to_exec)s exited with %(retcode)s- %(output)s" -msgstr "" - -#: keystone/common/openssl.py:121 -#, python-format -msgid "Failed to remove file %(file_path)r: %(error)s" -msgstr "" - -#: keystone/common/utils.py:239 -msgid "" -"Error setting up the debug environment. Verify that the option --debug-url " -"has the format : and that a debugger processes is listening on " -"that port." -msgstr "" -"Error setting up the debug environment. Verify that the option --debug-url " -"has the format : and that a debugger processes is listening on " -"that port." - -#: keystone/common/cache/core.py:100 -#, python-format -msgid "" -"Unable to build cache config-key. Expected format \":\". " -"Skipping unknown format: %s" -msgstr "" -"Unable to build cache config-key. Expected format \":\". " -"Skipping unknown format: %s" - -#: keystone/common/environment/eventlet_server.py:99 -#, python-format -msgid "Could not bind to %(host)s:%(port)s" -msgstr "" - -#: keystone/common/environment/eventlet_server.py:185 -msgid "Server error" -msgstr "Server error" - -#: keystone/contrib/endpoint_policy/core.py:129 -#: keystone/contrib/endpoint_policy/core.py:228 -#, python-format -msgid "" -"Circular reference or a repeated entry found in region tree - %(region_id)s." -msgstr "" - -#: keystone/contrib/federation/idp.py:410 -#, python-format -msgid "Error when signing assertion, reason: %(reason)s" -msgstr "" - -#: keystone/contrib/oauth1/core.py:136 -msgid "Cannot retrieve Authorization headers" -msgstr "" - -#: keystone/openstack/common/loopingcall.py:95 -msgid "in fixed duration looping call" -msgstr "in fixed duration looping call" - -#: keystone/openstack/common/loopingcall.py:138 -msgid "in dynamic looping call" -msgstr "in dynamic looping call" - -#: keystone/openstack/common/service.py:268 -msgid "Unhandled exception" -msgstr "Unhandled exception" - -#: keystone/resource/core.py:477 -#, python-format -msgid "" -"Circular reference or a repeated entry found projects hierarchy - " -"%(project_id)s." -msgstr "" - -#: keystone/resource/core.py:939 -#, python-format -msgid "" -"Unexpected results in response for domain config - %(count)s responses, " -"first option is %(option)s, expected option %(expected)s" -msgstr "" - -#: keystone/resource/backends/sql.py:102 keystone/resource/backends/sql.py:121 -#, python-format -msgid "" -"Circular reference or a repeated entry found in projects hierarchy - " -"%(project_id)s." -msgstr "" - -#: keystone/token/provider.py:292 -#, python-format -msgid "Unexpected error or malformed token determining token expiry: %s" -msgstr "Unexpected error or malformed token determining token expiry: %s" - -#: keystone/token/persistence/backends/kvs.py:226 -#, python-format -msgid "" -"Reinitializing revocation list due to error in loading revocation list from " -"backend. Expected `list` type got `%(type)s`. Old revocation list data: " -"%(list)r" -msgstr "" - -#: keystone/token/providers/common.py:611 -msgid "Failed to validate token" -msgstr "Failed to validate token" - -#: keystone/token/providers/pki.py:47 -msgid "Unable to sign token" -msgstr "Unable to sign token" - -#: keystone/token/providers/fernet/utils.py:38 -#, python-format -msgid "" -"Either [fernet_tokens] key_repository does not exist or Keystone does not " -"have sufficient permission to access it: %s" -msgstr "" - -#: keystone/token/providers/fernet/utils.py:79 -msgid "" -"Failed to create [fernet_tokens] key_repository: either it already exists or " -"you don't have sufficient permissions to create it" -msgstr "" diff --git a/keystone/locale/en_AU/LC_MESSAGES/keystone.po b/keystone/locale/en_AU/LC_MESSAGES/keystone.po deleted file mode 100644 index 678db82ea5..0000000000 --- a/keystone/locale/en_AU/LC_MESSAGES/keystone.po +++ /dev/null @@ -1,1548 +0,0 @@ -# English (Australia) translations for keystone. -# Copyright (C) 2015 OpenStack Foundation -# This file is distributed under the same license as the keystone project. -# -# Translators: -# Tom Fifield , 2013 -msgid "" -msgstr "" -"Project-Id-Version: Keystone\n" -"Report-Msgid-Bugs-To: https://bugs.launchpad.net/keystone\n" -"POT-Creation-Date: 2015-04-03 06:03+0000\n" -"PO-Revision-Date: 2015-04-02 16:08+0000\n" -"Last-Translator: openstackjenkins \n" -"Language-Team: English (Australia) " -"(http://www.transifex.com/projects/p/keystone/language/en_AU/)\n" -"Plural-Forms: nplurals=2; plural=(n != 1)\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=utf-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Generated-By: Babel 1.3\n" - -#: keystone/clean.py:24 -#, python-format -msgid "%s cannot be empty." -msgstr "%s cannot be empty." - -#: keystone/clean.py:26 -#, python-format -msgid "%(property_name)s cannot be less than %(min_length)s characters." -msgstr "%(property_name)s cannot be less than %(min_length)s characters." - -#: keystone/clean.py:31 -#, python-format -msgid "%(property_name)s should not be greater than %(max_length)s characters." -msgstr "%(property_name)s should not be greater than %(max_length)s characters." - -#: keystone/clean.py:40 -#, python-format -msgid "%(property_name)s is not a %(display_expected_type)s" -msgstr "%(property_name)s is not a %(display_expected_type)s" - -#: keystone/cli.py:284 -msgid "At least one option must be provided" -msgstr "" - -#: keystone/cli.py:291 -msgid "--all option cannot be mixed with other options" -msgstr "" - -#: keystone/cli.py:302 -#, python-format -msgid "Unknown domain '%(name)s' specified by --domain-name" -msgstr "" - -#: keystone/cli.py:366 keystone/tests/unit/test_cli.py:213 -msgid "At least one option must be provided, use either --all or --domain-name" -msgstr "" - -#: keystone/cli.py:372 keystone/tests/unit/test_cli.py:229 -msgid "The --all option cannot be used with the --domain-name option" -msgstr "" - -#: keystone/cli.py:398 keystone/tests/unit/test_cli.py:246 -#, python-format -msgid "" -"Invalid domain name: %(domain)s found in config file name: %(file)s - " -"ignoring this file." -msgstr "" - -#: keystone/cli.py:406 keystone/tests/unit/test_cli.py:187 -#, python-format -msgid "" -"Domain: %(domain)s already has a configuration defined - ignoring file: " -"%(file)s." -msgstr "" - -#: keystone/cli.py:420 -#, python-format -msgid "Error parsing configuration file for domain: %(domain)s, file: %(file)s." -msgstr "" - -#: keystone/cli.py:453 -#, python-format -msgid "" -"To get a more detailed information on this error, re-run this command for" -" the specific domain, i.e.: keystone-manage domain_config_upload " -"--domain-name %s" -msgstr "" - -#: keystone/cli.py:471 -#, python-format -msgid "Unable to locate domain config directory: %s" -msgstr "Unable to locate domain config directory: %s" - -#: keystone/cli.py:504 -msgid "" -"Unable to access the keystone database, please check it is configured " -"correctly." -msgstr "" - -#: keystone/exception.py:79 -#, python-format -msgid "" -"Expecting to find %(attribute)s in %(target)s - the server could not " -"comply with the request since it is either malformed or otherwise " -"incorrect. The client is assumed to be in error." -msgstr "" - -#: keystone/exception.py:90 -#, python-format -msgid "%(detail)s" -msgstr "" - -#: keystone/exception.py:94 -msgid "" -"Timestamp not in expected format. The server could not comply with the " -"request since it is either malformed or otherwise incorrect. The client " -"is assumed to be in error." -msgstr "" -"Timestamp not in expected format. The server could not comply with the " -"request since it is either malformed or otherwise incorrect. The client " -"is assumed to be in error." - -#: keystone/exception.py:103 -#, python-format -msgid "" -"String length exceeded.The length of string '%(string)s' exceeded the " -"limit of column %(type)s(CHAR(%(length)d))." -msgstr "" -"String length exceeded.The length of string '%(string)s' exceeded the " -"limit of column %(type)s(CHAR(%(length)d))." - -#: keystone/exception.py:109 -#, python-format -msgid "" -"Request attribute %(attribute)s must be less than or equal to %(size)i. " -"The server could not comply with the request because the attribute size " -"is invalid (too large). The client is assumed to be in error." -msgstr "" -"Request attribute %(attribute)s must be less than or equal to %(size)i. " -"The server could not comply with the request because the attribute size " -"is invalid (too large). The client is assumed to be in error." - -#: keystone/exception.py:119 -#, python-format -msgid "" -"The specified parent region %(parent_region_id)s would create a circular " -"region hierarchy." -msgstr "" - -#: keystone/exception.py:126 -#, python-format -msgid "" -"The password length must be less than or equal to %(size)i. The server " -"could not comply with the request because the password is invalid." -msgstr "" - -#: keystone/exception.py:134 -#, python-format -msgid "" -"Unable to delete region %(region_id)s because it or its child regions " -"have associated endpoints." -msgstr "" - -#: keystone/exception.py:141 -msgid "" -"The certificates you requested are not available. It is likely that this " -"server does not use PKI tokens otherwise this is the result of " -"misconfiguration." -msgstr "" - -#: keystone/exception.py:150 -msgid "(Disable debug mode to suppress these details.)" -msgstr "" - -#: keystone/exception.py:155 -#, python-format -msgid "%(message)s %(amendment)s" -msgstr "" - -#: keystone/exception.py:163 -msgid "The request you have made requires authentication." -msgstr "The request you have made requires authentication." - -#: keystone/exception.py:169 -msgid "Authentication plugin error." -msgstr "Authentication plugin error." - -#: keystone/exception.py:177 -#, python-format -msgid "Unable to find valid groups while using mapping %(mapping_id)s" -msgstr "" - -#: keystone/exception.py:182 -msgid "Attempted to authenticate with an unsupported method." -msgstr "Attempted to authenticate with an unsupported method." - -#: keystone/exception.py:190 -msgid "Additional authentications steps required." -msgstr "Additional authentications steps required." - -#: keystone/exception.py:198 -msgid "You are not authorized to perform the requested action." -msgstr "You are not authorized to perform the requested action." - -#: keystone/exception.py:205 -#, python-format -msgid "You are not authorized to perform the requested action: %(action)s" -msgstr "" - -#: keystone/exception.py:210 -#, python-format -msgid "" -"Could not change immutable attribute(s) '%(attributes)s' in target " -"%(target)s" -msgstr "" - -#: keystone/exception.py:215 -#, python-format -msgid "" -"Group membership across backend boundaries is not allowed, group in " -"question is %(group_id)s, user is %(user_id)s" -msgstr "" - -#: keystone/exception.py:221 -#, python-format -msgid "" -"Invalid mix of entities for policy association - only Endpoint, Service " -"or Region+Service allowed. Request was - Endpoint: %(endpoint_id)s, " -"Service: %(service_id)s, Region: %(region_id)s" -msgstr "" - -#: keystone/exception.py:228 -#, python-format -msgid "Invalid domain specific configuration: %(reason)s" -msgstr "" - -#: keystone/exception.py:232 -#, python-format -msgid "Could not find: %(target)s" -msgstr "" - -#: keystone/exception.py:238 -#, python-format -msgid "Could not find endpoint: %(endpoint_id)s" -msgstr "" - -#: keystone/exception.py:245 -msgid "An unhandled exception has occurred: Could not find metadata." -msgstr "An unhandled exception has occurred: Could not find metadata." - -#: keystone/exception.py:250 -#, python-format -msgid "Could not find policy: %(policy_id)s" -msgstr "" - -#: keystone/exception.py:254 -msgid "Could not find policy association" -msgstr "" - -#: keystone/exception.py:258 -#, python-format -msgid "Could not find role: %(role_id)s" -msgstr "" - -#: keystone/exception.py:262 -#, python-format -msgid "" -"Could not find role assignment with role: %(role_id)s, user or group: " -"%(actor_id)s, project or domain: %(target_id)s" -msgstr "" - -#: keystone/exception.py:268 -#, python-format -msgid "Could not find region: %(region_id)s" -msgstr "" - -#: keystone/exception.py:272 -#, python-format -msgid "Could not find service: %(service_id)s" -msgstr "" - -#: keystone/exception.py:276 -#, python-format -msgid "Could not find domain: %(domain_id)s" -msgstr "" - -#: keystone/exception.py:280 -#, python-format -msgid "Could not find project: %(project_id)s" -msgstr "" - -#: keystone/exception.py:284 -#, python-format -msgid "Cannot create project with parent: %(project_id)s" -msgstr "" - -#: keystone/exception.py:288 -#, python-format -msgid "Could not find token: %(token_id)s" -msgstr "" - -#: keystone/exception.py:292 -#, python-format -msgid "Could not find user: %(user_id)s" -msgstr "" - -#: keystone/exception.py:296 -#, python-format -msgid "Could not find group: %(group_id)s" -msgstr "" - -#: keystone/exception.py:300 -#, python-format -msgid "Could not find mapping: %(mapping_id)s" -msgstr "" - -#: keystone/exception.py:304 -#, python-format -msgid "Could not find trust: %(trust_id)s" -msgstr "" - -#: keystone/exception.py:308 -#, python-format -msgid "No remaining uses for trust: %(trust_id)s" -msgstr "" - -#: keystone/exception.py:312 -#, python-format -msgid "Could not find credential: %(credential_id)s" -msgstr "" - -#: keystone/exception.py:316 -#, python-format -msgid "Could not find version: %(version)s" -msgstr "" - -#: keystone/exception.py:320 -#, python-format -msgid "Could not find Endpoint Group: %(endpoint_group_id)s" -msgstr "" - -#: keystone/exception.py:324 -#, python-format -msgid "Could not find Identity Provider: %(idp_id)s" -msgstr "" - -#: keystone/exception.py:328 -#, python-format -msgid "Could not find Service Provider: %(sp_id)s" -msgstr "" - -#: keystone/exception.py:332 -#, python-format -msgid "" -"Could not find federated protocol %(protocol_id)s for Identity Provider: " -"%(idp_id)s" -msgstr "" - -#: keystone/exception.py:343 -#, python-format -msgid "" -"Could not find %(group_or_option)s in domain configuration for domain " -"%(domain_id)s" -msgstr "" - -#: keystone/exception.py:348 -#, python-format -msgid "Conflict occurred attempting to store %(type)s - %(details)s" -msgstr "" - -#: keystone/exception.py:356 -msgid "An unexpected error prevented the server from fulfilling your request." -msgstr "" - -#: keystone/exception.py:359 -#, python-format -msgid "" -"An unexpected error prevented the server from fulfilling your request: " -"%(exception)s" -msgstr "" - -#: keystone/exception.py:382 -#, python-format -msgid "Unable to consume trust %(trust_id)s, unable to acquire lock." -msgstr "" - -#: keystone/exception.py:387 -msgid "" -"Expected signing certificates are not available on the server. Please " -"check Keystone configuration." -msgstr "" - -#: keystone/exception.py:393 -#, python-format -msgid "Malformed endpoint URL (%(endpoint)s), see ERROR log for details." -msgstr "Malformed endpoint URL (%(endpoint)s), see ERROR log for details." - -#: keystone/exception.py:398 -#, python-format -msgid "" -"Group %(group_id)s returned by mapping %(mapping_id)s was not found in " -"the backend." -msgstr "" - -#: keystone/exception.py:403 -#, python-format -msgid "Error while reading metadata file, %(reason)s" -msgstr "" - -#: keystone/exception.py:407 -#, python-format -msgid "" -"Unexpected combination of grant attributes - User: %(user_id)s, Group: " -"%(group_id)s, Project: %(project_id)s, Domain: %(domain_id)s" -msgstr "" - -#: keystone/exception.py:414 -msgid "The action you have requested has not been implemented." -msgstr "The action you have requested has not been implemented." - -#: keystone/exception.py:421 -msgid "The service you have requested is no longer available on this server." -msgstr "" - -#: keystone/exception.py:428 -#, python-format -msgid "The Keystone configuration file %(config_file)s could not be found." -msgstr "The Keystone configuration file %(config_file)s could not be found." - -#: keystone/exception.py:433 -msgid "" -"No encryption keys found; run keystone-manage fernet_setup to bootstrap " -"one." -msgstr "" - -#: keystone/exception.py:438 -#, python-format -msgid "" -"The Keystone domain-specific configuration has specified more than one " -"SQL driver (only one is permitted): %(source)s." -msgstr "" - -#: keystone/exception.py:445 -#, python-format -msgid "" -"%(mod_name)s doesn't provide database migrations. The migration " -"repository path at %(path)s doesn't exist or isn't a directory." -msgstr "" - -#: keystone/exception.py:457 -#, python-format -msgid "" -"Unable to sign SAML assertion. It is likely that this server does not " -"have xmlsec1 installed, or this is the result of misconfiguration. Reason" -" %(reason)s" -msgstr "" - -#: keystone/exception.py:465 -msgid "" -"No Authorization headers found, cannot proceed with OAuth related calls, " -"if running under HTTPd or Apache, ensure WSGIPassAuthorization is set to " -"On." -msgstr "" - -#: keystone/notifications.py:271 -#, python-format -msgid "%(event)s is not a valid notification event, must be one of: %(actions)s" -msgstr "" - -#: keystone/notifications.py:280 -#, python-format -msgid "Method not callable: %s" -msgstr "" - -#: keystone/assignment/controllers.py:107 keystone/identity/controllers.py:69 -#: keystone/resource/controllers.py:78 -msgid "Name field is required and cannot be empty" -msgstr "Name field is required and cannot be empty" - -#: keystone/assignment/controllers.py:346 -#: keystone/assignment/controllers.py:769 -msgid "Specify a domain or project, not both" -msgstr "Specify a domain or project, not both" - -#: keystone/assignment/controllers.py:349 -msgid "Specify one of domain or project" -msgstr "" - -#: keystone/assignment/controllers.py:354 -#: keystone/assignment/controllers.py:774 -msgid "Specify a user or group, not both" -msgstr "Specify a user or group, not both" - -#: keystone/assignment/controllers.py:357 -msgid "Specify one of user or group" -msgstr "" - -#: keystone/assignment/controllers.py:758 -msgid "Combining effective and group filter will always result in an empty list." -msgstr "" - -#: keystone/assignment/controllers.py:763 -msgid "" -"Combining effective, domain and inherited filters will always result in " -"an empty list." -msgstr "" - -#: keystone/assignment/core.py:228 -msgid "Must specify either domain or project" -msgstr "" - -#: keystone/assignment/core.py:491 -#, python-format -msgid "Project (%s)" -msgstr "Project (%s)" - -#: keystone/assignment/core.py:493 -#, python-format -msgid "Domain (%s)" -msgstr "Domain (%s)" - -#: keystone/assignment/core.py:495 -msgid "Unknown Target" -msgstr "Unknown Target" - -#: keystone/assignment/backends/ldap.py:92 -msgid "Domain metadata not supported by LDAP" -msgstr "" - -#: keystone/assignment/backends/ldap.py:381 -#, python-format -msgid "User %(user_id)s already has role %(role_id)s in tenant %(tenant_id)s" -msgstr "" - -#: keystone/assignment/backends/ldap.py:387 -#, python-format -msgid "Role %s not found" -msgstr "Role %s not found" - -#: keystone/assignment/backends/ldap.py:402 -#: keystone/assignment/backends/sql.py:335 -#, python-format -msgid "Cannot remove role that has not been granted, %s" -msgstr "Cannot remove role that has not been granted, %s" - -#: keystone/assignment/backends/sql.py:356 -#, python-format -msgid "Unexpected assignment type encountered, %s" -msgstr "" - -#: keystone/assignment/role_backends/ldap.py:61 keystone/catalog/core.py:103 -#: keystone/common/ldap/core.py:1400 keystone/resource/backends/ldap.py:149 -#, python-format -msgid "Duplicate ID, %s." -msgstr "Duplicate ID, %s." - -#: keystone/assignment/role_backends/ldap.py:69 -#: keystone/common/ldap/core.py:1390 -#, python-format -msgid "Duplicate name, %s." -msgstr "Duplicate name, %s." - -#: keystone/assignment/role_backends/ldap.py:119 -#, python-format -msgid "Cannot duplicate name %s" -msgstr "" - -#: keystone/auth/controllers.py:60 -#, python-format -msgid "" -"Cannot load an auth-plugin by class-name without a \"method\" attribute " -"defined: %s" -msgstr "" - -#: keystone/auth/controllers.py:71 -#, python-format -msgid "" -"Auth plugin %(plugin)s is requesting previously registered method " -"%(method)s" -msgstr "" - -#: keystone/auth/controllers.py:115 -#, python-format -msgid "" -"Unable to reconcile identity attribute %(attribute)s as it has " -"conflicting values %(new)s and %(old)s" -msgstr "" - -#: keystone/auth/controllers.py:336 -msgid "Scoping to both domain and project is not allowed" -msgstr "Scoping to both domain and project is not allowed" - -#: keystone/auth/controllers.py:339 -msgid "Scoping to both domain and trust is not allowed" -msgstr "Scoping to both domain and trust is not allowed" - -#: keystone/auth/controllers.py:342 -msgid "Scoping to both project and trust is not allowed" -msgstr "Scoping to both project and trust is not allowed" - -#: keystone/auth/controllers.py:512 -msgid "User not found" -msgstr "User not found" - -#: keystone/auth/controllers.py:616 -msgid "A project-scoped token is required to produce a service catalog." -msgstr "" - -#: keystone/auth/plugins/external.py:46 -msgid "No authenticated user" -msgstr "No authenticated user" - -#: keystone/auth/plugins/external.py:56 -#, python-format -msgid "Unable to lookup user %s" -msgstr "Unable to lookup user %s" - -#: keystone/auth/plugins/external.py:107 -msgid "auth_type is not Negotiate" -msgstr "" - -#: keystone/auth/plugins/mapped.py:244 -msgid "Could not map user" -msgstr "" - -#: keystone/auth/plugins/oauth1.py:39 -#, python-format -msgid "%s not supported" -msgstr "" - -#: keystone/auth/plugins/oauth1.py:57 -msgid "Access token is expired" -msgstr "Access token is expired" - -#: keystone/auth/plugins/oauth1.py:71 -msgid "Could not validate the access token" -msgstr "" - -#: keystone/auth/plugins/password.py:46 -msgid "Invalid username or password" -msgstr "Invalid username or password" - -#: keystone/auth/plugins/token.py:72 keystone/token/controllers.py:161 -msgid "rescope a scoped token" -msgstr "" - -#: keystone/catalog/controllers.py:168 -#, python-format -msgid "Conflicting region IDs specified: \"%(url_id)s\" != \"%(ref_id)s\"" -msgstr "" - -#: keystone/common/authorization.py:47 keystone/common/wsgi.py:64 -#, python-format -msgid "token reference must be a KeystoneToken type, got: %s" -msgstr "" - -#: keystone/common/base64utils.py:66 -msgid "pad must be single character" -msgstr "pad must be single character" - -#: keystone/common/base64utils.py:215 -#, python-format -msgid "text is multiple of 4, but pad \"%s\" occurs before 2nd to last char" -msgstr "text is multiple of 4, but pad \"%s\" occurs before 2nd to last char" - -#: keystone/common/base64utils.py:219 -#, python-format -msgid "text is multiple of 4, but pad \"%s\" occurs before non-pad last char" -msgstr "text is multiple of 4, but pad \"%s\" occurs before non-pad last char" - -#: keystone/common/base64utils.py:225 -#, python-format -msgid "text is not a multiple of 4, but contains pad \"%s\"" -msgstr "text is not a multiple of 4, but contains pad \"%s\"" - -#: keystone/common/base64utils.py:244 keystone/common/base64utils.py:265 -msgid "padded base64url text must be multiple of 4 characters" -msgstr "padded base64url text must be multiple of 4 characters" - -#: keystone/common/controller.py:237 keystone/token/providers/common.py:589 -msgid "Non-default domain is not supported" -msgstr "Non-default domain is not supported" - -#: keystone/common/controller.py:311 keystone/common/controller.py:339 -#: keystone/identity/core.py:501 keystone/resource/core.py:761 -#: keystone/resource/backends/ldap.py:61 -#, python-format -msgid "Expected dict or list: %s" -msgstr "Expected dict or list: %s" - -#: keystone/common/controller.py:352 -msgid "Marker could not be found" -msgstr "Marker could not be found" - -#: keystone/common/controller.py:363 -msgid "Invalid limit value" -msgstr "Invalid limit value" - -#: keystone/common/controller.py:671 -msgid "Cannot change Domain ID" -msgstr "" - -#: keystone/common/controller.py:700 -msgid "domain_id is required as part of entity" -msgstr "" - -#: keystone/common/controller.py:735 -msgid "A domain-scoped token must be used" -msgstr "" - -#: keystone/common/dependency.py:68 -#, python-format -msgid "Unregistered dependency: %(name)s for %(targets)s" -msgstr "" - -#: keystone/common/dependency.py:108 -msgid "event_callbacks must be a dict" -msgstr "" - -#: keystone/common/dependency.py:113 -#, python-format -msgid "event_callbacks[%s] must be a dict" -msgstr "" - -#: keystone/common/json_home.py:78 -#, python-format -msgid "Unexpected status requested for JSON Home response, %s" -msgstr "" - -#: keystone/common/pemutils.py:223 -#, python-format -msgid "unknown pem_type \"%(pem_type)s\", valid types are: %(valid_pem_types)s" -msgstr "unknown pem_type \"%(pem_type)s\", valid types are: %(valid_pem_types)s" - -#: keystone/common/pemutils.py:242 -#, python-format -msgid "" -"unknown pem header \"%(pem_header)s\", valid headers are: " -"%(valid_pem_headers)s" -msgstr "" -"unknown pem header \"%(pem_header)s\", valid headers are: " -"%(valid_pem_headers)s" - -#: keystone/common/pemutils.py:298 -#, python-format -msgid "failed to find end matching \"%s\"" -msgstr "failed to find end matching \"%s\"" - -#: keystone/common/pemutils.py:302 -#, python-format -msgid "" -"beginning & end PEM headers do not match (%(begin_pem_header)s!= " -"%(end_pem_header)s)" -msgstr "" -"beginning & end PEM headers do not match (%(begin_pem_header)s!= " -"%(end_pem_header)s)" - -#: keystone/common/pemutils.py:377 -#, python-format -msgid "unknown pem_type: \"%s\"" -msgstr "unknown pem_type: \"%s\"" - -#: keystone/common/pemutils.py:389 -#, python-format -msgid "" -"failed to base64 decode %(pem_type)s PEM at position%(position)d: " -"%(err_msg)s" -msgstr "" -"failed to base64 decode %(pem_type)s PEM at position%(position)d: " -"%(err_msg)s" - -#: keystone/common/utils.py:164 keystone/credential/controllers.py:44 -msgid "Invalid blob in credential" -msgstr "Invalid blob in credential" - -#: keystone/common/wsgi.py:330 -#, python-format -msgid "%s field is required and cannot be empty" -msgstr "" - -#: keystone/common/wsgi.py:342 -#, python-format -msgid "%s field(s) cannot be empty" -msgstr "" - -#: keystone/common/wsgi.py:563 -msgid "The resource could not be found." -msgstr "The resource could not be found." - -#: keystone/common/cache/_memcache_pool.py:113 -#, python-format -msgid "Unable to get a connection from pool id %(id)s after %(seconds)s seconds." -msgstr "" - -#: keystone/common/cache/core.py:132 -msgid "region not type dogpile.cache.CacheRegion" -msgstr "region not type dogpile.cache.CacheRegion" - -#: keystone/common/cache/backends/mongo.py:231 -msgid "db_hosts value is required" -msgstr "" - -#: keystone/common/cache/backends/mongo.py:236 -msgid "database db_name is required" -msgstr "" - -#: keystone/common/cache/backends/mongo.py:241 -msgid "cache_collection name is required" -msgstr "" - -#: keystone/common/cache/backends/mongo.py:252 -msgid "integer value expected for w (write concern attribute)" -msgstr "" - -#: keystone/common/cache/backends/mongo.py:260 -msgid "replicaset_name required when use_replica is True" -msgstr "" - -#: keystone/common/cache/backends/mongo.py:275 -msgid "integer value expected for mongo_ttl_seconds" -msgstr "" - -#: keystone/common/cache/backends/mongo.py:301 -msgid "no ssl support available" -msgstr "" - -#: keystone/common/cache/backends/mongo.py:310 -#, python-format -msgid "" -"Invalid ssl_cert_reqs value of %s, must be one of \"NONE\", \"OPTIONAL\"," -" \"REQUIRED\"" -msgstr "" - -#: keystone/common/kvs/core.py:71 -#, python-format -msgid "Lock Timeout occurred for key, %(target)s" -msgstr "" - -#: keystone/common/kvs/core.py:106 -#, python-format -msgid "KVS region %s is already configured. Cannot reconfigure." -msgstr "" - -#: keystone/common/kvs/core.py:145 -#, python-format -msgid "Key Value Store not configured: %s" -msgstr "" - -#: keystone/common/kvs/core.py:198 -msgid "`key_mangler` option must be a function reference" -msgstr "" - -#: keystone/common/kvs/core.py:353 -#, python-format -msgid "Lock key must match target key: %(lock)s != %(target)s" -msgstr "" - -#: keystone/common/kvs/core.py:357 -msgid "Must be called within an active lock context." -msgstr "" - -#: keystone/common/kvs/backends/memcached.py:69 -#, python-format -msgid "Maximum lock attempts on %s occurred." -msgstr "" - -#: keystone/common/kvs/backends/memcached.py:108 -#, python-format -msgid "" -"Backend `%(driver)s` is not a valid memcached backend. Valid drivers: " -"%(driver_list)s" -msgstr "" - -#: keystone/common/kvs/backends/memcached.py:178 -msgid "`key_mangler` functions must be callable." -msgstr "" - -#: keystone/common/ldap/core.py:191 -#, python-format -msgid "Invalid LDAP deref option: %(option)s. Choose one of: %(options)s" -msgstr "" - -#: keystone/common/ldap/core.py:201 -#, python-format -msgid "Invalid LDAP TLS certs option: %(option)s. Choose one of: %(options)s" -msgstr "Invalid LDAP TLS certs option: %(option)s. Choose one of: %(options)s" - -#: keystone/common/ldap/core.py:213 -#, python-format -msgid "Invalid LDAP scope: %(scope)s. Choose one of: %(options)s" -msgstr "Invalid LDAP scope: %(scope)s. Choose one of: %(options)s" - -#: keystone/common/ldap/core.py:588 -msgid "Invalid TLS / LDAPS combination" -msgstr "Invalid TLS / LDAPS combination" - -#: keystone/common/ldap/core.py:593 -#, python-format -msgid "Invalid LDAP TLS_AVAIL option: %s. TLS not available" -msgstr "Invalid LDAP TLS_AVAIL option: %s. TLS not available" - -#: keystone/common/ldap/core.py:603 -#, python-format -msgid "tls_cacertfile %s not found or is not a file" -msgstr "tls_cacertfile %s not found or is not a file" - -#: keystone/common/ldap/core.py:615 -#, python-format -msgid "tls_cacertdir %s not found or is not a directory" -msgstr "tls_cacertdir %s not found or is not a directory" - -#: keystone/common/ldap/core.py:1325 -#, python-format -msgid "ID attribute %(id_attr)s not found in LDAP object %(dn)s" -msgstr "" - -#: keystone/common/ldap/core.py:1369 -#, python-format -msgid "LDAP %s create" -msgstr "LDAP %s create" - -#: keystone/common/ldap/core.py:1374 -#, python-format -msgid "LDAP %s update" -msgstr "LDAP %s update" - -#: keystone/common/ldap/core.py:1379 -#, python-format -msgid "LDAP %s delete" -msgstr "LDAP %s delete" - -#: keystone/common/ldap/core.py:1521 -msgid "" -"Disabling an entity where the 'enable' attribute is ignored by " -"configuration." -msgstr "" - -#: keystone/common/ldap/core.py:1532 -#, python-format -msgid "Cannot change %(option_name)s %(attr)s" -msgstr "Cannot change %(option_name)s %(attr)s" - -#: keystone/common/ldap/core.py:1619 -#, python-format -msgid "Member %(member)s is already a member of group %(group)s" -msgstr "" - -#: keystone/common/sql/core.py:219 -msgid "" -"Cannot truncate a driver call without hints list as first parameter after" -" self " -msgstr "" - -#: keystone/common/sql/core.py:410 -msgid "Duplicate Entry" -msgstr "" - -#: keystone/common/sql/core.py:426 -#, python-format -msgid "An unexpected error occurred when trying to store %s" -msgstr "" - -#: keystone/common/sql/migration_helpers.py:200 -#: keystone/common/sql/migration_helpers.py:261 -#, python-format -msgid "%s extension does not exist." -msgstr "" - -#: keystone/common/validation/validators.py:54 -#, python-format -msgid "Invalid input for field '%(path)s'. The value is '%(value)s'." -msgstr "" - -#: keystone/contrib/ec2/controllers.py:332 -msgid "Token belongs to another user" -msgstr "Token belongs to another user" - -#: keystone/contrib/ec2/controllers.py:360 -msgid "Credential belongs to another user" -msgstr "Credential belongs to another user" - -#: keystone/contrib/endpoint_filter/backends/sql.py:69 -#, python-format -msgid "Endpoint %(endpoint_id)s not found in project %(project_id)s" -msgstr "Endpoint %(endpoint_id)s not found in project %(project_id)s" - -#: keystone/contrib/endpoint_filter/backends/sql.py:180 -msgid "Endpoint Group Project Association not found" -msgstr "" - -#: keystone/contrib/endpoint_policy/core.py:258 -#, python-format -msgid "No policy is associated with endpoint %(endpoint_id)s." -msgstr "" - -#: keystone/contrib/federation/controllers.py:274 -msgid "Missing entity ID from environment" -msgstr "" - -#: keystone/contrib/federation/controllers.py:282 -msgid "Request must have an origin query parameter" -msgstr "" - -#: keystone/contrib/federation/controllers.py:296 -#, python-format -msgid "%(host)s is not a trusted dashboard host" -msgstr "" - -#: keystone/contrib/federation/controllers.py:328 -msgid "Use a project scoped token when attempting to create a SAML assertion" -msgstr "" - -#: keystone/contrib/federation/idp.py:457 -#, python-format -msgid "Cannot open certificate %(cert_file)s. Reason: %(reason)s" -msgstr "" - -#: keystone/contrib/federation/idp.py:524 -msgid "Ensure configuration option idp_entity_id is set." -msgstr "" - -#: keystone/contrib/federation/idp.py:527 -msgid "Ensure configuration option idp_sso_endpoint is set." -msgstr "" - -#: keystone/contrib/federation/idp.py:547 -msgid "" -"idp_contact_type must be one of: [technical, other, support, " -"administrative or billing." -msgstr "" - -#: keystone/contrib/federation/utils.py:178 -msgid "Federation token is expired" -msgstr "" - -#: keystone/contrib/federation/utils.py:225 -msgid "Could not find Identity Provider identifier in environment" -msgstr "" - -#: keystone/contrib/federation/utils.py:229 -msgid "" -"Incoming identity provider identifier not included among the accepted " -"identifiers." -msgstr "" - -#: keystone/contrib/federation/utils.py:517 -#, python-format -msgid "User type %s not supported" -msgstr "" - -#: keystone/contrib/federation/utils.py:553 -#, python-format -msgid "" -"Invalid rule: %(identity_value)s. Both 'groups' and 'domain' keywords " -"must be specified." -msgstr "" - -#: keystone/contrib/federation/utils.py:769 -#, python-format -msgid "Identity Provider %(idp)s is disabled" -msgstr "" - -#: keystone/contrib/federation/utils.py:777 -#, python-format -msgid "Service Provider %(sp)s is disabled" -msgstr "" - -#: keystone/contrib/oauth1/controllers.py:99 -msgid "Cannot change consumer secret" -msgstr "Cannot change consumer secret" - -#: keystone/contrib/oauth1/controllers.py:131 -msgid "Cannot list request tokens with a token issued via delegation." -msgstr "" - -#: keystone/contrib/oauth1/controllers.py:192 -#: keystone/contrib/oauth1/backends/sql.py:270 -msgid "User IDs do not match" -msgstr "User IDs do not match" - -#: keystone/contrib/oauth1/controllers.py:199 -msgid "Could not find role" -msgstr "Could not find role" - -#: keystone/contrib/oauth1/controllers.py:248 -msgid "Invalid signature" -msgstr "" - -#: keystone/contrib/oauth1/controllers.py:299 -#: keystone/contrib/oauth1/controllers.py:377 -msgid "Request token is expired" -msgstr "Request token is expired" - -#: keystone/contrib/oauth1/controllers.py:313 -msgid "There should not be any non-oauth parameters" -msgstr "There should not be any non-oauth parameters" - -#: keystone/contrib/oauth1/controllers.py:317 -msgid "provided consumer key does not match stored consumer key" -msgstr "provided consumer key does not match stored consumer key" - -#: keystone/contrib/oauth1/controllers.py:321 -msgid "provided verifier does not match stored verifier" -msgstr "provided verifier does not match stored verifier" - -#: keystone/contrib/oauth1/controllers.py:325 -msgid "provided request key does not match stored request key" -msgstr "provided request key does not match stored request key" - -#: keystone/contrib/oauth1/controllers.py:329 -msgid "Request Token does not have an authorizing user id" -msgstr "Request Token does not have an authorizing user id" - -#: keystone/contrib/oauth1/controllers.py:366 -msgid "Cannot authorize a request token with a token issued via delegation." -msgstr "" - -#: keystone/contrib/oauth1/controllers.py:396 -msgid "authorizing user does not have role required" -msgstr "authorizing user does not have role required" - -#: keystone/contrib/oauth1/controllers.py:409 -msgid "User is not a member of the requested project" -msgstr "User is not a member of the requested project" - -#: keystone/contrib/oauth1/backends/sql.py:91 -msgid "Consumer not found" -msgstr "Consumer not found" - -#: keystone/contrib/oauth1/backends/sql.py:186 -msgid "Request token not found" -msgstr "Request token not found" - -#: keystone/contrib/oauth1/backends/sql.py:250 -msgid "Access token not found" -msgstr "Access token not found" - -#: keystone/contrib/revoke/controllers.py:33 -#, python-format -msgid "invalid date format %s" -msgstr "" - -#: keystone/contrib/revoke/core.py:150 -msgid "" -"The revoke call must not have both domain_id and project_id. This is a " -"bug in the Keystone server. The current request is aborted." -msgstr "" - -#: keystone/contrib/revoke/core.py:218 keystone/token/provider.py:207 -#: keystone/token/provider.py:230 keystone/token/provider.py:296 -#: keystone/token/provider.py:303 -msgid "Failed to validate token" -msgstr "Failed to validate token" - -#: keystone/identity/controllers.py:72 -msgid "Enabled field must be a boolean" -msgstr "Enabled field must be a boolean" - -#: keystone/identity/controllers.py:98 -msgid "Enabled field should be a boolean" -msgstr "Enabled field should be a boolean" - -#: keystone/identity/core.py:112 -#, python-format -msgid "Database at /domains/%s/config" -msgstr "" - -#: keystone/identity/core.py:189 -#, python-format -msgid "" -"Domain specific sql drivers are not supported via the Identity API. One " -"is specified in /domains/%s/config" -msgstr "" - -#: keystone/identity/core.py:360 keystone/identity/backends/ldap.py:59 -#: keystone/identity/backends/ldap.py:61 keystone/identity/backends/ldap.py:67 -#: keystone/identity/backends/ldap.py:69 keystone/identity/backends/sql.py:104 -#: keystone/identity/backends/sql.py:106 -msgid "Invalid user / password" -msgstr "" - -#: keystone/identity/core.py:766 -#, python-format -msgid "User is disabled: %s" -msgstr "User is disabled: %s" - -#: keystone/identity/core.py:808 -msgid "Cannot change user ID" -msgstr "" - -#: keystone/identity/backends/ldap.py:99 -msgid "Cannot change user name" -msgstr "" - -#: keystone/identity/backends/ldap.py:188 keystone/identity/backends/sql.py:188 -#: keystone/identity/backends/sql.py:206 -#, python-format -msgid "User '%(user_id)s' not found in group '%(group_id)s'" -msgstr "" - -#: keystone/identity/backends/ldap.py:339 -#, python-format -msgid "User %(user_id)s is already a member of group %(group_id)s" -msgstr "User %(user_id)s is already a member of group %(group_id)s" - -#: keystone/models/token_model.py:61 -msgid "Found invalid token: scoped to both project and domain." -msgstr "" - -#: keystone/openstack/common/versionutils.py:108 -#, python-format -msgid "" -"%(what)s is deprecated as of %(as_of)s in favor of %(in_favor_of)s and " -"may be removed in %(remove_in)s." -msgstr "" -"%(what)s is deprecated as of %(as_of)s in favor of %(in_favor_of)s and " -"may be removed in %(remove_in)s." - -#: keystone/openstack/common/versionutils.py:112 -#, python-format -msgid "" -"%(what)s is deprecated as of %(as_of)s and may be removed in " -"%(remove_in)s. It will not be superseded." -msgstr "" -"%(what)s is deprecated as of %(as_of)s and may be removed in " -"%(remove_in)s. It will not be superseded." - -#: keystone/openstack/common/versionutils.py:116 -#, python-format -msgid "%(what)s is deprecated as of %(as_of)s in favor of %(in_favor_of)s." -msgstr "" - -#: keystone/openstack/common/versionutils.py:119 -#, python-format -msgid "%(what)s is deprecated as of %(as_of)s. It will not be superseded." -msgstr "" - -#: keystone/openstack/common/versionutils.py:241 -#, python-format -msgid "Deprecated: %s" -msgstr "Deprecated: %s" - -#: keystone/openstack/common/versionutils.py:259 -#, python-format -msgid "Fatal call to deprecated config: %(msg)s" -msgstr "Fatal call to deprecated config: %(msg)s" - -#: keystone/resource/controllers.py:231 -msgid "" -"Cannot use parents_as_list and parents_as_ids query params at the same " -"time." -msgstr "" - -#: keystone/resource/controllers.py:237 -msgid "" -"Cannot use subtree_as_list and subtree_as_ids query params at the same " -"time." -msgstr "" - -#: keystone/resource/core.py:80 -#, python-format -msgid "max hierarchy depth reached for %s branch." -msgstr "" - -#: keystone/resource/core.py:97 -msgid "cannot create a project within a different domain than its parents." -msgstr "" - -#: keystone/resource/core.py:101 -#, python-format -msgid "cannot create a project in a branch containing a disabled project: %s" -msgstr "" - -#: keystone/resource/core.py:123 -#, python-format -msgid "Domain is disabled: %s" -msgstr "Domain is disabled: %s" - -#: keystone/resource/core.py:141 -#, python-format -msgid "Domain cannot be named %s" -msgstr "" - -#: keystone/resource/core.py:144 -#, python-format -msgid "Domain cannot have ID %s" -msgstr "" - -#: keystone/resource/core.py:156 -#, python-format -msgid "Project is disabled: %s" -msgstr "Project is disabled: %s" - -#: keystone/resource/core.py:176 -#, python-format -msgid "cannot enable project %s since it has disabled parents" -msgstr "" - -#: keystone/resource/core.py:184 -#, python-format -msgid "cannot disable project %s since its subtree contains enabled projects" -msgstr "" - -#: keystone/resource/core.py:195 -msgid "Update of `parent_id` is not allowed." -msgstr "" - -#: keystone/resource/core.py:222 -#, python-format -msgid "cannot delete the project %s since it is not a leaf in the hierarchy." -msgstr "" - -#: keystone/resource/core.py:376 -msgid "Multiple domains are not supported" -msgstr "" - -#: keystone/resource/core.py:429 -msgid "delete the default domain" -msgstr "" - -#: keystone/resource/core.py:440 -msgid "cannot delete a domain that is enabled, please disable it first." -msgstr "" - -#: keystone/resource/core.py:844 -msgid "No options specified" -msgstr "No options specified" - -#: keystone/resource/core.py:850 -#, python-format -msgid "" -"The value of group %(group)s specified in the config should be a " -"dictionary of options" -msgstr "" - -#: keystone/resource/core.py:874 -#, python-format -msgid "" -"Option %(option)s found with no group specified while checking domain " -"configuration request" -msgstr "" - -#: keystone/resource/core.py:881 -#, python-format -msgid "Group %(group)s is not supported for domain specific configurations" -msgstr "" - -#: keystone/resource/core.py:888 -#, python-format -msgid "" -"Option %(option)s in group %(group)s is not supported for domain specific" -" configurations" -msgstr "" - -#: keystone/resource/core.py:941 -msgid "An unexpected error occurred when retrieving domain configs" -msgstr "" - -#: keystone/resource/core.py:1020 keystone/resource/core.py:1104 -#: keystone/resource/core.py:1175 keystone/resource/config_backends/sql.py:70 -#, python-format -msgid "option %(option)s in group %(group)s" -msgstr "" - -#: keystone/resource/core.py:1023 keystone/resource/core.py:1109 -#: keystone/resource/core.py:1171 -#, python-format -msgid "group %(group)s" -msgstr "" - -#: keystone/resource/core.py:1025 -msgid "any options" -msgstr "" - -#: keystone/resource/core.py:1069 -#, python-format -msgid "" -"Trying to update option %(option)s in group %(group)s, so that, and only " -"that, option must be specified in the config" -msgstr "" - -#: keystone/resource/core.py:1074 -#, python-format -msgid "" -"Trying to update group %(group)s, so that, and only that, group must be " -"specified in the config" -msgstr "" - -#: keystone/resource/core.py:1083 -#, python-format -msgid "" -"request to update group %(group)s, but config provided contains group " -"%(group_other)s instead" -msgstr "" - -#: keystone/resource/core.py:1090 -#, python-format -msgid "" -"Trying to update option %(option)s in group %(group)s, but config " -"provided contains option %(option_other)s instead" -msgstr "" - -#: keystone/resource/backends/ldap.py:151 -#: keystone/resource/backends/ldap.py:159 -#: keystone/resource/backends/ldap.py:163 -msgid "Domains are read-only against LDAP" -msgstr "" - -#: keystone/server/eventlet.py:77 -msgid "" -"Running keystone via eventlet is deprecated as of Kilo in favor of " -"running in a WSGI server (e.g. mod_wsgi). Support for keystone under " -"eventlet will be removed in the \"M\"-Release." -msgstr "" - -#: keystone/server/eventlet.py:90 -#, python-format -msgid "Failed to start the %(name)s server" -msgstr "" - -#: keystone/token/controllers.py:392 -#, python-format -msgid "User %(u_id)s is unauthorized for tenant %(t_id)s" -msgstr "User %(u_id)s is unauthorized for tenant %(t_id)s" - -#: keystone/token/controllers.py:411 keystone/token/controllers.py:414 -msgid "Token does not belong to specified tenant." -msgstr "Token does not belong to specified tenant." - -#: keystone/token/persistence/backends/kvs.py:133 -#, python-format -msgid "Unknown token version %s" -msgstr "" - -#: keystone/token/providers/common.py:250 -#: keystone/token/providers/common.py:355 -#, python-format -msgid "User %(user_id)s has no access to project %(project_id)s" -msgstr "User %(user_id)s has no access to project %(project_id)s" - -#: keystone/token/providers/common.py:255 -#: keystone/token/providers/common.py:360 -#, python-format -msgid "User %(user_id)s has no access to domain %(domain_id)s" -msgstr "User %(user_id)s has no access to domain %(domain_id)s" - -#: keystone/token/providers/common.py:282 -msgid "Trustor is disabled." -msgstr "Trustor is disabled." - -#: keystone/token/providers/common.py:346 -msgid "Trustee has no delegated roles." -msgstr "Trustee has no delegated roles." - -#: keystone/token/providers/common.py:407 -#, python-format -msgid "Invalid audit info data type: %(data)s (%(type)s)" -msgstr "" - -#: keystone/token/providers/common.py:435 -msgid "User is not a trustee." -msgstr "User is not a trustee." - -#: keystone/token/providers/common.py:579 -msgid "" -"Attempting to use OS-FEDERATION token with V2 Identity Service, use V3 " -"Authentication" -msgstr "" - -#: keystone/token/providers/common.py:597 -msgid "Domain scoped token is not supported" -msgstr "Domain scoped token is not supported" - -#: keystone/token/providers/pki.py:48 keystone/token/providers/pkiz.py:30 -msgid "Unable to sign token." -msgstr "Unable to sign token." - -#: keystone/token/providers/fernet/core.py:215 -msgid "" -"This is not a v2.0 Fernet token. Use v3 for trust, domain, or federated " -"tokens." -msgstr "" - -#: keystone/token/providers/fernet/token_formatters.py:189 -#, python-format -msgid "This is not a recognized Fernet payload version: %s" -msgstr "" - -#: keystone/trust/controllers.py:148 -msgid "Redelegation allowed for delegated by trust only" -msgstr "" - -#: keystone/trust/controllers.py:181 -msgid "The authenticated user should match the trustor." -msgstr "" - -#: keystone/trust/controllers.py:186 -msgid "At least one role should be specified." -msgstr "" - -#: keystone/trust/core.py:57 -#, python-format -msgid "" -"Remaining redelegation depth of %(redelegation_depth)d out of allowed " -"range of [0..%(max_count)d]" -msgstr "" - -#: keystone/trust/core.py:66 -#, python-format -msgid "" -"Field \"remaining_uses\" is set to %(value)s while it must not be set in " -"order to redelegate a trust" -msgstr "" - -#: keystone/trust/core.py:77 -msgid "Requested expiration time is more than redelegated trust can provide" -msgstr "" - -#: keystone/trust/core.py:87 -msgid "Some of requested roles are not in redelegated trust" -msgstr "" - -#: keystone/trust/core.py:116 -msgid "One of the trust agents is disabled or deleted" -msgstr "" - -#: keystone/trust/core.py:135 -msgid "remaining_uses must be a positive integer or null." -msgstr "" - -#: keystone/trust/core.py:141 -#, python-format -msgid "" -"Requested redelegation depth of %(requested_count)d is greater than " -"allowed %(max_count)d" -msgstr "" - -#: keystone/trust/core.py:147 -msgid "remaining_uses must not be set if redelegation is allowed" -msgstr "" - -#: keystone/trust/core.py:157 -msgid "" -"Modifying \"redelegation_count\" upon redelegation is forbidden. Omitting" -" this parameter is advised." -msgstr "" - diff --git a/keystone/locale/en_GB/LC_MESSAGES/keystone-log-info.po b/keystone/locale/en_GB/LC_MESSAGES/keystone-log-info.po deleted file mode 100644 index a0da5eed32..0000000000 --- a/keystone/locale/en_GB/LC_MESSAGES/keystone-log-info.po +++ /dev/null @@ -1,214 +0,0 @@ -# Translations template for keystone. -# Copyright (C) 2015 OpenStack Foundation -# This file is distributed under the same license as the keystone project. -# -# Translators: -# Andi Chandler , 2014 -msgid "" -msgstr "" -"Project-Id-Version: Keystone\n" -"Report-Msgid-Bugs-To: https://bugs.launchpad.net/keystone\n" -"POT-Creation-Date: 2015-03-09 06:03+0000\n" -"PO-Revision-Date: 2015-03-07 04:31+0000\n" -"Last-Translator: openstackjenkins \n" -"Language-Team: English (United Kingdom) (http://www.transifex.com/projects/p/" -"keystone/language/en_GB/)\n" -"Language: en_GB\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Generated-By: Babel 1.3\n" -"Plural-Forms: nplurals=2; plural=(n != 1);\n" - -#: keystone/assignment/core.py:250 -#, python-format -msgid "Creating the default role %s because it does not exist." -msgstr "" - -#: keystone/assignment/core.py:258 -#, python-format -msgid "Creating the default role %s failed because it was already created" -msgstr "" - -#: keystone/auth/controllers.py:64 -msgid "Loading auth-plugins by class-name is deprecated." -msgstr "" - -#: keystone/auth/controllers.py:106 -#, python-format -msgid "" -"\"expires_at\" has conflicting values %(existing)s and %(new)s. Will use " -"the earliest value." -msgstr "" -"\"expires_at\" has conflicting values %(existing)s and %(new)s. Will use " -"the earliest value." - -#: keystone/common/openssl.py:81 -#, python-format -msgid "Running command - %s" -msgstr "" - -#: keystone/common/wsgi.py:79 -msgid "No bind information present in token" -msgstr "" - -#: keystone/common/wsgi.py:83 -#, python-format -msgid "Named bind mode %s not in bind information" -msgstr "" - -#: keystone/common/wsgi.py:90 -msgid "Kerberos credentials required and not present" -msgstr "" - -#: keystone/common/wsgi.py:94 -msgid "Kerberos credentials do not match those in bind" -msgstr "" - -#: keystone/common/wsgi.py:98 -msgid "Kerberos bind authentication successful" -msgstr "" - -#: keystone/common/wsgi.py:105 -#, python-format -msgid "Couldn't verify unknown bind: {%(bind_type)s: %(identifier)s}" -msgstr "" - -#: keystone/common/environment/eventlet_server.py:103 -#, python-format -msgid "Starting %(arg0)s on %(host)s:%(port)s" -msgstr "" - -#: keystone/common/kvs/core.py:138 -#, python-format -msgid "Adding proxy '%(proxy)s' to KVS %(name)s." -msgstr "" - -#: keystone/common/kvs/core.py:188 -#, python-format -msgid "Using %(func)s as KVS region %(name)s key_mangler" -msgstr "" - -#: keystone/common/kvs/core.py:200 -#, python-format -msgid "Using default dogpile sha1_mangle_key as KVS region %s key_mangler" -msgstr "" - -#: keystone/common/kvs/core.py:210 -#, python-format -msgid "KVS region %s key_mangler disabled." -msgstr "" - -#: keystone/contrib/example/core.py:64 keystone/contrib/example/core.py:73 -#, python-format -msgid "" -"Received the following notification: service %(service)s, resource_type: " -"%(resource_type)s, operation %(operation)s payload %(payload)s" -msgstr "" - -#: keystone/openstack/common/eventlet_backdoor.py:146 -#, python-format -msgid "Eventlet backdoor listening on %(port)s for process %(pid)d" -msgstr "Eventlet backdoor listening on %(port)s for process %(pid)d" - -#: keystone/openstack/common/service.py:173 -#, python-format -msgid "Caught %s, exiting" -msgstr "Caught %s, exiting" - -#: keystone/openstack/common/service.py:231 -msgid "Parent process has died unexpectedly, exiting" -msgstr "Parent process has died unexpectedly, exiting" - -#: keystone/openstack/common/service.py:262 -#, python-format -msgid "Child caught %s, exiting" -msgstr "Child caught %s, exiting" - -#: keystone/openstack/common/service.py:301 -msgid "Forking too fast, sleeping" -msgstr "Forking too fast, sleeping" - -#: keystone/openstack/common/service.py:320 -#, python-format -msgid "Started child %d" -msgstr "Started child %d" - -#: keystone/openstack/common/service.py:330 -#, python-format -msgid "Starting %d workers" -msgstr "Starting %d workers" - -#: keystone/openstack/common/service.py:347 -#, python-format -msgid "Child %(pid)d killed by signal %(sig)d" -msgstr "Child %(pid)d killed by signal %(sig)d" - -#: keystone/openstack/common/service.py:351 -#, python-format -msgid "Child %(pid)s exited with status %(code)d" -msgstr "Child %(pid)s exited with status %(code)d" - -#: keystone/openstack/common/service.py:390 -#, python-format -msgid "Caught %s, stopping children" -msgstr "Caught %s, stopping children" - -#: keystone/openstack/common/service.py:399 -msgid "Wait called after thread killed. Cleaning up." -msgstr "" - -#: keystone/openstack/common/service.py:415 -#, python-format -msgid "Waiting on %d children to exit" -msgstr "Waiting on %d children to exit" - -#: keystone/token/persistence/backends/sql.py:279 -#, python-format -msgid "Total expired tokens removed: %d" -msgstr "Total expired tokens removed: %d" - -#: keystone/token/providers/fernet/utils.py:72 -msgid "" -"[fernet_tokens] key_repository does not appear to exist; attempting to " -"create it" -msgstr "" - -#: keystone/token/providers/fernet/utils.py:130 -#, python-format -msgid "Created a new key: %s" -msgstr "" - -#: keystone/token/providers/fernet/utils.py:143 -msgid "Key repository is already initialized; aborting." -msgstr "" - -#: keystone/token/providers/fernet/utils.py:179 -#, python-format -msgid "Starting key rotation with %(count)s key files: %(list)s" -msgstr "" - -#: keystone/token/providers/fernet/utils.py:185 -#, python-format -msgid "Current primary key is: %s" -msgstr "" - -#: keystone/token/providers/fernet/utils.py:187 -#, python-format -msgid "Next primary key will be: %s" -msgstr "" - -#: keystone/token/providers/fernet/utils.py:197 -#, python-format -msgid "Promoted key 0 to be the primary: %s" -msgstr "" - -#: keystone/token/providers/fernet/utils.py:213 -#, python-format -msgid "Excess keys to purge: %s" -msgstr "" - -#: keystone/token/providers/fernet/utils.py:237 -#, python-format -msgid "Loaded %(count)s encryption keys from: %(dir)s" -msgstr "" diff --git a/keystone/locale/es/LC_MESSAGES/keystone-log-error.po b/keystone/locale/es/LC_MESSAGES/keystone-log-error.po deleted file mode 100644 index d1c2eaa61b..0000000000 --- a/keystone/locale/es/LC_MESSAGES/keystone-log-error.po +++ /dev/null @@ -1,177 +0,0 @@ -# Translations template for keystone. -# Copyright (C) 2015 OpenStack Foundation -# This file is distributed under the same license as the keystone project. -# -# Translators: -msgid "" -msgstr "" -"Project-Id-Version: Keystone\n" -"Report-Msgid-Bugs-To: https://bugs.launchpad.net/keystone\n" -"POT-Creation-Date: 2015-03-09 06:03+0000\n" -"PO-Revision-Date: 2015-03-07 04:31+0000\n" -"Last-Translator: openstackjenkins \n" -"Language-Team: Spanish (http://www.transifex.com/projects/p/keystone/" -"language/es/)\n" -"Language: es\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Generated-By: Babel 1.3\n" -"Plural-Forms: nplurals=2; plural=(n != 1);\n" - -#: keystone/notifications.py:304 -msgid "Failed to construct notifier" -msgstr "" - -#: keystone/notifications.py:389 -#, python-format -msgid "Failed to send %(res_id)s %(event_type)s notification" -msgstr "" - -#: keystone/notifications.py:606 -#, python-format -msgid "Failed to send %(action)s %(event_type)s notification" -msgstr "" - -#: keystone/catalog/core.py:62 -#, python-format -msgid "Malformed endpoint - %(url)r is not a string" -msgstr "" - -#: keystone/catalog/core.py:66 -#, python-format -msgid "Malformed endpoint %(url)s - unknown key %(keyerror)s" -msgstr "" -"Punto final formado incorrectamente %(url)s - clave desconocida %(keyerror)s" - -#: keystone/catalog/core.py:71 -#, python-format -msgid "" -"Malformed endpoint '%(url)s'. The following type error occurred during " -"string substitution: %(typeerror)s" -msgstr "" - -#: keystone/catalog/core.py:77 -#, python-format -msgid "" -"Malformed endpoint %s - incomplete format (are you missing a type notifier ?)" -msgstr "" - -#: keystone/common/openssl.py:93 -#, python-format -msgid "Command %(to_exec)s exited with %(retcode)s- %(output)s" -msgstr "" - -#: keystone/common/openssl.py:121 -#, python-format -msgid "Failed to remove file %(file_path)r: %(error)s" -msgstr "" - -#: keystone/common/utils.py:239 -msgid "" -"Error setting up the debug environment. Verify that the option --debug-url " -"has the format : and that a debugger processes is listening on " -"that port." -msgstr "" -"Error configurando el entorno de depuración. Verifique que la opción --debug-" -"url tiene el formato : y que un proceso de depuración está " -"publicado en ese host y puerto" - -#: keystone/common/cache/core.py:100 -#, python-format -msgid "" -"Unable to build cache config-key. Expected format \":\". " -"Skipping unknown format: %s" -msgstr "" - -#: keystone/common/environment/eventlet_server.py:99 -#, python-format -msgid "Could not bind to %(host)s:%(port)s" -msgstr "No se puede asociar a %(host)s:%(port)s" - -#: keystone/common/environment/eventlet_server.py:185 -msgid "Server error" -msgstr "Error del servidor" - -#: keystone/contrib/endpoint_policy/core.py:129 -#: keystone/contrib/endpoint_policy/core.py:228 -#, python-format -msgid "" -"Circular reference or a repeated entry found in region tree - %(region_id)s." -msgstr "" - -#: keystone/contrib/federation/idp.py:410 -#, python-format -msgid "Error when signing assertion, reason: %(reason)s" -msgstr "" - -#: keystone/contrib/oauth1/core.py:136 -msgid "Cannot retrieve Authorization headers" -msgstr "" - -#: keystone/openstack/common/loopingcall.py:95 -msgid "in fixed duration looping call" -msgstr "en llamada en bucle de duración fija" - -#: keystone/openstack/common/loopingcall.py:138 -msgid "in dynamic looping call" -msgstr "en llamada en bucle dinámica" - -#: keystone/openstack/common/service.py:268 -msgid "Unhandled exception" -msgstr "Excepción no controlada" - -#: keystone/resource/core.py:477 -#, python-format -msgid "" -"Circular reference or a repeated entry found projects hierarchy - " -"%(project_id)s." -msgstr "" - -#: keystone/resource/core.py:939 -#, python-format -msgid "" -"Unexpected results in response for domain config - %(count)s responses, " -"first option is %(option)s, expected option %(expected)s" -msgstr "" - -#: keystone/resource/backends/sql.py:102 keystone/resource/backends/sql.py:121 -#, python-format -msgid "" -"Circular reference or a repeated entry found in projects hierarchy - " -"%(project_id)s." -msgstr "" - -#: keystone/token/provider.py:292 -#, python-format -msgid "Unexpected error or malformed token determining token expiry: %s" -msgstr "" - -#: keystone/token/persistence/backends/kvs.py:226 -#, python-format -msgid "" -"Reinitializing revocation list due to error in loading revocation list from " -"backend. Expected `list` type got `%(type)s`. Old revocation list data: " -"%(list)r" -msgstr "" - -#: keystone/token/providers/common.py:611 -msgid "Failed to validate token" -msgstr "Ha fallado la validación del token" - -#: keystone/token/providers/pki.py:47 -msgid "Unable to sign token" -msgstr "" - -#: keystone/token/providers/fernet/utils.py:38 -#, python-format -msgid "" -"Either [fernet_tokens] key_repository does not exist or Keystone does not " -"have sufficient permission to access it: %s" -msgstr "" - -#: keystone/token/providers/fernet/utils.py:79 -msgid "" -"Failed to create [fernet_tokens] key_repository: either it already exists or " -"you don't have sufficient permissions to create it" -msgstr "" diff --git a/keystone/locale/fr/LC_MESSAGES/keystone-log-warning.po b/keystone/locale/fr/LC_MESSAGES/keystone-log-warning.po deleted file mode 100644 index f2055f07a2..0000000000 --- a/keystone/locale/fr/LC_MESSAGES/keystone-log-warning.po +++ /dev/null @@ -1,298 +0,0 @@ -# Translations template for keystone. -# Copyright (C) 2015 OpenStack Foundation -# This file is distributed under the same license as the keystone project. -# -# Translators: -# Bruno Cornec , 2014 -# Maxime COQUEREL , 2014 -msgid "" -msgstr "" -"Project-Id-Version: Keystone\n" -"Report-Msgid-Bugs-To: https://bugs.launchpad.net/keystone\n" -"POT-Creation-Date: 2015-03-29 06:05+0000\n" -"PO-Revision-Date: 2015-03-27 15:26+0000\n" -"Last-Translator: openstackjenkins \n" -"Language-Team: French (http://www.transifex.com/projects/p/keystone/language/" -"fr/)\n" -"Language: fr\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Generated-By: Babel 1.3\n" -"Plural-Forms: nplurals=2; plural=(n > 1);\n" - -#: keystone/cli.py:160 -msgid "keystone-manage pki_setup is not recommended for production use." -msgstr "" -"keystone-manage pki_setup n'est pas recommandé pour une utilisation en " -"production." - -#: keystone/cli.py:179 -msgid "keystone-manage ssl_setup is not recommended for production use." -msgstr "" -"keystone-manage ssl_setup n'est pas recommandé pour une utilisation en " -"production." - -#: keystone/cli.py:494 -#, python-format -msgid "Ignoring file (%s) while scanning domain config directory" -msgstr "" - -#: keystone/exception.py:49 -msgid "missing exception kwargs (programmer error)" -msgstr "" - -#: keystone/assignment/controllers.py:60 -#, python-format -msgid "Authentication failed: %s" -msgstr "L'authentification a échoué: %s" - -#: keystone/assignment/controllers.py:592 -#, python-format -msgid "" -"Group %(group)s not found for role-assignment - %(target)s with Role: " -"%(role)s" -msgstr "" - -#: keystone/auth/controllers.py:449 -#, python-format -msgid "" -"User %(user_id)s doesn't have access to default project %(project_id)s. The " -"token will be unscoped rather than scoped to the project." -msgstr "" - -#: keystone/auth/controllers.py:457 -#, python-format -msgid "" -"User %(user_id)s's default project %(project_id)s is disabled. The token " -"will be unscoped rather than scoped to the project." -msgstr "" - -#: keystone/auth/controllers.py:466 -#, python-format -msgid "" -"User %(user_id)s's default project %(project_id)s not found. The token will " -"be unscoped rather than scoped to the project." -msgstr "" - -#: keystone/common/authorization.py:55 -msgid "RBAC: Invalid user data in token" -msgstr "RBAC: Donnée utilisation non valide dans le token" - -#: keystone/common/controller.py:79 keystone/middleware/core.py:224 -msgid "RBAC: Invalid token" -msgstr "RBAC : Jeton non valide" - -#: keystone/common/controller.py:104 keystone/common/controller.py:201 -#: keystone/common/controller.py:774 -msgid "RBAC: Bypassing authorization" -msgstr "RBAC : Autorisation ignorée" - -#: keystone/common/controller.py:703 keystone/common/controller.py:738 -msgid "Invalid token found while getting domain ID for list request" -msgstr "" - -#: keystone/common/controller.py:711 -msgid "No domain information specified as part of list request" -msgstr "" - -#: keystone/common/utils.py:103 -#, python-format -msgid "Truncating user password to %d characters." -msgstr "" - -#: keystone/common/wsgi.py:242 -#, python-format -msgid "Authorization failed. %(exception)s from %(remote_addr)s" -msgstr "Echec d'autorisation. %(exception)s depuis %(remote_addr)s" - -#: keystone/common/wsgi.py:361 -msgid "Invalid token in _get_trust_id_for_request" -msgstr "Jeton invalide dans _get_trust_id_for_request" - -#: keystone/common/cache/backends/mongo.py:403 -#, python-format -msgid "" -"TTL index already exists on db collection <%(c_name)s>, remove index <" -"%(indx_name)s> first to make updated mongo_ttl_seconds value to be effective" -msgstr "" - -#: keystone/common/kvs/core.py:134 -#, python-format -msgid "%s is not a dogpile.proxy.ProxyBackend" -msgstr "%s n'est pas un dogpile.proxy.ProxyBackend" - -#: keystone/common/kvs/core.py:403 -#, python-format -msgid "KVS lock released (timeout reached) for: %s" -msgstr "Verrou KVS relaché (temps limite atteint) pour : %s" - -#: keystone/common/ldap/core.py:1026 -msgid "" -"LDAP Server does not support paging. Disable paging in keystone.conf to " -"avoid this message." -msgstr "" -"Le serveur LDAP ne prend pas en charge la pagination. Désactivez la " -"pagination dans keystone.conf pour éviter de recevoir ce message." - -#: keystone/common/ldap/core.py:1224 -#, python-format -msgid "" -"Invalid additional attribute mapping: \"%s\". Format must be " -":" -msgstr "" -"Mauvais mappage d'attribut additionnel: \"%s\". Le format doit être " -":" - -#: keystone/common/ldap/core.py:1335 -#, python-format -msgid "" -"ID attribute %(id_attr)s for LDAP object %(dn)s has multiple values and " -"therefore cannot be used as an ID. Will get the ID from DN instead" -msgstr "" -"L'attribut ID %(id_attr)s pour l'objet LDAP %(dn)s a de multiples valeurs et " -"par conséquent ne peut être utilisé comme un ID. Obtention de l'ID depuis le " -"DN à la place." - -#: keystone/common/ldap/core.py:1668 -#, python-format -msgid "" -"When deleting entries for %(search_base)s, could not delete nonexistent " -"entries %(entries)s%(dots)s" -msgstr "" - -#: keystone/contrib/endpoint_policy/core.py:91 -#, python-format -msgid "" -"Endpoint %(endpoint_id)s referenced in association for policy %(policy_id)s " -"not found." -msgstr "" -"Le point d'entrée %(endpoint_id)s référencé en association avec la politique " -"%(policy_id)s est introuvable." - -#: keystone/contrib/endpoint_policy/core.py:179 -#, python-format -msgid "" -"Unsupported policy association found - Policy %(policy_id)s, Endpoint " -"%(endpoint_id)s, Service %(service_id)s, Region %(region_id)s, " -msgstr "" - -#: keystone/contrib/endpoint_policy/core.py:195 -#, python-format -msgid "" -"Policy %(policy_id)s referenced in association for endpoint %(endpoint_id)s " -"not found." -msgstr "" - -#: keystone/contrib/federation/utils.py:539 -msgid "Ignoring user name" -msgstr "" - -#: keystone/identity/controllers.py:139 -#, python-format -msgid "Unable to remove user %(user)s from %(tenant)s." -msgstr "Impossible de supprimer l'utilisateur %(user)s depuis %(tenant)s." - -#: keystone/identity/controllers.py:158 -#, python-format -msgid "Unable to add user %(user)s to %(tenant)s." -msgstr "Impossible d'ajouter l'utilisateur %(user)s à %(tenant)s." - -#: keystone/identity/core.py:122 -#, python-format -msgid "Invalid domain name (%s) found in config file name" -msgstr "Non de domaine trouvé non valide (%s) dans le fichier de configuration" - -#: keystone/identity/core.py:160 -#, python-format -msgid "Unable to locate domain config directory: %s" -msgstr "Impossible de localiser le répertoire de configuration domaine: %s" - -#: keystone/middleware/core.py:149 -msgid "" -"XML support has been removed as of the Kilo release and should not be " -"referenced or used in deployment. Please remove references to " -"XmlBodyMiddleware from your configuration. This compatibility stub will be " -"removed in the L release" -msgstr "" - -#: keystone/middleware/core.py:234 -msgid "Auth context already exists in the request environment" -msgstr "" - -#: keystone/openstack/common/loopingcall.py:87 -#, python-format -msgid "task %(func_name)r run outlasted interval by %(delay).2f sec" -msgstr "" - -#: keystone/openstack/common/service.py:351 -#, python-format -msgid "pid %d not in child list" -msgstr "PID %d absent de la liste d'enfants" - -#: keystone/resource/core.py:1222 -#, python-format -msgid "" -"Found what looks like an unmatched config option substitution reference - " -"domain: %(domain)s, group: %(group)s, option: %(option)s, value: %(value)s. " -"Perhaps the config option to which it refers has yet to be added?" -msgstr "" - -#: keystone/resource/core.py:1229 -#, python-format -msgid "" -"Found what looks like an incorrectly constructed config option substitution " -"reference - domain: %(domain)s, group: %(group)s, option: %(option)s, value: " -"%(value)s." -msgstr "" - -#: keystone/token/persistence/core.py:227 -#, python-format -msgid "" -"`token_api.%s` is deprecated as of Juno in favor of utilizing methods on " -"`token_provider_api` and may be removed in Kilo." -msgstr "" - -#: keystone/token/persistence/backends/kvs.py:57 -msgid "" -"It is recommended to only use the base key-value-store implementation for " -"the token driver for testing purposes. Please use keystone.token.persistence." -"backends.memcache.Token or keystone.token.persistence.backends.sql.Token " -"instead." -msgstr "" - -#: keystone/token/persistence/backends/kvs.py:206 -#, python-format -msgid "Token `%s` is expired, not adding to the revocation list." -msgstr "" - -#: keystone/token/persistence/backends/kvs.py:240 -#, python-format -msgid "" -"Removing `%s` from revocation list due to invalid expires data in revocation " -"list." -msgstr "" - -#: keystone/token/providers/fernet/utils.py:46 -#, python-format -msgid "[fernet_tokens] key_repository is world readable: %s" -msgstr "" - -#: keystone/token/providers/fernet/utils.py:90 -#, python-format -msgid "" -"Unable to change the ownership of [fernet_tokens] key_repository without a " -"keystone user ID and keystone group ID both being provided: %s" -msgstr "" - -#: keystone/token/providers/fernet/utils.py:112 -#, python-format -msgid "" -"Unable to change the ownership of the new key without a keystone user ID and " -"keystone group ID both being provided: %s" -msgstr "" - -#: keystone/token/providers/fernet/utils.py:204 -msgid "" -"[fernet_tokens] max_active_keys must be at least 1 to maintain a primary key." -msgstr "" diff --git a/keystone/locale/it/LC_MESSAGES/keystone-log-error.po b/keystone/locale/it/LC_MESSAGES/keystone-log-error.po deleted file mode 100644 index d6ac2cf74c..0000000000 --- a/keystone/locale/it/LC_MESSAGES/keystone-log-error.po +++ /dev/null @@ -1,173 +0,0 @@ -# Translations template for keystone. -# Copyright (C) 2015 OpenStack Foundation -# This file is distributed under the same license as the keystone project. -# -# Translators: -msgid "" -msgstr "" -"Project-Id-Version: Keystone\n" -"Report-Msgid-Bugs-To: https://bugs.launchpad.net/keystone\n" -"POT-Creation-Date: 2015-03-09 06:03+0000\n" -"PO-Revision-Date: 2015-03-07 04:31+0000\n" -"Last-Translator: openstackjenkins \n" -"Language-Team: Italian (http://www.transifex.com/projects/p/keystone/" -"language/it/)\n" -"Language: it\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Generated-By: Babel 1.3\n" -"Plural-Forms: nplurals=2; plural=(n != 1);\n" - -#: keystone/notifications.py:304 -msgid "Failed to construct notifier" -msgstr "" - -#: keystone/notifications.py:389 -#, python-format -msgid "Failed to send %(res_id)s %(event_type)s notification" -msgstr "" - -#: keystone/notifications.py:606 -#, python-format -msgid "Failed to send %(action)s %(event_type)s notification" -msgstr "" - -#: keystone/catalog/core.py:62 -#, python-format -msgid "Malformed endpoint - %(url)r is not a string" -msgstr "" - -#: keystone/catalog/core.py:66 -#, python-format -msgid "Malformed endpoint %(url)s - unknown key %(keyerror)s" -msgstr "Endpoint %(url)s non valdio - chiave sconosciuta %(keyerror)s" - -#: keystone/catalog/core.py:71 -#, python-format -msgid "" -"Malformed endpoint '%(url)s'. The following type error occurred during " -"string substitution: %(typeerror)s" -msgstr "" - -#: keystone/catalog/core.py:77 -#, python-format -msgid "" -"Malformed endpoint %s - incomplete format (are you missing a type notifier ?)" -msgstr "" - -#: keystone/common/openssl.py:93 -#, python-format -msgid "Command %(to_exec)s exited with %(retcode)s- %(output)s" -msgstr "" - -#: keystone/common/openssl.py:121 -#, python-format -msgid "Failed to remove file %(file_path)r: %(error)s" -msgstr "" - -#: keystone/common/utils.py:239 -msgid "" -"Error setting up the debug environment. Verify that the option --debug-url " -"has the format : and that a debugger processes is listening on " -"that port." -msgstr "" - -#: keystone/common/cache/core.py:100 -#, python-format -msgid "" -"Unable to build cache config-key. Expected format \":\". " -"Skipping unknown format: %s" -msgstr "" - -#: keystone/common/environment/eventlet_server.py:99 -#, python-format -msgid "Could not bind to %(host)s:%(port)s" -msgstr "Impossible fare il bind verso %(host)s:%(port)s" - -#: keystone/common/environment/eventlet_server.py:185 -msgid "Server error" -msgstr "Errore del server" - -#: keystone/contrib/endpoint_policy/core.py:129 -#: keystone/contrib/endpoint_policy/core.py:228 -#, python-format -msgid "" -"Circular reference or a repeated entry found in region tree - %(region_id)s." -msgstr "" - -#: keystone/contrib/federation/idp.py:410 -#, python-format -msgid "Error when signing assertion, reason: %(reason)s" -msgstr "" - -#: keystone/contrib/oauth1/core.py:136 -msgid "Cannot retrieve Authorization headers" -msgstr "" - -#: keystone/openstack/common/loopingcall.py:95 -msgid "in fixed duration looping call" -msgstr "chiamata in loop a durata fissa" - -#: keystone/openstack/common/loopingcall.py:138 -msgid "in dynamic looping call" -msgstr "chiamata in loop dinamico" - -#: keystone/openstack/common/service.py:268 -msgid "Unhandled exception" -msgstr "Eccezione non gestita" - -#: keystone/resource/core.py:477 -#, python-format -msgid "" -"Circular reference or a repeated entry found projects hierarchy - " -"%(project_id)s." -msgstr "" - -#: keystone/resource/core.py:939 -#, python-format -msgid "" -"Unexpected results in response for domain config - %(count)s responses, " -"first option is %(option)s, expected option %(expected)s" -msgstr "" - -#: keystone/resource/backends/sql.py:102 keystone/resource/backends/sql.py:121 -#, python-format -msgid "" -"Circular reference or a repeated entry found in projects hierarchy - " -"%(project_id)s." -msgstr "" - -#: keystone/token/provider.py:292 -#, python-format -msgid "Unexpected error or malformed token determining token expiry: %s" -msgstr "" - -#: keystone/token/persistence/backends/kvs.py:226 -#, python-format -msgid "" -"Reinitializing revocation list due to error in loading revocation list from " -"backend. Expected `list` type got `%(type)s`. Old revocation list data: " -"%(list)r" -msgstr "" - -#: keystone/token/providers/common.py:611 -msgid "Failed to validate token" -msgstr "" - -#: keystone/token/providers/pki.py:47 -msgid "Unable to sign token" -msgstr "" - -#: keystone/token/providers/fernet/utils.py:38 -#, python-format -msgid "" -"Either [fernet_tokens] key_repository does not exist or Keystone does not " -"have sufficient permission to access it: %s" -msgstr "" - -#: keystone/token/providers/fernet/utils.py:79 -msgid "" -"Failed to create [fernet_tokens] key_repository: either it already exists or " -"you don't have sufficient permissions to create it" -msgstr "" diff --git a/keystone/locale/it/LC_MESSAGES/keystone-log-info.po b/keystone/locale/it/LC_MESSAGES/keystone-log-info.po deleted file mode 100644 index b88a5de845..0000000000 --- a/keystone/locale/it/LC_MESSAGES/keystone-log-info.po +++ /dev/null @@ -1,211 +0,0 @@ -# Translations template for keystone. -# Copyright (C) 2015 OpenStack Foundation -# This file is distributed under the same license as the keystone project. -# -# Translators: -msgid "" -msgstr "" -"Project-Id-Version: Keystone\n" -"Report-Msgid-Bugs-To: https://bugs.launchpad.net/keystone\n" -"POT-Creation-Date: 2015-03-09 06:03+0000\n" -"PO-Revision-Date: 2015-03-07 04:31+0000\n" -"Last-Translator: openstackjenkins \n" -"Language-Team: Italian (http://www.transifex.com/projects/p/keystone/" -"language/it/)\n" -"Language: it\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Generated-By: Babel 1.3\n" -"Plural-Forms: nplurals=2; plural=(n != 1);\n" - -#: keystone/assignment/core.py:250 -#, python-format -msgid "Creating the default role %s because it does not exist." -msgstr "" - -#: keystone/assignment/core.py:258 -#, python-format -msgid "Creating the default role %s failed because it was already created" -msgstr "" - -#: keystone/auth/controllers.py:64 -msgid "Loading auth-plugins by class-name is deprecated." -msgstr "" - -#: keystone/auth/controllers.py:106 -#, python-format -msgid "" -"\"expires_at\" has conflicting values %(existing)s and %(new)s. Will use " -"the earliest value." -msgstr "" - -#: keystone/common/openssl.py:81 -#, python-format -msgid "Running command - %s" -msgstr "" - -#: keystone/common/wsgi.py:79 -msgid "No bind information present in token" -msgstr "" - -#: keystone/common/wsgi.py:83 -#, python-format -msgid "Named bind mode %s not in bind information" -msgstr "" - -#: keystone/common/wsgi.py:90 -msgid "Kerberos credentials required and not present" -msgstr "" - -#: keystone/common/wsgi.py:94 -msgid "Kerberos credentials do not match those in bind" -msgstr "" - -#: keystone/common/wsgi.py:98 -msgid "Kerberos bind authentication successful" -msgstr "" - -#: keystone/common/wsgi.py:105 -#, python-format -msgid "Couldn't verify unknown bind: {%(bind_type)s: %(identifier)s}" -msgstr "" - -#: keystone/common/environment/eventlet_server.py:103 -#, python-format -msgid "Starting %(arg0)s on %(host)s:%(port)s" -msgstr "Avvio %(arg0)s in %(host)s:%(port)s" - -#: keystone/common/kvs/core.py:138 -#, python-format -msgid "Adding proxy '%(proxy)s' to KVS %(name)s." -msgstr "" - -#: keystone/common/kvs/core.py:188 -#, python-format -msgid "Using %(func)s as KVS region %(name)s key_mangler" -msgstr "" - -#: keystone/common/kvs/core.py:200 -#, python-format -msgid "Using default dogpile sha1_mangle_key as KVS region %s key_mangler" -msgstr "" - -#: keystone/common/kvs/core.py:210 -#, python-format -msgid "KVS region %s key_mangler disabled." -msgstr "" - -#: keystone/contrib/example/core.py:64 keystone/contrib/example/core.py:73 -#, python-format -msgid "" -"Received the following notification: service %(service)s, resource_type: " -"%(resource_type)s, operation %(operation)s payload %(payload)s" -msgstr "" - -#: keystone/openstack/common/eventlet_backdoor.py:146 -#, python-format -msgid "Eventlet backdoor listening on %(port)s for process %(pid)d" -msgstr "Ascolto di eventlet backdoor su %(port)s per il processo %(pid)d" - -#: keystone/openstack/common/service.py:173 -#, python-format -msgid "Caught %s, exiting" -msgstr "Rilevato %s, esistente" - -#: keystone/openstack/common/service.py:231 -msgid "Parent process has died unexpectedly, exiting" -msgstr "Il processo principale è stato interrotto inaspettatamente, uscire" - -#: keystone/openstack/common/service.py:262 -#, python-format -msgid "Child caught %s, exiting" -msgstr "Cogliere Child %s, uscendo" - -#: keystone/openstack/common/service.py:301 -msgid "Forking too fast, sleeping" -msgstr "Sblocco troppo veloce, attendere" - -#: keystone/openstack/common/service.py:320 -#, python-format -msgid "Started child %d" -msgstr "Child avviato %d" - -#: keystone/openstack/common/service.py:330 -#, python-format -msgid "Starting %d workers" -msgstr "Avvio %d operatori" - -#: keystone/openstack/common/service.py:347 -#, python-format -msgid "Child %(pid)d killed by signal %(sig)d" -msgstr "Child %(pid)d interrotto dal segnale %(sig)d" - -#: keystone/openstack/common/service.py:351 -#, python-format -msgid "Child %(pid)s exited with status %(code)d" -msgstr "Child %(pid)s terminato con stato %(code)d" - -#: keystone/openstack/common/service.py:390 -#, python-format -msgid "Caught %s, stopping children" -msgstr "Intercettato %s, arresto in corso dei children" - -#: keystone/openstack/common/service.py:399 -msgid "Wait called after thread killed. Cleaning up." -msgstr "" - -#: keystone/openstack/common/service.py:415 -#, python-format -msgid "Waiting on %d children to exit" -msgstr "In attesa %d degli elementi secondari per uscire" - -#: keystone/token/persistence/backends/sql.py:279 -#, python-format -msgid "Total expired tokens removed: %d" -msgstr "" - -#: keystone/token/providers/fernet/utils.py:72 -msgid "" -"[fernet_tokens] key_repository does not appear to exist; attempting to " -"create it" -msgstr "" - -#: keystone/token/providers/fernet/utils.py:130 -#, python-format -msgid "Created a new key: %s" -msgstr "" - -#: keystone/token/providers/fernet/utils.py:143 -msgid "Key repository is already initialized; aborting." -msgstr "" - -#: keystone/token/providers/fernet/utils.py:179 -#, python-format -msgid "Starting key rotation with %(count)s key files: %(list)s" -msgstr "" - -#: keystone/token/providers/fernet/utils.py:185 -#, python-format -msgid "Current primary key is: %s" -msgstr "" - -#: keystone/token/providers/fernet/utils.py:187 -#, python-format -msgid "Next primary key will be: %s" -msgstr "" - -#: keystone/token/providers/fernet/utils.py:197 -#, python-format -msgid "Promoted key 0 to be the primary: %s" -msgstr "" - -#: keystone/token/providers/fernet/utils.py:213 -#, python-format -msgid "Excess keys to purge: %s" -msgstr "" - -#: keystone/token/providers/fernet/utils.py:237 -#, python-format -msgid "Loaded %(count)s encryption keys from: %(dir)s" -msgstr "" diff --git a/keystone/locale/ja/LC_MESSAGES/keystone-log-error.po b/keystone/locale/ja/LC_MESSAGES/keystone-log-error.po deleted file mode 100644 index d3e6062fef..0000000000 --- a/keystone/locale/ja/LC_MESSAGES/keystone-log-error.po +++ /dev/null @@ -1,177 +0,0 @@ -# Translations template for keystone. -# Copyright (C) 2015 OpenStack Foundation -# This file is distributed under the same license as the keystone project. -# -# Translators: -# Kuo(Kyohei MORIYAMA) <>, 2014 -msgid "" -msgstr "" -"Project-Id-Version: Keystone\n" -"Report-Msgid-Bugs-To: https://bugs.launchpad.net/keystone\n" -"POT-Creation-Date: 2015-03-09 06:03+0000\n" -"PO-Revision-Date: 2015-03-07 04:31+0000\n" -"Last-Translator: openstackjenkins \n" -"Language-Team: Japanese (http://www.transifex.com/projects/p/keystone/" -"language/ja/)\n" -"Language: ja\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Generated-By: Babel 1.3\n" -"Plural-Forms: nplurals=1; plural=0;\n" - -#: keystone/notifications.py:304 -msgid "Failed to construct notifier" -msgstr "" - -#: keystone/notifications.py:389 -#, python-format -msgid "Failed to send %(res_id)s %(event_type)s notification" -msgstr "" - -#: keystone/notifications.py:606 -#, python-format -msgid "Failed to send %(action)s %(event_type)s notification" -msgstr "" - -#: keystone/catalog/core.py:62 -#, python-format -msgid "Malformed endpoint - %(url)r is not a string" -msgstr "" - -#: keystone/catalog/core.py:66 -#, python-format -msgid "Malformed endpoint %(url)s - unknown key %(keyerror)s" -msgstr "不正な形式のエンドポイント %(url)s - 未知のキー %(keyerror)s" - -#: keystone/catalog/core.py:71 -#, python-format -msgid "" -"Malformed endpoint '%(url)s'. The following type error occurred during " -"string substitution: %(typeerror)s" -msgstr "" - -#: keystone/catalog/core.py:77 -#, python-format -msgid "" -"Malformed endpoint %s - incomplete format (are you missing a type notifier ?)" -msgstr "" - -#: keystone/common/openssl.py:93 -#, python-format -msgid "Command %(to_exec)s exited with %(retcode)s- %(output)s" -msgstr "" - -#: keystone/common/openssl.py:121 -#, python-format -msgid "Failed to remove file %(file_path)r: %(error)s" -msgstr "" - -#: keystone/common/utils.py:239 -msgid "" -"Error setting up the debug environment. Verify that the option --debug-url " -"has the format : and that a debugger processes is listening on " -"that port." -msgstr "" -"デバッグ環境のセットアップ中にエラーが発生しました。オプション --debug-url " -"が : の形式を持ち、デバッガープロセスがそのポートにおいてリッスン" -"していることを確認してください。" - -#: keystone/common/cache/core.py:100 -#, python-format -msgid "" -"Unable to build cache config-key. Expected format \":\". " -"Skipping unknown format: %s" -msgstr "" - -#: keystone/common/environment/eventlet_server.py:99 -#, python-format -msgid "Could not bind to %(host)s:%(port)s" -msgstr "%(host)s:%(port)s がバインドできません。" - -#: keystone/common/environment/eventlet_server.py:185 -msgid "Server error" -msgstr "内部サーバーエラー" - -#: keystone/contrib/endpoint_policy/core.py:129 -#: keystone/contrib/endpoint_policy/core.py:228 -#, python-format -msgid "" -"Circular reference or a repeated entry found in region tree - %(region_id)s." -msgstr "" - -#: keystone/contrib/federation/idp.py:410 -#, python-format -msgid "Error when signing assertion, reason: %(reason)s" -msgstr "サインアサーション時にエラーが発生しました。理由:%(reason)s" - -#: keystone/contrib/oauth1/core.py:136 -msgid "Cannot retrieve Authorization headers" -msgstr "" - -#: keystone/openstack/common/loopingcall.py:95 -msgid "in fixed duration looping call" -msgstr "一定期間の呼び出しループ" - -#: keystone/openstack/common/loopingcall.py:138 -msgid "in dynamic looping call" -msgstr "動的呼び出しループ" - -#: keystone/openstack/common/service.py:268 -msgid "Unhandled exception" -msgstr "未処理例外" - -#: keystone/resource/core.py:477 -#, python-format -msgid "" -"Circular reference or a repeated entry found projects hierarchy - " -"%(project_id)s." -msgstr "" - -#: keystone/resource/core.py:939 -#, python-format -msgid "" -"Unexpected results in response for domain config - %(count)s responses, " -"first option is %(option)s, expected option %(expected)s" -msgstr "" - -#: keystone/resource/backends/sql.py:102 keystone/resource/backends/sql.py:121 -#, python-format -msgid "" -"Circular reference or a repeated entry found in projects hierarchy - " -"%(project_id)s." -msgstr "" - -#: keystone/token/provider.py:292 -#, python-format -msgid "Unexpected error or malformed token determining token expiry: %s" -msgstr "" - -#: keystone/token/persistence/backends/kvs.py:226 -#, python-format -msgid "" -"Reinitializing revocation list due to error in loading revocation list from " -"backend. Expected `list` type got `%(type)s`. Old revocation list data: " -"%(list)r" -msgstr "" - -#: keystone/token/providers/common.py:611 -msgid "Failed to validate token" -msgstr "" - -#: keystone/token/providers/pki.py:47 -msgid "Unable to sign token" -msgstr "" - -#: keystone/token/providers/fernet/utils.py:38 -#, python-format -msgid "" -"Either [fernet_tokens] key_repository does not exist or Keystone does not " -"have sufficient permission to access it: %s" -msgstr "" - -#: keystone/token/providers/fernet/utils.py:79 -msgid "" -"Failed to create [fernet_tokens] key_repository: either it already exists or " -"you don't have sufficient permissions to create it" -msgstr "" diff --git a/keystone/locale/pt_BR/LC_MESSAGES/keystone-log-error.po b/keystone/locale/pt_BR/LC_MESSAGES/keystone-log-error.po deleted file mode 100644 index 5f81b98d69..0000000000 --- a/keystone/locale/pt_BR/LC_MESSAGES/keystone-log-error.po +++ /dev/null @@ -1,179 +0,0 @@ -# Translations template for keystone. -# Copyright (C) 2015 OpenStack Foundation -# This file is distributed under the same license as the keystone project. -# -# Translators: -msgid "" -msgstr "" -"Project-Id-Version: Keystone\n" -"Report-Msgid-Bugs-To: https://bugs.launchpad.net/keystone\n" -"POT-Creation-Date: 2015-03-09 06:03+0000\n" -"PO-Revision-Date: 2015-03-07 04:31+0000\n" -"Last-Translator: openstackjenkins \n" -"Language-Team: Portuguese (Brazil) (http://www.transifex.com/projects/p/" -"keystone/language/pt_BR/)\n" -"Language: pt_BR\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Generated-By: Babel 1.3\n" -"Plural-Forms: nplurals=2; plural=(n > 1);\n" - -#: keystone/notifications.py:304 -msgid "Failed to construct notifier" -msgstr "" - -#: keystone/notifications.py:389 -#, python-format -msgid "Failed to send %(res_id)s %(event_type)s notification" -msgstr "Falha ao enviar notificação %(res_id)s %(event_type)s" - -#: keystone/notifications.py:606 -#, python-format -msgid "Failed to send %(action)s %(event_type)s notification" -msgstr "" - -#: keystone/catalog/core.py:62 -#, python-format -msgid "Malformed endpoint - %(url)r is not a string" -msgstr "" - -#: keystone/catalog/core.py:66 -#, python-format -msgid "Malformed endpoint %(url)s - unknown key %(keyerror)s" -msgstr "Endpoint mal formado %(url)s - chave desconhecida %(keyerror)s" - -#: keystone/catalog/core.py:71 -#, python-format -msgid "" -"Malformed endpoint '%(url)s'. The following type error occurred during " -"string substitution: %(typeerror)s" -msgstr "" - -#: keystone/catalog/core.py:77 -#, python-format -msgid "" -"Malformed endpoint %s - incomplete format (are you missing a type notifier ?)" -msgstr "" - -#: keystone/common/openssl.py:93 -#, python-format -msgid "Command %(to_exec)s exited with %(retcode)s- %(output)s" -msgstr "" - -#: keystone/common/openssl.py:121 -#, python-format -msgid "Failed to remove file %(file_path)r: %(error)s" -msgstr "" - -#: keystone/common/utils.py:239 -msgid "" -"Error setting up the debug environment. Verify that the option --debug-url " -"has the format : and that a debugger processes is listening on " -"that port." -msgstr "" -"Erro configurando o ambiente de debug. Verifique que a opção --debug-url " -"possui o formato : e que o processo debugger está escutando " -"nesta porta." - -#: keystone/common/cache/core.py:100 -#, python-format -msgid "" -"Unable to build cache config-key. Expected format \":\". " -"Skipping unknown format: %s" -msgstr "" -"Não é possível construir chave de configuração do cache. Formato esperado " -"\":\". Pulando formato desconhecido: %s" - -#: keystone/common/environment/eventlet_server.py:99 -#, python-format -msgid "Could not bind to %(host)s:%(port)s" -msgstr "" - -#: keystone/common/environment/eventlet_server.py:185 -msgid "Server error" -msgstr "Erro do servidor" - -#: keystone/contrib/endpoint_policy/core.py:129 -#: keystone/contrib/endpoint_policy/core.py:228 -#, python-format -msgid "" -"Circular reference or a repeated entry found in region tree - %(region_id)s." -msgstr "" - -#: keystone/contrib/federation/idp.py:410 -#, python-format -msgid "Error when signing assertion, reason: %(reason)s" -msgstr "" - -#: keystone/contrib/oauth1/core.py:136 -msgid "Cannot retrieve Authorization headers" -msgstr "" - -#: keystone/openstack/common/loopingcall.py:95 -msgid "in fixed duration looping call" -msgstr "em uma chamada de laço de duração fixa" - -#: keystone/openstack/common/loopingcall.py:138 -msgid "in dynamic looping call" -msgstr "em chamada de laço dinâmico" - -#: keystone/openstack/common/service.py:268 -msgid "Unhandled exception" -msgstr "Exceção não tratada" - -#: keystone/resource/core.py:477 -#, python-format -msgid "" -"Circular reference or a repeated entry found projects hierarchy - " -"%(project_id)s." -msgstr "" - -#: keystone/resource/core.py:939 -#, python-format -msgid "" -"Unexpected results in response for domain config - %(count)s responses, " -"first option is %(option)s, expected option %(expected)s" -msgstr "" - -#: keystone/resource/backends/sql.py:102 keystone/resource/backends/sql.py:121 -#, python-format -msgid "" -"Circular reference or a repeated entry found in projects hierarchy - " -"%(project_id)s." -msgstr "" - -#: keystone/token/provider.py:292 -#, python-format -msgid "Unexpected error or malformed token determining token expiry: %s" -msgstr "" -"Erro inesperado ou token mal formado ao determinar validade do token: %s" - -#: keystone/token/persistence/backends/kvs.py:226 -#, python-format -msgid "" -"Reinitializing revocation list due to error in loading revocation list from " -"backend. Expected `list` type got `%(type)s`. Old revocation list data: " -"%(list)r" -msgstr "" - -#: keystone/token/providers/common.py:611 -msgid "Failed to validate token" -msgstr "Falha ao validar token" - -#: keystone/token/providers/pki.py:47 -msgid "Unable to sign token" -msgstr "" - -#: keystone/token/providers/fernet/utils.py:38 -#, python-format -msgid "" -"Either [fernet_tokens] key_repository does not exist or Keystone does not " -"have sufficient permission to access it: %s" -msgstr "" - -#: keystone/token/providers/fernet/utils.py:79 -msgid "" -"Failed to create [fernet_tokens] key_repository: either it already exists or " -"you don't have sufficient permissions to create it" -msgstr "" diff --git a/keystone/locale/pt_BR/LC_MESSAGES/keystone.po b/keystone/locale/pt_BR/LC_MESSAGES/keystone.po deleted file mode 100644 index d9961293cb..0000000000 --- a/keystone/locale/pt_BR/LC_MESSAGES/keystone.po +++ /dev/null @@ -1,1552 +0,0 @@ -# Portuguese (Brazil) translations for keystone. -# Copyright (C) 2015 OpenStack Foundation -# This file is distributed under the same license as the keystone project. -# -# Translators: -# Gabriel Wainer, 2013 -# Lucas Ribeiro , 2014 -# Volmar Oliveira Junior , 2013 -msgid "" -msgstr "" -"Project-Id-Version: Keystone\n" -"Report-Msgid-Bugs-To: https://bugs.launchpad.net/keystone\n" -"POT-Creation-Date: 2015-04-03 06:03+0000\n" -"PO-Revision-Date: 2015-04-02 16:08+0000\n" -"Last-Translator: openstackjenkins \n" -"Language-Team: Portuguese (Brazil) " -"(http://www.transifex.com/projects/p/keystone/language/pt_BR/)\n" -"Plural-Forms: nplurals=2; plural=(n > 1)\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=utf-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Generated-By: Babel 1.3\n" - -#: keystone/clean.py:24 -#, python-format -msgid "%s cannot be empty." -msgstr "%s não pode estar vazio." - -#: keystone/clean.py:26 -#, python-format -msgid "%(property_name)s cannot be less than %(min_length)s characters." -msgstr "%(property_name)s não pode ter menos de %(min_length)s caracteres." - -#: keystone/clean.py:31 -#, python-format -msgid "%(property_name)s should not be greater than %(max_length)s characters." -msgstr "%(property_name)s não deve ter mais de %(max_length)s caracteres." - -#: keystone/clean.py:40 -#, python-format -msgid "%(property_name)s is not a %(display_expected_type)s" -msgstr "%(property_name)s não é um %(display_expected_type)s" - -#: keystone/cli.py:284 -msgid "At least one option must be provided" -msgstr "" - -#: keystone/cli.py:291 -msgid "--all option cannot be mixed with other options" -msgstr "" - -#: keystone/cli.py:302 -#, python-format -msgid "Unknown domain '%(name)s' specified by --domain-name" -msgstr "" - -#: keystone/cli.py:366 keystone/tests/unit/test_cli.py:213 -msgid "At least one option must be provided, use either --all or --domain-name" -msgstr "" - -#: keystone/cli.py:372 keystone/tests/unit/test_cli.py:229 -msgid "The --all option cannot be used with the --domain-name option" -msgstr "" - -#: keystone/cli.py:398 keystone/tests/unit/test_cli.py:246 -#, python-format -msgid "" -"Invalid domain name: %(domain)s found in config file name: %(file)s - " -"ignoring this file." -msgstr "" - -#: keystone/cli.py:406 keystone/tests/unit/test_cli.py:187 -#, python-format -msgid "" -"Domain: %(domain)s already has a configuration defined - ignoring file: " -"%(file)s." -msgstr "" - -#: keystone/cli.py:420 -#, python-format -msgid "Error parsing configuration file for domain: %(domain)s, file: %(file)s." -msgstr "" - -#: keystone/cli.py:453 -#, python-format -msgid "" -"To get a more detailed information on this error, re-run this command for" -" the specific domain, i.e.: keystone-manage domain_config_upload " -"--domain-name %s" -msgstr "" - -#: keystone/cli.py:471 -#, python-format -msgid "Unable to locate domain config directory: %s" -msgstr "Não é possível localizar diretório de configuração de domínio: %s" - -#: keystone/cli.py:504 -msgid "" -"Unable to access the keystone database, please check it is configured " -"correctly." -msgstr "" - -#: keystone/exception.py:79 -#, python-format -msgid "" -"Expecting to find %(attribute)s in %(target)s - the server could not " -"comply with the request since it is either malformed or otherwise " -"incorrect. The client is assumed to be in error." -msgstr "" - -#: keystone/exception.py:90 -#, python-format -msgid "%(detail)s" -msgstr "" - -#: keystone/exception.py:94 -msgid "" -"Timestamp not in expected format. The server could not comply with the " -"request since it is either malformed or otherwise incorrect. The client " -"is assumed to be in error." -msgstr "" -"A data não está no formato especificado. O servidor não pôde realizar a " -"requisição pois ela está mal formada ou incorreta. Assume-se que o " -"cliente está com erro." - -#: keystone/exception.py:103 -#, python-format -msgid "" -"String length exceeded.The length of string '%(string)s' exceeded the " -"limit of column %(type)s(CHAR(%(length)d))." -msgstr "" -"Comprimento de string excedido. O comprimento de string '%(string)s' " -"excedeu o limite da coluna %(type)s(CHAR(%(length)d))." - -#: keystone/exception.py:109 -#, python-format -msgid "" -"Request attribute %(attribute)s must be less than or equal to %(size)i. " -"The server could not comply with the request because the attribute size " -"is invalid (too large). The client is assumed to be in error." -msgstr "" -"Atributo de requisição %(attribute)s deve ser menor ou igual a %(size)i. " -"O servidor não pôde atender a requisição porque o tamanho do atributo é " -"inválido (muito grande). Assume-se que o cliente está em erro." - -#: keystone/exception.py:119 -#, python-format -msgid "" -"The specified parent region %(parent_region_id)s would create a circular " -"region hierarchy." -msgstr "" - -#: keystone/exception.py:126 -#, python-format -msgid "" -"The password length must be less than or equal to %(size)i. The server " -"could not comply with the request because the password is invalid." -msgstr "" - -#: keystone/exception.py:134 -#, python-format -msgid "" -"Unable to delete region %(region_id)s because it or its child regions " -"have associated endpoints." -msgstr "" - -#: keystone/exception.py:141 -msgid "" -"The certificates you requested are not available. It is likely that this " -"server does not use PKI tokens otherwise this is the result of " -"misconfiguration." -msgstr "" - -#: keystone/exception.py:150 -msgid "(Disable debug mode to suppress these details.)" -msgstr "" - -#: keystone/exception.py:155 -#, python-format -msgid "%(message)s %(amendment)s" -msgstr "" - -#: keystone/exception.py:163 -msgid "The request you have made requires authentication." -msgstr "A requisição que você fez requer autenticação." - -#: keystone/exception.py:169 -msgid "Authentication plugin error." -msgstr "Erro do plugin de autenticação." - -#: keystone/exception.py:177 -#, python-format -msgid "Unable to find valid groups while using mapping %(mapping_id)s" -msgstr "" - -#: keystone/exception.py:182 -msgid "Attempted to authenticate with an unsupported method." -msgstr "Tentativa de autenticação com um método não suportado." - -#: keystone/exception.py:190 -msgid "Additional authentications steps required." -msgstr "Passos de autenticação adicionais requeridos." - -#: keystone/exception.py:198 -msgid "You are not authorized to perform the requested action." -msgstr "Você não está autorizado à realizar a ação solicitada." - -#: keystone/exception.py:205 -#, python-format -msgid "You are not authorized to perform the requested action: %(action)s" -msgstr "" - -#: keystone/exception.py:210 -#, python-format -msgid "" -"Could not change immutable attribute(s) '%(attributes)s' in target " -"%(target)s" -msgstr "" - -#: keystone/exception.py:215 -#, python-format -msgid "" -"Group membership across backend boundaries is not allowed, group in " -"question is %(group_id)s, user is %(user_id)s" -msgstr "" - -#: keystone/exception.py:221 -#, python-format -msgid "" -"Invalid mix of entities for policy association - only Endpoint, Service " -"or Region+Service allowed. Request was - Endpoint: %(endpoint_id)s, " -"Service: %(service_id)s, Region: %(region_id)s" -msgstr "" - -#: keystone/exception.py:228 -#, python-format -msgid "Invalid domain specific configuration: %(reason)s" -msgstr "" - -#: keystone/exception.py:232 -#, python-format -msgid "Could not find: %(target)s" -msgstr "" - -#: keystone/exception.py:238 -#, python-format -msgid "Could not find endpoint: %(endpoint_id)s" -msgstr "" - -#: keystone/exception.py:245 -msgid "An unhandled exception has occurred: Could not find metadata." -msgstr "Uma exceção não tratada ocorreu: Não foi possível encontrar metadados." - -#: keystone/exception.py:250 -#, python-format -msgid "Could not find policy: %(policy_id)s" -msgstr "" - -#: keystone/exception.py:254 -msgid "Could not find policy association" -msgstr "" - -#: keystone/exception.py:258 -#, python-format -msgid "Could not find role: %(role_id)s" -msgstr "" - -#: keystone/exception.py:262 -#, python-format -msgid "" -"Could not find role assignment with role: %(role_id)s, user or group: " -"%(actor_id)s, project or domain: %(target_id)s" -msgstr "" - -#: keystone/exception.py:268 -#, python-format -msgid "Could not find region: %(region_id)s" -msgstr "" - -#: keystone/exception.py:272 -#, python-format -msgid "Could not find service: %(service_id)s" -msgstr "" - -#: keystone/exception.py:276 -#, python-format -msgid "Could not find domain: %(domain_id)s" -msgstr "" - -#: keystone/exception.py:280 -#, python-format -msgid "Could not find project: %(project_id)s" -msgstr "" - -#: keystone/exception.py:284 -#, python-format -msgid "Cannot create project with parent: %(project_id)s" -msgstr "" - -#: keystone/exception.py:288 -#, python-format -msgid "Could not find token: %(token_id)s" -msgstr "" - -#: keystone/exception.py:292 -#, python-format -msgid "Could not find user: %(user_id)s" -msgstr "" - -#: keystone/exception.py:296 -#, python-format -msgid "Could not find group: %(group_id)s" -msgstr "" - -#: keystone/exception.py:300 -#, python-format -msgid "Could not find mapping: %(mapping_id)s" -msgstr "" - -#: keystone/exception.py:304 -#, python-format -msgid "Could not find trust: %(trust_id)s" -msgstr "" - -#: keystone/exception.py:308 -#, python-format -msgid "No remaining uses for trust: %(trust_id)s" -msgstr "" - -#: keystone/exception.py:312 -#, python-format -msgid "Could not find credential: %(credential_id)s" -msgstr "" - -#: keystone/exception.py:316 -#, python-format -msgid "Could not find version: %(version)s" -msgstr "" - -#: keystone/exception.py:320 -#, python-format -msgid "Could not find Endpoint Group: %(endpoint_group_id)s" -msgstr "" - -#: keystone/exception.py:324 -#, python-format -msgid "Could not find Identity Provider: %(idp_id)s" -msgstr "" - -#: keystone/exception.py:328 -#, python-format -msgid "Could not find Service Provider: %(sp_id)s" -msgstr "" - -#: keystone/exception.py:332 -#, python-format -msgid "" -"Could not find federated protocol %(protocol_id)s for Identity Provider: " -"%(idp_id)s" -msgstr "" - -#: keystone/exception.py:343 -#, python-format -msgid "" -"Could not find %(group_or_option)s in domain configuration for domain " -"%(domain_id)s" -msgstr "" - -#: keystone/exception.py:348 -#, python-format -msgid "Conflict occurred attempting to store %(type)s - %(details)s" -msgstr "" - -#: keystone/exception.py:356 -msgid "An unexpected error prevented the server from fulfilling your request." -msgstr "" - -#: keystone/exception.py:359 -#, python-format -msgid "" -"An unexpected error prevented the server from fulfilling your request: " -"%(exception)s" -msgstr "" - -#: keystone/exception.py:382 -#, python-format -msgid "Unable to consume trust %(trust_id)s, unable to acquire lock." -msgstr "" - -#: keystone/exception.py:387 -msgid "" -"Expected signing certificates are not available on the server. Please " -"check Keystone configuration." -msgstr "" - -#: keystone/exception.py:393 -#, python-format -msgid "Malformed endpoint URL (%(endpoint)s), see ERROR log for details." -msgstr "" -"URL de endpoint mal-formada (%(endpoint)s), veja o log de ERROS para " -"detalhes." - -#: keystone/exception.py:398 -#, python-format -msgid "" -"Group %(group_id)s returned by mapping %(mapping_id)s was not found in " -"the backend." -msgstr "" - -#: keystone/exception.py:403 -#, python-format -msgid "Error while reading metadata file, %(reason)s" -msgstr "" - -#: keystone/exception.py:407 -#, python-format -msgid "" -"Unexpected combination of grant attributes - User: %(user_id)s, Group: " -"%(group_id)s, Project: %(project_id)s, Domain: %(domain_id)s" -msgstr "" - -#: keystone/exception.py:414 -msgid "The action you have requested has not been implemented." -msgstr "A ação que você solicitou não foi implementada." - -#: keystone/exception.py:421 -msgid "The service you have requested is no longer available on this server." -msgstr "" - -#: keystone/exception.py:428 -#, python-format -msgid "The Keystone configuration file %(config_file)s could not be found." -msgstr "" - -#: keystone/exception.py:433 -msgid "" -"No encryption keys found; run keystone-manage fernet_setup to bootstrap " -"one." -msgstr "" - -#: keystone/exception.py:438 -#, python-format -msgid "" -"The Keystone domain-specific configuration has specified more than one " -"SQL driver (only one is permitted): %(source)s." -msgstr "" - -#: keystone/exception.py:445 -#, python-format -msgid "" -"%(mod_name)s doesn't provide database migrations. The migration " -"repository path at %(path)s doesn't exist or isn't a directory." -msgstr "" - -#: keystone/exception.py:457 -#, python-format -msgid "" -"Unable to sign SAML assertion. It is likely that this server does not " -"have xmlsec1 installed, or this is the result of misconfiguration. Reason" -" %(reason)s" -msgstr "" - -#: keystone/exception.py:465 -msgid "" -"No Authorization headers found, cannot proceed with OAuth related calls, " -"if running under HTTPd or Apache, ensure WSGIPassAuthorization is set to " -"On." -msgstr "" - -#: keystone/notifications.py:271 -#, python-format -msgid "%(event)s is not a valid notification event, must be one of: %(actions)s" -msgstr "" - -#: keystone/notifications.py:280 -#, python-format -msgid "Method not callable: %s" -msgstr "" - -#: keystone/assignment/controllers.py:107 keystone/identity/controllers.py:69 -#: keystone/resource/controllers.py:78 -msgid "Name field is required and cannot be empty" -msgstr "Campo nome é requerido e não pode ser vazio" - -#: keystone/assignment/controllers.py:346 -#: keystone/assignment/controllers.py:769 -msgid "Specify a domain or project, not both" -msgstr "Especifique um domínio ou projeto, não ambos" - -#: keystone/assignment/controllers.py:349 -msgid "Specify one of domain or project" -msgstr "" - -#: keystone/assignment/controllers.py:354 -#: keystone/assignment/controllers.py:774 -msgid "Specify a user or group, not both" -msgstr "Epecifique um usuário ou grupo, não ambos" - -#: keystone/assignment/controllers.py:357 -msgid "Specify one of user or group" -msgstr "" - -#: keystone/assignment/controllers.py:758 -msgid "Combining effective and group filter will always result in an empty list." -msgstr "" - -#: keystone/assignment/controllers.py:763 -msgid "" -"Combining effective, domain and inherited filters will always result in " -"an empty list." -msgstr "" - -#: keystone/assignment/core.py:228 -msgid "Must specify either domain or project" -msgstr "" - -#: keystone/assignment/core.py:491 -#, python-format -msgid "Project (%s)" -msgstr "Projeto (%s)" - -#: keystone/assignment/core.py:493 -#, python-format -msgid "Domain (%s)" -msgstr "Domínio (%s)" - -#: keystone/assignment/core.py:495 -msgid "Unknown Target" -msgstr "Alvo Desconhecido" - -#: keystone/assignment/backends/ldap.py:92 -msgid "Domain metadata not supported by LDAP" -msgstr "" - -#: keystone/assignment/backends/ldap.py:381 -#, python-format -msgid "User %(user_id)s already has role %(role_id)s in tenant %(tenant_id)s" -msgstr "" - -#: keystone/assignment/backends/ldap.py:387 -#, python-format -msgid "Role %s not found" -msgstr "Role %s não localizada" - -#: keystone/assignment/backends/ldap.py:402 -#: keystone/assignment/backends/sql.py:335 -#, python-format -msgid "Cannot remove role that has not been granted, %s" -msgstr "Não é possível remover role que não foi concedido, %s" - -#: keystone/assignment/backends/sql.py:356 -#, python-format -msgid "Unexpected assignment type encountered, %s" -msgstr "" - -#: keystone/assignment/role_backends/ldap.py:61 keystone/catalog/core.py:103 -#: keystone/common/ldap/core.py:1400 keystone/resource/backends/ldap.py:149 -#, python-format -msgid "Duplicate ID, %s." -msgstr "ID duplicado, %s." - -#: keystone/assignment/role_backends/ldap.py:69 -#: keystone/common/ldap/core.py:1390 -#, python-format -msgid "Duplicate name, %s." -msgstr "Nome duplicado, %s." - -#: keystone/assignment/role_backends/ldap.py:119 -#, python-format -msgid "Cannot duplicate name %s" -msgstr "" - -#: keystone/auth/controllers.py:60 -#, python-format -msgid "" -"Cannot load an auth-plugin by class-name without a \"method\" attribute " -"defined: %s" -msgstr "" - -#: keystone/auth/controllers.py:71 -#, python-format -msgid "" -"Auth plugin %(plugin)s is requesting previously registered method " -"%(method)s" -msgstr "" - -#: keystone/auth/controllers.py:115 -#, python-format -msgid "" -"Unable to reconcile identity attribute %(attribute)s as it has " -"conflicting values %(new)s and %(old)s" -msgstr "" - -#: keystone/auth/controllers.py:336 -msgid "Scoping to both domain and project is not allowed" -msgstr "A definição de escopo para o domínio e o projeto não é permitida" - -#: keystone/auth/controllers.py:339 -msgid "Scoping to both domain and trust is not allowed" -msgstr "A definição de escopo para o domínio e a trust não é permitida" - -#: keystone/auth/controllers.py:342 -msgid "Scoping to both project and trust is not allowed" -msgstr "A definição de escopo para o projeto e a trust não é permitida" - -#: keystone/auth/controllers.py:512 -msgid "User not found" -msgstr "Usuário não localizado" - -#: keystone/auth/controllers.py:616 -msgid "A project-scoped token is required to produce a service catalog." -msgstr "" - -#: keystone/auth/plugins/external.py:46 -msgid "No authenticated user" -msgstr "Nenhum usuário autenticado" - -#: keystone/auth/plugins/external.py:56 -#, python-format -msgid "Unable to lookup user %s" -msgstr "Não é possível consultar o usuário %s" - -#: keystone/auth/plugins/external.py:107 -msgid "auth_type is not Negotiate" -msgstr "" - -#: keystone/auth/plugins/mapped.py:244 -msgid "Could not map user" -msgstr "" - -#: keystone/auth/plugins/oauth1.py:39 -#, python-format -msgid "%s not supported" -msgstr "" - -#: keystone/auth/plugins/oauth1.py:57 -msgid "Access token is expired" -msgstr "Token de acesso expirou" - -#: keystone/auth/plugins/oauth1.py:71 -msgid "Could not validate the access token" -msgstr "" - -#: keystone/auth/plugins/password.py:46 -msgid "Invalid username or password" -msgstr "Nome de usuário ou senha inválidos" - -#: keystone/auth/plugins/token.py:72 keystone/token/controllers.py:161 -msgid "rescope a scoped token" -msgstr "" - -#: keystone/catalog/controllers.py:168 -#, python-format -msgid "Conflicting region IDs specified: \"%(url_id)s\" != \"%(ref_id)s\"" -msgstr "" - -#: keystone/common/authorization.py:47 keystone/common/wsgi.py:64 -#, python-format -msgid "token reference must be a KeystoneToken type, got: %s" -msgstr "" - -#: keystone/common/base64utils.py:66 -msgid "pad must be single character" -msgstr "" - -#: keystone/common/base64utils.py:215 -#, python-format -msgid "text is multiple of 4, but pad \"%s\" occurs before 2nd to last char" -msgstr "" - -#: keystone/common/base64utils.py:219 -#, python-format -msgid "text is multiple of 4, but pad \"%s\" occurs before non-pad last char" -msgstr "" - -#: keystone/common/base64utils.py:225 -#, python-format -msgid "text is not a multiple of 4, but contains pad \"%s\"" -msgstr "" - -#: keystone/common/base64utils.py:244 keystone/common/base64utils.py:265 -msgid "padded base64url text must be multiple of 4 characters" -msgstr "" - -#: keystone/common/controller.py:237 keystone/token/providers/common.py:589 -msgid "Non-default domain is not supported" -msgstr "O domínio não padrão não é suportado" - -#: keystone/common/controller.py:311 keystone/common/controller.py:339 -#: keystone/identity/core.py:501 keystone/resource/core.py:761 -#: keystone/resource/backends/ldap.py:61 -#, python-format -msgid "Expected dict or list: %s" -msgstr "Esperado dict ou list: %s" - -#: keystone/common/controller.py:352 -msgid "Marker could not be found" -msgstr "Marcador não pôde ser encontrado" - -#: keystone/common/controller.py:363 -msgid "Invalid limit value" -msgstr "Valor limite inválido" - -#: keystone/common/controller.py:671 -msgid "Cannot change Domain ID" -msgstr "" - -#: keystone/common/controller.py:700 -msgid "domain_id is required as part of entity" -msgstr "" - -#: keystone/common/controller.py:735 -msgid "A domain-scoped token must be used" -msgstr "" - -#: keystone/common/dependency.py:68 -#, python-format -msgid "Unregistered dependency: %(name)s for %(targets)s" -msgstr "" - -#: keystone/common/dependency.py:108 -msgid "event_callbacks must be a dict" -msgstr "" - -#: keystone/common/dependency.py:113 -#, python-format -msgid "event_callbacks[%s] must be a dict" -msgstr "" - -#: keystone/common/json_home.py:78 -#, python-format -msgid "Unexpected status requested for JSON Home response, %s" -msgstr "" - -#: keystone/common/pemutils.py:223 -#, python-format -msgid "unknown pem_type \"%(pem_type)s\", valid types are: %(valid_pem_types)s" -msgstr "" - -#: keystone/common/pemutils.py:242 -#, python-format -msgid "" -"unknown pem header \"%(pem_header)s\", valid headers are: " -"%(valid_pem_headers)s" -msgstr "" - -#: keystone/common/pemutils.py:298 -#, python-format -msgid "failed to find end matching \"%s\"" -msgstr "" - -#: keystone/common/pemutils.py:302 -#, python-format -msgid "" -"beginning & end PEM headers do not match (%(begin_pem_header)s!= " -"%(end_pem_header)s)" -msgstr "" - -#: keystone/common/pemutils.py:377 -#, python-format -msgid "unknown pem_type: \"%s\"" -msgstr "" - -#: keystone/common/pemutils.py:389 -#, python-format -msgid "" -"failed to base64 decode %(pem_type)s PEM at position%(position)d: " -"%(err_msg)s" -msgstr "" - -#: keystone/common/utils.py:164 keystone/credential/controllers.py:44 -msgid "Invalid blob in credential" -msgstr "BLOB inválido na credencial" - -#: keystone/common/wsgi.py:330 -#, python-format -msgid "%s field is required and cannot be empty" -msgstr "" - -#: keystone/common/wsgi.py:342 -#, python-format -msgid "%s field(s) cannot be empty" -msgstr "" - -#: keystone/common/wsgi.py:563 -msgid "The resource could not be found." -msgstr "O recurso não pôde ser localizado." - -#: keystone/common/cache/_memcache_pool.py:113 -#, python-format -msgid "Unable to get a connection from pool id %(id)s after %(seconds)s seconds." -msgstr "" - -#: keystone/common/cache/core.py:132 -msgid "region not type dogpile.cache.CacheRegion" -msgstr "região não é do tipo dogpile.cache.CacheRegion" - -#: keystone/common/cache/backends/mongo.py:231 -msgid "db_hosts value is required" -msgstr "" - -#: keystone/common/cache/backends/mongo.py:236 -msgid "database db_name is required" -msgstr "" - -#: keystone/common/cache/backends/mongo.py:241 -msgid "cache_collection name is required" -msgstr "" - -#: keystone/common/cache/backends/mongo.py:252 -msgid "integer value expected for w (write concern attribute)" -msgstr "" - -#: keystone/common/cache/backends/mongo.py:260 -msgid "replicaset_name required when use_replica is True" -msgstr "" - -#: keystone/common/cache/backends/mongo.py:275 -msgid "integer value expected for mongo_ttl_seconds" -msgstr "" - -#: keystone/common/cache/backends/mongo.py:301 -msgid "no ssl support available" -msgstr "" - -#: keystone/common/cache/backends/mongo.py:310 -#, python-format -msgid "" -"Invalid ssl_cert_reqs value of %s, must be one of \"NONE\", \"OPTIONAL\"," -" \"REQUIRED\"" -msgstr "" - -#: keystone/common/kvs/core.py:71 -#, python-format -msgid "Lock Timeout occurred for key, %(target)s" -msgstr "" - -#: keystone/common/kvs/core.py:106 -#, python-format -msgid "KVS region %s is already configured. Cannot reconfigure." -msgstr "" - -#: keystone/common/kvs/core.py:145 -#, python-format -msgid "Key Value Store not configured: %s" -msgstr "" - -#: keystone/common/kvs/core.py:198 -msgid "`key_mangler` option must be a function reference" -msgstr "" - -#: keystone/common/kvs/core.py:353 -#, python-format -msgid "Lock key must match target key: %(lock)s != %(target)s" -msgstr "" - -#: keystone/common/kvs/core.py:357 -msgid "Must be called within an active lock context." -msgstr "" - -#: keystone/common/kvs/backends/memcached.py:69 -#, python-format -msgid "Maximum lock attempts on %s occurred." -msgstr "" - -#: keystone/common/kvs/backends/memcached.py:108 -#, python-format -msgid "" -"Backend `%(driver)s` is not a valid memcached backend. Valid drivers: " -"%(driver_list)s" -msgstr "" - -#: keystone/common/kvs/backends/memcached.py:178 -msgid "`key_mangler` functions must be callable." -msgstr "" - -#: keystone/common/ldap/core.py:191 -#, python-format -msgid "Invalid LDAP deref option: %(option)s. Choose one of: %(options)s" -msgstr "" - -#: keystone/common/ldap/core.py:201 -#, python-format -msgid "Invalid LDAP TLS certs option: %(option)s. Choose one of: %(options)s" -msgstr "" -"Opção de certificado LADP TLS inválida: %(option)s. Escolha uma de: " -"%(options)s" - -#: keystone/common/ldap/core.py:213 -#, python-format -msgid "Invalid LDAP scope: %(scope)s. Choose one of: %(options)s" -msgstr "Escopo LDAP inválido: %(scope)s. Escolha um de: %(options)s" - -#: keystone/common/ldap/core.py:588 -msgid "Invalid TLS / LDAPS combination" -msgstr "Combinação TLS / LADPS inválida" - -#: keystone/common/ldap/core.py:593 -#, python-format -msgid "Invalid LDAP TLS_AVAIL option: %s. TLS not available" -msgstr "Opção LDAP TLS_AVAIL inválida: %s. TLS não dsponível" - -#: keystone/common/ldap/core.py:603 -#, python-format -msgid "tls_cacertfile %s not found or is not a file" -msgstr "tls_cacertfile %s não encontrada ou não é um arquivo" - -#: keystone/common/ldap/core.py:615 -#, python-format -msgid "tls_cacertdir %s not found or is not a directory" -msgstr "tls_cacertdir %s não encontrado ou não é um diretório" - -#: keystone/common/ldap/core.py:1325 -#, python-format -msgid "ID attribute %(id_attr)s not found in LDAP object %(dn)s" -msgstr "" - -#: keystone/common/ldap/core.py:1369 -#, python-format -msgid "LDAP %s create" -msgstr "Criação de LDAP %s" - -#: keystone/common/ldap/core.py:1374 -#, python-format -msgid "LDAP %s update" -msgstr "Atualização de LDAP %s" - -#: keystone/common/ldap/core.py:1379 -#, python-format -msgid "LDAP %s delete" -msgstr "Exclusão de LDAP %s" - -#: keystone/common/ldap/core.py:1521 -msgid "" -"Disabling an entity where the 'enable' attribute is ignored by " -"configuration." -msgstr "" - -#: keystone/common/ldap/core.py:1532 -#, python-format -msgid "Cannot change %(option_name)s %(attr)s" -msgstr "Não é possível alterar %(option_name)s %(attr)s" - -#: keystone/common/ldap/core.py:1619 -#, python-format -msgid "Member %(member)s is already a member of group %(group)s" -msgstr "" - -#: keystone/common/sql/core.py:219 -msgid "" -"Cannot truncate a driver call without hints list as first parameter after" -" self " -msgstr "" - -#: keystone/common/sql/core.py:410 -msgid "Duplicate Entry" -msgstr "" - -#: keystone/common/sql/core.py:426 -#, python-format -msgid "An unexpected error occurred when trying to store %s" -msgstr "" - -#: keystone/common/sql/migration_helpers.py:200 -#: keystone/common/sql/migration_helpers.py:261 -#, python-format -msgid "%s extension does not exist." -msgstr "" - -#: keystone/common/validation/validators.py:54 -#, python-format -msgid "Invalid input for field '%(path)s'. The value is '%(value)s'." -msgstr "" - -#: keystone/contrib/ec2/controllers.py:332 -msgid "Token belongs to another user" -msgstr "O token pertence à outro usuário" - -#: keystone/contrib/ec2/controllers.py:360 -msgid "Credential belongs to another user" -msgstr "A credencial pertence à outro usuário" - -#: keystone/contrib/endpoint_filter/backends/sql.py:69 -#, python-format -msgid "Endpoint %(endpoint_id)s not found in project %(project_id)s" -msgstr "Endpoint %(endpoint_id)s não encontrado no projeto %(project_id)s" - -#: keystone/contrib/endpoint_filter/backends/sql.py:180 -msgid "Endpoint Group Project Association not found" -msgstr "" - -#: keystone/contrib/endpoint_policy/core.py:258 -#, python-format -msgid "No policy is associated with endpoint %(endpoint_id)s." -msgstr "" - -#: keystone/contrib/federation/controllers.py:274 -msgid "Missing entity ID from environment" -msgstr "" - -#: keystone/contrib/federation/controllers.py:282 -msgid "Request must have an origin query parameter" -msgstr "" - -#: keystone/contrib/federation/controllers.py:296 -#, python-format -msgid "%(host)s is not a trusted dashboard host" -msgstr "" - -#: keystone/contrib/federation/controllers.py:328 -msgid "Use a project scoped token when attempting to create a SAML assertion" -msgstr "" - -#: keystone/contrib/federation/idp.py:457 -#, python-format -msgid "Cannot open certificate %(cert_file)s. Reason: %(reason)s" -msgstr "" - -#: keystone/contrib/federation/idp.py:524 -msgid "Ensure configuration option idp_entity_id is set." -msgstr "" - -#: keystone/contrib/federation/idp.py:527 -msgid "Ensure configuration option idp_sso_endpoint is set." -msgstr "" - -#: keystone/contrib/federation/idp.py:547 -msgid "" -"idp_contact_type must be one of: [technical, other, support, " -"administrative or billing." -msgstr "" - -#: keystone/contrib/federation/utils.py:178 -msgid "Federation token is expired" -msgstr "" - -#: keystone/contrib/federation/utils.py:225 -msgid "Could not find Identity Provider identifier in environment" -msgstr "" - -#: keystone/contrib/federation/utils.py:229 -msgid "" -"Incoming identity provider identifier not included among the accepted " -"identifiers." -msgstr "" - -#: keystone/contrib/federation/utils.py:517 -#, python-format -msgid "User type %s not supported" -msgstr "" - -#: keystone/contrib/federation/utils.py:553 -#, python-format -msgid "" -"Invalid rule: %(identity_value)s. Both 'groups' and 'domain' keywords " -"must be specified." -msgstr "" - -#: keystone/contrib/federation/utils.py:769 -#, python-format -msgid "Identity Provider %(idp)s is disabled" -msgstr "" - -#: keystone/contrib/federation/utils.py:777 -#, python-format -msgid "Service Provider %(sp)s is disabled" -msgstr "" - -#: keystone/contrib/oauth1/controllers.py:99 -msgid "Cannot change consumer secret" -msgstr "Não é possível alterar segredo do consumidor" - -#: keystone/contrib/oauth1/controllers.py:131 -msgid "Cannot list request tokens with a token issued via delegation." -msgstr "" - -#: keystone/contrib/oauth1/controllers.py:192 -#: keystone/contrib/oauth1/backends/sql.py:270 -msgid "User IDs do not match" -msgstr "ID de usuário não confere" - -#: keystone/contrib/oauth1/controllers.py:199 -msgid "Could not find role" -msgstr "Não é possível encontrar role" - -#: keystone/contrib/oauth1/controllers.py:248 -msgid "Invalid signature" -msgstr "" - -#: keystone/contrib/oauth1/controllers.py:299 -#: keystone/contrib/oauth1/controllers.py:377 -msgid "Request token is expired" -msgstr "Token de requisição expirou" - -#: keystone/contrib/oauth1/controllers.py:313 -msgid "There should not be any non-oauth parameters" -msgstr "Não deve haver nenhum parâmetro não oauth" - -#: keystone/contrib/oauth1/controllers.py:317 -msgid "provided consumer key does not match stored consumer key" -msgstr "" -"Chave de consumidor fornecida não confere com a chave de consumidor " -"armazenada" - -#: keystone/contrib/oauth1/controllers.py:321 -msgid "provided verifier does not match stored verifier" -msgstr "Verificador fornecido não confere com o verificador armazenado" - -#: keystone/contrib/oauth1/controllers.py:325 -msgid "provided request key does not match stored request key" -msgstr "" -"Chave de requisição do provedor não confere com a chave de requisição " -"armazenada" - -#: keystone/contrib/oauth1/controllers.py:329 -msgid "Request Token does not have an authorizing user id" -msgstr "Token de Requisição não possui um ID de usuário autorizado" - -#: keystone/contrib/oauth1/controllers.py:366 -msgid "Cannot authorize a request token with a token issued via delegation." -msgstr "" - -#: keystone/contrib/oauth1/controllers.py:396 -msgid "authorizing user does not have role required" -msgstr "Usuário autorizado não possui o role necessário" - -#: keystone/contrib/oauth1/controllers.py:409 -msgid "User is not a member of the requested project" -msgstr "Usuário não é um membro do projeto requisitado" - -#: keystone/contrib/oauth1/backends/sql.py:91 -msgid "Consumer not found" -msgstr "Consumidor não encontrado" - -#: keystone/contrib/oauth1/backends/sql.py:186 -msgid "Request token not found" -msgstr "Token de requisição não encontrado" - -#: keystone/contrib/oauth1/backends/sql.py:250 -msgid "Access token not found" -msgstr "Token de acesso não encontrado" - -#: keystone/contrib/revoke/controllers.py:33 -#, python-format -msgid "invalid date format %s" -msgstr "" - -#: keystone/contrib/revoke/core.py:150 -msgid "" -"The revoke call must not have both domain_id and project_id. This is a " -"bug in the Keystone server. The current request is aborted." -msgstr "" - -#: keystone/contrib/revoke/core.py:218 keystone/token/provider.py:207 -#: keystone/token/provider.py:230 keystone/token/provider.py:296 -#: keystone/token/provider.py:303 -msgid "Failed to validate token" -msgstr "Falha ao validar token" - -#: keystone/identity/controllers.py:72 -msgid "Enabled field must be a boolean" -msgstr "Campo habilitado precisa ser um booleano" - -#: keystone/identity/controllers.py:98 -msgid "Enabled field should be a boolean" -msgstr "Campo habilitado deve ser um booleano" - -#: keystone/identity/core.py:112 -#, python-format -msgid "Database at /domains/%s/config" -msgstr "" - -#: keystone/identity/core.py:189 -#, python-format -msgid "" -"Domain specific sql drivers are not supported via the Identity API. One " -"is specified in /domains/%s/config" -msgstr "" - -#: keystone/identity/core.py:360 keystone/identity/backends/ldap.py:59 -#: keystone/identity/backends/ldap.py:61 keystone/identity/backends/ldap.py:67 -#: keystone/identity/backends/ldap.py:69 keystone/identity/backends/sql.py:104 -#: keystone/identity/backends/sql.py:106 -msgid "Invalid user / password" -msgstr "" - -#: keystone/identity/core.py:766 -#, python-format -msgid "User is disabled: %s" -msgstr "O usuário está desativado: %s" - -#: keystone/identity/core.py:808 -msgid "Cannot change user ID" -msgstr "" - -#: keystone/identity/backends/ldap.py:99 -msgid "Cannot change user name" -msgstr "" - -#: keystone/identity/backends/ldap.py:188 keystone/identity/backends/sql.py:188 -#: keystone/identity/backends/sql.py:206 -#, python-format -msgid "User '%(user_id)s' not found in group '%(group_id)s'" -msgstr "" - -#: keystone/identity/backends/ldap.py:339 -#, python-format -msgid "User %(user_id)s is already a member of group %(group_id)s" -msgstr "Usuário %(user_id)s já é membro do grupo %(group_id)s" - -#: keystone/models/token_model.py:61 -msgid "Found invalid token: scoped to both project and domain." -msgstr "" - -#: keystone/openstack/common/versionutils.py:108 -#, python-format -msgid "" -"%(what)s is deprecated as of %(as_of)s in favor of %(in_favor_of)s and " -"may be removed in %(remove_in)s." -msgstr "" -"%(what)s está deprecado desde %(as_of)s em favor de %(in_favor_of)s e " -"pode ser removido em %(remove_in)s." - -#: keystone/openstack/common/versionutils.py:112 -#, python-format -msgid "" -"%(what)s is deprecated as of %(as_of)s and may be removed in " -"%(remove_in)s. It will not be superseded." -msgstr "" -"%(what)s está deprecado desde %(as_of)s e pode ser removido em " -"%(remove_in)s. Ele não será substituído." - -#: keystone/openstack/common/versionutils.py:116 -#, python-format -msgid "%(what)s is deprecated as of %(as_of)s in favor of %(in_favor_of)s." -msgstr "" - -#: keystone/openstack/common/versionutils.py:119 -#, python-format -msgid "%(what)s is deprecated as of %(as_of)s. It will not be superseded." -msgstr "" - -#: keystone/openstack/common/versionutils.py:241 -#, python-format -msgid "Deprecated: %s" -msgstr "Deprecado: %s" - -#: keystone/openstack/common/versionutils.py:259 -#, python-format -msgid "Fatal call to deprecated config: %(msg)s" -msgstr "Chamada fatal à configuração deprecada: %(msg)s" - -#: keystone/resource/controllers.py:231 -msgid "" -"Cannot use parents_as_list and parents_as_ids query params at the same " -"time." -msgstr "" - -#: keystone/resource/controllers.py:237 -msgid "" -"Cannot use subtree_as_list and subtree_as_ids query params at the same " -"time." -msgstr "" - -#: keystone/resource/core.py:80 -#, python-format -msgid "max hierarchy depth reached for %s branch." -msgstr "" - -#: keystone/resource/core.py:97 -msgid "cannot create a project within a different domain than its parents." -msgstr "" - -#: keystone/resource/core.py:101 -#, python-format -msgid "cannot create a project in a branch containing a disabled project: %s" -msgstr "" - -#: keystone/resource/core.py:123 -#, python-format -msgid "Domain is disabled: %s" -msgstr "O domínio está desativado: %s" - -#: keystone/resource/core.py:141 -#, python-format -msgid "Domain cannot be named %s" -msgstr "" - -#: keystone/resource/core.py:144 -#, python-format -msgid "Domain cannot have ID %s" -msgstr "" - -#: keystone/resource/core.py:156 -#, python-format -msgid "Project is disabled: %s" -msgstr "O projeto está desativado: %s" - -#: keystone/resource/core.py:176 -#, python-format -msgid "cannot enable project %s since it has disabled parents" -msgstr "" - -#: keystone/resource/core.py:184 -#, python-format -msgid "cannot disable project %s since its subtree contains enabled projects" -msgstr "" - -#: keystone/resource/core.py:195 -msgid "Update of `parent_id` is not allowed." -msgstr "" - -#: keystone/resource/core.py:222 -#, python-format -msgid "cannot delete the project %s since it is not a leaf in the hierarchy." -msgstr "" - -#: keystone/resource/core.py:376 -msgid "Multiple domains are not supported" -msgstr "" - -#: keystone/resource/core.py:429 -msgid "delete the default domain" -msgstr "" - -#: keystone/resource/core.py:440 -msgid "cannot delete a domain that is enabled, please disable it first." -msgstr "" - -#: keystone/resource/core.py:844 -msgid "No options specified" -msgstr "Nenhuma opção especificada" - -#: keystone/resource/core.py:850 -#, python-format -msgid "" -"The value of group %(group)s specified in the config should be a " -"dictionary of options" -msgstr "" - -#: keystone/resource/core.py:874 -#, python-format -msgid "" -"Option %(option)s found with no group specified while checking domain " -"configuration request" -msgstr "" - -#: keystone/resource/core.py:881 -#, python-format -msgid "Group %(group)s is not supported for domain specific configurations" -msgstr "" - -#: keystone/resource/core.py:888 -#, python-format -msgid "" -"Option %(option)s in group %(group)s is not supported for domain specific" -" configurations" -msgstr "" - -#: keystone/resource/core.py:941 -msgid "An unexpected error occurred when retrieving domain configs" -msgstr "" - -#: keystone/resource/core.py:1020 keystone/resource/core.py:1104 -#: keystone/resource/core.py:1175 keystone/resource/config_backends/sql.py:70 -#, python-format -msgid "option %(option)s in group %(group)s" -msgstr "" - -#: keystone/resource/core.py:1023 keystone/resource/core.py:1109 -#: keystone/resource/core.py:1171 -#, python-format -msgid "group %(group)s" -msgstr "" - -#: keystone/resource/core.py:1025 -msgid "any options" -msgstr "" - -#: keystone/resource/core.py:1069 -#, python-format -msgid "" -"Trying to update option %(option)s in group %(group)s, so that, and only " -"that, option must be specified in the config" -msgstr "" - -#: keystone/resource/core.py:1074 -#, python-format -msgid "" -"Trying to update group %(group)s, so that, and only that, group must be " -"specified in the config" -msgstr "" - -#: keystone/resource/core.py:1083 -#, python-format -msgid "" -"request to update group %(group)s, but config provided contains group " -"%(group_other)s instead" -msgstr "" - -#: keystone/resource/core.py:1090 -#, python-format -msgid "" -"Trying to update option %(option)s in group %(group)s, but config " -"provided contains option %(option_other)s instead" -msgstr "" - -#: keystone/resource/backends/ldap.py:151 -#: keystone/resource/backends/ldap.py:159 -#: keystone/resource/backends/ldap.py:163 -msgid "Domains are read-only against LDAP" -msgstr "" - -#: keystone/server/eventlet.py:77 -msgid "" -"Running keystone via eventlet is deprecated as of Kilo in favor of " -"running in a WSGI server (e.g. mod_wsgi). Support for keystone under " -"eventlet will be removed in the \"M\"-Release." -msgstr "" - -#: keystone/server/eventlet.py:90 -#, python-format -msgid "Failed to start the %(name)s server" -msgstr "" - -#: keystone/token/controllers.py:392 -#, python-format -msgid "User %(u_id)s is unauthorized for tenant %(t_id)s" -msgstr "Usuário %(u_id)s não está autorizado para o tenant %(t_id)s" - -#: keystone/token/controllers.py:411 keystone/token/controllers.py:414 -msgid "Token does not belong to specified tenant." -msgstr "O token não pertence ao tenant especificado." - -#: keystone/token/persistence/backends/kvs.py:133 -#, python-format -msgid "Unknown token version %s" -msgstr "" - -#: keystone/token/providers/common.py:250 -#: keystone/token/providers/common.py:355 -#, python-format -msgid "User %(user_id)s has no access to project %(project_id)s" -msgstr "O usuário %(user_id)s não tem acesso ao projeto %(project_id)s" - -#: keystone/token/providers/common.py:255 -#: keystone/token/providers/common.py:360 -#, python-format -msgid "User %(user_id)s has no access to domain %(domain_id)s" -msgstr "O usuário %(user_id)s não tem acesso ao domínio %(domain_id)s" - -#: keystone/token/providers/common.py:282 -msgid "Trustor is disabled." -msgstr "O fiador está desativado." - -#: keystone/token/providers/common.py:346 -msgid "Trustee has no delegated roles." -msgstr "Fiador não possui roles delegados." - -#: keystone/token/providers/common.py:407 -#, python-format -msgid "Invalid audit info data type: %(data)s (%(type)s)" -msgstr "" - -#: keystone/token/providers/common.py:435 -msgid "User is not a trustee." -msgstr "Usuário não é confiável." - -#: keystone/token/providers/common.py:579 -msgid "" -"Attempting to use OS-FEDERATION token with V2 Identity Service, use V3 " -"Authentication" -msgstr "" - -#: keystone/token/providers/common.py:597 -msgid "Domain scoped token is not supported" -msgstr "O token de escopo de domínio não é suportado" - -#: keystone/token/providers/pki.py:48 keystone/token/providers/pkiz.py:30 -msgid "Unable to sign token." -msgstr "Não é possível assinar o token." - -#: keystone/token/providers/fernet/core.py:215 -msgid "" -"This is not a v2.0 Fernet token. Use v3 for trust, domain, or federated " -"tokens." -msgstr "" - -#: keystone/token/providers/fernet/token_formatters.py:189 -#, python-format -msgid "This is not a recognized Fernet payload version: %s" -msgstr "" - -#: keystone/trust/controllers.py:148 -msgid "Redelegation allowed for delegated by trust only" -msgstr "" - -#: keystone/trust/controllers.py:181 -msgid "The authenticated user should match the trustor." -msgstr "" - -#: keystone/trust/controllers.py:186 -msgid "At least one role should be specified." -msgstr "" - -#: keystone/trust/core.py:57 -#, python-format -msgid "" -"Remaining redelegation depth of %(redelegation_depth)d out of allowed " -"range of [0..%(max_count)d]" -msgstr "" - -#: keystone/trust/core.py:66 -#, python-format -msgid "" -"Field \"remaining_uses\" is set to %(value)s while it must not be set in " -"order to redelegate a trust" -msgstr "" - -#: keystone/trust/core.py:77 -msgid "Requested expiration time is more than redelegated trust can provide" -msgstr "" - -#: keystone/trust/core.py:87 -msgid "Some of requested roles are not in redelegated trust" -msgstr "" - -#: keystone/trust/core.py:116 -msgid "One of the trust agents is disabled or deleted" -msgstr "" - -#: keystone/trust/core.py:135 -msgid "remaining_uses must be a positive integer or null." -msgstr "" - -#: keystone/trust/core.py:141 -#, python-format -msgid "" -"Requested redelegation depth of %(requested_count)d is greater than " -"allowed %(max_count)d" -msgstr "" - -#: keystone/trust/core.py:147 -msgid "remaining_uses must not be set if redelegation is allowed" -msgstr "" - -#: keystone/trust/core.py:157 -msgid "" -"Modifying \"redelegation_count\" upon redelegation is forbidden. Omitting" -" this parameter is advised." -msgstr "" - diff --git a/keystone/locale/vi_VN/LC_MESSAGES/keystone-log-info.po b/keystone/locale/vi_VN/LC_MESSAGES/keystone-log-info.po deleted file mode 100644 index bcb9ab4e6f..0000000000 --- a/keystone/locale/vi_VN/LC_MESSAGES/keystone-log-info.po +++ /dev/null @@ -1,211 +0,0 @@ -# Translations template for keystone. -# Copyright (C) 2015 OpenStack Foundation -# This file is distributed under the same license as the keystone project. -# -# Translators: -msgid "" -msgstr "" -"Project-Id-Version: Keystone\n" -"Report-Msgid-Bugs-To: https://bugs.launchpad.net/keystone\n" -"POT-Creation-Date: 2015-03-09 06:03+0000\n" -"PO-Revision-Date: 2015-03-07 04:31+0000\n" -"Last-Translator: openstackjenkins \n" -"Language-Team: Vietnamese (Viet Nam) (http://www.transifex.com/projects/p/" -"keystone/language/vi_VN/)\n" -"Language: vi_VN\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Generated-By: Babel 1.3\n" -"Plural-Forms: nplurals=1; plural=0;\n" - -#: keystone/assignment/core.py:250 -#, python-format -msgid "Creating the default role %s because it does not exist." -msgstr "" - -#: keystone/assignment/core.py:258 -#, python-format -msgid "Creating the default role %s failed because it was already created" -msgstr "" - -#: keystone/auth/controllers.py:64 -msgid "Loading auth-plugins by class-name is deprecated." -msgstr "" - -#: keystone/auth/controllers.py:106 -#, python-format -msgid "" -"\"expires_at\" has conflicting values %(existing)s and %(new)s. Will use " -"the earliest value." -msgstr "" - -#: keystone/common/openssl.py:81 -#, python-format -msgid "Running command - %s" -msgstr "" - -#: keystone/common/wsgi.py:79 -msgid "No bind information present in token" -msgstr "" - -#: keystone/common/wsgi.py:83 -#, python-format -msgid "Named bind mode %s not in bind information" -msgstr "" - -#: keystone/common/wsgi.py:90 -msgid "Kerberos credentials required and not present" -msgstr "" - -#: keystone/common/wsgi.py:94 -msgid "Kerberos credentials do not match those in bind" -msgstr "" - -#: keystone/common/wsgi.py:98 -msgid "Kerberos bind authentication successful" -msgstr "" - -#: keystone/common/wsgi.py:105 -#, python-format -msgid "Couldn't verify unknown bind: {%(bind_type)s: %(identifier)s}" -msgstr "" - -#: keystone/common/environment/eventlet_server.py:103 -#, python-format -msgid "Starting %(arg0)s on %(host)s:%(port)s" -msgstr "" - -#: keystone/common/kvs/core.py:138 -#, python-format -msgid "Adding proxy '%(proxy)s' to KVS %(name)s." -msgstr "" - -#: keystone/common/kvs/core.py:188 -#, python-format -msgid "Using %(func)s as KVS region %(name)s key_mangler" -msgstr "" - -#: keystone/common/kvs/core.py:200 -#, python-format -msgid "Using default dogpile sha1_mangle_key as KVS region %s key_mangler" -msgstr "" - -#: keystone/common/kvs/core.py:210 -#, python-format -msgid "KVS region %s key_mangler disabled." -msgstr "" - -#: keystone/contrib/example/core.py:64 keystone/contrib/example/core.py:73 -#, python-format -msgid "" -"Received the following notification: service %(service)s, resource_type: " -"%(resource_type)s, operation %(operation)s payload %(payload)s" -msgstr "" - -#: keystone/openstack/common/eventlet_backdoor.py:146 -#, python-format -msgid "Eventlet backdoor listening on %(port)s for process %(pid)d" -msgstr "Eventlet backdoor lắng nghe trên %(port)s đối với tiến trình %(pid)d" - -#: keystone/openstack/common/service.py:173 -#, python-format -msgid "Caught %s, exiting" -msgstr "Bắt %s, thoát" - -#: keystone/openstack/common/service.py:231 -msgid "Parent process has died unexpectedly, exiting" -msgstr "Tiến trình cha bị chết đột ngột, thoát" - -#: keystone/openstack/common/service.py:262 -#, python-format -msgid "Child caught %s, exiting" -msgstr "Tiến trình con bắt %s, thoát" - -#: keystone/openstack/common/service.py:301 -msgid "Forking too fast, sleeping" -msgstr "Tạo tiến trình con quá nhanh, nghỉ" - -#: keystone/openstack/common/service.py:320 -#, python-format -msgid "Started child %d" -msgstr "Tiến trình con đã được khởi động %d " - -#: keystone/openstack/common/service.py:330 -#, python-format -msgid "Starting %d workers" -msgstr "Khởi động %d động cơ" - -#: keystone/openstack/common/service.py:347 -#, python-format -msgid "Child %(pid)d killed by signal %(sig)d" -msgstr "Tiến trình con %(pid)d bị huỷ bởi tín hiệu %(sig)d" - -#: keystone/openstack/common/service.py:351 -#, python-format -msgid "Child %(pid)s exited with status %(code)d" -msgstr "Tiến trình con %(pid)s đã thiaast với trạng thái %(code)d" - -#: keystone/openstack/common/service.py:390 -#, python-format -msgid "Caught %s, stopping children" -msgstr "Bắt %s, đang dừng tiến trình con" - -#: keystone/openstack/common/service.py:399 -msgid "Wait called after thread killed. Cleaning up." -msgstr "" - -#: keystone/openstack/common/service.py:415 -#, python-format -msgid "Waiting on %d children to exit" -msgstr "Chờ đợi %d tiến trình con để thoát " - -#: keystone/token/persistence/backends/sql.py:279 -#, python-format -msgid "Total expired tokens removed: %d" -msgstr "" - -#: keystone/token/providers/fernet/utils.py:72 -msgid "" -"[fernet_tokens] key_repository does not appear to exist; attempting to " -"create it" -msgstr "" - -#: keystone/token/providers/fernet/utils.py:130 -#, python-format -msgid "Created a new key: %s" -msgstr "" - -#: keystone/token/providers/fernet/utils.py:143 -msgid "Key repository is already initialized; aborting." -msgstr "" - -#: keystone/token/providers/fernet/utils.py:179 -#, python-format -msgid "Starting key rotation with %(count)s key files: %(list)s" -msgstr "" - -#: keystone/token/providers/fernet/utils.py:185 -#, python-format -msgid "Current primary key is: %s" -msgstr "" - -#: keystone/token/providers/fernet/utils.py:187 -#, python-format -msgid "Next primary key will be: %s" -msgstr "" - -#: keystone/token/providers/fernet/utils.py:197 -#, python-format -msgid "Promoted key 0 to be the primary: %s" -msgstr "" - -#: keystone/token/providers/fernet/utils.py:213 -#, python-format -msgid "Excess keys to purge: %s" -msgstr "" - -#: keystone/token/providers/fernet/utils.py:237 -#, python-format -msgid "Loaded %(count)s encryption keys from: %(dir)s" -msgstr "" diff --git a/keystone/locale/zh_CN/LC_MESSAGES/keystone-log-error.po b/keystone/locale/zh_CN/LC_MESSAGES/keystone-log-error.po index a48b938246..3b6f94f6e3 100644 --- a/keystone/locale/zh_CN/LC_MESSAGES/keystone-log-error.po +++ b/keystone/locale/zh_CN/LC_MESSAGES/keystone-log-error.po @@ -4,13 +4,14 @@ # # Translators: # Xiao Xi LIU , 2014 +# 刘俊朋 , 2015 msgid "" msgstr "" "Project-Id-Version: Keystone\n" "Report-Msgid-Bugs-To: https://bugs.launchpad.net/keystone\n" -"POT-Creation-Date: 2015-03-09 06:03+0000\n" -"PO-Revision-Date: 2015-03-07 04:31+0000\n" -"Last-Translator: openstackjenkins \n" +"POT-Creation-Date: 2015-04-20 11:11+0200\n" +"PO-Revision-Date: 2015-04-17 05:11+0000\n" +"Last-Translator: 刘俊朋 \n" "Language-Team: Chinese (China) (http://www.transifex.com/projects/p/keystone/" "language/zh_CN/)\n" "Language: zh_CN\n" @@ -20,31 +21,31 @@ msgstr "" "Generated-By: Babel 1.3\n" "Plural-Forms: nplurals=1; plural=0;\n" -#: keystone/notifications.py:304 +#: keystone/notifications.py:328 msgid "Failed to construct notifier" -msgstr "" +msgstr "构造通知器失败" -#: keystone/notifications.py:389 +#: keystone/notifications.py:423 #, python-format msgid "Failed to send %(res_id)s %(event_type)s notification" -msgstr "" +msgstr "发送%(res_id)s %(event_type)s 通知失败" -#: keystone/notifications.py:606 +#: keystone/notifications.py:692 #, python-format msgid "Failed to send %(action)s %(event_type)s notification" -msgstr "" +msgstr "发送 %(action)s %(event_type)s 通知失败" -#: keystone/catalog/core.py:62 +#: keystone/catalog/core.py:63 #, python-format msgid "Malformed endpoint - %(url)r is not a string" -msgstr "" +msgstr "端点 - %(url)r 不是一个字符串" -#: keystone/catalog/core.py:66 +#: keystone/catalog/core.py:68 #, python-format msgid "Malformed endpoint %(url)s - unknown key %(keyerror)s" msgstr "端点 %(url)s 的格式不正确 - 键 %(keyerror)s 未知" -#: keystone/catalog/core.py:71 +#: keystone/catalog/core.py:76 #, python-format msgid "" "Malformed endpoint '%(url)s'. The following type error occurred during " @@ -52,7 +53,7 @@ msgid "" msgstr "" "端点 '%(url)s' 的格式不正确。在字符串替换时发生以下类型错误:%(typeerror)s" -#: keystone/catalog/core.py:77 +#: keystone/catalog/core.py:82 #, python-format msgid "" "Malformed endpoint %s - incomplete format (are you missing a type notifier ?)" @@ -82,14 +83,14 @@ msgstr "" msgid "" "Unable to build cache config-key. Expected format \":\". " "Skipping unknown format: %s" -msgstr "" +msgstr "无法构建缓存配置键值对。期望格式“<参数>:<值>”。跳过未知的格式: %s" -#: keystone/common/environment/eventlet_server.py:99 +#: keystone/common/environment/eventlet_server.py:107 #, python-format msgid "Could not bind to %(host)s:%(port)s" msgstr "无法绑定至 %(host)s:%(port)s" -#: keystone/common/environment/eventlet_server.py:185 +#: keystone/common/environment/eventlet_server.py:193 msgid "Server error" msgstr "服务器报错" @@ -100,14 +101,14 @@ msgid "" "Circular reference or a repeated entry found in region tree - %(region_id)s." msgstr "在域树- %(region_id)s 中发现循环引用或重复项。" -#: keystone/contrib/federation/idp.py:410 +#: keystone/contrib/federation/idp.py:413 #, python-format msgid "Error when signing assertion, reason: %(reason)s" msgstr "对断言进行签名时出错,原因:%(reason)s" #: keystone/contrib/oauth1/core.py:136 msgid "Cannot retrieve Authorization headers" -msgstr "" +msgstr "无法获取认证头信息" #: keystone/openstack/common/loopingcall.py:95 msgid "in fixed duration looping call" @@ -117,35 +118,37 @@ msgstr "在固定时段内循环调用" msgid "in dynamic looping call" msgstr "在动态循环调用中" -#: keystone/openstack/common/service.py:268 +#: keystone/openstack/common/service.py:264 msgid "Unhandled exception" msgstr "存在未处理的异常" -#: keystone/resource/core.py:477 +#: keystone/resource/core.py:471 #, python-format msgid "" "Circular reference or a repeated entry found projects hierarchy - " "%(project_id)s." -msgstr "" +msgstr "在项目树-%(project_id)s 中发现循环引用或重复项。" -#: keystone/resource/core.py:939 +#: keystone/resource/core.py:934 #, python-format msgid "" "Unexpected results in response for domain config - %(count)s responses, " "first option is %(option)s, expected option %(expected)s" msgstr "" +"针对域配置- %(count)s 结果,响应中出现不是预期结果,第一参数是%(option)s,期" +"望参数是 %(expected)s 。" #: keystone/resource/backends/sql.py:102 keystone/resource/backends/sql.py:121 #, python-format msgid "" "Circular reference or a repeated entry found in projects hierarchy - " "%(project_id)s." -msgstr "" +msgstr "在项目树-%(project_id)s 中发现循环引用或重复项。" -#: keystone/token/provider.py:292 +#: keystone/token/provider.py:294 #, python-format msgid "Unexpected error or malformed token determining token expiry: %s" -msgstr "" +msgstr "决策令牌预计超期时间 :%s 时,出现未知错误或变形的令牌" #: keystone/token/persistence/backends/kvs.py:226 #, python-format @@ -154,24 +157,26 @@ msgid "" "backend. Expected `list` type got `%(type)s`. Old revocation list data: " "%(list)r" msgstr "" +"由于从后端加载撤销列表出现错误,重新初始化撤销列表。期望“列表”类型是 `" +"%(type)s`。旧的撤销列表数据是: %(list)r" -#: keystone/token/providers/common.py:611 +#: keystone/token/providers/common.py:672 msgid "Failed to validate token" msgstr "token验证失败" #: keystone/token/providers/pki.py:47 msgid "Unable to sign token" -msgstr "" +msgstr "无法签名令牌" #: keystone/token/providers/fernet/utils.py:38 #, python-format msgid "" "Either [fernet_tokens] key_repository does not exist or Keystone does not " "have sufficient permission to access it: %s" -msgstr "" +msgstr "[fernet_tokens] 键仓库不存在或者ketystone没有足够的权限去访问它: %s。" #: keystone/token/providers/fernet/utils.py:79 msgid "" "Failed to create [fernet_tokens] key_repository: either it already exists or " "you don't have sufficient permissions to create it" -msgstr "" +msgstr "创建[Fernet_tokens] 键仓库失败:它已存在或你没有足够的权限去创建它。" From 579a065c0dcce554a5dca86164eb8f1d6fb43c4d Mon Sep 17 00:00:00 2001 From: OpenStack Proposal Bot Date: Mon, 20 Apr 2015 17:55:55 +0000 Subject: [PATCH 09/10] Updated from global requirements Change-Id: I72af7a36f2c3ba206be06fa35323386801e6ff81 --- requirements-py3.txt | 4 ++-- requirements.txt | 6 +++--- test-requirements-py3.txt | 2 +- test-requirements.txt | 2 +- 4 files changed, 7 insertions(+), 7 deletions(-) diff --git a/requirements-py3.txt b/requirements-py3.txt index 1f1c16b45e..3780d5fa15 100644 --- a/requirements-py3.txt +++ b/requirements-py3.txt @@ -16,8 +16,8 @@ SQLAlchemy>=0.9.7,<=0.9.99 sqlalchemy-migrate>=0.9.5 passlib iso8601>=0.1.9 -python-keystoneclient>=1.1.0 -keystonemiddleware>=1.5.0 +python-keystoneclient>=1.1.0,<1.4.0 +keystonemiddleware>=1.5.0,<1.6.0 oslo.concurrency>=1.8.0,<1.9.0 # Apache-2.0 oslo.config>=1.9.3,<1.10.0 # Apache-2.0 # oslo.messaging tries to pull in eventlet diff --git a/requirements.txt b/requirements.txt index ed8684e9db..87e1366420 100644 --- a/requirements.txt +++ b/requirements.txt @@ -16,8 +16,8 @@ SQLAlchemy>=0.9.7,<=0.9.99 sqlalchemy-migrate>=0.9.5 passlib iso8601>=0.1.9 -python-keystoneclient>=1.1.0 -keystonemiddleware>=1.5.0 +python-keystoneclient>=1.1.0,<1.4.0 +keystonemiddleware>=1.5.0,<1.6.0 oslo.concurrency>=1.8.0,<1.9.0 # Apache-2.0 oslo.config>=1.9.3,<1.10.0 # Apache-2.0 oslo.messaging>=1.8.0,<1.9.0 # Apache-2.0 @@ -32,6 +32,6 @@ oauthlib>=0.6 pysaml2 dogpile.cache>=0.5.3 jsonschema>=2.0.0,<3.0.0 -pycadf>=0.8.0 +pycadf>=0.8.0,<0.9.0 posix_ipc msgpack-python>=0.4.0 diff --git a/test-requirements-py3.txt b/test-requirements-py3.txt index 5e60aa940e..c29a820352 100644 --- a/test-requirements-py3.txt +++ b/test-requirements-py3.txt @@ -14,7 +14,7 @@ bashate>=0.2 # Apache-2.0 # python-memcached>=1.48 # Optional dogpile backend: MongoDB -pymongo>=2.6.3 +pymongo>=2.6.3,<3.0 # Optional backend: LDAP # python-ldap does not install on py3 diff --git a/test-requirements.txt b/test-requirements.txt index ea80cb1624..ace34704b8 100644 --- a/test-requirements.txt +++ b/test-requirements.txt @@ -12,7 +12,7 @@ pysqlite python-memcached>=1.48 # Optional dogpile backend: MongoDB -pymongo>=2.6.3 +pymongo>=2.6.3,<3.0 # Optional backend: LDAP # authenticate against an existing LDAP server From 65a50eebb8d0a53a2c4c226eb9a564c4d535ac68 Mon Sep 17 00:00:00 2001 From: Brant Knudson Date: Wed, 22 Apr 2015 11:33:00 -0500 Subject: [PATCH 10/10] Sync oslo-incubator Ie51669bd278288b768311ddf56ad31a2f28cc7ab This syncs to oslo-incubator to commit 64b5819 and also includes 51280db. Change-Id: I7b43a67a0b67fe0ff5ac3d87708ecc4ab52102f8 Depends-On: Ie51669bd278288b768311ddf56ad31a2f28cc7ab Closes-Bug: #1446583 (cherry picked from commit 797da5f05444e7cfbf55df52867ade6107834f00) --- keystone/openstack/common/service.py | 39 +++++++++++++++++++++------- 1 file changed, 29 insertions(+), 10 deletions(-) diff --git a/keystone/openstack/common/service.py b/keystone/openstack/common/service.py index cfae56b748..d209b8e8ec 100644 --- a/keystone/openstack/common/service.py +++ b/keystone/openstack/common/service.py @@ -199,18 +199,30 @@ class ServiceWrapper(object): class ProcessLauncher(object): - def __init__(self): - """Constructor.""" + _signal_handlers_set = set() + @classmethod + def _handle_class_signals(cls, *args, **kwargs): + for handler in cls._signal_handlers_set: + handler(*args, **kwargs) + + def __init__(self, wait_interval=0.01): + """Constructor. + + :param wait_interval: The interval to sleep for between checks + of child process exit. + """ self.children = {} self.sigcaught = None self.running = True + self.wait_interval = wait_interval rfd, self.writepipe = os.pipe() self.readpipe = eventlet.greenio.GreenPipe(rfd, 'r') self.handle_signal() def handle_signal(self): - _set_signals_handler(self._handle_signal) + self._signal_handlers_set.add(self._handle_signal) + _set_signals_handler(self._handle_class_signals) def _handle_signal(self, signo, frame): self.sigcaught = signo @@ -230,15 +242,12 @@ class ProcessLauncher(object): def _child_process_handle_signal(self): # Setup child signal handlers differently - def _sigterm(*args): - signal.signal(signal.SIGTERM, signal.SIG_DFL) - raise SignalExit(signal.SIGTERM) - def _sighup(*args): signal.signal(signal.SIGHUP, signal.SIG_DFL) raise SignalExit(signal.SIGHUP) - signal.signal(signal.SIGTERM, _sigterm) + # Parent signals with SIGTERM when it wants us to go away. + signal.signal(signal.SIGTERM, signal.SIG_DFL) if _sighup_supported(): signal.signal(signal.SIGHUP, _sighup) # Block SIGINT and let the parent send us a SIGTERM @@ -329,8 +338,8 @@ class ProcessLauncher(object): def _wait_child(self): try: - # Block while any of child processes have exited - pid, status = os.waitpid(0, 0) + # Don't block if no child processes have exited + pid, status = os.waitpid(0, os.WNOHANG) if not pid: return None except OSError as exc: @@ -359,6 +368,10 @@ class ProcessLauncher(object): while self.running: wrap = self._wait_child() if not wrap: + # Yield to other threads if no children have exited + # Sleep for a short time to avoid excessive CPU usage + # (see bug #1095346) + eventlet.greenthread.sleep(self.wait_interval) continue while self.running and len(wrap.children) < wrap.workers: self._start_child(wrap) @@ -383,8 +396,14 @@ class ProcessLauncher(object): if not _is_sighup_and_daemon(self.sigcaught): break + cfg.CONF.reload_config_files() + for service in set( + [wrap.service for wrap in self.children.values()]): + service.reset() + for pid in self.children: os.kill(pid, signal.SIGHUP) + self.running = True self.sigcaught = None except eventlet.greenlet.GreenletExit: