diff --git a/doc/source/locale/fr/LC_MESSAGES/doc-admin.po b/doc/source/locale/fr/LC_MESSAGES/doc-admin.po
index 8a2cfd6b613cbce37c0724a56afa2adedacbb5b4..f610992505f28fb8cd053e81895e179cb84b8a92 100644
--- a/doc/source/locale/fr/LC_MESSAGES/doc-admin.po
+++ b/doc/source/locale/fr/LC_MESSAGES/doc-admin.po
@@ -1,15 +1,16 @@
 # François Magimel <magimel.francois@gmail.com>, 2018. #zanata
 # Cecilia Di Maulo <cecidimaulo@gmail.com>, 2019. #zanata
+# Corinne Verheyde <cverheyd@gmail.com>, 2019. #zanata
 msgid ""
 msgstr ""
-"Project-Id-Version: horizon 15.0.0.0b2.dev282\n"
+"Project-Id-Version: horizon 15.1.0.dev70\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2019-01-25 02:42-0600\n"
+"POT-Creation-Date: 2019-05-02 20:14-0500\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
-"PO-Revision-Date: 2019-01-25 05:29+0000\n"
-"Last-Translator: Cecilia Di Maulo <cecidimaulo@gmail.com>\n"
+"PO-Revision-Date: 2019-05-03 07:30+0000\n"
+"Last-Translator: Corinne Verheyde <cverheyd@gmail.com>\n"
 "Language-Team: French\n"
 "Language: fr\n"
 "X-Generator: Zanata 4.3.3\n"
@@ -209,6 +210,16 @@ msgstr ""
 msgid "A message indicates whether the action succeeded."
 msgstr "Un message indique si l'action a réussi."
 
+msgid ""
+"A role is a personality that a user assumes to perform a specific set of "
+"operations. A role includes a set of rights and privileges. A user assumes "
+"that role inherits those rights and privileges."
+msgstr ""
+"Un rôle est une personnalité qu'un utilisateur endosse pour réaliser un "
+"certain jeu d'opérations. Un rôle inclut un ensemble de droits et "
+"privilèges. Un utilisateur qui assume ce rôle hérite de ces droits et "
+"privilèges."
+
 msgid ""
 "Add a line to include your newly created style sheet. For example, ``custom."
 "css`` file:"
diff --git a/doc/source/locale/id/LC_MESSAGES/doc-admin.po b/doc/source/locale/id/LC_MESSAGES/doc-admin.po
index d5df8719148cea73dd5c70dfcc97fb92bba6fd45..98aab616d974355a9cfc703bef4609f9204f230e 100644
--- a/doc/source/locale/id/LC_MESSAGES/doc-admin.po
+++ b/doc/source/locale/id/LC_MESSAGES/doc-admin.po
@@ -1,13 +1,14 @@
 # suhartono <cloudsuhartono@gmail.com>, 2018. #zanata
+# suhartono <cloudsuhartono@gmail.com>, 2019. #zanata
 msgid ""
 msgstr ""
-"Project-Id-Version: horizon 15.0.0.0b2.dev218\n"
+"Project-Id-Version: horizon 15.1.0.dev70\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2019-01-11 10:46-0600\n"
+"POT-Creation-Date: 2019-05-02 20:14-0500\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
-"PO-Revision-Date: 2018-12-19 08:07+0000\n"
+"PO-Revision-Date: 2019-04-30 02:47+0000\n"
 "Last-Translator: suhartono <cloudsuhartono@gmail.com>\n"
 "Language-Team: Indonesian\n"
 "Language: id\n"
@@ -254,6 +255,14 @@ msgstr ""
 "OpenStack End User Guide untuk instruksi lebih lanjut tentang masuk ke "
 "Dasbor."
 
+msgid ""
+"After configuring the ``local_settings.py`` file as shown, you can run the :"
+"command:`manage.py migrate` command to populate this newly created database."
+msgstr ""
+"Setelah mengkonfigurasi file `` local_settings.py`` seperti yang "
+"ditunjukkan, Anda dapat menjalankan perintah :command:`manage.py migrate` "
+"untuk mengisi database yang baru dibuat ini."
+
 msgid ""
 "Allows easier import and migration of imported encrypted volumes, and allows "
 "access key to be changed without re-encrypting the volume"
diff --git a/doc/source/locale/id/LC_MESSAGES/doc-configuration.po b/doc/source/locale/id/LC_MESSAGES/doc-configuration.po
index 11eb1b741c1c5ac7c53047e330bce80b8347c278..3df26f71c340d12f5b4e91e21722cdcd699f5eb0 100644
--- a/doc/source/locale/id/LC_MESSAGES/doc-configuration.po
+++ b/doc/source/locale/id/LC_MESSAGES/doc-configuration.po
@@ -1,13 +1,14 @@
 # suhartono <cloudsuhartono@gmail.com>, 2018. #zanata
+# suhartono <cloudsuhartono@gmail.com>, 2019. #zanata
 msgid ""
 msgstr ""
-"Project-Id-Version: horizon 15.0.0.0b2.dev243\n"
+"Project-Id-Version: horizon 15.1.0.dev70\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2019-01-15 12:25-0600\n"
+"POT-Creation-Date: 2019-05-02 20:14-0500\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
-"PO-Revision-Date: 2018-12-19 12:04+0000\n"
+"PO-Revision-Date: 2019-05-06 04:06+0000\n"
 "Last-Translator: suhartono <cloudsuhartono@gmail.com>\n"
 "Language-Team: Indonesian\n"
 "Language: id\n"
@@ -305,6 +306,20 @@ msgstr ""
 "identitas adalah `` \"publicURL\" ``. Nilai standar untuk layanan identitas "
 "adalah `` \"internalURL\" ``."
 
+msgid ""
+"A template name for a custom user's ``clouds.yaml`` file. ``None`` means the "
+"default template for ``clouds.yaml`` is used."
+msgstr ""
+"Nama templat untuk file ``clouds.yaml`` pengguna kustom. ``None`` berarti "
+"templat default untuk ``clouds.yaml`` digunakan."
+
+msgid ""
+"A template name for a custom user's ``openrc`` file. ``None`` means the "
+"default template for ``openrc`` is used."
+msgstr ""
+"Nama templat untuk file `` openrc`` pengguna kustom. `` None`` berarti "
+"templat default untuk `` openrc`` digunakan."
+
 msgid ""
 "A time margin in seconds to subtract from the real token's validity. An "
 "example use case is that the token can be valid once the middleware passed, "
@@ -341,6 +356,9 @@ msgstr ""
 msgid "ADD_INSTALLED_APPS"
 msgstr "ADD_INSTALLED_APPS"
 
+msgid "ADD_TEMPLATE_DIRS"
+msgstr "ADD_TEMPLATE_DIRS"
+
 msgid "ADD_TEMPLATE_LOADERS"
 msgstr "ADD_TEMPLATE_LOADERS"
 
@@ -435,6 +453,15 @@ msgstr ""
 "Apache, ``\"sites-available/horizon.conf\"`` membutuhkan beberapa alias "
 "tambahan yang ditetapkan ::"
 
+msgid ""
+"Additionally, some scripts require you to place them within the page's "
+"<head> tag. To do this, recursively extend the ``base.html`` template in "
+"your theme to override the ``custom_head_js`` block."
+msgstr ""
+"Selain itu, beberapa skrip mengharuskan Anda untuk menempatkannya di dalam "
+"tag <head> halaman. Untuk melakukan ini, rentangkan templat ``base.html`` "
+"dalam tema Anda secara rekursif untuk mengganti blok ``custom_head_js``."
+
 msgid ""
 "Additionally, the site-wide default button classes can be configured by "
 "setting ``ACTION_CSS_CLASSES`` to a tuple of the classes you wish to appear "
@@ -490,6 +517,15 @@ msgstr ""
 msgid "Alerts_"
 msgstr "Alerts_"
 
+msgid ""
+"All Horizon's javascript files are listed in the ``openstack_dashboard/"
+"templates/horizon/_scripts.html`` partial template, which is included in "
+"Horizon's base template in ``block js``."
+msgstr ""
+"Semua file javascript Horizon terdaftar di template parsial "
+"``openstack_dashboard/templates/horizon/_scripts.html`` , yang termasuk "
+"dalam templat dasar Horizon di ``blok js``."
+
 msgid "All dashboard's templates have to inherit from dashboard's base.html::"
 msgstr "Semua template dasbor harus diwarisi dari base.html::  dasbor"
 
@@ -746,6 +782,13 @@ msgstr "Cinder"
 msgid "Configuration Guide"
 msgstr "Panduan Konfigurasi"
 
+msgid ""
+"Control whether the SESSION_TIMEOUT period is refreshed due to activity. If "
+"False, SESSION_TIMEOUT acts as a hard limit."
+msgstr ""
+"Kontrol apakah periode SESSION_TIMEOUT di-refresh karena aktivitas. Jika "
+"Salah, SESSION_TIMEOUT bertindak sebagai batas keras (hard limit)."
+
 msgid ""
 "Controls how bootstrap backdrop element outside of modals looks and feels. "
 "Valid values are ``\"true\"`` (show backdrop element outside the modal, "
@@ -769,6 +812,20 @@ msgstr ""
 "Mengontrol apakah pelengkapan otomatis browser harus diaktifkan pada "
 "formulir masuk. Nilai yang valid adalah ``\"on\"`` dan ``\"off\"``."
 
+msgid ""
+"Controls whether clouds.yaml is accesible from the user menu and the api "
+"access panel."
+msgstr ""
+"Mengontrol apakah clouds.yaml dapat diakses dari menu pengguna dan panel "
+"akses api."
+
+msgid ""
+"Controls whether the keystone openrc file is accesible from the user menu "
+"and the api access panel."
+msgstr ""
+"Mengontrol apakah file openrc keystone dapat diakses dari menu pengguna dan "
+"panel akses api."
+
 msgid ""
 "Controls whether the keystone v2 openrc file is accessible from the user "
 "menu and the api access panel."
@@ -784,6 +841,12 @@ msgstr ""
 "respons umum 500 atau menyajikan pengguna dengan halaman informasi debug "
 "yang diformat dengan cantik (pretty-formatted)."
 
+msgid "Custom Analytics"
+msgstr "Custom Analytics"
+
+msgid "Custom Head js"
+msgstr "Custom Head js"
+
 msgid "Custom Javascript"
 msgstr "Custom Javascript"
 
@@ -836,6 +899,12 @@ msgstr "DISALLOW_IFRAME_EMBED"
 msgid "DROPDOWN_MAX_ITEMS"
 msgstr "DROPDOWN_MAX_ITEMS"
 
+msgid "Default (when ``SHOW_KEYSTONE_V2_RC`` is ``False``):"
+msgstr "Default (ketika `` SHOW_KEYSTONE_V2_RC`` adalah `` False``):"
+
+msgid "Default (when ``SHOW_KEYSTONE_V2_RC`` is ``True``):"
+msgstr "Default (ketika `` SHOW_KEYSTONE_V2_RC`` adalah `` True``):"
+
 msgid ""
 "Default DNS servers you would like to use when a subnet is created. This is "
 "only a default. Users can still choose a different list of dns servers."
@@ -1028,6 +1097,9 @@ msgstr "Default: ``{}``"
 msgid "Default:: ``1``"
 msgstr "Default:: ``1``"
 
+msgid "Default:: ``True``"
+msgstr "Default:: ``True``"
+
 msgid "Default:: ``openstack_auth.policy.check``"
 msgstr "Default:: ``openstack_auth.policy.check``"
 
@@ -1044,6 +1116,12 @@ msgstr ""
 msgid "Django Settings"
 msgstr "Pengaturan Django"
 
+msgid ""
+"Don't use the ``custom_head_js`` block for analytics tracking. See below."
+msgstr ""
+"Jangan gunakan blok ``custom_head_js`` untuk pelacakan analitik. Lihat di "
+"bawah."
+
 msgid "ENABLE_CLIENT_TOKEN"
 msgstr "ENABLE_CLIENT_TOKEN"
 
@@ -1176,6 +1254,12 @@ msgstr "Contoh: ``['local', 'flat', 'gre']``"
 msgid "Example: ``['normal', 'direct']``"
 msgstr "Contoh: ``['normal', 'direct']``"
 
+msgid "Example:: ``my-clouds.yaml.template``"
+msgstr "Contoh:: ``my-clouds.yaml.template``"
+
+msgid "Example:: ``my-openrc.sh.template``"
+msgstr "Contoh:: ``my-openrc.sh.template``"
+
 msgid "Examples"
 msgstr "Contoh"
 
@@ -1207,6 +1291,18 @@ msgstr ""
 msgid "FILTER_DATA_FIRST"
 msgstr "FILTER_DATA_FIRST"
 
+msgid ""
+"For analytics or tracking scripts you should avoid the ``custom_head_js`` "
+"block. We have a specific block instead called ``custom_analytics``. Much "
+"like the ``custom_head_js`` block this inserts additional content into the "
+"head of the ``base.html`` template and it will be on all pages."
+msgstr ""
+"Untuk analitik atau skrip pelacakan, Anda harus menghindari blok "
+"``custom_head_js``. Kami memiliki blok khusus yang disebut "
+"``custom_analytics``. Sama seperti blok ``custom_head_js`` ini menyisipkan "
+"konten tambahan ke dalam kepala templat ``base.html`` dan itu akan ada di "
+"semua halaman."
+
 msgid "For example, a configuration with multiple themes::"
 msgstr "Misalnya, konfigurasi dengan beberapa tema ::"
 
@@ -1582,6 +1678,24 @@ msgstr ""
 msgid "If set, the name of the `vendor profile`_ from `os-client-config`_."
 msgstr "Jika disetel, nama `vendor profile`_ dari `os-client-config`_."
 
+msgid ""
+"If the default template is not suitable for your deployment, for example, if "
+"your deployment uses saml2, openid and so on for authentication, the default "
+"``openrc`` would not be sufficient. You can provide your own clouds.yaml by "
+"specifying this setting."
+msgstr ""
+"Jika templat default tidak cocok untuk penyebaran Anda, misalnya, jika "
+"penyebaran Anda menggunakan saml2, openid dan sebagainya untuk otentikasi, "
+"``openrc`` default tidak akan cukup. Anda dapat memberikan cloud.yaml Anda "
+"sendiri dengan menentukan pengaturan ini."
+
+msgid ""
+"If the default template is not suitable for your deployment, you can provide "
+"your own clouds.yaml by specifying this setting."
+msgstr ""
+"Jika templat default tidak cocok untuk penggunaan Anda, Anda dapat "
+"memberikan cloud.yaml Anda sendiri dengan menentukan pengaturan ini."
+
 msgid ""
 "If the dict key-value is True, when the view loads, an empty table will be "
 "rendered and the user will be asked to provide a search criteria first (in "
@@ -1809,6 +1923,20 @@ msgstr ""
 "Bootstrap, yang dapat disesuaikan dengan variabel. Silakan lihat bagian "
 "**Dropdowns** dari file variabel Anda."
 
+msgid ""
+"It is possible to customize the global and login footers by using Django's "
+"recursive inheritance to extend the ``base.html``, ``auth/login.html``, and "
+"``auth/_login_form.html`` templates. You do this by naming your template the "
+"same name as the template you wish to extend and only overriding the blocks "
+"you wish to change."
+msgstr ""
+"Dimungkinkan untuk menyesuaikan footer global dan login dengan menggunakan "
+"warisan rekursif Django (Django's recursive inheritance) untuk memperluas "
+"template ``base.html``, ``auth/login.html``, and ``auth/_login_form.html``.  "
+"Anda melakukan ini dengan memberi nama template Anda nama yang sama dengan "
+"template yang ingin Anda perpanjang dan hanya mengganti blok yang ingin Anda "
+"ubah."
+
 msgid ""
 "It is possible to define custom stylesheets for your dashboards. Horizon's "
 "base template ``openstack_dashboard/templates/base.html`` defines multiple "
@@ -1956,12 +2084,18 @@ msgstr ""
 "tindakan. Untuk menghindarinya, horizon mengambil informasi alamat IP dari "
 "neutron ketika mengambil daftar server dari nova."
 
+msgid "OPENRC_CUSTOM_TEMPLATE"
+msgstr "OPENRC_CUSTOM_TEMPLATE"
+
 msgid "OPENSTACK_API_VERSIONS"
 msgstr "OPENSTACK_API_VERSIONS"
 
 msgid "OPENSTACK_CINDER_FEATURES"
 msgstr "OPENSTACK_CINDER_FEATURES"
 
+msgid "OPENSTACK_CLOUDS_YAML_CUSTOM_TEMPLATE"
+msgstr "OPENSTACK_CLOUDS_YAML_CUSTOM_TEMPLATE"
+
 msgid "OPENSTACK_CLOUDS_YAML_NAME"
 msgstr "OPENSTACK_CLOUDS_YAML_NAME"
 
@@ -2226,12 +2360,21 @@ msgstr "SECURE_PROXY_ADDR_HEADER"
 msgid "SELECTABLE_THEMES"
 msgstr "SELECTABLE_THEMES"
 
+msgid "SESSION_REFRESH"
+msgstr "SESSION_REFRESH"
+
 msgid "SESSION_TIMEOUT"
 msgstr "SESSION_TIMEOUT"
 
 msgid "SHOW_KEYSTONE_V2_RC"
 msgstr "SHOW_KEYSTONE_V2_RC"
 
+msgid "SHOW_OPENRC_FILE"
+msgstr "SHOW_OPENRC_FILE"
+
+msgid "SHOW_OPENSTACK_CLOUDS_YAML"
+msgstr "SHOW_OPENSTACK_CLOUDS_YAML"
+
 msgid "STATIC_ROOT"
 msgstr "STATIC_ROOT"
 
@@ -2253,6 +2396,9 @@ msgstr ""
 "Lihat `this email thread <http://lists.openstack.org/pipermail/openstack-"
 "dev/2017-August/120540.html>`_ untuk informasi lebih lanjut."
 
+msgid "See the ``example`` theme for a working theme that uses these blocks."
+msgstr "Lihat tema `` example`` untuk tema kerja yang menggunakan blok ini."
+
 msgid "Service-specific Settings"
 msgstr "Pengaturan khusus layanan (service-specific)"
 
@@ -2278,6 +2424,14 @@ msgstr ""
 "informasi pribadi. Ini hanya boleh digunakan untuk awan pribadi di mana "
 "dasbor berada di belakang firewall perusahaan."
 
+msgid ""
+"Set this to True to enable RBAC Policies panel that provide the ability for "
+"users to use RBAC function. This option only affects when Neutron is enabled."
+msgstr ""
+"Setel ini ke True untuk mengaktifkan panel RBAC Policies yang menyediakan "
+"kemampuan bagi pengguna untuk menggunakan fungsi RBAC. Opsi ini hanya "
+"mempengaruhi ketika Neutron diaktifkan."
+
 msgid ""
 "Set this to True to enable panels that provide the ability for users to "
 "manage Identity Providers (IdPs) and establish a set of rules to map "
@@ -2428,6 +2582,15 @@ msgstr "Tabs"
 msgid "Tabs_"
 msgstr "Tabs_"
 
+msgid ""
+"Template directories defined here will be added to ``DIRS`` option of Django "
+"``TEMPLATES`` setting. It is useful when you would like to load deployment-"
+"specific templates."
+msgstr ""
+"Direktori templat yang ditentukan di sini akan ditambahkan ke opsi `` DIRS`` "
+"dari pengaturan Django `` TEMPLATES``. Ini berguna ketika Anda ingin memuat "
+"templat khusus penggunaan."
+
 msgid ""
 "Template loaders defined here will be loaded at the end of "
 "`TEMPLATE_LOADERS`_, after the `CACHED_TEMPLATE_LOADERS`_ and will never "
@@ -2566,6 +2729,15 @@ msgstr ""
 "Jalur absolut ke direktori tempat file statis dikumpulkan ketika pengumpulan "
 "dijalankan."
 
+msgid ""
+"The custom stylesheets then reside in the dashboard's own ``static`` folder "
+"``openstack_dashboard/dashboards/my_custom_dashboard/static/"
+"my_custom_dashboard/scss/my_custom_dashboard.scss``."
+msgstr ""
+"Lembar gaya kustom kemudian berada di folder `` static`` dasbor sendiri "
+"``openstack_dashboard/dashboards/my_custom_dashboard/static/"
+"my_custom_dashboard/scss/my_custom_dashboard.scss``."
+
 msgid ""
 "The default location for the dashboard configuration files is "
 "``openstack_dashboard/enabled``, with another directory, "
@@ -2608,12 +2780,54 @@ msgstr ""
 "lengkap dari endpoint Keystone dengan akhiran versi, nilainya adalah nama "
 "wilayah."
 
+msgid ""
+"The default template is defined as `clouds.yaml.template <https://opendev."
+"org/openstack/horizon/src/branch/master/openstack_dashboard/dashboards/"
+"project/api_access/templates/api_access/clouds.yaml.template>`__ and "
+"available context parameters are found in ``_get_openrc_credentials()`` and "
+"``download_clouds_yaml_file()`` functions in `openstack_dashboard/dashboards/"
+"project/api_access/views.py <https://opendev.org/openstack/horizon/src/"
+"branch/master/openstack_dashboard/dashboards/project/api_access/views.py>`__."
+msgstr ""
+"Template default didefinisikan sebagai `clouds.yaml.template <https://"
+"opendev.org/openstack/horizon/src/branch/master/openstack_dashboard/"
+"dashboards/project/api_access/templates/api_access/clouds.yaml.template>` __ "
+"dan parameter konteks yang tersedia ditemukan di "
+"``_get_openrc_credentials()`` dan ``download_clouds_yaml_file()``  fungsi "
+"dalam `openstack_dashboard/dashboards/project/api_access/views.py <https://"
+"opendev.org/openstack/horizon/src/branch/master/openstack_dashboard/"
+"dashboards/project/api_access/views.py>`__."
+
+msgid ""
+"The default template is defined as `openrc.sh.template <https://opendev.org/"
+"openstack/horizon/src/branch/master/openstack_dashboard/dashboards/project/"
+"api_access/templates/api_access/openrc.sh.template>`__ and available context "
+"parameters are found in ``_get_openrc_credentials()`` and "
+"``download_rc_file()`` functions in `openstack_dashboard/dashboards/project/"
+"api_access/views.py <https://opendev.org/openstack/horizon/src/branch/master/"
+"openstack_dashboard/dashboards/project/api_access/views.py>`__."
+msgstr ""
+"Template default didefinisikan sebagai `openrc.sh.template <https://opendev."
+"org/openstack/horizon/src/branch/master/openstack_dashboard/dashboards/"
+"project/api_access/templates/api_access/openrc.sh.template>` __ dan "
+"parameter konteks yang tersedia ditemukan di ``_get_openrc_credentials()`` "
+"and ``download_rc_file()`` fungsi dalam `openstack_dashboard/dashboards/"
+"project/api_access/views.py <https://opendev.org/openstack/horizon/src/"
+"branch/master/openstack_dashboard/dashboards/project/api_access/views.py>`__."
+
 msgid "The default value for this setting has been changed to ``False``"
 msgstr "Nilai default untuk pengaturan ini telah diubah menjadi ``False``"
 
 msgid "The default value for this setting has been changed to ``True``"
 msgstr "Nilai default untuk pengaturan ini telah diubah menjadi ``True``"
 
+msgid ""
+"The default value is changed from ``True`` to ``False`` in favor of the "
+"deprecation of keystone v2 API support in horizon."
+msgstr ""
+"Nilai default diubah dari `` True`` menjadi `` False`` yang mendukung "
+"penghentian dukungan API keystone v2 di horizon."
+
 msgid ""
 "The directory location for the theme. The path must be relative to the "
 "``openstack_dashboard`` directory or an absolute path to an accessible "
@@ -2785,6 +2999,22 @@ msgstr ""
 "nilai harus sesuai dengan ``member_role_name`` yang ditentukan dalam "
 "``keystone.conf``."
 
+msgid ""
+"The reason for an analytics specific block is that for security purposes we "
+"want to be able to turn off tracking on certain pages that we deem "
+"sensitive. This is done for the safety of the users and the cloud admins. By "
+"using this block instead, pages using ``base.html`` can override it "
+"themselves when they want to avoid tracking. They can't simply override the "
+"custom js because it may be non-tracking code."
+msgstr ""
+"Alasan untuk blok khusus analitik adalah bahwa untuk tujuan keamanan kami "
+"ingin dapat menonaktifkan pelacakan pada halaman tertentu yang kami anggap "
+"sensitif. Ini dilakukan untuk keselamatan pengguna dan admin cloud. Dengan "
+"menggunakan blok ini sebagai gantinya, halaman menggunakan ``base.html`` "
+"dapat menimpanya sendiri ketika mereka ingin menghindari pelacakan. Mereka "
+"tidak bisa begitu saja mengesampingkan js kustom karena mungkin kode non-"
+"tracking."
+
 msgid ""
 "The result is a single compressed js file consisting both Horizon and "
 "dashboard's custom scripts."
@@ -2964,6 +3194,24 @@ msgstr ""
 "(service provider). ID ini tidak boleh cocok dengan ID penyedia layanan apa "
 "pun."
 
+msgid ""
+"This SESSION_TIMEOUT is a method to supercede the token timeout with a "
+"shorter horizon session timeout (in seconds). If SESSION_REFRESH is True "
+"(the default) SESSION_TIMEOUT acts like an idle timeout rather than being a "
+"hard limit, but will never exceed the token expiry. If your token expires in "
+"60 minutes, a value of 1800 will log users out after 30 minutes of "
+"inactivity, or 60 minutes with activity. Setting SESSION_REFRESH to False "
+"will make SESSION_TIMEOUT act like a hard limit on session times."
+msgstr ""
+"SESSION_TIMEOUT ini adalah metode untuk menggantikan batas waktu token "
+"dengan batas waktu sesi horison yang lebih pendek (dalam detik). Jika "
+"SESSION_REFRESH Benar (default) SESSION_TIMEOUT bertindak seperti batas "
+"waktu idle dari pada menjadi batas keras, tetapi tidak akan pernah melebihi "
+"batas kadaluarsa token. Jika token Anda kedaluwarsa dalam 60 menit, nilai "
+"1800 akan mengeluarkan pengguna setelah 30 menit tidak aktif, atau 60 menit "
+"dengan aktivitas. Mengatur SESSION_REFRESH ke False akan membuat "
+"SESSION_TIMEOUT bertindak seperti batas keras pada waktu sesi."
+
 msgid ""
 "This can be either a literal URL path (such as the default), or Python's "
 "dotted string notation representing a function which will evaluate what URL "
@@ -3054,6 +3302,9 @@ msgstr ""
 "ini seharusnya mencari perubahan file __init__.py dan melakukan penyesuaian "
 "melalui cara lain."
 
+msgid "This option will be dropped in 16.0.0(Train) release."
+msgstr "Opsi ini akan jatuh dalam rilis 16.0.0 (Train)."
+
 msgid ""
 "This setting allow your to hide the \"Create New Volume\" option and rely on "
 "the default value you select with ``create_volume`` to be the most suitable "
@@ -3402,6 +3653,32 @@ msgstr ""
 "``openstack_dashboard/local/enabled/_60_admin_add_panel.py`` dengan konten "
 "berikut ::"
 
+msgid ""
+"To add custom javascript files, create an ``_scripts.html`` partial template "
+"in your dashboard ``openstack_dashboard/dashboards/my_custom_dashboard/"
+"templates/my_custom_dashboard/_scripts.html`` which extends ``horizon/"
+"_scripts.html``. In this template override the ``block custom_js_files`` "
+"including your custom javascript files::"
+msgstr ""
+"Untuk menambahkan file javascript khusus, buat ``_scripts.html`` templat "
+"parsial di dasbor Anda ``openstack_dashboard/dashboards/my_custom_dashboard/"
+"templates/my_custom_dashboard/_scripts.html`` which extends ``horizon/"
+"_scripts.html``.  Dalam template ini timpa ``block custom_js_files`` "
+"termasuk file javascript khusus Anda ::"
+
+msgid ""
+"To add custom metadata attributes to your project's base template use the "
+"``custom_metadata`` block. To do this, recursively extend the ``base.html`` "
+"template in your theme to override the ``custom_metadata`` block. The "
+"contents of this block will be inserted into the page's <head> just after "
+"the default Horizon meta tags."
+msgstr ""
+"Untuk menambahkan atribut metadata khusus ke templat dasar proyek Anda, "
+"gunakan blok ``custom_metadata``. Untuk melakukan ini, rentangkan templat "
+"``base.html`` dalam tema Anda secara rekursif untuk mengganti blok "
+"``custom_metadata``. Isi blok ini akan dimasukkan ke dalam <head> halaman "
+"tepat setelah tag meta Horizon default."
+
 msgid "To add icon to Table Action, use icon property. Example:"
 msgstr "Untuk menambahkan ikon ke Table Action, gunakan properti ikon. Contoh:"
 
@@ -3762,6 +4039,33 @@ msgstr ""
 "Anda juga harus mendefinisikan `OPENSTACK_KEYSTONE_URL`_ untuk menunjukkan "
 "daerah mana yang merupakan default."
 
+msgid ""
+"Your template needs to be placed in the search paths of Django templates. "
+"Check ``TEMPLATES[0]['DIRS']``. You may need to specify somewhere your "
+"template exist to ``DIRS`` in ``TEMPLATES`` setting."
+msgstr ""
+"Templat Anda perlu ditempatkan di jalur pencarian templat Django. Periksa "
+"``TEMPLATES [0] ['DIRS'] ``. Anda mungkin perlu menentukan di mana templat "
+"Anda ada di ``DIRS`` dalam pengaturan ``TEMPLATES``."
+
+msgid ""
+"Your template needs to be placed in the search paths of Django templates. "
+"You may need to configure `ADD_TEMPLATE_DIRS`_ setting to contain a path "
+"where your template exists."
+msgstr ""
+"Templat Anda perlu ditempatkan di jalur pencarian templat Django. Anda "
+"mungkin perlu mengonfigurasi pengaturan 'ADD_TEMPLATE_DIRS`_ untuk memuat "
+"jalur tempat templat Anda ada."
+
+msgid "Your theme's ``auth/_login_form.html``::"
+msgstr "Tema Anda ``auth/_login_form.html``::"
+
+msgid "Your theme's ``auth/login.html``::"
+msgstr "Tema Anda ``auth/login.html``::"
+
+msgid "Your theme's ``base.html``::"
+msgstr "Tema Anda ``base.html``::"
+
 msgid "`Bar Charts`_"
 msgstr "`Bar Charts`_"
 
@@ -3848,6 +4152,15 @@ msgstr ""
 "belakang modal, url bug dan konfigurasi tema, serta pengaturan yang "
 "mempengaruhi setiap layanan, seperti ukuran halaman pada permintaan API."
 
+msgid "`OPENRC_CUSTOM_TEMPLATE`_ to provide a custom ``openrc``."
+msgstr "`OPENRC_CUSTOM_TEMPLATE`_ untuk memberikan kebiasaan ``openrc``."
+
+msgid ""
+"`OPENSTACK_CLOUDS_YAML_CUSTOM_TEMPLATE`_ to provide a custom ``clouds.yaml``."
+msgstr ""
+"`OPENSTACK_CLOUDS_YAML_CUSTOM_TEMPLATE`_ untuk memberikan kebiasaan ``clouds."
+"yaml``."
+
 msgid ""
 "`PROJECT_TABLE_EXTRA_INFO`_ for the equivalent setting on the Projects table"
 msgstr ""
@@ -4196,6 +4509,9 @@ msgstr "enable_ipv6"
 msgid "enable_quotas"
 msgstr "enable_quotas"
 
+msgid "enable_rbac_policy"
+msgstr "enable_rbac_policy"
+
 msgid "enable_router"
 msgstr "enable_router"
 
diff --git a/doc/source/locale/id/LC_MESSAGES/doc-install.po b/doc/source/locale/id/LC_MESSAGES/doc-install.po
index edee393adc9c2a0432b227e18a2a44a67031bb0b..20ce3f134668269f7c8849a753f8ecb18ee963c2 100644
--- a/doc/source/locale/id/LC_MESSAGES/doc-install.po
+++ b/doc/source/locale/id/LC_MESSAGES/doc-install.po
@@ -1,13 +1,14 @@
 # suhartono <cloudsuhartono@gmail.com>, 2018. #zanata
+# suhartono <cloudsuhartono@gmail.com>, 2019. #zanata
 msgid ""
 msgstr ""
-"Project-Id-Version: horizon 15.1.0.dev61\n"
+"Project-Id-Version: horizon 15.1.0.dev70\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2019-04-24 22:52-0500\n"
+"POT-Creation-Date: 2019-05-02 20:14-0500\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
-"PO-Revision-Date: 2018-12-19 08:55+0000\n"
+"PO-Revision-Date: 2019-05-06 04:21+0000\n"
 "Last-Translator: suhartono <cloudsuhartono@gmail.com>\n"
 "Language-Team: Indonesian\n"
 "Language: id\n"
@@ -234,6 +235,10 @@ msgstr "Django 1.11 or 2.0"
 msgid "Django 1.8 to 1.10 are no longer supported since Rocky release."
 msgstr "Django 1.8 hingga 1.10 tidak lagi didukung sejak Rocky rilis."
 
+msgid "Django support policy is documented at :doc:`/contributor/policy`."
+msgstr ""
+"Kebijakan dukungan Django didokumentasikan di  :doc:`/contributor/policy`."
+
 msgid ""
 "Do not edit the ``ALLOWED_HOSTS`` parameter under the Ubuntu configuration "
 "section."
@@ -482,6 +487,9 @@ msgstr ""
 "sambungan sertifikat SSL, arahkan alamat IP server ke nama domain, dan "
 "berikan akses kepada pengguna."
 
+msgid "Python 2.7, 3.6 or 3.7"
+msgstr "Python 2.7, 3.6 or 3.7"
+
 msgid "Python memcached module installed"
 msgstr "Modul Python memcached terpasang"
 
@@ -560,6 +568,9 @@ msgstr "Persyaratan sistem"
 msgid "Tacker UI"
 msgstr "Tacker UI"
 
+msgid "The Train release of horizon has the following dependencies."
+msgstr "Rilis Train horizon memiliki dependensi berikut."
+
 msgid ""
 "The ``systemctl restart`` command starts each service if not currently "
 "running."
@@ -606,6 +617,25 @@ msgstr ""
 "dasbor di lingkungan dengan layanan yang berdiri sendiri seperti Object "
 "Storage."
 
+msgid ""
+"Then configure the web server to host OpenStack dashboard via WSGI. For "
+"apache2 web server, you may need to create ``/etc/apache2/sites-available/"
+"horizon.conf``. The template in DevStack is a good example of the file. "
+"https://opendev.org/openstack/devstack/src/branch/master/files/apache-"
+"horizon.template Or you can automatically generate an apache configuration "
+"file. If you previously generated an ``openstack_dashboard/horizon_wsgi.py`` "
+"file it will use that, otherwise will default to using ``openstack_dashboard/"
+"wsgi.py``"
+msgstr ""
+"Kemudian konfigurasikan server web untuk menghosting dashboard OpenStack "
+"melalui WSGI. Untuk server web apache2, Anda mungkin perlu membuat ``/etc/"
+"apache2/sites-available/horizon.conf``. Template di DevStack adalah contoh "
+"file yang bagus. https://opendev.org/openstack/devstack/src/branch/master/"
+"files/apache-horizon.template Atau Anda dapat secara otomatis membuat file "
+"konfigurasi apache. Jika sebelumnya Anda membuat file ``openstack_dashboard/"
+"horizon_wsgi.py`` itu akan menggunakannya, jika tidak maka akan secara "
+"default menggunakan ``openstack_dashboard/wsgi.py``"
+
 msgid ""
 "There are a number of horizon plugins for various useful features. You can "
 "get dashboard supports for them by installing corresponding horizon plugins."
@@ -952,3 +982,7 @@ msgstr "https://storyboard.openstack.org/#!/project/992"
 
 msgid "https://storyboard.openstack.org/#!/project/openstack/searchlight-ui"
 msgstr "https://storyboard.openstack.org/#!/project/openstack/searchlight-ui"
+
+msgid "https://storyboard.openstack.org/#!/project/openstack/vitrage-dashboard"
+msgstr ""
+"https://storyboard.openstack.org/#!/project/openstack/vitrage-dashboard"
diff --git a/openstack_dashboard/locale/de/LC_MESSAGES/djangojs.po b/openstack_dashboard/locale/de/LC_MESSAGES/djangojs.po
index ff0e1d254549b9bcf47a8bc8932e96efe33b457f..172fae7c2a58165281dc20c1caa20fa4d0a78b39 100644
--- a/openstack_dashboard/locale/de/LC_MESSAGES/djangojs.po
+++ b/openstack_dashboard/locale/de/LC_MESSAGES/djangojs.po
@@ -8,16 +8,17 @@
 # Andreas Jaeger <jaegerandi@gmail.com>, 2018. #zanata
 # Reik Keutterling <spielkind@gmail.com>, 2018. #zanata
 # Robert Simai <robert.simai@suse.com>, 2018. #zanata
+# Frank Kloeker <eumel@arcor.de>, 2019. #zanata
 # Robert Simai <robert.simai@suse.com>, 2019. #zanata
 msgid ""
 msgstr ""
 "Project-Id-Version: horizon VERSION\n"
 "Report-Msgid-Bugs-To: https://bugs.launchpad.net/openstack-i18n/\n"
-"POT-Creation-Date: 2019-02-22 16:05+0000\n"
+"POT-Creation-Date: 2019-05-03 01:14+0000\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
-"PO-Revision-Date: 2019-02-14 10:59+0000\n"
+"PO-Revision-Date: 2019-05-03 02:19+0000\n"
 "Last-Translator: Robert Simai <robert.simai@suse.com>\n"
 "Language-Team: German\n"
 "Language: de\n"
@@ -1633,6 +1634,9 @@ msgstr ""
 "Die Namen dürfen nur alphanumerische Zeichen, Leerzeichen und Bindestriche "
 "und Unterstriche enthalten."
 
+msgid "Key Type"
+msgstr "Schlüsseltyp"
+
 #, python-format
 msgid "Key pair %(name)s was successfully created."
 msgstr "Schlüsselpaar %(name)s wurde erfolgreich erstellt."
@@ -2338,6 +2342,9 @@ msgstr "Regel ID"
 msgid "Rules"
 msgstr "Regeln"
 
+msgid "SSH Key"
+msgstr "SSH Schlüssel"
+
 msgid "STATUS"
 msgstr "STATUS"
 
@@ -2350,6 +2357,12 @@ msgstr "Änderungen speichern"
 msgid "Saving"
 msgstr "Speichern"
 
+#, python-format
+msgid "Scheduled creation of %s instance."
+msgid_plural "Scheduled creation of %s instances."
+msgstr[0] "Geplante Erzeugung von %s Instanz."
+msgstr[1] "Geplante Erzeugung von %s Instanzen."
+
 msgid "Scheduler Hints"
 msgstr "Schedulerhinweise"
 
@@ -3861,6 +3874,9 @@ msgstr ""
 "b> auf <b>Inaktiv</b> setzen, wenn andere\n"
 "    Benutzer den Port noch nicht verwenden sollen. "
 
+msgid "X509 Certificate"
+msgstr "X509 Zertifikat"
+
 msgid "XL Modal"
 msgstr "XL Modal"
 
diff --git a/openstack_dashboard/locale/fr/LC_MESSAGES/django.po b/openstack_dashboard/locale/fr/LC_MESSAGES/django.po
index 84006170c87a2ef9174448d7b1f83c36bb51da27..487488940cff389c6ae3f9af6b21f48c9765497f 100644
--- a/openstack_dashboard/locale/fr/LC_MESSAGES/django.po
+++ b/openstack_dashboard/locale/fr/LC_MESSAGES/django.po
@@ -2,7 +2,6 @@
 # Gael Rehault <gael01@gmail.com>, 2015. #zanata
 # JF Taltavull <jftalta@gmail.com>, 2015. #zanata
 # Kevin Tibi <kodokuu@gmail.com>, 2015. #zanata
-# Maxime Coquerel <max.coquerel@gmail.com>, 2015. #zanata
 # OpenStack Infra <zanata@openstack.org>, 2015. #zanata
 # Romain Chantereau <rchanter@redhat.com>, 2015. #zanata
 # SOURDET Henri <hsourdet@gmail.com>, 2015. #zanata
@@ -27,11 +26,11 @@ msgid ""
 msgstr ""
 "Project-Id-Version: horizon VERSION\n"
 "Report-Msgid-Bugs-To: https://bugs.launchpad.net/openstack-i18n/\n"
-"POT-Creation-Date: 2019-04-20 14:28+0000\n"
+"POT-Creation-Date: 2019-05-03 01:14+0000\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
-"PO-Revision-Date: 2019-01-29 03:23+0000\n"
+"PO-Revision-Date: 2019-05-05 11:10+0000\n"
 "Last-Translator: JF Taltavull <jftalta@gmail.com>\n"
 "Language-Team: French\n"
 "Language: fr\n"
@@ -238,6 +237,10 @@ msgstr ""
 "instance possède plusieurs interfaces et plusieurs groupes de sécurité par "
 "port, utilisez plutôt \"Editer les groupes de sécurité de port\"."
 
+#, python-format
+msgid "<span class='word-wrap'>Flavor Details: %(name)s</span>\">%(name)s"
+msgstr "<span class='word-wrap'>Détails du gabarit: %(name)s</span>\">%(name)s"
+
 msgid "A brief description of the security group rule you are adding"
 msgstr ""
 "Courte description de la règle de sécurité que vous êtes en train d'ajouter"
@@ -963,6 +966,13 @@ msgstr ""
 "identifiants d'application. Si votre application a besoin d'exécuter ces "
 "actions, alors cochez \"Sans restriction\"."
 
+msgid ""
+"By default, group type is created as public. To create a private group type, "
+"uncheck this field."
+msgstr ""
+"Par défaut, un type de groupe est créé public. Pour créer un type de groupe "
+"privé, décocher ce champ."
+
 msgid ""
 "By default, volume type is created as public. To create a private volume "
 "type, uncheck this field."
@@ -1002,6 +1012,9 @@ msgstr "Impossible d'obtenir la console pour l'instance %s."
 msgid "Cannot specify both file and direct input."
 msgstr "Impossible d'indiquer à la fois le fichier et l'entrée directe."
 
+msgid "Center Topology"
+msgstr "Centrer la topologie"
+
 msgid "Centralized"
 msgstr "Centralisé"
 
@@ -1160,6 +1173,10 @@ msgstr ""
 "Cloner chaque volume du groupe source puis ajouter les à un groupe "
 "nouvellement créé."
 
+#, python-format
+msgid "Cloning volume group \"%s\"."
+msgstr "Clonage du groupe de volumes \"%s\"."
+
 msgid "Close"
 msgstr "Fermer"
 
@@ -1344,6 +1361,12 @@ msgstr "Créer un Groupe"
 msgid "Create Group Snapshot"
 msgstr "Créer un instantané du groupe"
 
+msgid "Create Group Type"
+msgstr "Créer un type de groupe"
+
+msgid "Create Group Type Spec"
+msgstr "Créer une spec de type de groupe"
+
 msgid "Create Host Aggregate"
 msgstr "Créer un agrégat d'hôtes"
 
@@ -1450,6 +1473,9 @@ msgstr ""
 "Créer un groupe de cohérence qui contiendra les volumes fraichement clonés "
 "depuis chaque instantané du groupe de cohérence source."
 
+msgid "Create a Group Type"
+msgstr "Créer un type de groupe"
+
 msgid ""
 "Create a Group that will contain newly created volumes cloned from each of "
 "the snapshots in the source Group Snapshot."
@@ -1479,6 +1505,11 @@ msgid "Create a new \"extra spec\" key-value pair for a volume type."
 msgstr ""
 "Créer une nouvelle paire clé-valeur \"extra spec\" pour un type de volume."
 
+msgid "Create a new \"group spec\" key-value pair for a group type."
+msgstr ""
+"Créer une nouvelle paire clé-valeur \"spec de groupe\" pour un type de "
+"groupe."
+
 #, python-format
 msgid ""
 "Create a new \"spec\" key-value pair for QoS Spec \"%(qos_spec_name)s\". "
@@ -1541,6 +1572,10 @@ msgstr "Créé"
 msgid "Created extra spec \"%s\"."
 msgstr "Spécification supplémentaire \"%s\" créée."
 
+#, python-format
+msgid "Created group type spec \"%s\"."
+msgstr "Spec de type de groupe %s\" créée."
+
 #, python-format
 msgid "Created network \"%s\"."
 msgstr "Réseau \"%s\" créé."
@@ -1783,6 +1818,11 @@ msgid_plural "Delete Groups"
 msgstr[0] "Supprimer le Groupe"
 msgstr[1] "Supprimer les Groupes"
 
+msgid "Delete Group Type"
+msgid_plural "Delete Group Types"
+msgstr[0] "Supprimer le type de groupe"
+msgstr[1] "Supprimer les types de groupes"
+
 msgid "Delete Host Aggregate"
 msgid_plural "Delete Host Aggregates"
 msgstr[0] "Supprimer l'Agrégation d'hôtes"
@@ -1974,6 +2014,11 @@ msgid_plural "Deleted Groups"
 msgstr[0] "Groupe Supprimé"
 msgstr[1] "Groupes Supprimés"
 
+msgid "Deleted Group Type"
+msgid_plural "Deleted Group Types"
+msgstr[0] "Type de groupe supprimé"
+msgstr[1] "Types de groupes supprimés"
+
 msgid "Deleted Host Aggregate"
 msgid_plural "Deleted Host Aggregates"
 msgstr[0] "Agrégation d'hôtes supprimée"
@@ -2126,6 +2171,12 @@ msgstr "Suppression du groupe de cohérence de volume \"%s\""
 msgid "Deleting volume group \"%s\""
 msgstr "Suppression du groupe de volumes \"%s\""
 
+msgid "Deprecated Settings"
+msgstr "Paramètres obsolètes"
+
+msgid "Deprecated settings: {}."
+msgstr "Paramètres obsolètes : {}."
+
 msgid "Description"
 msgstr "Description"
 
@@ -2454,6 +2505,16 @@ msgstr "Éditer le gabarit"
 msgid "Edit Group"
 msgstr "Éditer un Groupe"
 
+msgid "Edit Group Type"
+msgstr "Editer le type de groupe"
+
+msgid "Edit Group Type Spec"
+msgstr "Editer la spec du type de groupe"
+
+#, python-format
+msgid "Edit Group Type Spec Value: %s"
+msgstr "Editer la valeur de la spec du type de groupe: %s"
+
 msgid "Edit Host Aggregate"
 msgstr "Éditer l'agrégat d'hôtes"
 
@@ -3285,6 +3346,10 @@ msgstr "Graphique"
 msgid "Group"
 msgstr "Groupe"
 
+#, python-format
+msgid "Group \"%s\" already exists."
+msgstr "Le groupe \"%s\" existe déjà."
+
 #, python-format
 msgid "Group \"%s\" was successfully created."
 msgstr "Groupe \"%s\" créé avec succès. "
@@ -3322,9 +3387,30 @@ msgstr "Groupe d'instantanés"
 msgid "Group Type"
 msgstr "Type du groupe"
 
+msgid "Group Type Specs"
+msgstr "Specs du type de groupe"
+
+#, python-format
+msgid "Group Type: %(group_type_name)s"
+msgstr "Type de groupe : %(group_type_name)s"
+
+#, python-format
+msgid "Group Type: %(group_type_name)s "
+msgstr "Type de groupe : %(group_type_name)s"
+
+msgid "Group Types"
+msgstr "Types de groupe"
+
 msgid "Group has been updated successfully."
 msgstr "Le Groupe a été mis à jour avec succès."
 
+#, python-format
+msgid "Group type name \"%s\" already exists."
+msgstr "Le type de groupe \"%s\" existe déjà."
+
+msgid "Group type name can not be empty."
+msgstr "Le nom du type de groupe ne doit pas être vide."
+
 msgid ""
 "Group which the new volume belongs to. Choose 'No group' if the new volume "
 "belongs to no group."
@@ -3508,6 +3594,13 @@ msgstr ""
 "Liste des adresses IP des serveurs DNS pour ce sous-réseau. Une seule "
 "adresse par ligne est permise."
 
+msgid ""
+"IP address of Gateway (e.g. 192.168.0.254) If you do not want to use a "
+"gateway, check 'Disable Gateway' below."
+msgstr ""
+"Adresse IP de la passerelle (e.g. 192.168.0.254). Si vous ne souhaitez pas "
+"utiliser une passerelle, cochez \"Désactiver la passerelle\" ci-dessous."
+
 msgid ""
 "IP address of Gateway (e.g. 192.168.0.254) The default value is the first IP "
 "of the network address (e.g. 192.168.0.1 for 192.168.0.0/24, 2001:DB8::1 for "
@@ -3870,6 +3963,9 @@ msgstr "Nom de la paire de clés"
 msgid "Key Pair Name ="
 msgstr "Nom de la paire de clés ="
 
+msgid "Key Pair Type"
+msgstr "Type de paire de clés"
+
 msgid "Key Pairs"
 msgstr "Paires de clés"
 
@@ -3880,6 +3976,16 @@ msgstr ""
 msgid "Key Size (bits)"
 msgstr "Taille de la clé (bits)"
 
+msgid "Key Type"
+msgstr "Type de clé"
+
+msgid ""
+"Key names can only contain alphanumeric characters, underscores, periods, "
+"colons and hyphens"
+msgstr ""
+"Les noms de clés ne peuvent comporter que des caractères alphanumériques, "
+"des soulignés, des points, des deux-points ou des traits d'union."
+
 msgid ""
 "Key pair name may only contain letters, numbers, underscores, spaces, and "
 "hyphens and may not be white space."
@@ -3890,6 +3996,14 @@ msgstr ""
 msgid "Key pair to use for authentication."
 msgstr "Paire de clés à utiliser pour l'authentification."
 
+#, python-format
+msgid ""
+"Key with name \"%s\" already exists. Use Edit to update the value, else "
+"create key with different name."
+msgstr ""
+"Une clé nommée \"%s\" existe déjà. Utiliser Editer pour mettre la valeur à "
+"jour ou bien créer une clé portant un nom différent."
+
 msgid "Key-Value Pairs"
 msgstr "Paires de clé-valeur"
 
@@ -4220,10 +4334,17 @@ msgstr "Espace disque minimal (Go)"
 msgid "Minimum RAM (MB)"
 msgstr "RAM minimale (Mo)"
 
+msgid "Missing required settings: {}."
+msgstr "Il manque des paramètres requis : {}."
+
 #, python-format
 msgid "Modified domain \"%s\"."
 msgstr "Domaine \"%s\" modifié."
 
+#, python-format
+msgid "Modified flavor access of \"%s\"."
+msgstr "Accès de gabarit de \"%s\" modifiés."
+
 #, python-format
 msgid "Modified instance \"%s\"."
 msgstr "Instance \"%s\" modifiée."
@@ -4254,6 +4375,9 @@ msgstr "Éditer les quotas"
 msgid "Modify dashboard settings for your user."
 msgstr "Modifier les paramètres du dashboard."
 
+msgid "Modify group type name, description, and public status."
+msgstr "Modifier le nom du type de groupe, la description et le statut public."
+
 msgid "Modify name and description of a volume."
 msgstr "Modifier le nom et la description du volume."
 
@@ -4433,6 +4557,9 @@ msgstr "Nouvelle taille (Gio)"
 msgid "New name cannot be empty."
 msgstr "Le nouveau nom ne paeut pas être vide."
 
+msgid "New name conflicts with another group type."
+msgstr "Confilt de nom avec un autre type de groupe."
+
 msgid "New name conflicts with another volume type."
 msgstr "Le nouveau nom est en conflit avec un autre Type de Volume."
 
@@ -4825,6 +4952,9 @@ msgctxt "Current status of an Instance"
 msgid "Password"
 msgstr "Mot de passe"
 
+msgid "Password Expires At"
+msgstr "Le mot de passe expire à"
+
 msgid "Password changed. Please log in again to continue."
 msgstr "Mot de passe modifié. Connectez-vous à nouveau pour poursuivre."
 
@@ -4867,6 +4997,11 @@ msgstr "Suppression de Mise en attente"
 msgid "Per Volume Size (GiB)"
 msgstr "Taille par Volume (Go)"
 
+msgid "Perform a check to see if the application is ready for upgrade."
+msgstr ""
+"Procédez à une vérification pour déterminer si l'application est prête pour "
+"la mise à niveau."
+
 msgid "Physical Network"
 msgstr "Réseau physique"
 
@@ -5347,13 +5482,23 @@ msgstr ""
 msgid "Requested snapshot would exceed the allowed quota."
 msgstr "L'instantané demandé dépasserait le quota disponible."
 
+msgid "Required Settings"
+msgstr "Paramètres requis"
+
+msgctxt "Action log of an instance"
+msgid "Rescue"
+msgstr "Secourir"
+
 msgctxt "Current status of an Instance"
 msgid "Rescue"
 msgstr "Mode Secours"
 
+msgid "Rescue Instance"
+msgstr "Secourir l'instance"
+
 msgctxt "Current status of an Instance"
 msgid "Rescued"
-msgstr "Sauvée"
+msgstr "Secourue"
 
 msgctxt "Task status of an Instance"
 msgid "Rescuing"
@@ -5490,6 +5635,9 @@ msgstr "Nom de Rôle"
 msgid "Role Name ="
 msgstr "Nom de rôle ="
 
+msgid "Role assignments"
+msgstr "Attributions du rôle"
+
 msgid "Role created successfully."
 msgstr "Rôle créé avec succès."
 
@@ -5571,6 +5719,9 @@ msgstr "SLAAC : Adresse détectée par un routeur externe"
 msgid "SNAT"
 msgstr "NAT de source"
 
+msgid "SSH Key"
+msgstr "Clé SSH"
+
 msgid "SSH key pairs can be generated with the ssh-keygen command:"
 msgstr ""
 "Les paires de clés SSH peuvent être générées avec la commande ssh-keygen :"
@@ -5585,6 +5736,10 @@ msgstr "Sauvegarder les modifications"
 msgid "Saved extra spec \"%s\"."
 msgstr "Spécification supplémentaire \"%s\" enregistrée."
 
+#, python-format
+msgid "Saved group spec \"%s\"."
+msgstr "Spec de groupe \"%s\" enregistrée."
+
 #, python-format
 msgid "Saved spec \"%s\"."
 msgstr "Spécification sauvegardée \"%s\"."
@@ -6279,6 +6434,10 @@ msgstr "Spécification QoS créée avec succès : %s"
 msgid "Successfully created encryption for volume type: %s"
 msgstr "Chiffrement réussi pour le volume : %s"
 
+#, python-format
+msgid "Successfully created group type: %s"
+msgstr "Type de groupe créé avec succès : %s"
+
 #, python-format
 msgid "Successfully created security group: %s"
 msgstr "Groupe de sécurité créé avec succès : %s"
@@ -6316,6 +6475,9 @@ msgstr "La Spécification QoS du Consommateur a été modifiée avec succès."
 msgid "Successfully recreated ec2 credentials."
 msgstr "Données d'identification ec2 recréées avec succès."
 
+msgid "Successfully rescued instance"
+msgstr "Instance secourue avec succès"
+
 #, python-format
 msgid ""
 "Successfully sent the request to change the volume type to \"%(vtype)s\" for "
@@ -6354,6 +6516,9 @@ msgstr "l'agrégat \"%s\" a été mis a jour avec succès"
 msgid "Successfully updated encryption for volume type: %s"
 msgstr "Mise à jour du chiffrement réussi pour le volume : %s"
 
+msgid "Successfully updated group type."
+msgstr "Type de groupe mis à jour avec succès."
+
 #, python-format
 msgid "Successfully updated security group: %s"
 msgstr "Groupe de sécurité mis à jour avec succès : %s"
@@ -6668,6 +6833,12 @@ msgstr ""
 msgid "The new availability zone can't be empty"
 msgstr "La nouvelle zone de disponibilité ne peut-être vide."
 
+msgid "The new type must be different from the current volume type."
+msgstr "Le nouveau type doit être différent du type de volume courant."
+
+msgid "The output format"
+msgstr "Format de sortie"
+
 msgid "The physical mechanism by which the virtual network is implemented."
 msgstr "Le mécanisme physique par lequel le réseau virtuel est implémenté."
 
@@ -6716,6 +6887,13 @@ msgstr ""
 "L'instance demandée ne peut pas être lancée car vos quota seraient dépassés. "
 "Disponibles :  %(avail)s, nécessaires : %(req)s."
 
+msgid ""
+"The rescue mode is only for emergency purpose, for example in case of a "
+"system or access failure."
+msgstr ""
+"Le mode secours est uniquement destiné aux cas d'urgence, par exemple un "
+"dysfonctionnement du système ou un problème d'accès."
+
 msgid "The specified floating IP no longer exists."
 msgstr "L'IP flottante spécifiée n'existe plus."
 
@@ -6905,6 +7083,9 @@ msgid "To exit the fullscreen mode, click the browser's back button."
 msgstr ""
 "Pour quitter le mode plein écran, cliquez sur le bouton retour du navigateur."
 
+msgid "To make group type private, uncheck this field."
+msgstr "Pour rendre privé un type de groupe, décocher ce champ."
+
 msgid "To make volume type private, uncheck this field."
 msgstr "Pour rendre ce type de volume privé, décochez ce champ."
 
@@ -7136,6 +7317,12 @@ msgstr "Création du groupe impossible car le quota est atteint."
 msgid "Unable to create group snapshot."
 msgstr "Impossible de créer un instantané du groupe."
 
+msgid "Unable to create group type spec."
+msgstr "Impossible de créer la spec de type de groupe."
+
+msgid "Unable to create group type."
+msgstr "Impossible de créer le type de groupe."
+
 msgid "Unable to create group."
 msgstr "Impossible de créer le groupe."
 
@@ -7201,6 +7388,10 @@ msgid "Unable to create snapshot. group must contain volumes."
 msgstr ""
 "Impossible de créer un instantané. Le groupe doit contenir des volumes."
 
+#, python-format
+msgid "Unable to create snapshot: %s"
+msgstr "Impossible de créer l'instantané : %s"
+
 msgid "Unable to create snapshots due to exceeding snapshot quota limit."
 msgstr ""
 "Impossible de créer l'instantané car vous avez dépassé le quota d'instantané."
@@ -7289,9 +7480,15 @@ msgstr "Impossible d'afficher les groupes de ce projet."
 msgid "Unable to display the groups of this user."
 msgstr "Impossible d'afficher les groupes de cet utilisateur."
 
+msgid "Unable to display the role assignments of this user."
+msgstr "Impossible d'afficher les attributions de rôle de cet utilisateur."
+
 msgid "Unable to display the users of this project."
 msgstr "Impossible d'afficher les utilisateurs de ce projet."
 
+msgid "Unable to edit group type spec."
+msgstr "Impossible d'éditer la spec de type de groupe."
+
 msgid "Unable to edit spec."
 msgstr "Incapable d'éditer la spécification."
 
@@ -7432,6 +7629,10 @@ msgstr "Impossible de gérer le volume."
 msgid "Unable to modify domain \"%s\"."
 msgstr "Impossible de modifier le domaine \"%s\"."
 
+#, python-format
+msgid "Unable to modify flavor access of \"%s\"."
+msgstr "Impossible de modifier les accès de gabarit de \"%s\"."
+
 #, python-format
 msgid "Unable to modify instance \"%s\"."
 msgstr "Impossible de modifier l'instance \"%s\"."
@@ -7470,6 +7671,9 @@ msgstr ""
 "Impossible d'enregistrer le fournisseur d'identité. Veuillez vérifier que le "
 "fournisseur d'identité et les IDs distants fournis ne sont pas déjà utilisés."
 
+msgid "Unable to rescue instance"
+msgstr "Impossible de secourir l'instance"
+
 #, python-format
 msgid "Unable to resize instance \"%s\"."
 msgstr "Impossible de redimensionner l'instance \"%s\"."
@@ -7557,6 +7761,9 @@ msgstr "Impossible de récupérer les zones de disponibilité."
 msgid "Unable to retrieve backup details."
 msgstr "Impossible de récupérer les détails de la sauvegarde."
 
+msgid "Unable to retrieve community images."
+msgstr "Impossible de récupérer les images de communauté."
+
 msgid "Unable to retrieve compute host information."
 msgstr "Impossible de récupérer les informations sur l'hôte Compute."
 
@@ -7680,9 +7887,32 @@ msgstr ""
 msgid "Unable to retrieve group snapshot details."
 msgstr "Impossible de récupérer les détails de l'instantané de groupe."
 
+msgid "Unable to retrieve group snapshot project information."
+msgstr ""
+"Impossible de récupérer les informations de projet de l'instantané de groupe."
+
 msgid "Unable to retrieve group snapshots."
 msgstr "Impossible de récupérer les instantanés du groupe."
 
+msgid "Unable to retrieve group type details."
+msgstr "Impossible de récupérer les détails du type de groupe."
+
+#, python-format
+msgid "Unable to retrieve group type for: \"%s\""
+msgstr "Impossible de récupérer le type de groupe pour : \"%s\""
+
+msgid "Unable to retrieve group type name."
+msgstr "Impossible de récupérer le nom du type de groupe."
+
+msgid "Unable to retrieve group type spec details."
+msgstr "Impossible de récupérer les détails de la spec du type de groupe."
+
+msgid "Unable to retrieve group type spec list."
+msgstr "Impossible de récupérer la liste des specs du type de groupe."
+
+msgid "Unable to retrieve group type."
+msgstr "Impossible de récupérer le type de groupe"
+
 msgid "Unable to retrieve group types."
 msgstr "Impossible de récupérer les types de groupe."
 
@@ -7812,6 +8042,10 @@ msgstr "Impossible de récupérer les détails du projet."
 msgid "Unable to retrieve project domain."
 msgstr "Impossible de récupérer le domaine du projet."
 
+msgid "Unable to retrieve project information of volume snapshots."
+msgstr ""
+"Impossible de récupérer les informations de projet des instantanés du volume."
+
 msgid "Unable to retrieve project information."
 msgstr "Impossible de récupérer les informations du projet."
 
@@ -7913,6 +8147,9 @@ msgstr "Impossible de récupérer les détails de l'utiisateur."
 msgid "Unable to retrieve user domain role assignments."
 msgstr "Incapable de récupérer le domaine utilisateur d'affectation des rôles."
 
+msgid "Unable to retrieve user domain."
+msgstr "Impossible de récupérer le domaine de l'utilisateur."
+
 msgid "Unable to retrieve user information."
 msgstr "Impossible de récupérer les informations de l'utilisateur."
 
@@ -7949,6 +8186,10 @@ msgstr "Impossible de récupérer les détails du volume."
 msgid "Unable to retrieve volume encryption details."
 msgstr "Impossible de récupérer les détails de chiffrement du volume."
 
+msgid "Unable to retrieve volume group project information."
+msgstr ""
+"Impossible de récupérer les informations de projet du groupe de volumes."
+
 msgid "Unable to retrieve volume group snapshots."
 msgstr "Impossible de récupérer les instantanés de groupe de volumes."
 
@@ -7986,6 +8227,10 @@ msgstr "Impossible de récupérer les informations du projet associé au volume.
 msgid "Unable to retrieve volume quota information."
 msgstr "Impossible de récupérer les informations de quotas volume."
 
+msgid "Unable to retrieve volume snapshot project information."
+msgstr ""
+"Impossible de récupérer les informations de projet de l'instantané du volume."
+
 msgid "Unable to retrieve volume snapshot."
 msgstr "Impossible de récupérer l'instantané du volume."
 
@@ -8072,6 +8317,9 @@ msgstr "impossible de mettre à jour les quotas de volume par défaut."
 msgid "Unable to update encrypted volume type."
 msgstr "Impossible de mettre à jour le volume chiffré."
 
+msgid "Unable to update group type."
+msgstr "Impossible de mettre à jour le type de groupe."
+
 msgid "Unable to update group."
 msgstr "Impossible de mettre à jour le groupe."
 
@@ -8162,6 +8410,9 @@ msgstr "Impossible de vérifier l'extension Neutron VNIC types"
 msgid "Unknown"
 msgstr "Inconnu"
 
+msgid "Unknown Settings"
+msgstr "Paramètres inconnus"
+
 msgid "Unknown instance"
 msgstr "Instance inconnue"
 
@@ -8171,6 +8422,9 @@ msgstr "Instance inconnue (Aucune)"
 msgid "Unknown resource type for detail API."
 msgstr "Type de ressource inconnu pour le détail d'API."
 
+msgid "Unknown settings: {}."
+msgstr "Paramètres inconnus : {}."
+
 msgid "Unknown volume (None)"
 msgstr "Volume inconnu (Aucune)"
 
@@ -8204,6 +8458,11 @@ msgid_plural "Unregistered Identity Providers"
 msgstr[0] "Fournisseur d'identité n'a pas été enregistré"
 msgstr[1] "Fournisseurs d'identité n'ont pas été enregistrés"
 
+msgid "Unrescued Instance"
+msgid_plural "Unrescued Instances"
+msgstr[0] "Instance non secourue"
+msgstr[1] "Instances non secourues"
+
 msgctxt "Task status of an Instance"
 msgid "Unrescuing"
 msgstr "Sortie du mode secours"
@@ -8312,6 +8571,10 @@ msgstr "Mettre à jour un volume chiffré"
 msgid "Update the \"extra spec\" value for \"%(key)s\""
 msgstr "Mise à jour de la valeur \"extra spec\" pour \"%(key)s\""
 
+#, python-format
+msgid "Update the \"group spec\" value for \"%(key)s\""
+msgstr "Mettre à jour la valeur \"spec de groupe\" pour \"%(key)s\""
+
 #, python-format
 msgid "Update the spec value for \"%(key)s\""
 msgstr "Mise à jour de la valeur de spécification pour \"%(key)s\""
@@ -8420,6 +8683,10 @@ msgstr "IP utilisées"
 msgid "User"
 msgstr "Utilisateur"
 
+#, python-format
+msgid "User \"%s\" has been updated successfully."
+msgstr "L'utilisateur \"%s\" a été mis à jour avec succès."
+
 #, python-format
 msgid "User \"%s\" was successfully created."
 msgstr "L'utilisateur \"%s\" a été créé avec succès."
@@ -8533,6 +8800,9 @@ msgstr "Voir le journal"
 msgid "View Routers"
 msgstr "Voir les routeurs"
 
+msgid "View Specs"
+msgstr "Afficher les specs."
+
 msgid "View Usage"
 msgstr "Afficher l'utilisation"
 
@@ -8807,6 +9077,9 @@ msgstr ""
 "Quand le statut du volume est \"en cours d'utilisation\", vous pouvez "
 "utiliser \"Force\" pour charger le volume dans une image."
 
+msgid "X509 Certificate"
+msgstr "Certificat X509"
+
 msgid "Yes"
 msgstr "Oui"
 
@@ -9020,12 +9293,27 @@ msgstr "ex : Oui / Non"
 msgid "e.g. Yes/No"
 msgstr "ex : Oui/Non"
 
+msgid ""
+"flavor id can only contain alphanumeric characters, underscores, periods, "
+"hyphens, spaces."
+msgstr ""
+"Un id de gabarit ne peut comporter que des caractères alphanumériques, des "
+"soulignés, des points, des traits d'union ou des espaces."
+
 msgid "front-end"
 msgstr "front-end"
 
 msgid "instance"
 msgstr "instance"
 
+#, python-format
+msgid ""
+"key with name \"%s\" already exists.Use Edit to update the value, else "
+"create key with different name."
+msgstr ""
+"Une clé portant le nom \"%s\" existe déjà. Utiliser Editer pour modifier la "
+"valeur ou bien créer une clé portant un nom différent."
+
 msgid "no"
 msgstr "non"
 
diff --git a/openstack_dashboard/locale/fr/LC_MESSAGES/djangojs.po b/openstack_dashboard/locale/fr/LC_MESSAGES/djangojs.po
index 114ac6d53220bbf70d0558447571fa971242c9f1..c731f4b39341311bb19c47a310b85f79e1ce862b 100644
--- a/openstack_dashboard/locale/fr/LC_MESSAGES/djangojs.po
+++ b/openstack_dashboard/locale/fr/LC_MESSAGES/djangojs.po
@@ -19,16 +19,17 @@
 # Loic Nicolle <loic.nicolle@orange.com>, 2018. #zanata
 # Cecilia Di Maulo <cecidimaulo@gmail.com>, 2019. #zanata
 # Gael Rehault <gael_rehault@dell.com>, 2019. #zanata
+# JF Taltavull <jftalta@gmail.com>, 2019. #zanata
 msgid ""
 msgstr ""
 "Project-Id-Version: horizon VERSION\n"
 "Report-Msgid-Bugs-To: https://bugs.launchpad.net/openstack-i18n/\n"
-"POT-Creation-Date: 2019-03-20 15:51+0000\n"
+"POT-Creation-Date: 2019-05-03 01:14+0000\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
-"PO-Revision-Date: 2019-03-20 11:51+0000\n"
-"Last-Translator: Gael Rehault <gael_rehault@dell.com>\n"
+"PO-Revision-Date: 2019-04-05 02:38+0000\n"
+"Last-Translator: JF Taltavull <jftalta@gmail.com>\n"
 "Language-Team: French\n"
 "Language: fr\n"
 "X-Generator: Zanata 4.3.3\n"
@@ -1557,6 +1558,20 @@ msgstr ""
 "votre clé publique SSH\n"
 "  dans le champ prévu à cet effet."
 
+msgid ""
+"Key Pairs are how you login to your instance after it is launched.\n"
+"  Choose a key pair name you will recognize.\n"
+"  Names may only include alphanumeric characters, spaces, dashes and\n"
+"  underscores."
+msgstr ""
+"Les paires de clés servent à vous connecter à votre instance après son "
+"lancement. Choisissez un nom de paire de clés dont vous pourrez vous "
+"souvenir. Ces noms ne peuvent contenir que des caractères alphanumériques, "
+"des espaces, des tirets et des soulignés."
+
+msgid "Key Type"
+msgstr "Type de clé"
+
 #, python-format
 msgid "Key pair %(name)s was successfully created."
 msgstr "La paire de clés %(name)s a été créée avec succès."
@@ -2246,6 +2261,12 @@ msgstr "Enregistrer les changements"
 msgid "Saving"
 msgstr "Enregistrement"
 
+#, python-format
+msgid "Scheduled creation of %s instance."
+msgid_plural "Scheduled creation of %s instances."
+msgstr[0] "Création de %s instance planifiée."
+msgstr[1] "Création de %s instances planifiée."
+
 msgid "Scheduler Hints"
 msgstr "Scheduler Hints"
 
@@ -2717,6 +2738,13 @@ msgstr "Sélections personnalisables"
 msgid "There are no Availability Zones."
 msgstr "Aucune zone de disponibilité."
 
+msgid ""
+"There are no allowed boot\n"
+"      sources. If you think this is wrong please contact your administrator."
+msgstr ""
+"Aucune source d'amorçage autorisée. Si vous pensez qu'il s'agit d'une "
+"erreur, merci de contacter votre administrateur."
+
 msgid ""
 "There are two ways to generate a key pair. From a Linux system,\n"
 "  generate the key pair with the <samp>ssh-keygen</samp> command:"
@@ -3681,6 +3709,9 @@ msgstr ""
 "sur <b>Down</b> si le port n'est pas prêt pour utilisation par d'autres "
 "utilisateurs."
 
+msgid "X509 Certificate"
+msgstr "Certificat X509"
+
 msgid "XL Modal"
 msgstr "Fenêtre modale XL"
 
diff --git a/openstack_dashboard/locale/id/LC_MESSAGES/django.po b/openstack_dashboard/locale/id/LC_MESSAGES/django.po
index a4f9e5327194bb0f177048a978b4106462ebf80f..37cd876a5a2636d911ecbd59681cdd5bca32693a 100644
--- a/openstack_dashboard/locale/id/LC_MESSAGES/django.po
+++ b/openstack_dashboard/locale/id/LC_MESSAGES/django.po
@@ -8,11 +8,11 @@ msgid ""
 msgstr ""
 "Project-Id-Version: horizon VERSION\n"
 "Report-Msgid-Bugs-To: https://bugs.launchpad.net/openstack-i18n/\n"
-"POT-Creation-Date: 2019-04-20 14:28+0000\n"
+"POT-Creation-Date: 2019-05-03 01:14+0000\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
-"PO-Revision-Date: 2019-03-12 08:11+0000\n"
+"PO-Revision-Date: 2019-04-30 02:40+0000\n"
 "Last-Translator: suhartono <cloudsuhartono@gmail.com>\n"
 "Language-Team: Indonesian\n"
 "Language: id\n"
@@ -223,6 +223,10 @@ msgstr ""
 "antarmuka pada instance ini dan menerapkan grup keamanan berbeda per port, "
 "gunakan tindakan \"Edit Port Security Groups\" sebagai gantinya."
 
+#, python-format
+msgid "<span class='word-wrap'>Flavor Details: %(name)s</span>\">%(name)s"
+msgstr "<span class='word-wrap'>Flavor Details: %(name)s</span>\">%(name)s"
+
 msgid "A brief description of the security group rule you are adding"
 msgstr "Deskripsi singkat tentang aturan grup keamanan yang Anda tambahkan"
 
@@ -1145,6 +1149,10 @@ msgstr ""
 "Menggandakan setiap volume di Grup sumber, lalu menambahkannya ke Grup yang "
 "baru dibuat."
 
+#, python-format
+msgid "Cloning volume group \"%s\"."
+msgstr "Kelompok volume kloning \"%s\"."
+
 msgid "Close"
 msgstr "Tutup"
 
@@ -3201,6 +3209,10 @@ msgstr "Graph (grafik)"
 msgid "Group"
 msgstr "Group"
 
+#, python-format
+msgid "Group \"%s\" already exists."
+msgstr "Group \"%s\" sudah ada."
+
 #, python-format
 msgid "Group \"%s\" was successfully created."
 msgstr "Kelompok \"%s\" berhasil dibuat."
@@ -3255,6 +3267,21 @@ msgstr "Jenis Grup"
 msgid "Group has been updated successfully."
 msgstr "Kelompok telah berhasil diperbarui."
 
+msgid ""
+"Group type is a type or label that can be selected at group creation time in "
+"OpenStack. It usually maps to a set of capabilities of the storage back-end "
+"driver to be used for this group. Examples: \"Performance\", \"SSD\", "
+"\"Backup\", etc. This is equivalent to the <tt>cinder type-create</tt> "
+"command. Once the group type gets created, click the \"View Specs\" button "
+"to set up specs key-value pair(s) for that group type."
+msgstr ""
+"Type grup adalah jenis atau label yang dapat dipilih pada waktu pembuatan "
+"grup di OpenStack. Biasanya memetakan ke serangkaian kemampuan driver back-"
+"end penyimpanan yang akan digunakan untuk grup ini. Contoh: \"Performance\", "
+"\"SSD\", \"Backup\", dll. Ini setara dengan perintah <tt> cinder type-create "
+"</tt>. Setelah jenis grup dibuat, klik tombol \"View Specs\" untuk mengatur "
+"pasangan nilai kunci untuk jenis grup itu."
+
 #, python-format
 msgid "Group type name \"%s\" already exists."
 msgstr "Nama tipe grup \"%s\" sudah ada."
@@ -3799,6 +3826,9 @@ msgstr "Nama Key Pair (nama pasangan kunci)"
 msgid "Key Pair Name ="
 msgstr "Key Pair Name ="
 
+msgid "Key Pair Type"
+msgstr "Key Pair Type"
+
 msgid "Key Pairs"
 msgstr "Key Pair (pasangan kunci)"
 
@@ -3810,6 +3840,9 @@ msgstr ""
 msgid "Key Size (bits)"
 msgstr "Key Size (bits)"
 
+msgid "Key Type"
+msgstr "Key Type"
+
 msgid ""
 "Key names can only contain alphanumeric characters, underscores, periods, "
 "colons and hyphens"
@@ -3827,6 +3860,14 @@ msgstr ""
 msgid "Key pair to use for authentication."
 msgstr "Sepasang kunci yang digunakan untuk otentikasi."
 
+#, python-format
+msgid ""
+"Key with name \"%s\" already exists. Use Edit to update the value, else "
+"create key with different name."
+msgstr ""
+"Kunci dengan nama \"%s\" sudah ada. Gunakan Edit untuk memperbarui nilai, "
+"jika tidak buat kunci dengan nama yang berbeda."
+
 msgid "Key-Value Pairs"
 msgstr "Key-Value Pairs (pasangan kunci-nilai)"
 
@@ -5521,6 +5562,9 @@ msgstr "SLAAC: Alamat yang ditemukan dari router eksternal"
 msgid "SNAT"
 msgstr "SNAT"
 
+msgid "SSH Key"
+msgstr "SSH Key"
+
 msgid "SSH key pairs can be generated with the ssh-keygen command:"
 msgstr "Pasangan kunci SSH dapat dihasilkan dengan perintah ssh-keygen:"
 
@@ -6627,6 +6671,9 @@ msgstr ""
 msgid "The new availability zone can't be empty"
 msgstr "Zona ketersediaan baru tidak boleh kosong"
 
+msgid "The new type must be different from the current volume type."
+msgstr "Jenis baru harus berbeda dari jenis volume saat ini."
+
 msgid "The output format"
 msgstr "Format output"
 
@@ -8438,6 +8485,10 @@ msgstr "Used IPs (IP yang digunakan)"
 msgid "User"
 msgstr "User"
 
+#, python-format
+msgid "User \"%s\" has been updated successfully."
+msgstr "Pengguna \"%s\" telah berhasil diperbarui."
+
 #, python-format
 msgid "User \"%s\" was successfully created."
 msgstr "pemakai \"%s\" berhasil dibuat."
@@ -8818,6 +8869,9 @@ msgstr ""
 "Ketika status volume \"in-use\",  Anda dapat menggunakan \"Force\" untuk "
 "meng-upload volume untuk image."
 
+msgid "X509 Certificate"
+msgstr "X509 Certificate"
+
 msgid "Yes"
 msgstr "Yes"
 
diff --git a/openstack_dashboard/locale/id/LC_MESSAGES/djangojs.po b/openstack_dashboard/locale/id/LC_MESSAGES/djangojs.po
index b5c44b4fadf4e75b9812fd03a5024db9063095c0..dc1ae81d1182940da1084bb6e813e34423bacaf6 100644
--- a/openstack_dashboard/locale/id/LC_MESSAGES/djangojs.po
+++ b/openstack_dashboard/locale/id/LC_MESSAGES/djangojs.po
@@ -2,15 +2,16 @@
 # suhartono <cloudsuhartono@gmail.com>, 2016. #zanata
 # suhartono <cloudsuhartono@gmail.com>, 2017. #zanata
 # suhartono <cloudsuhartono@gmail.com>, 2018. #zanata
+# suhartono <cloudsuhartono@gmail.com>, 2019. #zanata
 msgid ""
 msgstr ""
 "Project-Id-Version: horizon VERSION\n"
 "Report-Msgid-Bugs-To: https://bugs.launchpad.net/openstack-i18n/\n"
-"POT-Creation-Date: 2019-02-22 16:05+0000\n"
+"POT-Creation-Date: 2019-05-03 01:14+0000\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
-"PO-Revision-Date: 2018-12-19 08:08+0000\n"
+"PO-Revision-Date: 2019-04-30 02:45+0000\n"
 "Last-Translator: suhartono <cloudsuhartono@gmail.com>\n"
 "Language-Team: Indonesian\n"
 "Language: id\n"
@@ -1595,6 +1596,9 @@ msgstr ""
 "dan\n"
 "   menggarisbawahi."
 
+msgid "Key Type"
+msgstr "Key Type"
+
 #, python-format
 msgid "Key pair %(name)s was successfully created."
 msgstr "Key pair %(name)s berhasil dibuat."
@@ -2304,6 +2308,9 @@ msgstr "Rule ID"
 msgid "Rules"
 msgstr "Rules"
 
+msgid "SSH Key"
+msgstr "SSH Key"
+
 msgid "STATUS"
 msgstr "STATUS"
 
@@ -2316,6 +2323,11 @@ msgstr "Simpan perubahan"
 msgid "Saving"
 msgstr "Saving"
 
+#, python-format
+msgid "Scheduled creation of %s instance."
+msgid_plural "Scheduled creation of %s instances."
+msgstr[0] "Scheduled creation of %s instance."
+
 msgid "Scheduler Hints"
 msgstr "Petunjuk penjadwalan"
 
@@ -3733,6 +3745,9 @@ msgstr "Volume dan Snapshot Quota (GiB)"
 msgid "Volume size is required and must be an integer"
 msgstr "Ukuran volume diperlukan dan harus integer"
 
+msgid "Volume size is required and must be positive integer"
+msgstr "Diperlukan ukuran volume dan harus bilangan integer positif"
+
 msgid "Volumes"
 msgstr "Volume"
 
@@ -3805,6 +3820,9 @@ msgstr ""
 "State</b> ke <b>Down</b>\n"
 "jika Anda tidak siap untuk pengguna lain menggunakan port."
 
+msgid "X509 Certificate"
+msgstr "X509 Certificate"
+
 msgid "XL Modal"
 msgstr "XL Modal"
 
@@ -3936,6 +3954,13 @@ msgstr "image"
 msgid "inherit"
 msgstr "mewarisi"
 
+msgid "min disk is required and must be an integer not less than 0"
+msgstr ""
+"min disk diperlukan dan harus berupa bilangan bulat tidak kurang dari 0"
+
+msgid "min ram is required and must be an integer not less than 0"
+msgstr "min ram diperlukan dan harus bilangan bulat tidak kurang dari 0"
+
 #, python-format
 msgid "resource load failed: %s"
 msgstr "Muatan sumber daya gagal: %s"
diff --git a/openstack_dashboard/locale/pt_BR/LC_MESSAGES/django.po b/openstack_dashboard/locale/pt_BR/LC_MESSAGES/django.po
index 1e9e5bcbcd226bf76e40e68e01931502bd531516..3d20eb299050c523591234be57473a97ca36f2e0 100644
--- a/openstack_dashboard/locale/pt_BR/LC_MESSAGES/django.po
+++ b/openstack_dashboard/locale/pt_BR/LC_MESSAGES/django.po
@@ -12,16 +12,17 @@
 # Fernando Pimenta <fernando.c.pimenta@gmail.com>, 2018. #zanata
 # Marcelo Dieder <marcelodieder@gmail.com>, 2018. #zanata
 # Rodrigo Loures <rmoraesloures@gmail.com>, 2018. #zanata
+# Rodrigo Loures <rmoraesloures@gmail.com>, 2019. #zanata
 msgid ""
 msgstr ""
 "Project-Id-Version: horizon VERSION\n"
 "Report-Msgid-Bugs-To: https://bugs.launchpad.net/openstack-i18n/\n"
-"POT-Creation-Date: 2019-04-20 14:28+0000\n"
+"POT-Creation-Date: 2019-05-03 01:14+0000\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
-"PO-Revision-Date: 2018-11-23 06:07+0000\n"
-"Last-Translator: Fernando Pimenta <fernando.c.pimenta@gmail.com>\n"
+"PO-Revision-Date: 2019-04-19 07:32+0000\n"
+"Last-Translator: Rodrigo Loures <rmoraesloures@gmail.com>\n"
 "Language-Team: Portuguese (Brazil)\n"
 "Language: pt_BR\n"
 "X-Generator: Zanata 4.3.3\n"
@@ -194,6 +195,9 @@ msgstr "%sGiB"
 msgid "%sMB"
 msgstr "%sMB"
 
+msgid "(No IP address)"
+msgstr "(Sem endereço de IP)"
+
 msgid "(Quota exceeded)"
 msgstr "(Cota excedida)"
 
@@ -225,6 +229,10 @@ msgstr ""
 "nessa instância e aplica diferentes grupos de segurança por porta, use a "
 "ação \"Editar Grupos de Segurança de Porta."
 
+#, python-format
+msgid "<span class='word-wrap'>Flavor Details: %(name)s</span>\">%(name)s"
+msgstr "<span class='word-wrap'>Detalhes do sabor: %(name)s</span>\">%(name)s"
+
 msgid "A brief description of the security group rule you are adding"
 msgstr ""
 "Uma breve descrição da regra de grupo de segurança que você está adicionando"
@@ -322,6 +330,9 @@ msgstr "Ação"
 msgid "Action Log"
 msgstr "Log da Ação"
 
+msgid "Action and Object Type"
+msgstr "Tipo de objeto e ação"
+
 msgctxt "Current status of a Floating IP"
 msgid "Active"
 msgstr "Ativo"
@@ -532,6 +543,12 @@ msgstr ""
 "Depois de lançar uma instancia, você loga usando a chave privada (o nome de "
 "usuário pode ser diferente, dependendo da imagem que você lançou):"
 
+msgid "Age"
+msgstr "Idade"
+
+msgid "Age (Seconds)"
+msgstr "Idade (segundos)"
+
 #, python-format
 msgid "Agent %s was successfully added."
 msgstr "Agente %s foi adicionado com sucesso."
@@ -914,6 +931,13 @@ msgstr ""
 "relações de confiança de keystone.  Se a sua credencial de aplicação precisa "
 "ser capaz de realizar estas ações, marque  \"irrestrito\"."
 
+msgid ""
+"By default, group type is created as public. To create a private group type, "
+"uncheck this field."
+msgstr ""
+"Por padrão, o tipo de grupo é criado como público. Para criar um tipo "
+"privado de grupo, desmarque esse campo."
+
 msgid ""
 "By default, volume type is created as public. To create a private volume "
 "type, uncheck this field."
@@ -1098,6 +1122,10 @@ msgstr ""
 "Clonar cada volume no Grupo de Consistência de origem e depois adicioná-los "
 "a um Grupo de Consistência recém criado."
 
+#, python-format
+msgid "Cloning volume group \"%s\"."
+msgstr "Clonando grupo de volume \"%s\"."
+
 msgid "Close"
 msgstr "Fechar"
 
@@ -1137,6 +1165,9 @@ msgstr ""
 "Configurar OpenStack para escrever metadados para uma unidade de "
 "configuração especial que atribui à instância quando ele inicia."
 
+msgid "Confirm"
+msgstr "Confirma"
+
 msgid "Confirm Admin Password"
 msgstr "Confirme Senha de Administrador"
 
@@ -1277,6 +1308,12 @@ msgstr "Criar Grupo"
 msgid "Create Group Snapshot"
 msgstr "Criar Snapshot do Grupo"
 
+msgid "Create Group Type"
+msgstr "Criar tipos de grupo"
+
+msgid "Create Group Type Spec"
+msgstr "Criar especificação de tipo de grupo"
+
 msgid "Create Host Aggregate"
 msgstr "Criar Agregado de Host"
 
@@ -1381,6 +1418,9 @@ msgstr ""
 "partir de cada um dos snapshots no Snapshot do Grupo de Consistência de "
 "origem."
 
+msgid "Create a Group Type"
+msgstr "Criar um tipo de grupo"
+
 msgid ""
 "Create a Group that will contain newly created volumes cloned from each of "
 "the snapshots in the source Group Snapshot."
@@ -1394,6 +1434,9 @@ msgstr "Criar um Metadado de Namespace"
 msgid "Create a New Volume"
 msgstr "Criar um Novo Volume"
 
+msgid "Create a RBAC Policy"
+msgstr "Criar uma política de RBAC"
+
 msgid "Create a Router"
 msgstr "Criar um Roteador"
 
@@ -1407,6 +1450,11 @@ msgid "Create a new \"extra spec\" key-value pair for a volume type."
 msgstr ""
 "Cria um par de valor-chave de \"expecificação extra\" para um tipo de volume."
 
+msgid "Create a new \"group spec\" key-value pair for a group type."
+msgstr ""
+"Criar um novo par de valor-chave \"especificação de grupo\" para um tipo de "
+"grupo."
+
 msgid "Create a new application credential."
 msgstr "Criar uma nova credencial de aplicação."
 
@@ -1454,6 +1502,10 @@ msgstr "Criado"
 msgid "Created extra spec \"%s\"."
 msgstr "Criada especificação extra \"%s\"."
 
+#, python-format
+msgid "Created group type spec \"%s\"."
+msgstr "Criada a especificação de tipo de grupo \"%s\"."
+
 #, python-format
 msgid "Created network \"%s\"."
 msgstr "Rede \"%s\" criada."
@@ -1692,6 +1744,11 @@ msgid_plural "Delete Groups"
 msgstr[0] "Excluir Grupo"
 msgstr[1] "Excluir Grupos"
 
+msgid "Delete Group Type"
+msgid_plural "Delete Group Types"
+msgstr[0] "Excluir tipo de grupo"
+msgstr[1] "Excluir tipos de grupo"
+
 msgid "Delete Host Aggregate"
 msgid_plural "Delete Host Aggregates"
 msgstr[0] "Excluir Agregado de Host"
@@ -1876,6 +1933,11 @@ msgid_plural "Deleted Groups"
 msgstr[0] "Grupo Excluído"
 msgstr[1] "Grupos Excluídos"
 
+msgid "Deleted Group Type"
+msgid_plural "Deleted Group Types"
+msgstr[0] "Tipo de grupo excluído"
+msgstr[1] "Tipos de grupos excluídos"
+
 msgid "Deleted Host Aggregate"
 msgid_plural "Deleted Host Aggregates"
 msgstr[0] "Agregado de Host Excluído"
@@ -2348,6 +2410,16 @@ msgstr "Editar Sabor"
 msgid "Edit Group"
 msgstr "Editar Grupo"
 
+msgid "Edit Group Type"
+msgstr "Editar tipos de grupo"
+
+msgid "Edit Group Type Spec"
+msgstr "Editar especificação de tipo de grupo"
+
+#, python-format
+msgid "Edit Group Type Spec Value: %s"
+msgstr "Editar o valor de especificação de tipo de grupo: %s"
+
 msgid "Edit Host Aggregate"
 msgstr "Editar Agregado de Host"
 
@@ -3179,9 +3251,46 @@ msgstr "Snapshots de Grupo"
 msgid "Group Type"
 msgstr "Tipo de Grupo"
 
+msgid "Group Type Specs"
+msgstr "Especificações de tipo de grupo"
+
+#, python-format
+msgid "Group Type: %(group_type_name)s"
+msgstr "Tipo de grupo: %(group_type_name)s"
+
+#, python-format
+msgid "Group Type: %(group_type_name)s "
+msgstr "Tipo de grupo: %(group_type_name)s "
+
+msgid "Group Types"
+msgstr "Tipos de grupo"
+
 msgid "Group has been updated successfully."
 msgstr "Grupo atualizado com sucesso."
 
+msgid ""
+"Group type is a type or label that can be selected at group creation time in "
+"OpenStack. It usually maps to a set of capabilities of the storage back-end "
+"driver to be used for this group. Examples: \"Performance\", \"SSD\", "
+"\"Backup\", etc. This is equivalent to the <tt>cinder type-create</tt> "
+"command. Once the group type gets created, click the \"View Specs\" button "
+"to set up specs key-value pair(s) for that group type."
+msgstr ""
+"Tipo de grupo é um tipo ou rótulo que pode ser selecionado no momento da "
+"criação do grupo no OpenStack. Geralmente mapeia para uma configuração de "
+"capacidade do driver de back-end do armazenamento para ser usado para esse "
+"grupo. Exemplo: \"Performance\", \"SSD\", \"Backup\", etc. Isso é "
+"equivalente para o comando <tt>cinder type-create</tt>. Uma vez que o tipo "
+"de grupo é criado, clique no botão \"Visualizar Especificações\" para "
+"configurar as especificações de valor-chave para esse grupo."
+
+#, python-format
+msgid "Group type name \"%s\" already exists."
+msgstr "O nome do grupo \"%s\" já existe."
+
+msgid "Group type name can not be empty."
+msgstr "O nome do grupo não pode ser vazio."
+
 msgid "Groups"
 msgstr "Grupos"
 
@@ -3716,6 +3825,9 @@ msgstr "Nome do par de chaves"
 msgid "Key Pair Name ="
 msgstr "Nome do Par de Chaves="
 
+msgid "Key Pair Type"
+msgstr "Tipo de par de chave"
+
 msgid "Key Pairs"
 msgstr "Pares de Chave"
 
@@ -3727,6 +3839,16 @@ msgstr ""
 msgid "Key Size (bits)"
 msgstr "Tamanho da chave (bits)"
 
+msgid "Key Type"
+msgstr "Tipo de chave"
+
+msgid ""
+"Key names can only contain alphanumeric characters, underscores, periods, "
+"colons and hyphens"
+msgstr ""
+"Nomes de chave somente podem conter caracteres alfanuméricos, sublinhados, "
+"pontos, vírgulas e hifens."
+
 msgid ""
 "Key pair name may only contain letters, numbers, underscores, spaces, and "
 "hyphens and may not be white space."
@@ -3981,6 +4103,10 @@ msgstr "Uplink MidoNet"
 msgid "Migrate"
 msgstr "Migrar"
 
+msgctxt "Action log of an instance"
+msgid "Migrate"
+msgstr "Migrar"
+
 msgid "Migrate Host"
 msgstr "Migrar Host"
 
@@ -4079,6 +4205,9 @@ msgstr "Modificar Cotas"
 msgid "Modify dashboard settings for your user."
 msgstr "Modifica as configurações do dashboard para o seu usuário."
 
+msgid "Modify group type name, description, and public status."
+msgstr "Modificar o nome do tipo de grupo, descrição, e estado público."
+
 msgid "Modify name and description of a volume."
 msgstr "Modifica o nome e descrição de um volume."
 
@@ -4256,6 +4385,9 @@ msgstr "Novo Tamanho (GiB)"
 msgid "New name cannot be empty."
 msgstr "Novo nome não pode ser vazio."
 
+msgid "New name conflicts with another group type."
+msgstr "O novo nome conflita com outro tipo de grupo."
+
 msgid "New name conflicts with another volume type."
 msgstr "Novo nome conflita com outro tipo de volume."
 
@@ -4554,6 +4686,9 @@ msgstr "Porta Aberta/Faixa de Portas:"
 msgid "OpenStack Profiler"
 msgstr "OpenStack Profiler"
 
+msgid "OpenStack RC File"
+msgstr "Arquivo OpenStack RC"
+
 msgid "OpenStack RC File (Identity API v2.0)"
 msgstr "Arquivo OpenStack RC (Identity API v2.0)"
 
@@ -4629,6 +4764,9 @@ msgctxt "Current status of an Instance"
 msgid "Password"
 msgstr "Senha"
 
+msgid "Password Expires At"
+msgstr "Senha expira em"
+
 msgid "Password changed. Please log in again to continue."
 msgstr "Senha Alterada. Por favor faça login novamente para continuar."
 
@@ -4868,6 +5006,9 @@ msgstr "QCOW2 - Emulador QEMU"
 msgid "QOS Policy ID"
 msgstr "ID da Política de QOS"
 
+msgid "QoS Policy"
+msgstr "Política de QoS"
+
 #, python-format
 msgid "QoS Spec name \"%s\" already exists."
 msgstr "Nome da especificação QoS \"%s\" já existe"
@@ -4942,6 +5083,9 @@ msgstr "RAM(Disponível: %(avail)s, Requisitado: %(req)s)"
 msgid "RBAC Policies"
 msgstr "Políticas RBAC"
 
+msgid "RBAC Policy Details"
+msgstr "Detalhes da política de RBAC"
+
 msgid "RX/TX Factor"
 msgstr "Fator RX/TX "
 
@@ -5136,10 +5280,17 @@ msgstr ""
 msgid "Requested snapshot would exceed the allowed quota."
 msgstr "O instantâneo requisitado iria exceder a quota permitida."
 
+msgctxt "Action log of an instance"
+msgid "Rescue"
+msgstr "Resgate"
+
 msgctxt "Current status of an Instance"
 msgid "Rescue"
 msgstr "Resgate"
 
+msgid "Rescue Instance"
+msgstr "Resgate de instância"
+
 msgctxt "Current status of an Instance"
 msgid "Rescued"
 msgstr "Recuperado"
@@ -5358,6 +5509,9 @@ msgstr "SLAAC: Endereço descoberto a partir de um roteador externo"
 msgid "SNAT"
 msgstr "SNAT"
 
+msgid "SSH Key"
+msgstr "Chave SSH"
+
 msgid "SSH key pairs can be generated with the ssh-keygen command:"
 msgstr "Pares de chave SSH podem ser gerados com o comando ssh-keygen:"
 
@@ -5371,6 +5525,10 @@ msgstr "Salvar Alterações"
 msgid "Saved extra spec \"%s\"."
 msgstr "Salva especificação extra \"%s\"."
 
+#, python-format
+msgid "Saved group spec \"%s\"."
+msgstr "Especificação de grupo salva\"%s\"."
+
 #, python-format
 msgid "Saved spec \"%s\"."
 msgstr "Especificação \"%s\" salva."
@@ -5700,6 +5858,12 @@ msgstr "Compartilhado"
 msgid "Shared ="
 msgstr "Compartilhado ="
 
+msgid "Shared Network"
+msgstr "Rede compartilhada"
+
+msgid "Shared QoS Policy"
+msgstr "Política de QoS compartilhada"
+
 msgid "Shared Storage"
 msgstr "Storage Compartilhado"
 
@@ -5920,6 +6084,9 @@ msgstr ""
 msgid "Specify an image to upload to the Image Service."
 msgstr "Especifique uma imagem para enviar para o Serviço de Imagem."
 
+msgid "Specify network address"
+msgstr "Endereço específico de rede"
+
 msgid "Specify the MAC address for the new port"
 msgstr "Especifique o endereço MAC para a nova porta"
 
@@ -6042,6 +6209,10 @@ msgstr "Especificação de QoS criada com sucesso: %s"
 msgid "Successfully created encryption for volume type: %s"
 msgstr "Criptografia criada com sucesso para o tipo de volume: %s"
 
+#, python-format
+msgid "Successfully created group type: %s"
+msgstr "Tipo de grupo criado com sucesso: %s"
+
 #, python-format
 msgid "Successfully created security group: %s"
 msgstr "Grupo de segurança criado com sucesso: %s"
@@ -6079,6 +6250,9 @@ msgstr "Consumidor da Especificação de QoS modificado com sucesso."
 msgid "Successfully recreated ec2 credentials."
 msgstr "Credenciais do ec2 recriadas com sucesso."
 
+msgid "Successfully rescued instance"
+msgstr "Instância resgatada com sucesso"
+
 #, python-format
 msgid ""
 "Successfully sent the request to change the volume type to \"%(vtype)s\" for "
@@ -6117,6 +6291,9 @@ msgstr "Agregado atualizado com sucesso: \"%s\""
 msgid "Successfully updated encryption for volume type: %s"
 msgstr "Criptografia atualizada com sucesso para o tipo de volume: %s"
 
+msgid "Successfully updated group type."
+msgstr "Tipo de grupo atualizado com sucesso."
+
 #, python-format
 msgid "Successfully updated security group: %s"
 msgstr "Grupo de segurança atualizado com sucesso: %s"
@@ -6170,9 +6347,15 @@ msgstr "Sistema"
 msgid "System Information"
 msgstr "Informação do Sistema"
 
+msgid "System Scope"
+msgstr "Escopo do sistema"
+
 msgid "Target Host"
 msgstr "Host destino"
 
+msgid "Target Project"
+msgstr "Projeto alvo"
+
 msgid "Task"
 msgstr "Tarefa"
 
@@ -6480,6 +6663,13 @@ msgstr ""
 "A(s) instância(s) requisitada(s) não podem ser lançadas pois sua quota será "
 "excedida:  Disponível: %(avail)s, Requisitada: %(req)s."
 
+msgid ""
+"The rescue mode is only for emergency purpose, for example in case of a "
+"system or access failure."
+msgstr ""
+"O modo de resgate somente é utilizado para propósito de emergência, por "
+"exemplo em caso de falha de sistema ou acesso."
+
 msgid "The specified floating IP no longer exists."
 msgstr "O IP flutuante especificado não existe mais."
 
@@ -6628,6 +6818,15 @@ msgstr ""
 msgid "This volume type is used by one or more volumes."
 msgstr "Esse tipo de volume é usado por um ou mais volumes."
 
+msgid ""
+"This will shut down your instance and mount the root disk to a temporary "
+"server. Then, you will be able to connect to this server, repair the system "
+"configuration or recover your data."
+msgstr ""
+"Isso irá desligar sua instância e monter o disco de root para um servidor "
+"temporário. Então, você estará habilitado para conectar com esse servidor, "
+"reparar a configuração do sistema ou recuperar os seu dado."
+
 msgid "Time since update"
 msgstr "Tempo desde a atualização"
 
@@ -6650,6 +6849,9 @@ msgstr ""
 msgid "To exit the fullscreen mode, click the browser's back button."
 msgstr "Para sair do modo tela cheia, clique no botão de voltar do navegador."
 
+msgid "To make group type private, uncheck this field."
+msgstr "Para fazer o tipo de grupo privado, desmarque essa opção."
+
 msgid "To make volume type private, uncheck this field."
 msgstr "Para deixar este tipo de volume privado, desmarque este campo."
 
@@ -6881,6 +7083,12 @@ msgstr ""
 msgid "Unable to create group snapshot."
 msgstr "Não foi possível criar snapshot de grupo."
 
+msgid "Unable to create group type spec."
+msgstr "Não é possível criar a especificação de tipo de grupo."
+
+msgid "Unable to create group type."
+msgstr "Não é possível criar o tipo de grupo."
+
 msgid "Unable to create group."
 msgstr "Não é possível criar grupo."
 
@@ -6944,6 +7152,10 @@ msgstr ""
 msgid "Unable to create snapshot. group must contain volumes."
 msgstr "Não foi possível criar snapshot. O grupo deve conter volumes."
 
+#, python-format
+msgid "Unable to create snapshot: %s"
+msgstr "Não foi possível criar o snapshot: %s"
+
 msgid "Unable to create snapshots due to exceeding snapshot quota limit."
 msgstr ""
 "Impossível criar snapshots devido ter exedido o limite de quota de volume."
@@ -7028,6 +7240,9 @@ msgstr "Não é possível exibir os grupos deste projeto."
 msgid "Unable to display the users of this project."
 msgstr "Não é possível exibir os usuários deste projeto."
 
+msgid "Unable to edit group type spec."
+msgstr "Não é possível editar a especificação de tipo de grupo."
+
 msgid "Unable to edit spec."
 msgstr "Não é possível editar especificação."
 
@@ -7205,6 +7420,9 @@ msgstr ""
 "Não é possível registrar o provedor de identidade. Verifique se o ID do "
 "Provedor de Identidade e os IDs Remotos fornecidos já não estão em uso."
 
+msgid "Unable to rescue instance"
+msgstr "Não foi possível resgatar a instância"
+
 #, python-format
 msgid "Unable to resize instance \"%s\"."
 msgstr "Não foi possível redimensionar a instância \"%s\"."
@@ -7409,6 +7627,26 @@ msgstr "Não é possível obter os detalhes do snapshot de grupo."
 msgid "Unable to retrieve group snapshots."
 msgstr "Não foi possível obter os snapshots de grupo."
 
+msgid "Unable to retrieve group type details."
+msgstr "Não é possível obter os detalhes de tipo de grupo."
+
+#, python-format
+msgid "Unable to retrieve group type for: \"%s\""
+msgstr "Não é possível obter o tipo de grupo para: \"%s\""
+
+msgid "Unable to retrieve group type name."
+msgstr "Não é possível obter o nome de tipo de grupo."
+
+msgid "Unable to retrieve group type spec details."
+msgstr ""
+"Não é possível recuperar os detalhes da especificação de tipo de grupo."
+
+msgid "Unable to retrieve group type spec list."
+msgstr "Não é possível obter a lista de especificação de tipo de grupo."
+
+msgid "Unable to retrieve group type."
+msgstr "Não é possível obter os tipo de grupo."
+
 msgid "Unable to retrieve group types."
 msgstr "Não é possível obter os tipos de grupos."
 
@@ -7535,6 +7773,10 @@ msgstr "Não foi possível obter detalhes da projeto."
 msgid "Unable to retrieve project domain."
 msgstr "Não foi possível obter domínios do projeto."
 
+msgid "Unable to retrieve project information of volume snapshots."
+msgstr ""
+"Não é possível recuperar a informação do projeto de snapshots de volume."
+
 msgid "Unable to retrieve project information."
 msgstr "Não é possível recuperar informações de projeto."
 
@@ -7699,6 +7941,10 @@ msgstr "Não é possível recuperar informação de volume de projeto."
 msgid "Unable to retrieve volume quota information."
 msgstr "Não é possível recuperar informações de quota de volume."
 
+msgid "Unable to retrieve volume snapshot project information."
+msgstr ""
+"Não é possível recuperar a informação de snapshot de volume do projeto."
+
 msgid "Unable to retrieve volume snapshot."
 msgstr "Não é possível recuperar o snapshot do volume."
 
@@ -7784,6 +8030,9 @@ msgstr "Não é possível atualizar as quotas padrão de volume."
 msgid "Unable to update encrypted volume type."
 msgstr "Não é possível atualizar o tipo de volume criptografado."
 
+msgid "Unable to update group type."
+msgstr "Não foi possível atualizar o tipo de grupo."
+
 msgid "Unable to update group."
 msgstr "Não é possível atualizar grupo."
 
@@ -7915,6 +8164,10 @@ msgid_plural "Unregistered Identity Providers"
 msgstr[0] "Remover Registro de Provedor de Identidade"
 msgstr[1] "Remover Registro de Provedores de Identidade"
 
+msgctxt "Action log of an instance"
+msgid "Unrescue"
+msgstr "Desfazer resgate"
+
 msgctxt "Task status of an Instance"
 msgid "Unrescuing"
 msgstr "Cancelando o resgate"
@@ -8020,6 +8273,10 @@ msgstr "Atualizar um Tipo de Volume Criptografado"
 msgid "Update the \"extra spec\" value for \"%(key)s\""
 msgstr "Atualiza o valor de \"expecificações extra\" para \"%(key)s\""
 
+#, python-format
+msgid "Update the \"group spec\" value for \"%(key)s\""
+msgstr "Atualizar o valor de \"especificação de grupo\" para \"%(key)s\""
+
 #, python-format
 msgid "Update the spec value for \"%(key)s\""
 msgstr "Atualiza o valor da especificação para \"%(key)s\""
@@ -8238,6 +8495,9 @@ msgstr "Ver Log"
 msgid "View Routers"
 msgstr "Ver Roteadores"
 
+msgid "View Specs"
+msgstr "Ver especificações"
+
 msgid "View Usage"
 msgstr "Ver Utilização"
 
@@ -8493,6 +8753,9 @@ msgstr ""
 "Quando o estado do volume é \"em uso\", você pode usar \"Forçar\" para "
 "carregar o volume para uma imagem."
 
+msgid "X509 Certificate"
+msgstr "Certificado X509"
+
 msgid "Yes"
 msgstr "Sim"
 
@@ -8594,6 +8857,13 @@ msgid "You may have mistyped the address or the page may have moved."
 msgstr ""
 "Você pode ter digitado o endereço incorretamente ou a página pode ter mudado."
 
+msgid ""
+"You may optionally select an image and set a password on the rescue instance "
+"server."
+msgstr ""
+"Você pode opcionalmente selecionar uma imagem e configurar uma senha no "
+"resgate da instância."
+
 msgid "You may optionally set a password on the rebuilt instance."
 msgstr "Você pode opcionalmente setar uma senha na instância reconstruída."
 
@@ -8698,12 +8968,27 @@ msgstr "i.e. Sim / Não"
 msgid "e.g. Yes/No"
 msgstr "i.e. Sim/Não"
 
+msgid ""
+"flavor id can only contain alphanumeric characters, underscores, periods, "
+"hyphens, spaces."
+msgstr ""
+"Identificador do sabor pode conter somente caracteres alfanuméricos, "
+"sublinhados, pontos, hifens e espaços."
+
 msgid "front-end"
 msgstr "front-end"
 
 msgid "instance"
 msgstr "instância"
 
+#, python-format
+msgid ""
+"key with name \"%s\" already exists.Use Edit to update the value, else "
+"create key with different name."
+msgstr ""
+"A chave com o nome \"%s\" já existe. Utilize a opção de editar para "
+"atualizar, e então crie a chave com um nome diferente."
+
 msgid "no"
 msgstr "Não"