Make the plugin translatable

This patch fixes the translation setup in the Cisco UI plugin

Implements: blueprint add-translation
Change-Id: I429f575c9cddd5caa61d160f969c6f4edd5a4978
This commit is contained in:
Rob Cresswell 2015-11-11 09:06:12 +00:00
parent 347e4174e6
commit eb29b1e7b5
10 changed files with 208 additions and 30 deletions

2
.gitignore vendored
View File

@ -11,4 +11,4 @@ doc/build
.eggs/
doc/source/sourcecode
*.swp
ChangeLog

View File

@ -1,8 +0,0 @@
CHANGES
=======
* Drop run_tests.sh, and just use tox
* Sync requirements with global-requirements
* N1Kv: remove trunk & segment range support
* Initial commit
* Added .gitreview

6
babel.cfg Normal file
View File

@ -0,0 +1,6 @@
[extractors]
django = django_babel.extract:extract_django
[django: templates/**.*]
[django: horizon_cisco_ui/*/templates/**.*]
[python: horizon_cisco_ui/**.py]

View File

@ -1,5 +0,0 @@
[extractors]
django = django_babel.extract:extract_django
[python: **.py]
[django: templates/**.html]

View File

@ -1,14 +0,0 @@
[extractors]
# We use a custom extractor to find translatable strings in AngularJS
# templates. The extractor is included in horizon.utils for now.
# See http://babel.pocoo.org/docs/messages/#referencing-extraction-methods for
# details on how this works.
angular = horizon.utils.babel_extract_angular:extract_angular
[javascript: **.js]
# We need to look into all static folders for HTML files.
# The **/static ensures that we also search within
# /openstack_dashboard/dashboards/XYZ/static which will ensure
# that plugins are also translated.
[angular: **/static/**.html]

View File

@ -0,0 +1,199 @@
# Translations template for PROJECT.
# Copyright (C) 2015 ORGANIZATION
# This file is distributed under the same license as the PROJECT project.
# FIRST AUTHOR <EMAIL@ADDRESS>, 2015.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: PROJECT VERSION\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
"POT-Creation-Date: 2015-12-06 16:31+0000\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Generated-By: Babel 2.1.1\n"
#: horizon_cisco_ui/cisco/dashboard.py:19
msgid "Cisco"
msgstr ""
#: horizon_cisco_ui/cisco/nexus1000v/forms.py:29
msgid "Select a project"
msgstr ""
#: horizon_cisco_ui/cisco/nexus1000v/forms.py:34
msgid "Projects could not be retrieved."
msgstr ""
#: horizon_cisco_ui/cisco/nexus1000v/forms.py:47
msgid "Name"
msgstr ""
#: horizon_cisco_ui/cisco/nexus1000v/forms.py:48
#: horizon_cisco_ui/cisco/nexus1000v/tables.py:75
msgid "Segment Type"
msgstr ""
#: horizon_cisco_ui/cisco/nexus1000v/forms.py:49
msgid "VLAN"
msgstr ""
#: horizon_cisco_ui/cisco/nexus1000v/forms.py:50
msgid "Overlay"
msgstr ""
#: horizon_cisco_ui/cisco/nexus1000v/forms.py:55
#: horizon_cisco_ui/cisco/nexus1000v/forms.py:65
#: horizon_cisco_ui/cisco/nexus1000v/tables.py:77
msgid "Sub Type"
msgstr ""
#: horizon_cisco_ui/cisco/nexus1000v/forms.py:56
msgid "Native VXLAN"
msgstr ""
#: horizon_cisco_ui/cisco/nexus1000v/forms.py:57
msgid "Enhanced VXLAN"
msgstr ""
#: horizon_cisco_ui/cisco/nexus1000v/forms.py:58
msgid "Other"
msgstr ""
#: horizon_cisco_ui/cisco/nexus1000v/forms.py:67
#: horizon_cisco_ui/cisco/nexus1000v/forms.py:74
#: horizon_cisco_ui/cisco/nexus1000v/tables.py:81
msgid "Multicast IP Range"
msgstr ""
#: horizon_cisco_ui/cisco/nexus1000v/forms.py:75
msgid "Multicast IPv4 range(e.g. 224.0.1.0-224.0.1.100)"
msgstr ""
#: horizon_cisco_ui/cisco/nexus1000v/forms.py:79
#: horizon_cisco_ui/cisco/nexus1000v/forms.py:86
msgid "Sub Type Value (Manual Input)"
msgstr ""
#: horizon_cisco_ui/cisco/nexus1000v/forms.py:88
msgid "Enter parameter (e.g. GRE)"
msgstr ""
#: horizon_cisco_ui/cisco/nexus1000v/forms.py:90
#: horizon_cisco_ui/cisco/nexus1000v/forms.py:96
msgid "Physical Network"
msgstr ""
#: horizon_cisco_ui/cisco/nexus1000v/forms.py:97
#: horizon_cisco_ui/cisco/nexus1000v/forms.py:147
#: horizon_cisco_ui/cisco/nexus1000v/tables.py:73
#: horizon_cisco_ui/cisco/nexus1000v/tables.py:95
msgid "Project"
msgstr ""
#: horizon_cisco_ui/cisco/nexus1000v/forms.py:130
#, python-format
msgid "Network Profile %s was successfully created."
msgstr ""
#: horizon_cisco_ui/cisco/nexus1000v/forms.py:137
#, python-format
msgid "Failed to create network profile %s"
msgstr ""
#: horizon_cisco_ui/cisco/nexus1000v/forms.py:144
msgid "ID"
msgstr ""
#: horizon_cisco_ui/cisco/nexus1000v/forms.py:169
#, python-format
msgid "Network Profile %s was successfully updated."
msgstr ""
#: horizon_cisco_ui/cisco/nexus1000v/forms.py:175
#, python-format
msgid "Failed to update network profile (%s)."
msgstr ""
#: horizon_cisco_ui/cisco/nexus1000v/panel.py:21
msgid "Nexus 1000v"
msgstr ""
#: horizon_cisco_ui/cisco/nexus1000v/tables.py:29
#: horizon_cisco_ui/cisco/nexus1000v/views.py:105
#: horizon_cisco_ui/cisco/nexus1000v/views.py:107
#: horizon_cisco_ui/cisco/nexus1000v/views.py:111
msgid "Create Network Profile"
msgstr ""
#: horizon_cisco_ui/cisco/nexus1000v/tables.py:56
#, python-format
msgid "Failed to delete network profile (%s)."
msgstr ""
#: horizon_cisco_ui/cisco/nexus1000v/tables.py:64
#: horizon_cisco_ui/cisco/nexus1000v/views.py:117
msgid "Edit Network Profile"
msgstr ""
#: horizon_cisco_ui/cisco/nexus1000v/tables.py:72
#: horizon_cisco_ui/cisco/nexus1000v/tables.py:87
#: horizon_cisco_ui/cisco/nexus1000v/tabs.py:19
msgid "Network Profile"
msgstr ""
#: horizon_cisco_ui/cisco/nexus1000v/tables.py:79
msgid "Segment Range"
msgstr ""
#: horizon_cisco_ui/cisco/nexus1000v/tables.py:83
msgid "Physical Network Name"
msgstr ""
#: horizon_cisco_ui/cisco/nexus1000v/tables.py:94
#: horizon_cisco_ui/cisco/nexus1000v/tables.py:99
#: horizon_cisco_ui/cisco/nexus1000v/tabs.py:28
msgid "Policy Profile"
msgstr ""
#: horizon_cisco_ui/cisco/nexus1000v/views.py:40
msgid "Unable to retrieve project information."
msgstr ""
#: horizon_cisco_ui/cisco/nexus1000v/views.py:51
msgid "Network Profiles could not be retrieved."
msgstr ""
#: horizon_cisco_ui/cisco/nexus1000v/views.py:69
msgid "Nexus 1000V"
msgstr ""
#: horizon_cisco_ui/cisco/nexus1000v/views.py:78
#: horizon_cisco_ui/cisco/nexus1000v/views.py:93
msgid "Cisco Nexus 1000V"
msgstr ""
#: horizon_cisco_ui/cisco/nexus1000v/views.py:120
msgid "Save Changes"
msgstr ""
#: horizon_cisco_ui/cisco/nexus1000v/views.py:123
msgid "Update Network Profile"
msgstr ""
#: horizon_cisco_ui/cisco/nexus1000v/views.py:143
msgid "Unable to retrieve network profile details."
msgstr ""
#: horizon_cisco_ui/cisco/nexus1000v/views.py:154
msgid "Failed to obtain network profile binding"
msgstr ""
#: horizon_cisco_ui/firewalls/views.py:23
msgid "Cisco Firewalls"
msgstr ""

View File

@ -19,5 +19,5 @@ from django.core.management import execute_from_command_line # noqa
if __name__ == "__main__":
os.environ.setdefault("DJANGO_SETTINGS_MODULE",
"horizon_cisco_ui.cisco.test.settings")
"horizon_cisco_ui.test.settings")
execute_from_command_line(sys.argv)

View File

@ -125,7 +125,7 @@ class InstallVenv(object):
parser.add_option('-n', '--no-site-packages',
action='store_true',
help="Do not inherit packages from global Python "
"install")
"install.")
return parser.parse_args(argv[1:])[0]