diff options
22 files changed, 146 insertions, 194 deletions
diff --git a/api-ref/source/baremetal-api-v1-indicators.inc b/api-ref/source/baremetal-api-v1-indicators.inc index 0c4b11885..181951982 100644 --- a/api-ref/source/baremetal-api-v1-indicators.inc +++ b/api-ref/source/baremetal-api-v1-indicators.inc @@ -90,7 +90,7 @@ Response Parameters Get Indicator State =================== -.. rest_method:: GET /v1/nodes/{node_ident}/management/indicators/{component}/{ind_ident} +.. rest_method:: GET /v1/nodes/{node_ident}/management/indicators/{ind_ident}@{component} .. versionadded:: 1.63 @@ -127,7 +127,7 @@ Response Parameters Set Indicator State =================== -.. rest_method:: PUT /v1/nodes/{node_ident}/management/indicators/{component}/{ind_ident} +.. rest_method:: PUT /v1/nodes/{node_ident}/management/indicators/{ind_ident}@{component} .. versionadded:: 1.63 diff --git a/devstack/lib/ironic b/devstack/lib/ironic index 51b2e2ba8..d82e1882d 100644 --- a/devstack/lib/ironic +++ b/devstack/lib/ironic @@ -1793,7 +1793,7 @@ function configure_ironic_conductor { -subj '/O=OpenStack/OU=DevStack Servers' fi - local pxe_params="nofb nomodeset console=${IRONIC_TTY_DEV}" + local pxe_params="nofb console=${IRONIC_TTY_DEV}" pxe_params+=" systemd.journald.forward_to_console=yes" if is_service_enabled tls-proxy; then pxe_params+=" ipa-insecure=1" @@ -1805,7 +1805,7 @@ function configure_ironic_conductor { iniset $IRONIC_CONF_FILE pxe kernel_append_params "$pxe_params" fi - local kernel_append_params="nofb nomodeset console=${IRONIC_TTY_DEV}" + local kernel_append_params="nofb console=${IRONIC_TTY_DEV}" kernel_append_params+=" systemd.journald.forward_to_console=yes" # NOTE(dtantsur): avoid setting ipa-insecure for redfish, we have a way to diff --git a/devstack/tools/ironic/scripts/cirros-partition.sh b/devstack/tools/ironic/scripts/cirros-partition.sh index facf9b030..38e1764c4 100755 --- a/devstack/tools/ironic/scripts/cirros-partition.sh +++ b/devstack/tools/ironic/scripts/cirros-partition.sh @@ -18,7 +18,7 @@ IRONIC_TTY_DEV=${IRONIC_TTY_DEV:-ttyS0,115200} # rdroot : boot from the ramdisk present on the root partition instead of # mounting the root partition. # dslist : disable Nova metadata support, it takes a long time on boot. -KARGS=${KARGS:-nofb nomodeset vga=normal console=${IRONIC_TTY_DEV} rdroot dslist=configdrive} +KARGS=${KARGS:-nofb vga=normal console=${IRONIC_TTY_DEV} rdroot dslist=configdrive} workdir=$(mktemp -d) root_mp=$workdir/root diff --git a/doc/source/admin/drivers/redfish.rst b/doc/source/admin/drivers/redfish.rst index b82d24ec8..6628f48df 100644 --- a/doc/source/admin/drivers/redfish.rst +++ b/doc/source/admin/drivers/redfish.rst @@ -214,7 +214,7 @@ user-specified kernel command line parameters. .. code-block:: bash baremetal node set node-0 \ - --driver-info kernel_append_params="nofb nomodeset vga=normal" + --driver-info kernel_append_params="nofb vga=normal" .. note:: The ``driver_info`` field is supported starting with the Xena release. diff --git a/doc/source/admin/interfaces/boot.rst b/doc/source/admin/interfaces/boot.rst index b9f0bda3e..a4b4cf2a3 100644 --- a/doc/source/admin/interfaces/boot.rst +++ b/doc/source/admin/interfaces/boot.rst @@ -49,7 +49,7 @@ configuration option: .. code-block:: ini [pxe] - kernel_append_params = nofb nomodeset vga=normal + kernel_append_params = nofb vga=normal .. note:: The option was called ``pxe_append_params`` before the Xena cycle. @@ -59,9 +59,9 @@ Per-node and per-instance overrides are also possible, for example: .. code-block:: bash baremetal node set node-0 \ - --driver-info kernel_append_params="nofb nomodeset vga=normal" + --driver-info kernel_append_params="nofb vga=normal" baremetal node set node-0 \ - --instance-info kernel_append_params="nofb nomodeset vga=normal" + --instance-info kernel_append_params="nofb vga=normal" Starting with the Zed cycle, you can combine the parameters from the configuration and from the node using the special ``%default%`` syntax: @@ -74,13 +74,21 @@ configuration and from the node using the special ``%default%`` syntax: Together with the configuration above, the following parameters will be appended to the kernel command line:: - nofb nomodeset vga=normal console=ttyS0,115200n8 + nofb vga=normal console=ttyS0,115200n8 .. note:: Ironic does not do any de-duplication of the resulting kernel parameters. Both kernel itself and dracut seem to give priority to the last instance of the same parameter. +.. warning:: + Previously our documentation listed the Linux kernel parameter + ``nomodeset`` as an option. This option is intended for troubleshooting, + and can greatly degrade performance with Matrox/Aspeed BMC Graphics + controllers which is very commonly used on physical servers. The + performance degredation can greatly reduce IO capacity upon every + console graphics update being written to the screen. + Common options -------------- diff --git a/doc/source/install/include/kernel-boot-parameters.inc b/doc/source/install/include/kernel-boot-parameters.inc index f0da59d60..82b4ecc91 100644 --- a/doc/source/install/include/kernel-boot-parameters.inc +++ b/doc/source/install/include/kernel-boot-parameters.inc @@ -91,7 +91,7 @@ respectively. [pxe] # Additional append parameters for baremetal PXE boot. - kernel_append_params = nofb nomodeset vga=normal console=ttyS0,115200n8 + kernel_append_params = nofb vga=normal console=ttyS0,115200n8 * For node web console configuration is similar with the addition of ``ttyX`` @@ -100,7 +100,7 @@ respectively. [pxe] # Additional append parameters for baremetal PXE boot. - kernel_append_params = nofb nomodeset vga=normal console=tty0 console=ttyS0,115200n8 + kernel_append_params = nofb vga=normal console=tty0 console=ttyS0,115200n8 For detailed information on how to add consoles see the reference documents `kernel params`_ and `serial console`_. diff --git a/ironic/common/hash_ring.py b/ironic/common/hash_ring.py index 1f1107008..8986d5bd2 100644 --- a/ironic/common/hash_ring.py +++ b/ironic/common/hash_ring.py @@ -40,7 +40,7 @@ class HashRingManager(object): @property def ring(self): interval = CONF.hash_ring_reset_interval - limit = time.time() - interval + limit = time.monotonic() - interval if not self.cache: return self._load_hash_rings() @@ -56,7 +56,7 @@ class HashRingManager(object): if hash_rings is None or updated_at < limit: LOG.debug('Rebuilding cached hash rings') hash_rings = self._load_hash_rings() - self.__class__._hash_rings = hash_rings, time.time() + self.__class__._hash_rings = hash_rings, time.monotonic() LOG.debug('Finished rebuilding hash rings, available drivers ' 'are %s', ', '.join(hash_rings)) return hash_rings diff --git a/ironic/conf/ilo.py b/ironic/conf/ilo.py index 197378ce7..6d1c52dd2 100644 --- a/ironic/conf/ilo.py +++ b/ironic/conf/ilo.py @@ -112,7 +112,7 @@ opts = [ 'This setting must be set to the octal number ' 'representation, meaning starting with ``0o``.')), cfg.StrOpt('kernel_append_params', - default='nofb nomodeset vga=normal', + default='nofb vga=normal', mutable=True, help=_('Additional kernel parameters to pass down to the ' 'instance kernel. These parameters can be consumed by ' diff --git a/ironic/conf/pxe.py b/ironic/conf/pxe.py index d96712824..e4c912192 100644 --- a/ironic/conf/pxe.py +++ b/ironic/conf/pxe.py @@ -24,7 +24,7 @@ from ironic.common.i18n import _ opts = [ cfg.StrOpt('kernel_append_params', deprecated_name='pxe_append_params', - default='nofb nomodeset vga=normal', + default='nofb vga=normal', mutable=True, help=_('Additional append parameters for baremetal PXE boot.')), cfg.StrOpt('default_ephemeral_format', diff --git a/ironic/conf/redfish.py b/ironic/conf/redfish.py index 3cc9fe015..68aa96141 100644 --- a/ironic/conf/redfish.py +++ b/ironic/conf/redfish.py @@ -64,7 +64,7 @@ opts = [ 'auto-expire. Applies only when `use_swift` is ' 'enabled.')), cfg.StrOpt('kernel_append_params', - default='nofb nomodeset vga=normal', + default='nofb vga=normal', mutable=True, help=_('Additional kernel parameters to pass down to the ' 'instance kernel. These parameters can be consumed by ' diff --git a/ironic/db/sqlalchemy/__init__.py b/ironic/db/sqlalchemy/__init__.py index c656ed227..f92a0b600 100644 --- a/ironic/db/sqlalchemy/__init__.py +++ b/ironic/db/sqlalchemy/__init__.py @@ -17,10 +17,8 @@ from sqlalchemy import event CONF = cfg.CONF -# FIXME(stephenfin): we need to remove reliance on autocommit semantics ASAP -# since it's not compatible with SQLAlchemy 2.0 # NOTE(dtantsur): we want sqlite as close to a real database as possible. -enginefacade.configure(sqlite_fk=True, __autocommit=True) +enginefacade.configure(sqlite_fk=True) # NOTE(TheJulia): Setup a listener to trigger the sqlite write-ahead diff --git a/ironic/drivers/modules/redfish/management.py b/ironic/drivers/modules/redfish/management.py index a669d09bc..8bd7058a5 100644 --- a/ironic/drivers/modules/redfish/management.py +++ b/ironic/drivers/modules/redfish/management.py @@ -1197,9 +1197,18 @@ class RedfishManagement(base.ManagementInterface): :raises: RedfishError on an error from the Sushy library :returns: A list of MAC addresses for the node """ + system = redfish_utils.get_system(task.node) try: - system = redfish_utils.get_system(task.node) return list(redfish_utils.get_enabled_macs(task, system)) + # NOTE(janders) we should handle MissingAttributeError separately + # from other SushyErrors - some servers (e.g. some Cisco UCSB and UCSX + # blades) are missing EthernetInterfaces attribute yet could be + # provisioned successfully if MAC information is provided manually AND + # this exception is caught and handled accordingly. + except sushy.exceptions.MissingAttributeError as exc: + LOG.warning('Cannot get MAC addresses for node %(node)s: %(exc)s', + {'node': task.node.uuid, 'exc': exc}) + # if the exception is not a MissingAttributeError, raise it except sushy.exceptions.SushyError as exc: msg = (_('Failed to get network interface information on node ' '%(node)s: %(exc)s') diff --git a/ironic/tests/unit/common/test_hash_ring.py b/ironic/tests/unit/common/test_hash_ring.py index 9ecf34562..a84b9ffcf 100644 --- a/ironic/tests/unit/common/test_hash_ring.py +++ b/ironic/tests/unit/common/test_hash_ring.py @@ -129,7 +129,7 @@ class HashRingManagerTestCase(db_base.DbTestCase): self.ring_manager.__class__._hash_rings = ( self.ring_manager.__class__._hash_rings[0], - time.time() - 31 + time.monotonic() - 31 ) ring = self.ring_manager.get_ring('hardware-type', '') self.assertEqual(2, len(ring)) diff --git a/ironic/tests/unit/drivers/modules/network/test_common.py b/ironic/tests/unit/drivers/modules/network/test_common.py index 7b907ad22..e58fcaa20 100644 --- a/ironic/tests/unit/drivers/modules/network/test_common.py +++ b/ironic/tests/unit/drivers/modules/network/test_common.py @@ -1065,10 +1065,14 @@ class TestNeutronVifPortIDMixin(db_base.DbTestCase): expected_dhcp_opts = [{'opt_name': '61', 'opt_value': 'fake2'}] self.port.extra = expected_extra self.port.internal_info = expected_ii + what_changed_mock = mock.Mock() + what_changed_mock.return_value = ['extra', 'internal_info'] + self.port.obj_what_changed = what_changed_mock with task_manager.acquire(self.context, self.node.id) as task: self.interface.port_changed(task, self.port) dhcp_update_mock.assert_called_once_with( mock.ANY, 'fake-id', expected_dhcp_opts, context=task.context) + self.assertEqual(2, what_changed_mock.call_count) @mock.patch('ironic.dhcp.neutron.NeutronDHCPApi.update_port_dhcp_opts', autospec=True) @@ -1087,14 +1091,16 @@ class TestNeutronVifPortIDMixin(db_base.DbTestCase): def test_port_changed_client_id_fail(self, dhcp_update_mock): self.port.internal_info = {'tenant_vif_port_id': 'fake-id'} self.port.extra = {'client-id': 'fake3'} - # NOTE(TheJulia): Does not save, because it attempts to figure - # out what has changed as part of the test. + what_changed_mock = mock.Mock() + what_changed_mock.return_value = ['extra'] + self.port.obj_what_changed = what_changed_mock dhcp_update_mock.side_effect = ( exception.FailedToUpdateDHCPOptOnPort(port_id=self.port.uuid)) with task_manager.acquire(self.context, self.node.id) as task: self.assertRaises(exception.FailedToUpdateDHCPOptOnPort, self.interface.port_changed, task, self.port) + self.assertEqual(2, what_changed_mock.call_count) @mock.patch('ironic.dhcp.neutron.NeutronDHCPApi.update_port_dhcp_opts', autospec=True) diff --git a/ironic/tests/unit/drivers/modules/redfish/test_management.py b/ironic/tests/unit/drivers/modules/redfish/test_management.py index f8c82949a..1d752d909 100644 --- a/ironic/tests/unit/drivers/modules/redfish/test_management.py +++ b/ironic/tests/unit/drivers/modules/redfish/test_management.py @@ -1598,3 +1598,13 @@ class RedfishManagementTestCase(db_base.DbTestCase): shared=True) as task: self.assertEqual([], task.driver.management.get_mac_addresses(task)) + + @mock.patch.object(redfish_utils, 'get_enabled_macs', autospec=True) + @mock.patch.object(redfish_utils, 'get_system', autospec=True) + def test_get_mac_addresses_missing_attr(self, mock_get_system, + mock_get_enabled_macs): + redfish_utils.get_enabled_macs.side_effect = (sushy.exceptions. + MissingAttributeError) + with task_manager.acquire(self.context, self.node.uuid, + shared=True) as task: + self.assertIsNone(task.driver.management.get_mac_addresses(task)) diff --git a/ironic/tests/unit/drivers/modules/test_image_utils.py b/ironic/tests/unit/drivers/modules/test_image_utils.py index b6c572125..fbb6318fe 100644 --- a/ironic/tests/unit/drivers/modules/test_image_utils.py +++ b/ironic/tests/unit/drivers/modules/test_image_utils.py @@ -583,7 +583,7 @@ class RedfishImageUtilsTestCase(db_base.DbTestCase): mock_create_boot_iso.assert_called_once_with( mock.ANY, mock.ANY, 'http://kernel/img', 'http://ramdisk/img', boot_mode='uefi', esp_image_href='http://bootloader/img', - kernel_params='nofb nomodeset vga=normal', + kernel_params='nofb vga=normal', root_uuid='1be26c0b-03f2-4d2e-ae87-c02d7f33c123', inject_files=None) @@ -604,7 +604,7 @@ class RedfishImageUtilsTestCase(db_base.DbTestCase): mock_create_boot_iso.assert_called_once_with( mock.ANY, mock.ANY, 'http://kernel/img', 'http://ramdisk/img', boot_mode='uefi', esp_image_href=None, - kernel_params='nofb nomodeset vga=normal', + kernel_params='nofb vga=normal', root_uuid='1be26c0b-03f2-4d2e-ae87-c02d7f33c123', inject_files=None) @@ -633,7 +633,7 @@ class RedfishImageUtilsTestCase(db_base.DbTestCase): mock_create_boot_iso.assert_called_once_with( mock.ANY, mock.ANY, 'http://kernel/img', 'http://ramdisk/img', boot_mode='bios', esp_image_href=None, - kernel_params='nofb nomodeset vga=normal', + kernel_params='nofb vga=normal', root_uuid='1be26c0b-03f2-4d2e-ae87-c02d7f33c123', inject_files=None) @@ -702,7 +702,7 @@ class RedfishImageUtilsTestCase(db_base.DbTestCase): mock_create_boot_iso.assert_called_once_with( mock.ANY, mock.ANY, 'http://kernel/img', 'http://ramdisk/img', boot_mode='uefi', esp_image_href=None, - kernel_params=f'nofb nomodeset vga=normal {kernel_params}', + kernel_params=f'nofb vga=normal {kernel_params}', root_uuid='1be26c0b-03f2-4d2e-ae87-c02d7f33c123', inject_files=None) diff --git a/ironic/tests/unit/drivers/modules/test_ipxe.py b/ironic/tests/unit/drivers/modules/test_ipxe.py index ef37e3fc4..02d254b5a 100644 --- a/ironic/tests/unit/drivers/modules/test_ipxe.py +++ b/ironic/tests/unit/drivers/modules/test_ipxe.py @@ -813,7 +813,7 @@ class iPXEBootTestCase(db_base.DbTestCase): 'aki_path': 'http://192.1.2.3:1234/' + uuid + '/kernel', 'ari_path': 'http://192.1.2.3:1234/' + uuid + '/ramdisk', 'ramdisk_opts': 'cat meow', - 'pxe_append_params': 'nofb nomodeset vga=normal ipa-debug=1 ' + 'pxe_append_params': 'nofb vga=normal ipa-debug=1 ' 'ipa-global-request-' 'id=' + task.context.request_id, 'tftp_server': mock.ANY, diff --git a/releasenotes/notes/handle-missing-ethernetinterfaces-attr-7e52f7259fe66762.yaml b/releasenotes/notes/handle-missing-ethernetinterfaces-attr-7e52f7259fe66762.yaml new file mode 100644 index 000000000..225238506 --- /dev/null +++ b/releasenotes/notes/handle-missing-ethernetinterfaces-attr-7e52f7259fe66762.yaml @@ -0,0 +1,9 @@ +--- +fixes: + - | + Fixes the bug where provisioning a Redfish managed node fails if the BMC + doesn't support EthernetInterfaces attribute, even if MAC address + information is provided manually. This is done by handling of + MissingAttributeError sushy exception in get_mac_addresses() method. + This fix is needed to successfully provision machines such as Cisco UCSB + and UCSX. diff --git a/releasenotes/notes/remove-nomodset-7a352a9519c1045b.yaml b/releasenotes/notes/remove-nomodset-7a352a9519c1045b.yaml new file mode 100644 index 000000000..26d10c262 --- /dev/null +++ b/releasenotes/notes/remove-nomodset-7a352a9519c1045b.yaml @@ -0,0 +1,22 @@ +--- +upgrade: + - | + The defaults for ``kernel_append_params`` have had the Linux kernel + command line parameter ``nomodeset`` removed from the defaults for the + ``kernel_append_params`` settings. The ``nomodeset`` option is for + troubleshooting and changes the behavior of the graphics interface + such that memory can be locked upon graphical updates on physical + servers with BMC graphical interfaces, which results in spikes in + latency and packet loss whenever graphics updates occur. Operators + may add the option to their local configuration, but should be aware + that large image transfers or other high IO operations can be impacted. +fixes: + - | + Agents deploying on physical servers with default kernel arguments were + suspetible to packet loss if a Matrox VGA/Aspeed BMC Graphics interface + is present on the machine. The defaults have been changed to remove + the use of the ``nomodeset`` kernel command line parameter which + should only be used for troubleshooting as it has been determined + that the memory updates can lock all of the kernel memory upon any + console graphics update which can negatively impact IO for Networking + or Disk interactions. diff --git a/releasenotes/source/locale/en_GB/LC_MESSAGES/releasenotes.po b/releasenotes/source/locale/en_GB/LC_MESSAGES/releasenotes.po index c3581ff0d..05bc0a046 100644 --- a/releasenotes/source/locale/en_GB/LC_MESSAGES/releasenotes.po +++ b/releasenotes/source/locale/en_GB/LC_MESSAGES/releasenotes.po @@ -8,11 +8,11 @@ msgid "" msgstr "" "Project-Id-Version: Ironic Release Notes\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2023-03-08 03:30+0000\n" +"POT-Creation-Date: 2023-05-09 03:34+0000\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"PO-Revision-Date: 2023-02-03 04:37+0000\n" +"PO-Revision-Date: 2023-05-08 10:24+0000\n" "Last-Translator: Andi Chandler <andi@gowling.com>\n" "Language-Team: English (United Kingdom)\n" "Language: en_GB\n" @@ -287,8 +287,11 @@ msgstr "18.2.1" msgid "18.2.2" msgstr "18.2.2" -msgid "18.2.2-6" -msgstr "18.2.2-6" +msgid "18.3.0" +msgstr "18.3.0" + +msgid "18.3.0-1" +msgstr "18.3.0-1" msgid "19.0.0" msgstr "19.0.0" @@ -302,6 +305,9 @@ msgstr "20.1.0" msgid "20.1.1" msgstr "20.1.1" +msgid "20.1.1-10" +msgstr "20.1.1-10" + msgid "20.2.0" msgstr "20.2.0" @@ -311,12 +317,21 @@ msgstr "21.0.0" msgid "21.1.0" msgstr "21.1.0" +msgid "21.1.0-17" +msgstr "21.1.0-17" + msgid "21.2.0" msgstr "21.2.0" msgid "21.3.0" msgstr "21.3.0" +msgid "21.4.0" +msgstr "21.4.0" + +msgid "21.4.0-7" +msgstr "21.4.0-7" + msgid "4.0.0 First semver release" msgstr "4.0.0 First semver release" @@ -1829,6 +1844,14 @@ msgstr "" "of the Driver API to support future improvements." msgid "" +"Drivers may register their own periodic tasks to be run by the Conductor." +msgstr "" +"Drivers may register their own periodic tasks to be run by the Conductor." + +msgid "Drivers may store their own \"internal\" information about Nodes." +msgstr "Drivers may store their own \"internal\" information about Nodes." + +msgid "" "Drivers using the \"agent\" deploy mechanism do not support \"rebuild --" "preserve-ephemeral\"" msgstr "" @@ -1938,6 +1961,13 @@ msgid "Support for the new ENROLL workflow during Node creation" msgstr "Support for the new ENROLL workflow during Node creation" msgid "" +"Support for third-party and out-of-tree drivers is enhanced by the following " +"two changes:" +msgstr "" +"Support for third-party and out-of-tree drivers is enhanced by the following " +"two changes:" + +msgid "" "The \"agent\" class of drivers now support both whole-disk and partition " "based images." msgstr "" @@ -2110,3 +2140,17 @@ msgstr "v1.7 exposes a new 'clean_step' property on the Node resource." msgid "v1.8 and v1.9 improve query and filter support" msgstr "v1.8 and v1.9 improve query and filter support" + +msgid "" +"vendor_passthru methods are now discoverable in the REST API. See node " +"vendor passthru and driver vendor passthru" +msgstr "" +"vendor_passthru methods are now discoverable in the REST API. See node " +"vendor passthru and driver vendor passthru" + +msgid "" +"vendor_passthru methods now support additional HTTP methods (eg, PUT and " +"POST)." +msgstr "" +"vendor_passthru methods now support additional HTTP methods (eg, PUT and " +"POST)." diff --git a/releasenotes/source/locale/ja/LC_MESSAGES/releasenotes.po b/releasenotes/source/locale/ja/LC_MESSAGES/releasenotes.po deleted file mode 100644 index 81262b544..000000000 --- a/releasenotes/source/locale/ja/LC_MESSAGES/releasenotes.po +++ /dev/null @@ -1,159 +0,0 @@ -# OpenStack Infra <zanata@openstack.org>, 2015. #zanata -# Akihiro Motoki <amotoki@gmail.com>, 2016. #zanata -# Akihito INOH <aki-inou@rs.jp.nec.com>, 2018. #zanata -msgid "" -msgstr "" -"Project-Id-Version: Ironic Release Notes\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2023-03-08 03:30+0000\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"PO-Revision-Date: 2018-02-15 11:45+0000\n" -"Last-Translator: Akihito INOH <aki-inou@rs.jp.nec.com>\n" -"Language-Team: Japanese\n" -"Language: ja\n" -"X-Generator: Zanata 4.3.3\n" -"Plural-Forms: nplurals=1; plural=0\n" - -msgid "" -"\"Port group\" support allows users to take advantage of bonded network " -"interfaces." -msgstr "" -"\"Port group\" のサポートにより、ユーザーはボンディングされたネットワークイン" -"ターフェースが利用できるようになります。" - -msgid "10.0.0" -msgstr "10.0.0" - -msgid "10.1.0" -msgstr "10.1.0" - -msgid "4.2.2" -msgstr "4.2.2" - -msgid "4.2.3" -msgstr "4.2.3" - -msgid "4.2.4" -msgstr "4.2.4" - -msgid "4.2.5" -msgstr "4.2.5" - -msgid "4.3.0" -msgstr "4.3.0" - -msgid "443, 80" -msgstr "443, 80" - -msgid "5.0.0" -msgstr "5.0.0" - -msgid "5.1.0" -msgstr "5.1.0" - -msgid "5.1.1" -msgstr "5.1.1" - -msgid "5.1.2" -msgstr "5.1.2" - -msgid "5.1.3" -msgstr "5.1.3" - -msgid "6.0.0" -msgstr "6.0.0" - -msgid "6.1.0" -msgstr "6.1.0" - -msgid "6.2.0" -msgstr "6.2.0" - -msgid "6.2.2" -msgstr "6.2.2" - -msgid "6.2.3" -msgstr "6.2.3" - -msgid "6.2.4" -msgstr "6.2.4" - -msgid "6.3.0" -msgstr "6.3.0" - -msgid "7.0.0" -msgstr "7.0.0" - -msgid "7.0.1" -msgstr "7.0.1" - -msgid "7.0.2" -msgstr "7.0.2" - -msgid "7.0.3" -msgstr "7.0.3" - -msgid "7.0.4" -msgstr "7.0.4" - -msgid "8.0.0" -msgstr "8.0.0" - -msgid "9.0.0" -msgstr "9.0.0" - -msgid "9.0.1" -msgstr "9.0.1" - -msgid "9.1.0" -msgstr "9.1.0" - -msgid "9.1.1" -msgstr "9.1.1" - -msgid "9.1.2" -msgstr "9.1.2" - -msgid "9.1.3" -msgstr "9.1.3" - -msgid "9.2.0" -msgstr "9.2.0" - -msgid "" -"A few major changes are worth mentioning. This is not an exhaustive list:" -msgstr "" -"いくつかの主要な変更がありました。全てではありませんが以下にリストを示しま" -"す。" - -msgid "A few major changes since 9.1.x (Pike) are worth mentioning:" -msgstr "9.1.x (Pike) からの主要な変更がいくつかありました。" - -msgid "Bug Fixes" -msgstr "バグ修正" - -msgid "Current Series Release Notes" -msgstr "開発中バージョンのリリースノート" - -msgid "Deprecation Notes" -msgstr "廃止予定の機能" - -msgid "Known Issues" -msgstr "既知の問題" - -msgid "New Features" -msgstr "新機能" - -msgid "Option" -msgstr "オプション" - -msgid "Other Notes" -msgstr "その他の注意点" - -msgid "Security Issues" -msgstr "セキュリティー上の問題" - -msgid "Upgrade Notes" -msgstr "アップグレード時の注意" diff --git a/zuul.d/project.yaml b/zuul.d/project.yaml index 8fbfbb929..cf3a696db 100644 --- a/zuul.d/project.yaml +++ b/zuul.d/project.yaml @@ -13,7 +13,10 @@ - ironic-cross-sushy: voting: false - ironic-tempest-functional-python3 - - ironic-tempest-functional-rbac-scope-enforced + # NOTE(rpittau) moving to non-voting until we fix the tests + # see also https://review.opendev.org/c/openstack/ironic-tempest-plugin/+/882312 + - ironic-tempest-functional-rbac-scope-enforced: + voting: false - ironic-grenade - ironic-standalone - ironic-standalone-redfish @@ -63,7 +66,9 @@ jobs: - ironic-tox-unit-with-driver-libs - ironic-tempest-functional-python3 - - ironic-tempest-functional-rbac-scope-enforced + # NOTE(rpittau) disabled until we fix the tests + # see also https://review.opendev.org/c/openstack/ironic-tempest-plugin/+/882312 + #- ironic-tempest-functional-rbac-scope-enforced - ironic-grenade - ironic-standalone - ironic-standalone-redfish |