Mock Version: 1.2.17 Mock Version: 1.2.17 ENTER ['do'](['bash', '--login', '-c', '/usr/bin/rpmbuild -bs --target noarch --nodeps /builddir/build/SPECS/openstack-ironic.spec'], chrootPath='/var/lib/mock/cloud7-openstack-stein-el7-build-59859-270088/root'shell=FalseprintOutput=Falseenv={'LANG': 'en_GB.UTF-8', 'TERM': 'vt100', 'SHELL': '/bin/bash', 'PROMPT_COMMAND': 'printf "\x1b]0;\x07"', 'PATH': '/usr/bin:/bin:/usr/sbin:/sbin', 'HOME': '/builddir', 'HOSTNAME': 'mock'}gid=135user='mockbuild'timeout=86400logger=uid=996) Executing command: ['bash', '--login', '-c', '/usr/bin/rpmbuild -bs --target noarch --nodeps /builddir/build/SPECS/openstack-ironic.spec'] with env {'LANG': 'en_GB.UTF-8', 'TERM': 'vt100', 'SHELL': '/bin/bash', 'PROMPT_COMMAND': 'printf "\x1b]0;\x07"', 'PATH': '/usr/bin:/bin:/usr/sbin:/sbin', 'HOME': '/builddir', 'HOSTNAME': 'mock'} and shell False Building target platforms: noarch Building for target noarch Wrote: /builddir/build/SRPMS/openstack-ironic-12.1.1-1.el7.src.rpm Child return code was: 0 ENTER ['do'](['bash', '--login', '-c', u'/usr/bin/rpmbuild -bb --target noarch --nodeps /builddir/build/SPECS/openstack-ironic.spec'], chrootPath='/var/lib/mock/cloud7-openstack-stein-el7-build-59859-270088/root'shell=Falseuid=996env={'LANG': 'en_GB.UTF-8', 'TERM': 'vt100', 'SHELL': '/bin/bash', 'PROMPT_COMMAND': 'printf "\x1b]0;\x07"', 'PATH': '/usr/bin:/bin:/usr/sbin:/sbin', 'HOME': '/builddir', 'HOSTNAME': 'mock'}gid=135user='mockbuild'timeout=86400private_network=Truelogger=printOutput=False) Executing command: ['bash', '--login', '-c', u'/usr/bin/rpmbuild -bb --target noarch --nodeps /builddir/build/SPECS/openstack-ironic.spec'] with env {'LANG': 'en_GB.UTF-8', 'TERM': 'vt100', 'SHELL': '/bin/bash', 'PROMPT_COMMAND': 'printf "\x1b]0;\x07"', 'PATH': '/usr/bin:/bin:/usr/sbin:/sbin', 'HOME': '/builddir', 'HOSTNAME': 'mock'} and shell False Building target platforms: noarch Building for target noarch Executing(%prep): /bin/sh -e /var/tmp/rpm-tmp.G5BQXI + umask 022 + cd /builddir/build/BUILD + cd /builddir/build/BUILD + rm -rf ironic-12.1.1 + /usr/bin/gzip -dc /builddir/build/SOURCES/ironic-12.1.1.tar.gz + /usr/bin/tar -xf - + STATUS=0 + '[' 0 -ne 0 ']' + cd ironic-12.1.1 + /usr/bin/chmod -Rf a+rX,u+w,g-w,o-w . + sed -i 's/^warning-is-error.*/warning-is-error = 0/g' setup.cfg + rm -rf driver-requirements.txt requirements.txt test-requirements.txt + sed -i /tempest/d setup.cfg + rm -rf ironic_tempest_plugin + exit 0 Executing(%build): /bin/sh -e /var/tmp/rpm-tmp.MdKMD1 + umask 022 + cd /builddir/build/BUILD + cd ironic-12.1.1 + CFLAGS='-O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -m64 -mtune=generic' + /usr/bin/python2 setup.py build '--executable=/usr/bin/python2 -s' running build running build_py creating build creating build/lib creating build/lib/ironic creating build/lib/ironic/tests creating build/lib/ironic/tests/unit creating build/lib/ironic/tests/unit/drivers creating build/lib/ironic/tests/unit/drivers/modules creating build/lib/ironic/tests/unit/drivers/modules/drac copying ironic/tests/unit/drivers/modules/drac/test_inspect.py -> build/lib/ironic/tests/unit/drivers/modules/drac copying ironic/tests/unit/drivers/modules/drac/utils.py -> build/lib/ironic/tests/unit/drivers/modules/drac copying ironic/tests/unit/drivers/modules/drac/test_raid.py -> build/lib/ironic/tests/unit/drivers/modules/drac copying ironic/tests/unit/drivers/modules/drac/test_power.py -> build/lib/ironic/tests/unit/drivers/modules/drac copying ironic/tests/unit/drivers/modules/drac/test_periodic_task.py -> build/lib/ironic/tests/unit/drivers/modules/drac copying ironic/tests/unit/drivers/modules/drac/test_common.py -> build/lib/ironic/tests/unit/drivers/modules/drac copying ironic/tests/unit/drivers/modules/drac/__init__.py -> build/lib/ironic/tests/unit/drivers/modules/drac copying ironic/tests/unit/drivers/modules/drac/test_bios.py -> build/lib/ironic/tests/unit/drivers/modules/drac copying ironic/tests/unit/drivers/modules/drac/test_management.py -> build/lib/ironic/tests/unit/drivers/modules/drac copying ironic/tests/unit/drivers/modules/drac/test_job.py -> build/lib/ironic/tests/unit/drivers/modules/drac copying ironic/tests/unit/drivers/modules/test_boot_mode_utils.py -> build/lib/ironic/tests/unit/drivers/modules copying ironic/tests/unit/drivers/modules/test_noop.py -> build/lib/ironic/tests/unit/drivers/modules copying ironic/tests/unit/drivers/modules/test_console_utils.py -> build/lib/ironic/tests/unit/drivers/modules copying ironic/tests/unit/drivers/modules/test_inspect_utils.py -> build/lib/ironic/tests/unit/drivers/modules copying ironic/tests/unit/drivers/modules/test_deploy_utils.py -> build/lib/ironic/tests/unit/drivers/modules copying ironic/tests/unit/drivers/modules/test_snmp.py -> build/lib/ironic/tests/unit/drivers/modules copying ironic/tests/unit/drivers/modules/test_image_cache.py -> build/lib/ironic/tests/unit/drivers/modules copying ironic/tests/unit/drivers/modules/test_ipxe.py -> build/lib/ironic/tests/unit/drivers/modules copying ironic/tests/unit/drivers/modules/__init__.py -> build/lib/ironic/tests/unit/drivers/modules copying ironic/tests/unit/drivers/modules/test_inspector.py -> build/lib/ironic/tests/unit/drivers/modules copying ironic/tests/unit/drivers/modules/test_agent_base_vendor.py -> build/lib/ironic/tests/unit/drivers/modules copying ironic/tests/unit/drivers/modules/test_pxe.py -> build/lib/ironic/tests/unit/drivers/modules copying ironic/tests/unit/drivers/modules/test_noop_mgmt.py -> build/lib/ironic/tests/unit/drivers/modules copying ironic/tests/unit/drivers/modules/test_agent.py -> build/lib/ironic/tests/unit/drivers/modules copying ironic/tests/unit/drivers/modules/test_agent_client.py -> build/lib/ironic/tests/unit/drivers/modules copying ironic/tests/unit/drivers/modules/test_iscsi_deploy.py -> build/lib/ironic/tests/unit/drivers/modules copying ironic/tests/unit/drivers/modules/test_ipmitool.py -> build/lib/ironic/tests/unit/drivers/modules creating build/lib/ironic/tests/functional copying ironic/tests/functional/__init__.py -> build/lib/ironic/tests/functional creating build/lib/ironic/common creating build/lib/ironic/common/glance_service creating build/lib/ironic/common/glance_service/v2 copying ironic/common/glance_service/v2/__init__.py -> build/lib/ironic/common/glance_service/v2 copying ironic/common/glance_service/v2/image_service.py -> build/lib/ironic/common/glance_service/v2 creating build/lib/ironic/drivers creating build/lib/ironic/drivers/modules creating build/lib/ironic/drivers/modules/ibmc copying ironic/drivers/modules/ibmc/utils.py -> build/lib/ironic/drivers/modules/ibmc copying ironic/drivers/modules/ibmc/management.py -> build/lib/ironic/drivers/modules/ibmc copying ironic/drivers/modules/ibmc/mappings.py -> build/lib/ironic/drivers/modules/ibmc copying ironic/drivers/modules/ibmc/vendor.py -> build/lib/ironic/drivers/modules/ibmc copying ironic/drivers/modules/ibmc/__init__.py -> build/lib/ironic/drivers/modules/ibmc copying ironic/drivers/modules/ibmc/power.py -> build/lib/ironic/drivers/modules/ibmc creating build/lib/ironic/api creating build/lib/ironic/api/controllers copying ironic/api/controllers/version.py -> build/lib/ironic/api/controllers copying ironic/api/controllers/link.py -> build/lib/ironic/api/controllers copying ironic/api/controllers/root.py -> build/lib/ironic/api/controllers copying ironic/api/controllers/__init__.py -> build/lib/ironic/api/controllers copying ironic/api/controllers/base.py -> build/lib/ironic/api/controllers copying ironic/tests/unit/drivers/third_party_driver_mock_specs.py -> build/lib/ironic/tests/unit/drivers copying ironic/tests/unit/drivers/test_generic.py -> build/lib/ironic/tests/unit/drivers copying ironic/tests/unit/drivers/test_utils.py -> build/lib/ironic/tests/unit/drivers copying ironic/tests/unit/drivers/test_ilo.py -> build/lib/ironic/tests/unit/drivers copying ironic/tests/unit/drivers/test_snmp.py -> build/lib/ironic/tests/unit/drivers copying ironic/tests/unit/drivers/test_cisco.py -> build/lib/ironic/tests/unit/drivers copying ironic/tests/unit/drivers/test_fake_hardware.py -> build/lib/ironic/tests/unit/drivers copying ironic/tests/unit/drivers/test_base.py -> build/lib/ironic/tests/unit/drivers copying ironic/tests/unit/drivers/test_ibmc.py -> build/lib/ironic/tests/unit/drivers copying ironic/tests/unit/drivers/__init__.py -> build/lib/ironic/tests/unit/drivers copying ironic/tests/unit/drivers/test_irmc.py -> build/lib/ironic/tests/unit/drivers copying ironic/tests/unit/drivers/test_drac.py -> build/lib/ironic/tests/unit/drivers copying ironic/tests/unit/drivers/third_party_driver_mocks.py -> build/lib/ironic/tests/unit/drivers copying ironic/tests/unit/drivers/test_ipmi.py -> build/lib/ironic/tests/unit/drivers copying ironic/tests/unit/drivers/test_xclarity.py -> build/lib/ironic/tests/unit/drivers copying ironic/tests/unit/drivers/test_redfish.py -> build/lib/ironic/tests/unit/drivers creating build/lib/ironic/tests/unit/db creating build/lib/ironic/tests/unit/db/sqlalchemy copying ironic/tests/unit/db/sqlalchemy/test_types.py -> build/lib/ironic/tests/unit/db/sqlalchemy copying ironic/tests/unit/db/sqlalchemy/test_models.py -> build/lib/ironic/tests/unit/db/sqlalchemy copying ironic/tests/unit/db/sqlalchemy/__init__.py -> build/lib/ironic/tests/unit/db/sqlalchemy copying ironic/tests/unit/db/sqlalchemy/test_migrations.py -> build/lib/ironic/tests/unit/db/sqlalchemy copying ironic/tests/unit/db/sqlalchemy/test_api.py -> build/lib/ironic/tests/unit/db/sqlalchemy copying ironic/tests/unit/db/utils.py -> build/lib/ironic/tests/unit/db copying ironic/tests/unit/db/test_volume_connectors.py -> build/lib/ironic/tests/unit/db copying ironic/tests/unit/db/test_ports.py -> build/lib/ironic/tests/unit/db copying ironic/tests/unit/db/test_node_traits.py -> build/lib/ironic/tests/unit/db copying ironic/tests/unit/db/test_volume_targets.py -> build/lib/ironic/tests/unit/db copying ironic/tests/unit/db/test_conductor.py -> build/lib/ironic/tests/unit/db copying ironic/tests/unit/db/__init__.py -> build/lib/ironic/tests/unit/db copying ironic/tests/unit/db/test_chassis.py -> build/lib/ironic/tests/unit/db copying ironic/tests/unit/db/test_portgroups.py -> build/lib/ironic/tests/unit/db copying ironic/tests/unit/db/test_deploy_templates.py -> build/lib/ironic/tests/unit/db copying ironic/tests/unit/db/test_allocations.py -> build/lib/ironic/tests/unit/db copying ironic/tests/unit/db/test_api.py -> build/lib/ironic/tests/unit/db copying ironic/tests/unit/db/test_nodes.py -> build/lib/ironic/tests/unit/db copying ironic/tests/unit/db/test_bios_settings.py -> build/lib/ironic/tests/unit/db copying ironic/tests/unit/db/test_node_tags.py -> build/lib/ironic/tests/unit/db copying ironic/tests/unit/db/base.py -> build/lib/ironic/tests/unit/db creating build/lib/ironic/tests/unit/drivers/modules/ucs copying ironic/tests/unit/drivers/modules/ucs/test_power.py -> build/lib/ironic/tests/unit/drivers/modules/ucs copying ironic/tests/unit/drivers/modules/ucs/test_helper.py -> build/lib/ironic/tests/unit/drivers/modules/ucs copying ironic/tests/unit/drivers/modules/ucs/__init__.py -> build/lib/ironic/tests/unit/drivers/modules/ucs copying ironic/tests/unit/drivers/modules/ucs/test_management.py -> build/lib/ironic/tests/unit/drivers/modules/ucs creating build/lib/ironic/hacking copying ironic/hacking/__init__.py -> build/lib/ironic/hacking copying ironic/hacking/checks.py -> build/lib/ironic/hacking copying ironic/version.py -> build/lib/ironic copying ironic/__init__.py -> build/lib/ironic creating build/lib/ironic/drivers/modules/ansible copying ironic/drivers/modules/ansible/deploy.py -> build/lib/ironic/drivers/modules/ansible copying ironic/drivers/modules/ansible/__init__.py -> build/lib/ironic/drivers/modules/ansible creating build/lib/ironic/tests/unit/common copying ironic/tests/unit/common/test_driver_factory.py -> build/lib/ironic/tests/unit/common copying ironic/tests/unit/common/test_hash_ring.py -> build/lib/ironic/tests/unit/common copying ironic/tests/unit/common/test_utils.py -> build/lib/ironic/tests/unit/common copying ironic/tests/unit/common/test_context.py -> build/lib/ironic/tests/unit/common copying ironic/tests/unit/common/test_rpc_service.py -> build/lib/ironic/tests/unit/common copying ironic/tests/unit/common/test_release_mappings.py -> build/lib/ironic/tests/unit/common copying ironic/tests/unit/common/test_raid.py -> build/lib/ironic/tests/unit/common copying ironic/tests/unit/common/test_policy.py -> build/lib/ironic/tests/unit/common copying ironic/tests/unit/common/test_swift.py -> build/lib/ironic/tests/unit/common copying ironic/tests/unit/common/test_pxe_utils.py -> build/lib/ironic/tests/unit/common copying ironic/tests/unit/common/test_rpc.py -> build/lib/ironic/tests/unit/common copying ironic/tests/unit/common/__init__.py -> build/lib/ironic/tests/unit/common copying ironic/tests/unit/common/test_image_service.py -> build/lib/ironic/tests/unit/common copying ironic/tests/unit/common/test_neutron.py -> build/lib/ironic/tests/unit/common copying ironic/tests/unit/common/test_glance_service.py -> build/lib/ironic/tests/unit/common copying ironic/tests/unit/common/test_exception.py -> build/lib/ironic/tests/unit/common copying ironic/tests/unit/common/test_network.py -> build/lib/ironic/tests/unit/common copying ironic/tests/unit/common/test_images.py -> build/lib/ironic/tests/unit/common copying ironic/tests/unit/common/test_cinder.py -> build/lib/ironic/tests/unit/common copying ironic/tests/unit/common/test_keystone.py -> build/lib/ironic/tests/unit/common copying ironic/tests/unit/common/test_fsm.py -> build/lib/ironic/tests/unit/common copying ironic/tests/unit/common/test_states.py -> build/lib/ironic/tests/unit/common copying ironic/tests/unit/common/test_json_rpc.py -> build/lib/ironic/tests/unit/common copying ironic/tests/unit/common/test_wsgi_service.py -> build/lib/ironic/tests/unit/common copying ironic/drivers/utils.py -> build/lib/ironic/drivers copying ironic/drivers/ilo.py -> build/lib/ironic/drivers copying ironic/drivers/irmc.py -> build/lib/ironic/drivers copying ironic/drivers/ibmc.py -> build/lib/ironic/drivers copying ironic/drivers/xclarity.py -> build/lib/ironic/drivers copying ironic/drivers/generic.py -> build/lib/ironic/drivers copying ironic/drivers/snmp.py -> build/lib/ironic/drivers copying ironic/drivers/__init__.py -> build/lib/ironic/drivers copying ironic/drivers/fake_hardware.py -> build/lib/ironic/drivers copying ironic/drivers/cisco_ucs.py -> build/lib/ironic/drivers copying ironic/drivers/ipmi.py -> build/lib/ironic/drivers copying ironic/drivers/drac.py -> build/lib/ironic/drivers copying ironic/drivers/redfish.py -> build/lib/ironic/drivers copying ironic/drivers/hardware_type.py -> build/lib/ironic/drivers copying ironic/drivers/base.py -> build/lib/ironic/drivers creating build/lib/ironic/tests/unit/drivers/modules/cimc copying ironic/tests/unit/drivers/modules/cimc/test_power.py -> build/lib/ironic/tests/unit/drivers/modules/cimc copying ironic/tests/unit/drivers/modules/cimc/test_common.py -> build/lib/ironic/tests/unit/drivers/modules/cimc copying ironic/tests/unit/drivers/modules/cimc/__init__.py -> build/lib/ironic/tests/unit/drivers/modules/cimc copying ironic/tests/unit/drivers/modules/cimc/test_management.py -> build/lib/ironic/tests/unit/drivers/modules/cimc creating build/lib/ironic/drivers/modules/ucs copying ironic/drivers/modules/ucs/helper.py -> build/lib/ironic/drivers/modules/ucs copying ironic/drivers/modules/ucs/management.py -> build/lib/ironic/drivers/modules/ucs copying ironic/drivers/modules/ucs/__init__.py -> build/lib/ironic/drivers/modules/ucs copying ironic/drivers/modules/ucs/power.py -> build/lib/ironic/drivers/modules/ucs copying ironic/drivers/modules/inspect_utils.py -> build/lib/ironic/drivers/modules copying ironic/drivers/modules/agent.py -> build/lib/ironic/drivers/modules copying ironic/drivers/modules/ipxe.py -> build/lib/ironic/drivers/modules copying ironic/drivers/modules/agent_client.py -> build/lib/ironic/drivers/modules copying ironic/drivers/modules/console_utils.py -> build/lib/ironic/drivers/modules copying ironic/drivers/modules/inspector.py -> build/lib/ironic/drivers/modules copying ironic/drivers/modules/pxe.py -> build/lib/ironic/drivers/modules copying ironic/drivers/modules/pxe_base.py -> build/lib/ironic/drivers/modules copying ironic/drivers/modules/snmp.py -> build/lib/ironic/drivers/modules copying ironic/drivers/modules/__init__.py -> build/lib/ironic/drivers/modules copying ironic/drivers/modules/noop.py -> build/lib/ironic/drivers/modules copying ironic/drivers/modules/agent_base_vendor.py -> build/lib/ironic/drivers/modules copying ironic/drivers/modules/deploy_utils.py -> build/lib/ironic/drivers/modules copying ironic/drivers/modules/fake.py -> build/lib/ironic/drivers/modules copying ironic/drivers/modules/noop_mgmt.py -> build/lib/ironic/drivers/modules copying ironic/drivers/modules/image_cache.py -> build/lib/ironic/drivers/modules copying ironic/drivers/modules/boot_mode_utils.py -> build/lib/ironic/drivers/modules copying ironic/drivers/modules/iscsi_deploy.py -> build/lib/ironic/drivers/modules copying ironic/drivers/modules/ipmitool.py -> build/lib/ironic/drivers/modules creating build/lib/ironic/objects copying ironic/objects/allocation.py -> build/lib/ironic/objects copying ironic/objects/volume_target.py -> build/lib/ironic/objects copying ironic/objects/fields.py -> build/lib/ironic/objects copying ironic/objects/volume_connector.py -> build/lib/ironic/objects copying ironic/objects/trait.py -> build/lib/ironic/objects copying ironic/objects/__init__.py -> build/lib/ironic/objects copying ironic/objects/notification.py -> build/lib/ironic/objects copying ironic/objects/conductor.py -> build/lib/ironic/objects copying ironic/objects/port.py -> build/lib/ironic/objects copying ironic/objects/portgroup.py -> build/lib/ironic/objects copying ironic/objects/node.py -> build/lib/ironic/objects copying ironic/objects/bios.py -> build/lib/ironic/objects copying ironic/objects/deploy_template.py -> build/lib/ironic/objects copying ironic/objects/indirection.py -> build/lib/ironic/objects copying ironic/objects/chassis.py -> build/lib/ironic/objects copying ironic/objects/base.py -> build/lib/ironic/objects creating build/lib/ironic/tests/unit/api creating build/lib/ironic/tests/unit/api/controllers creating build/lib/ironic/tests/unit/api/controllers/v1 copying ironic/tests/unit/api/controllers/v1/test_ramdisk.py -> build/lib/ironic/tests/unit/api/controllers/v1 copying ironic/tests/unit/api/controllers/v1/test_utils.py -> build/lib/ironic/tests/unit/api/controllers/v1 copying ironic/tests/unit/api/controllers/v1/test_port.py -> build/lib/ironic/tests/unit/api/controllers/v1 copying ironic/tests/unit/api/controllers/v1/test_root.py -> build/lib/ironic/tests/unit/api/controllers/v1 copying ironic/tests/unit/api/controllers/v1/test_node.py -> build/lib/ironic/tests/unit/api/controllers/v1 copying ironic/tests/unit/api/controllers/v1/test_notification_utils.py -> build/lib/ironic/tests/unit/api/controllers/v1 copying ironic/tests/unit/api/controllers/v1/test_expose.py -> build/lib/ironic/tests/unit/api/controllers/v1 copying ironic/tests/unit/api/controllers/v1/test_deploy_template.py -> build/lib/ironic/tests/unit/api/controllers/v1 copying ironic/tests/unit/api/controllers/v1/test_event.py -> build/lib/ironic/tests/unit/api/controllers/v1 copying ironic/tests/unit/api/controllers/v1/test_volume_target.py -> build/lib/ironic/tests/unit/api/controllers/v1 copying ironic/tests/unit/api/controllers/v1/test_driver.py -> build/lib/ironic/tests/unit/api/controllers/v1 copying ironic/tests/unit/api/controllers/v1/test_conductor.py -> build/lib/ironic/tests/unit/api/controllers/v1 copying ironic/tests/unit/api/controllers/v1/test_versions.py -> build/lib/ironic/tests/unit/api/controllers/v1 copying ironic/tests/unit/api/controllers/v1/test_types.py -> build/lib/ironic/tests/unit/api/controllers/v1 copying ironic/tests/unit/api/controllers/v1/__init__.py -> build/lib/ironic/tests/unit/api/controllers/v1 copying ironic/tests/unit/api/controllers/v1/test_chassis.py -> build/lib/ironic/tests/unit/api/controllers/v1 copying ironic/tests/unit/api/controllers/v1/test_volume_connector.py -> build/lib/ironic/tests/unit/api/controllers/v1 copying ironic/tests/unit/api/controllers/v1/test_portgroup.py -> build/lib/ironic/tests/unit/api/controllers/v1 copying ironic/tests/unit/api/controllers/v1/test_allocation.py -> build/lib/ironic/tests/unit/api/controllers/v1 copying ironic/tests/unit/api/controllers/v1/test_volume.py -> build/lib/ironic/tests/unit/api/controllers/v1 copying ironic/common/utils.py -> build/lib/ironic/common copying ironic/common/wsgi_service.py -> build/lib/ironic/common copying ironic/common/keystone.py -> build/lib/ironic/common copying ironic/common/images.py -> build/lib/ironic/common copying ironic/common/release_mappings.py -> build/lib/ironic/common copying ironic/common/driver_factory.py -> build/lib/ironic/common copying ironic/common/raid.py -> build/lib/ironic/common copying ironic/common/profiler.py -> build/lib/ironic/common copying ironic/common/network.py -> build/lib/ironic/common copying ironic/common/exception.py -> build/lib/ironic/common copying ironic/common/hash_ring.py -> build/lib/ironic/common copying ironic/common/fsm.py -> build/lib/ironic/common copying ironic/common/cinder.py -> build/lib/ironic/common copying ironic/common/boot_devices.py -> build/lib/ironic/common copying ironic/common/policy.py -> build/lib/ironic/common copying ironic/common/context.py -> build/lib/ironic/common copying ironic/common/__init__.py -> build/lib/ironic/common copying ironic/common/rpc.py -> build/lib/ironic/common copying ironic/common/boot_modes.py -> build/lib/ironic/common copying ironic/common/config.py -> build/lib/ironic/common copying ironic/common/i18n.py -> build/lib/ironic/common copying ironic/common/image_service.py -> build/lib/ironic/common copying ironic/common/service.py -> build/lib/ironic/common copying ironic/common/states.py -> build/lib/ironic/common copying ironic/common/pxe_utils.py -> build/lib/ironic/common copying ironic/common/dhcp_factory.py -> build/lib/ironic/common copying ironic/common/faults.py -> build/lib/ironic/common copying ironic/common/rpc_service.py -> build/lib/ironic/common copying ironic/common/neutron.py -> build/lib/ironic/common copying ironic/common/swift.py -> build/lib/ironic/common creating build/lib/ironic/tests/unit/conductor copying ironic/tests/unit/conductor/test_utils.py -> build/lib/ironic/tests/unit/conductor copying ironic/tests/unit/conductor/test_rpcapi.py -> build/lib/ironic/tests/unit/conductor copying ironic/tests/unit/conductor/test_notification_utils.py -> build/lib/ironic/tests/unit/conductor copying ironic/tests/unit/conductor/test_task_manager.py -> build/lib/ironic/tests/unit/conductor copying ironic/tests/unit/conductor/test_manager.py -> build/lib/ironic/tests/unit/conductor copying ironic/tests/unit/conductor/__init__.py -> build/lib/ironic/tests/unit/conductor copying ironic/tests/unit/conductor/test_allocations.py -> build/lib/ironic/tests/unit/conductor copying ironic/tests/unit/conductor/test_steps.py -> build/lib/ironic/tests/unit/conductor copying ironic/tests/unit/conductor/mgr_utils.py -> build/lib/ironic/tests/unit/conductor copying ironic/tests/unit/conductor/test_base_manager.py -> build/lib/ironic/tests/unit/conductor creating build/lib/ironic/drivers/modules/xclarity copying ironic/drivers/modules/xclarity/management.py -> build/lib/ironic/drivers/modules/xclarity copying ironic/drivers/modules/xclarity/__init__.py -> build/lib/ironic/drivers/modules/xclarity copying ironic/drivers/modules/xclarity/common.py -> build/lib/ironic/drivers/modules/xclarity copying ironic/drivers/modules/xclarity/power.py -> build/lib/ironic/drivers/modules/xclarity copying ironic/api/expose.py -> build/lib/ironic/api copying ironic/api/hooks.py -> build/lib/ironic/api copying ironic/api/app.py -> build/lib/ironic/api copying ironic/api/__init__.py -> build/lib/ironic/api copying ironic/api/config.py -> build/lib/ironic/api copying ironic/api/wsgi.py -> build/lib/ironic/api creating build/lib/ironic/api/middleware copying ironic/api/middleware/auth_token.py -> build/lib/ironic/api/middleware copying ironic/api/middleware/json_ext.py -> build/lib/ironic/api/middleware copying ironic/api/middleware/__init__.py -> build/lib/ironic/api/middleware copying ironic/api/middleware/parsable_error.py -> build/lib/ironic/api/middleware creating build/lib/ironic/tests/unit/drivers/modules/irmc copying ironic/tests/unit/drivers/modules/irmc/test_inspect.py -> build/lib/ironic/tests/unit/drivers/modules/irmc copying ironic/tests/unit/drivers/modules/irmc/test_raid.py -> build/lib/ironic/tests/unit/drivers/modules/irmc copying ironic/tests/unit/drivers/modules/irmc/test_power.py -> build/lib/ironic/tests/unit/drivers/modules/irmc copying ironic/tests/unit/drivers/modules/irmc/test_periodic_task.py -> build/lib/ironic/tests/unit/drivers/modules/irmc copying ironic/tests/unit/drivers/modules/irmc/test_boot.py -> build/lib/ironic/tests/unit/drivers/modules/irmc copying ironic/tests/unit/drivers/modules/irmc/test_common.py -> build/lib/ironic/tests/unit/drivers/modules/irmc copying ironic/tests/unit/drivers/modules/irmc/__init__.py -> build/lib/ironic/tests/unit/drivers/modules/irmc copying ironic/tests/unit/drivers/modules/irmc/test_bios.py -> build/lib/ironic/tests/unit/drivers/modules/irmc copying ironic/tests/unit/drivers/modules/irmc/test_management.py -> build/lib/ironic/tests/unit/drivers/modules/irmc creating build/lib/ironic/drivers/modules/cimc copying ironic/drivers/modules/cimc/management.py -> build/lib/ironic/drivers/modules/cimc copying ironic/drivers/modules/cimc/__init__.py -> build/lib/ironic/drivers/modules/cimc copying ironic/drivers/modules/cimc/common.py -> build/lib/ironic/drivers/modules/cimc copying ironic/drivers/modules/cimc/power.py -> build/lib/ironic/drivers/modules/cimc copying ironic/tests/unit/api/controllers/test_base.py -> build/lib/ironic/tests/unit/api/controllers copying ironic/tests/unit/api/controllers/__init__.py -> build/lib/ironic/tests/unit/api/controllers creating build/lib/ironic/drivers/modules/irmc copying ironic/drivers/modules/irmc/boot.py -> build/lib/ironic/drivers/modules/irmc copying ironic/drivers/modules/irmc/raid.py -> build/lib/ironic/drivers/modules/irmc copying ironic/drivers/modules/irmc/management.py -> build/lib/ironic/drivers/modules/irmc copying ironic/drivers/modules/irmc/__init__.py -> build/lib/ironic/drivers/modules/irmc copying ironic/drivers/modules/irmc/bios.py -> build/lib/ironic/drivers/modules/irmc copying ironic/drivers/modules/irmc/common.py -> build/lib/ironic/drivers/modules/irmc copying ironic/drivers/modules/irmc/power.py -> build/lib/ironic/drivers/modules/irmc copying ironic/drivers/modules/irmc/inspect.py -> build/lib/ironic/drivers/modules/irmc creating build/lib/ironic/api/controllers/v1 copying ironic/api/controllers/v1/utils.py -> build/lib/ironic/api/controllers/v1 copying ironic/api/controllers/v1/volume.py -> build/lib/ironic/api/controllers/v1 copying ironic/api/controllers/v1/allocation.py -> build/lib/ironic/api/controllers/v1 copying ironic/api/controllers/v1/event.py -> build/lib/ironic/api/controllers/v1 copying ironic/api/controllers/v1/collection.py -> build/lib/ironic/api/controllers/v1 copying ironic/api/controllers/v1/volume_target.py -> build/lib/ironic/api/controllers/v1 copying ironic/api/controllers/v1/types.py -> build/lib/ironic/api/controllers/v1 copying ironic/api/controllers/v1/ramdisk.py -> build/lib/ironic/api/controllers/v1 copying ironic/api/controllers/v1/notification_utils.py -> build/lib/ironic/api/controllers/v1 copying ironic/api/controllers/v1/volume_connector.py -> build/lib/ironic/api/controllers/v1 copying ironic/api/controllers/v1/driver.py -> build/lib/ironic/api/controllers/v1 copying ironic/api/controllers/v1/__init__.py -> build/lib/ironic/api/controllers/v1 copying ironic/api/controllers/v1/conductor.py -> build/lib/ironic/api/controllers/v1 copying ironic/api/controllers/v1/port.py -> build/lib/ironic/api/controllers/v1 copying ironic/api/controllers/v1/versions.py -> build/lib/ironic/api/controllers/v1 copying ironic/api/controllers/v1/portgroup.py -> build/lib/ironic/api/controllers/v1 copying ironic/api/controllers/v1/node.py -> build/lib/ironic/api/controllers/v1 copying ironic/api/controllers/v1/bios.py -> build/lib/ironic/api/controllers/v1 copying ironic/api/controllers/v1/deploy_template.py -> build/lib/ironic/api/controllers/v1 copying ironic/api/controllers/v1/state.py -> build/lib/ironic/api/controllers/v1 copying ironic/api/controllers/v1/chassis.py -> build/lib/ironic/api/controllers/v1 creating build/lib/ironic/tests/unit/drivers/modules/ilo copying ironic/tests/unit/drivers/modules/ilo/test_inspect.py -> build/lib/ironic/tests/unit/drivers/modules/ilo copying ironic/tests/unit/drivers/modules/ilo/test_raid.py -> build/lib/ironic/tests/unit/drivers/modules/ilo copying ironic/tests/unit/drivers/modules/ilo/test_power.py -> build/lib/ironic/tests/unit/drivers/modules/ilo copying ironic/tests/unit/drivers/modules/ilo/test_boot.py -> build/lib/ironic/tests/unit/drivers/modules/ilo copying ironic/tests/unit/drivers/modules/ilo/test_firmware_processor.py -> build/lib/ironic/tests/unit/drivers/modules/ilo copying ironic/tests/unit/drivers/modules/ilo/test_common.py -> build/lib/ironic/tests/unit/drivers/modules/ilo copying ironic/tests/unit/drivers/modules/ilo/__init__.py -> build/lib/ironic/tests/unit/drivers/modules/ilo copying ironic/tests/unit/drivers/modules/ilo/test_bios.py -> build/lib/ironic/tests/unit/drivers/modules/ilo copying ironic/tests/unit/drivers/modules/ilo/test_management.py -> build/lib/ironic/tests/unit/drivers/modules/ilo copying ironic/tests/unit/drivers/modules/ilo/test_console.py -> build/lib/ironic/tests/unit/drivers/modules/ilo copying ironic/tests/unit/drivers/modules/ilo/test_vendor.py -> build/lib/ironic/tests/unit/drivers/modules/ilo creating build/lib/ironic/db copying ironic/db/api.py -> build/lib/ironic/db copying ironic/db/migration.py -> build/lib/ironic/db copying ironic/db/__init__.py -> build/lib/ironic/db creating build/lib/ironic/drivers/modules/network copying ironic/drivers/modules/network/__init__.py -> build/lib/ironic/drivers/modules/network copying ironic/drivers/modules/network/noop.py -> build/lib/ironic/drivers/modules/network copying ironic/drivers/modules/network/flat.py -> build/lib/ironic/drivers/modules/network copying ironic/drivers/modules/network/common.py -> build/lib/ironic/drivers/modules/network copying ironic/drivers/modules/network/neutron.py -> build/lib/ironic/drivers/modules/network creating build/lib/ironic/tests/unit/cmd copying ironic/tests/unit/cmd/test_conductor.py -> build/lib/ironic/tests/unit/cmd copying ironic/tests/unit/cmd/__init__.py -> build/lib/ironic/tests/unit/cmd copying ironic/tests/unit/cmd/test_status.py -> build/lib/ironic/tests/unit/cmd copying ironic/tests/unit/cmd/test_dbsync.py -> build/lib/ironic/tests/unit/cmd creating build/lib/ironic/tests/unit/drivers/modules/ibmc copying ironic/tests/unit/drivers/modules/ibmc/test_utils.py -> build/lib/ironic/tests/unit/drivers/modules/ibmc copying ironic/tests/unit/drivers/modules/ibmc/test_power.py -> build/lib/ironic/tests/unit/drivers/modules/ibmc copying ironic/tests/unit/drivers/modules/ibmc/__init__.py -> build/lib/ironic/tests/unit/drivers/modules/ibmc copying ironic/tests/unit/drivers/modules/ibmc/test_management.py -> build/lib/ironic/tests/unit/drivers/modules/ibmc copying ironic/tests/unit/drivers/modules/ibmc/test_vendor.py -> build/lib/ironic/tests/unit/drivers/modules/ibmc copying ironic/tests/unit/drivers/modules/ibmc/base.py -> build/lib/ironic/tests/unit/drivers/modules/ibmc creating build/lib/ironic/tests/unit/conf copying ironic/tests/unit/conf/test_auth.py -> build/lib/ironic/tests/unit/conf copying ironic/tests/unit/conf/__init__.py -> build/lib/ironic/tests/unit/conf copying ironic/common/glance_service/service_utils.py -> build/lib/ironic/common/glance_service copying ironic/common/glance_service/__init__.py -> build/lib/ironic/common/glance_service copying ironic/common/glance_service/base_image_service.py -> build/lib/ironic/common/glance_service creating build/lib/ironic/db/sqlalchemy copying ironic/db/sqlalchemy/api.py -> build/lib/ironic/db/sqlalchemy copying ironic/db/sqlalchemy/migration.py -> build/lib/ironic/db/sqlalchemy copying ironic/db/sqlalchemy/__init__.py -> build/lib/ironic/db/sqlalchemy copying ironic/db/sqlalchemy/models.py -> build/lib/ironic/db/sqlalchemy copying ironic/tests/unit/api/utils.py -> build/lib/ironic/tests/unit/api copying ironic/tests/unit/api/test_root.py -> build/lib/ironic/tests/unit/api copying ironic/tests/unit/api/test_acl.py -> build/lib/ironic/tests/unit/api copying ironic/tests/unit/api/test_healthcheck.py -> build/lib/ironic/tests/unit/api copying ironic/tests/unit/api/__init__.py -> build/lib/ironic/tests/unit/api copying ironic/tests/unit/api/test_ospmiddleware.py -> build/lib/ironic/tests/unit/api copying ironic/tests/unit/api/test_hooks.py -> build/lib/ironic/tests/unit/api copying ironic/tests/unit/api/test_middleware.py -> build/lib/ironic/tests/unit/api copying ironic/tests/unit/api/test_audit.py -> build/lib/ironic/tests/unit/api copying ironic/tests/unit/api/base.py -> build/lib/ironic/tests/unit/api creating build/lib/ironic/tests/unit/drivers/modules/ansible copying ironic/tests/unit/drivers/modules/ansible/test_deploy.py -> build/lib/ironic/tests/unit/drivers/modules/ansible copying ironic/tests/unit/drivers/modules/ansible/__init__.py -> build/lib/ironic/tests/unit/drivers/modules/ansible creating build/lib/ironic/dhcp copying ironic/dhcp/__init__.py -> build/lib/ironic/dhcp copying ironic/dhcp/none.py -> build/lib/ironic/dhcp copying ironic/dhcp/neutron.py -> build/lib/ironic/dhcp copying ironic/dhcp/base.py -> build/lib/ironic/dhcp creating build/lib/ironic/tests/unit/drivers/modules/redfish copying ironic/tests/unit/drivers/modules/redfish/test_inspect.py -> build/lib/ironic/tests/unit/drivers/modules/redfish copying ironic/tests/unit/drivers/modules/redfish/test_utils.py -> build/lib/ironic/tests/unit/drivers/modules/redfish copying ironic/tests/unit/drivers/modules/redfish/test_power.py -> build/lib/ironic/tests/unit/drivers/modules/redfish copying ironic/tests/unit/drivers/modules/redfish/__init__.py -> build/lib/ironic/tests/unit/drivers/modules/redfish copying ironic/tests/unit/drivers/modules/redfish/test_bios.py -> build/lib/ironic/tests/unit/drivers/modules/redfish copying ironic/tests/unit/drivers/modules/redfish/test_management.py -> build/lib/ironic/tests/unit/drivers/modules/redfish creating build/lib/ironic/drivers/modules/ilo copying ironic/drivers/modules/ilo/boot.py -> build/lib/ironic/drivers/modules/ilo copying ironic/drivers/modules/ilo/raid.py -> build/lib/ironic/drivers/modules/ilo copying ironic/drivers/modules/ilo/management.py -> build/lib/ironic/drivers/modules/ilo copying ironic/drivers/modules/ilo/firmware_processor.py -> build/lib/ironic/drivers/modules/ilo copying ironic/drivers/modules/ilo/vendor.py -> build/lib/ironic/drivers/modules/ilo copying ironic/drivers/modules/ilo/__init__.py -> build/lib/ironic/drivers/modules/ilo copying ironic/drivers/modules/ilo/bios.py -> build/lib/ironic/drivers/modules/ilo copying ironic/drivers/modules/ilo/common.py -> build/lib/ironic/drivers/modules/ilo copying ironic/drivers/modules/ilo/console.py -> build/lib/ironic/drivers/modules/ilo copying ironic/drivers/modules/ilo/power.py -> build/lib/ironic/drivers/modules/ilo copying ironic/drivers/modules/ilo/inspect.py -> build/lib/ironic/drivers/modules/ilo creating build/lib/ironic/drivers/modules/redfish copying ironic/drivers/modules/redfish/utils.py -> build/lib/ironic/drivers/modules/redfish copying ironic/drivers/modules/redfish/management.py -> build/lib/ironic/drivers/modules/redfish copying ironic/drivers/modules/redfish/__init__.py -> build/lib/ironic/drivers/modules/redfish copying ironic/drivers/modules/redfish/bios.py -> build/lib/ironic/drivers/modules/redfish copying ironic/drivers/modules/redfish/power.py -> build/lib/ironic/drivers/modules/redfish copying ironic/drivers/modules/redfish/inspect.py -> build/lib/ironic/drivers/modules/redfish creating build/lib/ironic/cmd copying ironic/cmd/api.py -> build/lib/ironic/cmd copying ironic/cmd/status.py -> build/lib/ironic/cmd copying ironic/cmd/__init__.py -> build/lib/ironic/cmd copying ironic/cmd/conductor.py -> build/lib/ironic/cmd copying ironic/cmd/dbsync.py -> build/lib/ironic/cmd copying ironic/tests/unit/stubs.py -> build/lib/ironic/tests/unit copying ironic/tests/unit/raid_constants.py -> build/lib/ironic/tests/unit copying ironic/tests/unit/test_base.py -> build/lib/ironic/tests/unit copying ironic/tests/unit/__init__.py -> build/lib/ironic/tests/unit copying ironic/tests/unit/policy_fixture.py -> build/lib/ironic/tests/unit creating build/lib/ironic/conf copying ironic/conf/api.py -> build/lib/ironic/conf copying ironic/conf/agent.py -> build/lib/ironic/conf copying ironic/conf/database.py -> build/lib/ironic/conf copying ironic/conf/ilo.py -> build/lib/ironic/conf copying ironic/conf/opts.py -> build/lib/ironic/conf copying ironic/conf/service_catalog.py -> build/lib/ironic/conf copying ironic/conf/inspector.py -> build/lib/ironic/conf copying ironic/conf/audit.py -> build/lib/ironic/conf copying ironic/conf/json_rpc.py -> build/lib/ironic/conf copying ironic/conf/metrics.py -> build/lib/ironic/conf copying ironic/conf/dhcp.py -> build/lib/ironic/conf copying ironic/conf/irmc.py -> build/lib/ironic/conf copying ironic/conf/ibmc.py -> build/lib/ironic/conf copying ironic/conf/default.py -> build/lib/ironic/conf copying ironic/conf/deploy.py -> build/lib/ironic/conf copying ironic/conf/xclarity.py -> build/lib/ironic/conf copying ironic/conf/pxe.py -> build/lib/ironic/conf copying ironic/conf/cinder.py -> build/lib/ironic/conf copying ironic/conf/cisco.py -> build/lib/ironic/conf copying ironic/conf/snmp.py -> build/lib/ironic/conf copying ironic/conf/ansible.py -> build/lib/ironic/conf copying ironic/conf/__init__.py -> build/lib/ironic/conf copying ironic/conf/conductor.py -> build/lib/ironic/conf copying ironic/conf/iscsi.py -> build/lib/ironic/conf copying ironic/conf/auth.py -> build/lib/ironic/conf copying ironic/conf/metrics_statsd.py -> build/lib/ironic/conf copying ironic/conf/ipmi.py -> build/lib/ironic/conf copying ironic/conf/console.py -> build/lib/ironic/conf copying ironic/conf/glance.py -> build/lib/ironic/conf copying ironic/conf/neutron.py -> build/lib/ironic/conf copying ironic/conf/drac.py -> build/lib/ironic/conf copying ironic/conf/healthcheck.py -> build/lib/ironic/conf copying ironic/conf/redfish.py -> build/lib/ironic/conf copying ironic/conf/swift.py -> build/lib/ironic/conf creating build/lib/ironic/tests/unit/dhcp copying ironic/tests/unit/dhcp/test_factory.py -> build/lib/ironic/tests/unit/dhcp copying ironic/tests/unit/dhcp/__init__.py -> build/lib/ironic/tests/unit/dhcp copying ironic/tests/unit/dhcp/test_neutron.py -> build/lib/ironic/tests/unit/dhcp creating build/lib/ironic/conductor copying ironic/conductor/utils.py -> build/lib/ironic/conductor copying ironic/conductor/notification_utils.py -> build/lib/ironic/conductor copying ironic/conductor/__init__.py -> build/lib/ironic/conductor copying ironic/conductor/task_manager.py -> build/lib/ironic/conductor copying ironic/conductor/steps.py -> build/lib/ironic/conductor copying ironic/conductor/base_manager.py -> build/lib/ironic/conductor copying ironic/conductor/manager.py -> build/lib/ironic/conductor copying ironic/conductor/allocations.py -> build/lib/ironic/conductor copying ironic/conductor/rpcapi.py -> build/lib/ironic/conductor creating build/lib/ironic/tests/unit/drivers/modules/storage copying ironic/tests/unit/drivers/modules/storage/test_external.py -> build/lib/ironic/tests/unit/drivers/modules/storage copying ironic/tests/unit/drivers/modules/storage/__init__.py -> build/lib/ironic/tests/unit/drivers/modules/storage copying ironic/tests/unit/drivers/modules/storage/test_cinder.py -> build/lib/ironic/tests/unit/drivers/modules/storage creating build/lib/ironic/tests/unit/objects copying ironic/tests/unit/objects/utils.py -> build/lib/ironic/tests/unit/objects copying ironic/tests/unit/objects/test_fields.py -> build/lib/ironic/tests/unit/objects copying ironic/tests/unit/objects/test_port.py -> build/lib/ironic/tests/unit/objects copying ironic/tests/unit/objects/test_notification.py -> build/lib/ironic/tests/unit/objects copying ironic/tests/unit/objects/test_node.py -> build/lib/ironic/tests/unit/objects copying ironic/tests/unit/objects/test_deploy_template.py -> build/lib/ironic/tests/unit/objects copying ironic/tests/unit/objects/test_volume_target.py -> build/lib/ironic/tests/unit/objects copying ironic/tests/unit/objects/test_conductor.py -> build/lib/ironic/tests/unit/objects copying ironic/tests/unit/objects/__init__.py -> build/lib/ironic/tests/unit/objects copying ironic/tests/unit/objects/test_bios.py -> build/lib/ironic/tests/unit/objects copying ironic/tests/unit/objects/test_chassis.py -> build/lib/ironic/tests/unit/objects copying ironic/tests/unit/objects/test_volume_connector.py -> build/lib/ironic/tests/unit/objects copying ironic/tests/unit/objects/test_trait.py -> build/lib/ironic/tests/unit/objects copying ironic/tests/unit/objects/test_objects.py -> build/lib/ironic/tests/unit/objects copying ironic/tests/unit/objects/test_portgroup.py -> build/lib/ironic/tests/unit/objects copying ironic/tests/unit/objects/test_allocation.py -> build/lib/ironic/tests/unit/objects creating build/lib/ironic/drivers/modules/drac copying ironic/drivers/modules/drac/job.py -> build/lib/ironic/drivers/modules/drac copying ironic/drivers/modules/drac/raid.py -> build/lib/ironic/drivers/modules/drac copying ironic/drivers/modules/drac/management.py -> build/lib/ironic/drivers/modules/drac copying ironic/drivers/modules/drac/__init__.py -> build/lib/ironic/drivers/modules/drac copying ironic/drivers/modules/drac/bios.py -> build/lib/ironic/drivers/modules/drac copying ironic/drivers/modules/drac/common.py -> build/lib/ironic/drivers/modules/drac copying ironic/drivers/modules/drac/vendor_passthru.py -> build/lib/ironic/drivers/modules/drac copying ironic/drivers/modules/drac/power.py -> build/lib/ironic/drivers/modules/drac copying ironic/drivers/modules/drac/inspect.py -> build/lib/ironic/drivers/modules/drac creating build/lib/ironic/drivers/modules/storage copying ironic/drivers/modules/storage/external.py -> build/lib/ironic/drivers/modules/storage copying ironic/drivers/modules/storage/cinder.py -> build/lib/ironic/drivers/modules/storage copying ironic/drivers/modules/storage/__init__.py -> build/lib/ironic/drivers/modules/storage copying ironic/drivers/modules/storage/noop.py -> build/lib/ironic/drivers/modules/storage copying ironic/tests/__init__.py -> build/lib/ironic/tests copying ironic/tests/base.py -> build/lib/ironic/tests creating build/lib/ironic/common/json_rpc copying ironic/common/json_rpc/client.py -> build/lib/ironic/common/json_rpc copying ironic/common/json_rpc/server.py -> build/lib/ironic/common/json_rpc copying ironic/common/json_rpc/__init__.py -> build/lib/ironic/common/json_rpc creating build/lib/ironic/tests/unit/drivers/modules/xclarity copying ironic/tests/unit/drivers/modules/xclarity/test_power.py -> build/lib/ironic/tests/unit/drivers/modules/xclarity copying ironic/tests/unit/drivers/modules/xclarity/test_common.py -> build/lib/ironic/tests/unit/drivers/modules/xclarity copying ironic/tests/unit/drivers/modules/xclarity/__init__.py -> build/lib/ironic/tests/unit/drivers/modules/xclarity copying ironic/tests/unit/drivers/modules/xclarity/test_management.py -> build/lib/ironic/tests/unit/drivers/modules/xclarity creating build/lib/ironic/tests/unit/drivers/modules/network copying ironic/tests/unit/drivers/modules/network/test_noop.py -> build/lib/ironic/tests/unit/drivers/modules/network copying ironic/tests/unit/drivers/modules/network/test_flat.py -> build/lib/ironic/tests/unit/drivers/modules/network copying ironic/tests/unit/drivers/modules/network/test_common.py -> build/lib/ironic/tests/unit/drivers/modules/network copying ironic/tests/unit/drivers/modules/network/__init__.py -> build/lib/ironic/tests/unit/drivers/modules/network copying ironic/tests/unit/drivers/modules/network/test_neutron.py -> build/lib/ironic/tests/unit/drivers/modules/network running egg_info deleting ironic.egg-info/requires.txt writing ironic.egg-info/PKG-INFO writing top-level names to ironic.egg-info/top_level.txt writing dependency_links to ironic.egg-info/dependency_links.txt writing entry points to ironic.egg-info/entry_points.txt [pbr] Reusing existing SOURCES.txt copying ironic/tests/unit/drivers/boot.ipxe -> build/lib/ironic/tests/unit/drivers copying ironic/tests/unit/drivers/elilo_efi_pxe_config.template -> build/lib/ironic/tests/unit/drivers copying ironic/tests/unit/drivers/ipxe_config.template -> build/lib/ironic/tests/unit/drivers copying ironic/tests/unit/drivers/ipxe_config_boot_from_volume_extra_volume.template -> build/lib/ironic/tests/unit/drivers copying ironic/tests/unit/drivers/ipxe_config_boot_from_volume_no_extra_volumes.template -> build/lib/ironic/tests/unit/drivers copying ironic/tests/unit/drivers/ipxe_config_timeout.template -> build/lib/ironic/tests/unit/drivers copying ironic/tests/unit/drivers/pxe_config.template -> build/lib/ironic/tests/unit/drivers copying ironic/tests/unit/drivers/pxe_grub_config.template -> build/lib/ironic/tests/unit/drivers creating build/lib/ironic/releasenotes creating build/lib/ironic/releasenotes/notes copying ironic/releasenotes/notes/add-protection-for-available-nodes-25f163d69782ef63.yaml -> build/lib/ironic/releasenotes/notes creating build/lib/ironic/drivers/modules/ansible/playbooks copying ironic/drivers/modules/ansible/playbooks/add-ironic-nodes.yaml -> build/lib/ironic/drivers/modules/ansible/playbooks copying ironic/drivers/modules/ansible/playbooks/ansible.cfg -> build/lib/ironic/drivers/modules/ansible/playbooks copying ironic/drivers/modules/ansible/playbooks/clean.yaml -> build/lib/ironic/drivers/modules/ansible/playbooks copying ironic/drivers/modules/ansible/playbooks/clean_steps.yaml -> build/lib/ironic/drivers/modules/ansible/playbooks copying ironic/drivers/modules/ansible/playbooks/deploy.yaml -> build/lib/ironic/drivers/modules/ansible/playbooks copying ironic/drivers/modules/ansible/playbooks/inventory -> build/lib/ironic/drivers/modules/ansible/playbooks copying ironic/drivers/modules/ansible/playbooks/shutdown.yaml -> build/lib/ironic/drivers/modules/ansible/playbooks creating build/lib/ironic/drivers/modules/ansible/playbooks/callback_plugins copying ironic/drivers/modules/ansible/playbooks/callback_plugins/ironic_log.ini -> build/lib/ironic/drivers/modules/ansible/playbooks/callback_plugins copying ironic/drivers/modules/ansible/playbooks/callback_plugins/ironic_log.py -> build/lib/ironic/drivers/modules/ansible/playbooks/callback_plugins creating build/lib/ironic/drivers/modules/ansible/playbooks/library copying ironic/drivers/modules/ansible/playbooks/library/facts_wwn.py -> build/lib/ironic/drivers/modules/ansible/playbooks/library copying ironic/drivers/modules/ansible/playbooks/library/root_hints.py -> build/lib/ironic/drivers/modules/ansible/playbooks/library copying ironic/drivers/modules/ansible/playbooks/library/stream_url.py -> build/lib/ironic/drivers/modules/ansible/playbooks/library creating build/lib/ironic/drivers/modules/ansible/playbooks/roles creating build/lib/ironic/drivers/modules/ansible/playbooks/roles/clean creating build/lib/ironic/drivers/modules/ansible/playbooks/roles/clean/defaults copying ironic/drivers/modules/ansible/playbooks/roles/clean/defaults/main.yaml -> build/lib/ironic/drivers/modules/ansible/playbooks/roles/clean/defaults creating build/lib/ironic/drivers/modules/ansible/playbooks/roles/clean/tasks copying ironic/drivers/modules/ansible/playbooks/roles/clean/tasks/main.yaml -> build/lib/ironic/drivers/modules/ansible/playbooks/roles/clean/tasks copying ironic/drivers/modules/ansible/playbooks/roles/clean/tasks/shred.yaml -> build/lib/ironic/drivers/modules/ansible/playbooks/roles/clean/tasks copying ironic/drivers/modules/ansible/playbooks/roles/clean/tasks/wipe.yaml -> build/lib/ironic/drivers/modules/ansible/playbooks/roles/clean/tasks copying ironic/drivers/modules/ansible/playbooks/roles/clean/tasks/zap.yaml -> build/lib/ironic/drivers/modules/ansible/playbooks/roles/clean/tasks creating build/lib/ironic/drivers/modules/ansible/playbooks/roles/configure creating build/lib/ironic/drivers/modules/ansible/playbooks/roles/configure/defaults copying ironic/drivers/modules/ansible/playbooks/roles/configure/defaults/main.yaml -> build/lib/ironic/drivers/modules/ansible/playbooks/roles/configure/defaults creating build/lib/ironic/drivers/modules/ansible/playbooks/roles/configure/tasks copying ironic/drivers/modules/ansible/playbooks/roles/configure/tasks/grub.yaml -> build/lib/ironic/drivers/modules/ansible/playbooks/roles/configure/tasks copying ironic/drivers/modules/ansible/playbooks/roles/configure/tasks/main.yaml -> build/lib/ironic/drivers/modules/ansible/playbooks/roles/configure/tasks copying ironic/drivers/modules/ansible/playbooks/roles/configure/tasks/mounts.yaml -> build/lib/ironic/drivers/modules/ansible/playbooks/roles/configure/tasks creating build/lib/ironic/drivers/modules/ansible/playbooks/roles/deploy creating build/lib/ironic/drivers/modules/ansible/playbooks/roles/deploy/files copying ironic/drivers/modules/ansible/playbooks/roles/deploy/files/partition_configdrive.sh -> build/lib/ironic/drivers/modules/ansible/playbooks/roles/deploy/files creating build/lib/ironic/drivers/modules/ansible/playbooks/roles/deploy/tasks copying ironic/drivers/modules/ansible/playbooks/roles/deploy/tasks/configdrive.yaml -> build/lib/ironic/drivers/modules/ansible/playbooks/roles/deploy/tasks copying ironic/drivers/modules/ansible/playbooks/roles/deploy/tasks/download.yaml -> build/lib/ironic/drivers/modules/ansible/playbooks/roles/deploy/tasks copying ironic/drivers/modules/ansible/playbooks/roles/deploy/tasks/main.yaml -> build/lib/ironic/drivers/modules/ansible/playbooks/roles/deploy/tasks copying ironic/drivers/modules/ansible/playbooks/roles/deploy/tasks/write.yaml -> build/lib/ironic/drivers/modules/ansible/playbooks/roles/deploy/tasks creating build/lib/ironic/drivers/modules/ansible/playbooks/roles/discover creating build/lib/ironic/drivers/modules/ansible/playbooks/roles/discover/tasks copying ironic/drivers/modules/ansible/playbooks/roles/discover/tasks/main.yaml -> build/lib/ironic/drivers/modules/ansible/playbooks/roles/discover/tasks copying ironic/drivers/modules/ansible/playbooks/roles/discover/tasks/roothints.yaml -> build/lib/ironic/drivers/modules/ansible/playbooks/roles/discover/tasks creating build/lib/ironic/drivers/modules/ansible/playbooks/roles/prepare creating build/lib/ironic/drivers/modules/ansible/playbooks/roles/prepare/tasks copying ironic/drivers/modules/ansible/playbooks/roles/prepare/tasks/main.yaml -> build/lib/ironic/drivers/modules/ansible/playbooks/roles/prepare/tasks copying ironic/drivers/modules/ansible/playbooks/roles/prepare/tasks/parted.yaml -> build/lib/ironic/drivers/modules/ansible/playbooks/roles/prepare/tasks creating build/lib/ironic/drivers/modules/ansible/playbooks/roles/shutdown creating build/lib/ironic/drivers/modules/ansible/playbooks/roles/shutdown/tasks copying ironic/drivers/modules/ansible/playbooks/roles/shutdown/tasks/main.yaml -> build/lib/ironic/drivers/modules/ansible/playbooks/roles/shutdown/tasks copying ironic/drivers/raid_config_schema.json -> build/lib/ironic/drivers copying ironic/drivers/modules/agent_config.template -> build/lib/ironic/drivers/modules copying ironic/drivers/modules/boot.ipxe -> build/lib/ironic/drivers/modules copying ironic/drivers/modules/elilo_efi_pxe_config.template -> build/lib/ironic/drivers/modules copying ironic/drivers/modules/ipxe_config.template -> build/lib/ironic/drivers/modules copying ironic/drivers/modules/master_grub_cfg.txt -> build/lib/ironic/drivers/modules copying ironic/drivers/modules/pxe_config.template -> build/lib/ironic/drivers/modules copying ironic/drivers/modules/pxe_grub_config.template -> build/lib/ironic/drivers/modules copying ironic/common/grub_conf.template -> build/lib/ironic/common copying ironic/common/isolinux_config.template -> build/lib/ironic/common copying ironic/api/app.wsgi -> build/lib/ironic/api copying ironic/tests/unit/drivers/modules/irmc/fake_sensors_data_ng.xml -> build/lib/ironic/tests/unit/drivers/modules/irmc copying ironic/tests/unit/drivers/modules/irmc/fake_sensors_data_ok.xml -> build/lib/ironic/tests/unit/drivers/modules/irmc copying ironic/db/sqlalchemy/alembic.ini -> build/lib/ironic/db/sqlalchemy creating build/lib/ironic/db/sqlalchemy/alembic copying ironic/db/sqlalchemy/alembic/README -> build/lib/ironic/db/sqlalchemy/alembic copying ironic/db/sqlalchemy/alembic/env.py -> build/lib/ironic/db/sqlalchemy/alembic copying ironic/db/sqlalchemy/alembic/script.py.mako -> build/lib/ironic/db/sqlalchemy/alembic creating build/lib/ironic/db/sqlalchemy/alembic/versions copying ironic/db/sqlalchemy/alembic/versions/10b163d4481e_add_port_portgroup_internal_info.py -> build/lib/ironic/db/sqlalchemy/alembic/versions copying ironic/db/sqlalchemy/alembic/versions/1a59178ebdf6_add_volume_targets_table.py -> build/lib/ironic/db/sqlalchemy/alembic/versions copying ironic/db/sqlalchemy/alembic/versions/1d6951876d68_add_storage_interface_db_field_and_.py -> build/lib/ironic/db/sqlalchemy/alembic/versions copying ironic/db/sqlalchemy/alembic/versions/1e15e7122cc9_add_extra_column_to_deploy_templates.py -> build/lib/ironic/db/sqlalchemy/alembic/versions copying ironic/db/sqlalchemy/alembic/versions/1e1d5ace7dc6_add_inspection_started_at_and_.py -> build/lib/ironic/db/sqlalchemy/alembic/versions copying ironic/db/sqlalchemy/alembic/versions/21b331f883ef_add_provision_updated_at.py -> build/lib/ironic/db/sqlalchemy/alembic/versions copying ironic/db/sqlalchemy/alembic/versions/2353895ecfae_add_conductor_hardware_interfaces_table.py -> build/lib/ironic/db/sqlalchemy/alembic/versions copying ironic/db/sqlalchemy/alembic/versions/242cc6a923b3_add_node_maintenance_reason.py -> build/lib/ironic/db/sqlalchemy/alembic/versions copying ironic/db/sqlalchemy/alembic/versions/2581ebaf0cb2_initial_migration.py -> build/lib/ironic/db/sqlalchemy/alembic/versions copying ironic/db/sqlalchemy/alembic/versions/28c44432c9c3_add_node_description.py -> build/lib/ironic/db/sqlalchemy/alembic/versions copying ironic/db/sqlalchemy/alembic/versions/2aac7e0872f6_add_deploy_templates.py -> build/lib/ironic/db/sqlalchemy/alembic/versions copying ironic/db/sqlalchemy/alembic/versions/2d13bc3d6bba_add_bios_config_and_interface.py -> build/lib/ironic/db/sqlalchemy/alembic/versions copying ironic/db/sqlalchemy/alembic/versions/2fb93ffd2af1_increase_node_name_length.py -> build/lib/ironic/db/sqlalchemy/alembic/versions copying ironic/db/sqlalchemy/alembic/versions/31baaf680d2b_add_node_instance_info.py -> build/lib/ironic/db/sqlalchemy/alembic/versions copying ironic/db/sqlalchemy/alembic/versions/3ae36a5f5131_add_logical_name.py -> build/lib/ironic/db/sqlalchemy/alembic/versions copying ironic/db/sqlalchemy/alembic/versions/3bea56f25597_add_unique_constraint_to_instance_uuid.py -> build/lib/ironic/db/sqlalchemy/alembic/versions copying ironic/db/sqlalchemy/alembic/versions/3cb628139ea4_nodes_add_console_enabled.py -> build/lib/ironic/db/sqlalchemy/alembic/versions copying ironic/db/sqlalchemy/alembic/versions/3d86a077a3f2_add_port_physical_network.py -> build/lib/ironic/db/sqlalchemy/alembic/versions copying ironic/db/sqlalchemy/alembic/versions/405cfe08f18d_add_rescue_interface_to_node.py -> build/lib/ironic/db/sqlalchemy/alembic/versions copying ironic/db/sqlalchemy/alembic/versions/487deb87cc9d_add_conductor_affinity_and_online.py -> build/lib/ironic/db/sqlalchemy/alembic/versions copying ironic/db/sqlalchemy/alembic/versions/48d6c242bb9b_add_node_tags.py -> build/lib/ironic/db/sqlalchemy/alembic/versions copying ironic/db/sqlalchemy/alembic/versions/493d8f27f235_add_portgroup_configuration_fields.py -> build/lib/ironic/db/sqlalchemy/alembic/versions copying ironic/db/sqlalchemy/alembic/versions/4f399b21ae71_add_node_clean_step.py -> build/lib/ironic/db/sqlalchemy/alembic/versions copying ironic/db/sqlalchemy/alembic/versions/516faf1bb9b1_resizing_column_nodes_driver.py -> build/lib/ironic/db/sqlalchemy/alembic/versions copying ironic/db/sqlalchemy/alembic/versions/5674c57409b9_replace_nostate_with_available.py -> build/lib/ironic/db/sqlalchemy/alembic/versions copying ironic/db/sqlalchemy/alembic/versions/5ea1b0d310e_added_port_group_table_and_altered_ports.py -> build/lib/ironic/db/sqlalchemy/alembic/versions copying ironic/db/sqlalchemy/alembic/versions/60cf717201bc_add_standalone_ports_supported.py -> build/lib/ironic/db/sqlalchemy/alembic/versions copying ironic/db/sqlalchemy/alembic/versions/664f85c2f622_add_conductor_group_to_nodes_conductors.py -> build/lib/ironic/db/sqlalchemy/alembic/versions copying ironic/db/sqlalchemy/alembic/versions/789acc877671_add_raid_config.py -> build/lib/ironic/db/sqlalchemy/alembic/versions copying ironic/db/sqlalchemy/alembic/versions/82c315d60161_add_bios_settings.py -> build/lib/ironic/db/sqlalchemy/alembic/versions copying ironic/db/sqlalchemy/alembic/versions/868cb606a74a_add_version_field_in_base_class.py -> build/lib/ironic/db/sqlalchemy/alembic/versions copying ironic/db/sqlalchemy/alembic/versions/93706939026c_add_node_protected_field.py -> build/lib/ironic/db/sqlalchemy/alembic/versions copying ironic/db/sqlalchemy/alembic/versions/9cbeefa3763f_add_port_is_smartnic.py -> build/lib/ironic/db/sqlalchemy/alembic/versions copying ironic/db/sqlalchemy/alembic/versions/b4130a7fc904_create_nodetraits_table.py -> build/lib/ironic/db/sqlalchemy/alembic/versions copying ironic/db/sqlalchemy/alembic/versions/b9117ac17882_add_node_deploy_step.py -> build/lib/ironic/db/sqlalchemy/alembic/versions copying ironic/db/sqlalchemy/alembic/versions/bb59b63f55a_add_node_driver_internal_info.py -> build/lib/ironic/db/sqlalchemy/alembic/versions copying ironic/db/sqlalchemy/alembic/versions/bcdd431ba0bf_add_fields_for_all_interfaces.py -> build/lib/ironic/db/sqlalchemy/alembic/versions copying ironic/db/sqlalchemy/alembic/versions/c14cef6dfedf_populate_node_network_interface.py -> build/lib/ironic/db/sqlalchemy/alembic/versions copying ironic/db/sqlalchemy/alembic/versions/d2b036ae9378_add_automated_clean_field.py -> build/lib/ironic/db/sqlalchemy/alembic/versions copying ironic/db/sqlalchemy/alembic/versions/daa1ba02d98_add_volume_connectors_table.py -> build/lib/ironic/db/sqlalchemy/alembic/versions copying ironic/db/sqlalchemy/alembic/versions/dbefd6bdaa2c_add_default_column_to_.py -> build/lib/ironic/db/sqlalchemy/alembic/versions copying ironic/db/sqlalchemy/alembic/versions/dd34e1f1303b_add_resource_class_to_node.py -> build/lib/ironic/db/sqlalchemy/alembic/versions copying ironic/db/sqlalchemy/alembic/versions/dd67b91a1981_add_allocations_table.py -> build/lib/ironic/db/sqlalchemy/alembic/versions copying ironic/db/sqlalchemy/alembic/versions/e294876e8028_add_node_network_interface.py -> build/lib/ironic/db/sqlalchemy/alembic/versions copying ironic/db/sqlalchemy/alembic/versions/e918ff30eb42_resize_column_nodes_instance_info.py -> build/lib/ironic/db/sqlalchemy/alembic/versions copying ironic/db/sqlalchemy/alembic/versions/f190f9d00a11_add_node_owner.py -> build/lib/ironic/db/sqlalchemy/alembic/versions copying ironic/db/sqlalchemy/alembic/versions/f6fdb920c182_set_pxe_enabled_true.py -> build/lib/ironic/db/sqlalchemy/alembic/versions copying ironic/db/sqlalchemy/alembic/versions/fb3f10dd262e_add_fault_to_node_table.py -> build/lib/ironic/db/sqlalchemy/alembic/versions + sleep 1 + exit 0 Executing(%install): /bin/sh -e /var/tmp/rpm-tmp.QT3xBo + umask 022 + cd /builddir/build/BUILD + '[' /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch '!=' / ']' + rm -rf /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch ++ dirname /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch + mkdir -p /builddir/build/BUILDROOT + mkdir /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch + cd ironic-12.1.1 + CFLAGS='-O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -m64 -mtune=generic' + /usr/bin/python2 setup.py install -O1 --skip-build --root /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch running install [pbr] Generating AUTHORS [pbr] AUTHORS complete (0.0s) running install_lib creating /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr creating /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib creating /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7 creating /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages creating /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic copying build/lib/ironic/version.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic creating /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/common copying build/lib/ironic/common/utils.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/common copying build/lib/ironic/common/wsgi_service.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/common copying build/lib/ironic/common/keystone.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/common copying build/lib/ironic/common/images.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/common copying build/lib/ironic/common/release_mappings.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/common copying build/lib/ironic/common/driver_factory.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/common copying build/lib/ironic/common/raid.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/common creating /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/common/json_rpc copying build/lib/ironic/common/json_rpc/client.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/common/json_rpc copying build/lib/ironic/common/json_rpc/server.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/common/json_rpc copying build/lib/ironic/common/json_rpc/__init__.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/common/json_rpc copying build/lib/ironic/common/profiler.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/common copying build/lib/ironic/common/network.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/common copying build/lib/ironic/common/exception.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/common copying build/lib/ironic/common/hash_ring.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/common copying build/lib/ironic/common/fsm.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/common copying build/lib/ironic/common/isolinux_config.template -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/common copying build/lib/ironic/common/cinder.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/common copying build/lib/ironic/common/boot_devices.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/common copying build/lib/ironic/common/policy.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/common copying build/lib/ironic/common/context.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/common copying build/lib/ironic/common/__init__.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/common copying build/lib/ironic/common/rpc.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/common copying build/lib/ironic/common/boot_modes.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/common copying build/lib/ironic/common/grub_conf.template -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/common copying build/lib/ironic/common/config.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/common copying build/lib/ironic/common/i18n.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/common copying build/lib/ironic/common/image_service.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/common copying build/lib/ironic/common/service.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/common creating /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/common/glance_service copying build/lib/ironic/common/glance_service/service_utils.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/common/glance_service creating /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/common/glance_service/v2 copying build/lib/ironic/common/glance_service/v2/__init__.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/common/glance_service/v2 copying build/lib/ironic/common/glance_service/v2/image_service.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/common/glance_service/v2 copying build/lib/ironic/common/glance_service/__init__.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/common/glance_service copying build/lib/ironic/common/glance_service/base_image_service.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/common/glance_service copying build/lib/ironic/common/states.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/common copying build/lib/ironic/common/pxe_utils.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/common copying build/lib/ironic/common/dhcp_factory.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/common copying build/lib/ironic/common/faults.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/common copying build/lib/ironic/common/rpc_service.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/common copying build/lib/ironic/common/neutron.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/common copying build/lib/ironic/common/swift.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/common creating /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/api copying build/lib/ironic/api/expose.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/api copying build/lib/ironic/api/hooks.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/api copying build/lib/ironic/api/app.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/api copying build/lib/ironic/api/__init__.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/api copying build/lib/ironic/api/config.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/api copying build/lib/ironic/api/app.wsgi -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/api creating /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/api/controllers copying build/lib/ironic/api/controllers/version.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/api/controllers copying build/lib/ironic/api/controllers/link.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/api/controllers copying build/lib/ironic/api/controllers/root.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/api/controllers copying build/lib/ironic/api/controllers/__init__.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/api/controllers creating /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/api/controllers/v1 copying build/lib/ironic/api/controllers/v1/utils.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/api/controllers/v1 copying build/lib/ironic/api/controllers/v1/volume.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/api/controllers/v1 copying build/lib/ironic/api/controllers/v1/allocation.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/api/controllers/v1 copying build/lib/ironic/api/controllers/v1/event.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/api/controllers/v1 copying build/lib/ironic/api/controllers/v1/collection.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/api/controllers/v1 copying build/lib/ironic/api/controllers/v1/volume_target.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/api/controllers/v1 copying build/lib/ironic/api/controllers/v1/types.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/api/controllers/v1 copying build/lib/ironic/api/controllers/v1/ramdisk.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/api/controllers/v1 copying build/lib/ironic/api/controllers/v1/notification_utils.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/api/controllers/v1 copying build/lib/ironic/api/controllers/v1/volume_connector.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/api/controllers/v1 copying build/lib/ironic/api/controllers/v1/driver.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/api/controllers/v1 copying build/lib/ironic/api/controllers/v1/__init__.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/api/controllers/v1 copying build/lib/ironic/api/controllers/v1/conductor.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/api/controllers/v1 copying build/lib/ironic/api/controllers/v1/port.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/api/controllers/v1 copying build/lib/ironic/api/controllers/v1/versions.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/api/controllers/v1 copying build/lib/ironic/api/controllers/v1/portgroup.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/api/controllers/v1 copying build/lib/ironic/api/controllers/v1/node.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/api/controllers/v1 copying build/lib/ironic/api/controllers/v1/bios.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/api/controllers/v1 copying build/lib/ironic/api/controllers/v1/deploy_template.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/api/controllers/v1 copying build/lib/ironic/api/controllers/v1/state.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/api/controllers/v1 copying build/lib/ironic/api/controllers/v1/chassis.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/api/controllers/v1 copying build/lib/ironic/api/controllers/base.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/api/controllers copying build/lib/ironic/api/wsgi.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/api creating /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/api/middleware copying build/lib/ironic/api/middleware/auth_token.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/api/middleware copying build/lib/ironic/api/middleware/json_ext.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/api/middleware copying build/lib/ironic/api/middleware/__init__.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/api/middleware copying build/lib/ironic/api/middleware/parsable_error.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/api/middleware creating /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/releasenotes creating /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/releasenotes/notes copying build/lib/ironic/releasenotes/notes/add-protection-for-available-nodes-25f163d69782ef63.yaml -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/releasenotes/notes creating /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests creating /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit copying build/lib/ironic/tests/unit/stubs.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit creating /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/common copying build/lib/ironic/tests/unit/common/test_driver_factory.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/common copying build/lib/ironic/tests/unit/common/test_hash_ring.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/common copying build/lib/ironic/tests/unit/common/test_utils.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/common copying build/lib/ironic/tests/unit/common/test_context.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/common copying build/lib/ironic/tests/unit/common/test_rpc_service.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/common copying build/lib/ironic/tests/unit/common/test_release_mappings.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/common copying build/lib/ironic/tests/unit/common/test_raid.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/common copying build/lib/ironic/tests/unit/common/test_policy.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/common copying build/lib/ironic/tests/unit/common/test_swift.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/common copying build/lib/ironic/tests/unit/common/test_pxe_utils.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/common copying build/lib/ironic/tests/unit/common/test_rpc.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/common copying build/lib/ironic/tests/unit/common/__init__.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/common copying build/lib/ironic/tests/unit/common/test_image_service.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/common copying build/lib/ironic/tests/unit/common/test_neutron.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/common copying build/lib/ironic/tests/unit/common/test_glance_service.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/common copying build/lib/ironic/tests/unit/common/test_exception.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/common copying build/lib/ironic/tests/unit/common/test_network.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/common copying build/lib/ironic/tests/unit/common/test_images.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/common copying build/lib/ironic/tests/unit/common/test_cinder.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/common copying build/lib/ironic/tests/unit/common/test_keystone.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/common copying build/lib/ironic/tests/unit/common/test_fsm.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/common copying build/lib/ironic/tests/unit/common/test_states.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/common copying build/lib/ironic/tests/unit/common/test_json_rpc.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/common copying build/lib/ironic/tests/unit/common/test_wsgi_service.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/common copying build/lib/ironic/tests/unit/raid_constants.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit creating /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/api copying build/lib/ironic/tests/unit/api/utils.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/api copying build/lib/ironic/tests/unit/api/test_root.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/api copying build/lib/ironic/tests/unit/api/test_acl.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/api copying build/lib/ironic/tests/unit/api/test_healthcheck.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/api copying build/lib/ironic/tests/unit/api/__init__.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/api copying build/lib/ironic/tests/unit/api/test_ospmiddleware.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/api copying build/lib/ironic/tests/unit/api/test_hooks.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/api copying build/lib/ironic/tests/unit/api/test_middleware.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/api creating /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/api/controllers copying build/lib/ironic/tests/unit/api/controllers/test_base.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/api/controllers copying build/lib/ironic/tests/unit/api/controllers/__init__.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/api/controllers creating /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/api/controllers/v1 copying build/lib/ironic/tests/unit/api/controllers/v1/test_ramdisk.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/api/controllers/v1 copying build/lib/ironic/tests/unit/api/controllers/v1/test_utils.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/api/controllers/v1 copying build/lib/ironic/tests/unit/api/controllers/v1/test_port.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/api/controllers/v1 copying build/lib/ironic/tests/unit/api/controllers/v1/test_root.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/api/controllers/v1 copying build/lib/ironic/tests/unit/api/controllers/v1/test_node.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/api/controllers/v1 copying build/lib/ironic/tests/unit/api/controllers/v1/test_notification_utils.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/api/controllers/v1 copying build/lib/ironic/tests/unit/api/controllers/v1/test_expose.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/api/controllers/v1 copying build/lib/ironic/tests/unit/api/controllers/v1/test_deploy_template.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/api/controllers/v1 copying build/lib/ironic/tests/unit/api/controllers/v1/test_event.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/api/controllers/v1 copying build/lib/ironic/tests/unit/api/controllers/v1/test_volume_target.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/api/controllers/v1 copying build/lib/ironic/tests/unit/api/controllers/v1/test_driver.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/api/controllers/v1 copying build/lib/ironic/tests/unit/api/controllers/v1/test_conductor.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/api/controllers/v1 copying build/lib/ironic/tests/unit/api/controllers/v1/test_versions.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/api/controllers/v1 copying build/lib/ironic/tests/unit/api/controllers/v1/test_types.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/api/controllers/v1 copying build/lib/ironic/tests/unit/api/controllers/v1/__init__.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/api/controllers/v1 copying build/lib/ironic/tests/unit/api/controllers/v1/test_chassis.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/api/controllers/v1 copying build/lib/ironic/tests/unit/api/controllers/v1/test_volume_connector.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/api/controllers/v1 copying build/lib/ironic/tests/unit/api/controllers/v1/test_portgroup.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/api/controllers/v1 copying build/lib/ironic/tests/unit/api/controllers/v1/test_allocation.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/api/controllers/v1 copying build/lib/ironic/tests/unit/api/controllers/v1/test_volume.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/api/controllers/v1 copying build/lib/ironic/tests/unit/api/test_audit.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/api copying build/lib/ironic/tests/unit/api/base.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/api creating /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/db copying build/lib/ironic/tests/unit/db/utils.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/db copying build/lib/ironic/tests/unit/db/test_volume_connectors.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/db copying build/lib/ironic/tests/unit/db/test_ports.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/db copying build/lib/ironic/tests/unit/db/test_node_traits.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/db copying build/lib/ironic/tests/unit/db/test_volume_targets.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/db copying build/lib/ironic/tests/unit/db/test_conductor.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/db copying build/lib/ironic/tests/unit/db/__init__.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/db copying build/lib/ironic/tests/unit/db/test_chassis.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/db copying build/lib/ironic/tests/unit/db/test_portgroups.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/db copying build/lib/ironic/tests/unit/db/test_deploy_templates.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/db copying build/lib/ironic/tests/unit/db/test_allocations.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/db copying build/lib/ironic/tests/unit/db/test_api.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/db copying build/lib/ironic/tests/unit/db/test_nodes.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/db copying build/lib/ironic/tests/unit/db/test_bios_settings.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/db copying build/lib/ironic/tests/unit/db/test_node_tags.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/db creating /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/db/sqlalchemy copying build/lib/ironic/tests/unit/db/sqlalchemy/test_types.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/db/sqlalchemy copying build/lib/ironic/tests/unit/db/sqlalchemy/test_models.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/db/sqlalchemy copying build/lib/ironic/tests/unit/db/sqlalchemy/__init__.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/db/sqlalchemy copying build/lib/ironic/tests/unit/db/sqlalchemy/test_migrations.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/db/sqlalchemy copying build/lib/ironic/tests/unit/db/sqlalchemy/test_api.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/db/sqlalchemy copying build/lib/ironic/tests/unit/db/base.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/db creating /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/conf copying build/lib/ironic/tests/unit/conf/test_auth.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/conf copying build/lib/ironic/tests/unit/conf/__init__.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/conf copying build/lib/ironic/tests/unit/test_base.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit copying build/lib/ironic/tests/unit/__init__.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit creating /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/dhcp copying build/lib/ironic/tests/unit/dhcp/test_factory.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/dhcp copying build/lib/ironic/tests/unit/dhcp/__init__.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/dhcp copying build/lib/ironic/tests/unit/dhcp/test_neutron.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/dhcp creating /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/objects copying build/lib/ironic/tests/unit/objects/utils.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/objects copying build/lib/ironic/tests/unit/objects/test_fields.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/objects copying build/lib/ironic/tests/unit/objects/test_port.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/objects copying build/lib/ironic/tests/unit/objects/test_notification.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/objects copying build/lib/ironic/tests/unit/objects/test_node.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/objects copying build/lib/ironic/tests/unit/objects/test_deploy_template.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/objects copying build/lib/ironic/tests/unit/objects/test_volume_target.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/objects copying build/lib/ironic/tests/unit/objects/test_conductor.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/objects copying build/lib/ironic/tests/unit/objects/__init__.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/objects copying build/lib/ironic/tests/unit/objects/test_bios.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/objects copying build/lib/ironic/tests/unit/objects/test_chassis.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/objects copying build/lib/ironic/tests/unit/objects/test_volume_connector.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/objects copying build/lib/ironic/tests/unit/objects/test_trait.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/objects copying build/lib/ironic/tests/unit/objects/test_objects.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/objects copying build/lib/ironic/tests/unit/objects/test_portgroup.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/objects copying build/lib/ironic/tests/unit/objects/test_allocation.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/objects creating /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/conductor copying build/lib/ironic/tests/unit/conductor/test_utils.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/conductor copying build/lib/ironic/tests/unit/conductor/test_rpcapi.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/conductor copying build/lib/ironic/tests/unit/conductor/test_notification_utils.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/conductor copying build/lib/ironic/tests/unit/conductor/test_task_manager.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/conductor copying build/lib/ironic/tests/unit/conductor/test_manager.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/conductor copying build/lib/ironic/tests/unit/conductor/__init__.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/conductor copying build/lib/ironic/tests/unit/conductor/test_allocations.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/conductor copying build/lib/ironic/tests/unit/conductor/test_steps.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/conductor copying build/lib/ironic/tests/unit/conductor/mgr_utils.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/conductor copying build/lib/ironic/tests/unit/conductor/test_base_manager.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/conductor creating /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/cmd copying build/lib/ironic/tests/unit/cmd/test_conductor.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/cmd copying build/lib/ironic/tests/unit/cmd/__init__.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/cmd copying build/lib/ironic/tests/unit/cmd/test_status.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/cmd copying build/lib/ironic/tests/unit/cmd/test_dbsync.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/cmd creating /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers copying build/lib/ironic/tests/unit/drivers/third_party_driver_mock_specs.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers copying build/lib/ironic/tests/unit/drivers/test_generic.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers copying build/lib/ironic/tests/unit/drivers/ipxe_config_boot_from_volume_no_extra_volumes.template -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers copying build/lib/ironic/tests/unit/drivers/elilo_efi_pxe_config.template -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers copying build/lib/ironic/tests/unit/drivers/test_utils.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers copying build/lib/ironic/tests/unit/drivers/pxe_grub_config.template -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers copying build/lib/ironic/tests/unit/drivers/test_ilo.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers copying build/lib/ironic/tests/unit/drivers/test_snmp.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers copying build/lib/ironic/tests/unit/drivers/test_cisco.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers copying build/lib/ironic/tests/unit/drivers/test_fake_hardware.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers copying build/lib/ironic/tests/unit/drivers/test_base.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers copying build/lib/ironic/tests/unit/drivers/ipxe_config_boot_from_volume_extra_volume.template -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers copying build/lib/ironic/tests/unit/drivers/ipxe_config.template -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers copying build/lib/ironic/tests/unit/drivers/pxe_config.template -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers copying build/lib/ironic/tests/unit/drivers/test_ibmc.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers copying build/lib/ironic/tests/unit/drivers/__init__.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers copying build/lib/ironic/tests/unit/drivers/test_irmc.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers copying build/lib/ironic/tests/unit/drivers/test_drac.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers copying build/lib/ironic/tests/unit/drivers/boot.ipxe -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers copying build/lib/ironic/tests/unit/drivers/third_party_driver_mocks.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers copying build/lib/ironic/tests/unit/drivers/test_ipmi.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers copying build/lib/ironic/tests/unit/drivers/test_xclarity.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers copying build/lib/ironic/tests/unit/drivers/test_redfish.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers copying build/lib/ironic/tests/unit/drivers/ipxe_config_timeout.template -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers creating /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules copying build/lib/ironic/tests/unit/drivers/modules/test_boot_mode_utils.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules creating /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules/xclarity copying build/lib/ironic/tests/unit/drivers/modules/xclarity/test_power.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules/xclarity copying build/lib/ironic/tests/unit/drivers/modules/xclarity/test_common.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules/xclarity copying build/lib/ironic/tests/unit/drivers/modules/xclarity/__init__.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules/xclarity copying build/lib/ironic/tests/unit/drivers/modules/xclarity/test_management.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules/xclarity creating /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules/ibmc copying build/lib/ironic/tests/unit/drivers/modules/ibmc/test_utils.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules/ibmc copying build/lib/ironic/tests/unit/drivers/modules/ibmc/test_power.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules/ibmc copying build/lib/ironic/tests/unit/drivers/modules/ibmc/__init__.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules/ibmc copying build/lib/ironic/tests/unit/drivers/modules/ibmc/test_management.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules/ibmc copying build/lib/ironic/tests/unit/drivers/modules/ibmc/test_vendor.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules/ibmc copying build/lib/ironic/tests/unit/drivers/modules/ibmc/base.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules/ibmc copying build/lib/ironic/tests/unit/drivers/modules/test_noop.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules creating /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules/cimc copying build/lib/ironic/tests/unit/drivers/modules/cimc/test_power.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules/cimc copying build/lib/ironic/tests/unit/drivers/modules/cimc/test_common.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules/cimc copying build/lib/ironic/tests/unit/drivers/modules/cimc/__init__.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules/cimc copying build/lib/ironic/tests/unit/drivers/modules/cimc/test_management.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules/cimc copying build/lib/ironic/tests/unit/drivers/modules/test_console_utils.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules copying build/lib/ironic/tests/unit/drivers/modules/test_inspect_utils.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules copying build/lib/ironic/tests/unit/drivers/modules/test_deploy_utils.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules copying build/lib/ironic/tests/unit/drivers/modules/test_snmp.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules creating /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules/storage copying build/lib/ironic/tests/unit/drivers/modules/storage/test_external.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules/storage copying build/lib/ironic/tests/unit/drivers/modules/storage/__init__.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules/storage copying build/lib/ironic/tests/unit/drivers/modules/storage/test_cinder.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules/storage copying build/lib/ironic/tests/unit/drivers/modules/test_image_cache.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules copying build/lib/ironic/tests/unit/drivers/modules/test_ipxe.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules creating /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules/irmc copying build/lib/ironic/tests/unit/drivers/modules/irmc/test_inspect.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules/irmc copying build/lib/ironic/tests/unit/drivers/modules/irmc/test_raid.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules/irmc copying build/lib/ironic/tests/unit/drivers/modules/irmc/test_power.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules/irmc copying build/lib/ironic/tests/unit/drivers/modules/irmc/test_periodic_task.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules/irmc copying build/lib/ironic/tests/unit/drivers/modules/irmc/fake_sensors_data_ok.xml -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules/irmc copying build/lib/ironic/tests/unit/drivers/modules/irmc/test_boot.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules/irmc copying build/lib/ironic/tests/unit/drivers/modules/irmc/test_common.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules/irmc copying build/lib/ironic/tests/unit/drivers/modules/irmc/__init__.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules/irmc copying build/lib/ironic/tests/unit/drivers/modules/irmc/test_bios.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules/irmc copying build/lib/ironic/tests/unit/drivers/modules/irmc/test_management.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules/irmc copying build/lib/ironic/tests/unit/drivers/modules/irmc/fake_sensors_data_ng.xml -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules/irmc creating /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules/ansible copying build/lib/ironic/tests/unit/drivers/modules/ansible/test_deploy.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules/ansible copying build/lib/ironic/tests/unit/drivers/modules/ansible/__init__.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules/ansible copying build/lib/ironic/tests/unit/drivers/modules/__init__.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules copying build/lib/ironic/tests/unit/drivers/modules/test_inspector.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules copying build/lib/ironic/tests/unit/drivers/modules/test_agent_base_vendor.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules copying build/lib/ironic/tests/unit/drivers/modules/test_pxe.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules creating /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules/redfish copying build/lib/ironic/tests/unit/drivers/modules/redfish/test_inspect.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules/redfish copying build/lib/ironic/tests/unit/drivers/modules/redfish/test_utils.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules/redfish copying build/lib/ironic/tests/unit/drivers/modules/redfish/test_power.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules/redfish copying build/lib/ironic/tests/unit/drivers/modules/redfish/__init__.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules/redfish copying build/lib/ironic/tests/unit/drivers/modules/redfish/test_bios.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules/redfish copying build/lib/ironic/tests/unit/drivers/modules/redfish/test_management.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules/redfish copying build/lib/ironic/tests/unit/drivers/modules/test_noop_mgmt.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules creating /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules/drac copying build/lib/ironic/tests/unit/drivers/modules/drac/test_inspect.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules/drac copying build/lib/ironic/tests/unit/drivers/modules/drac/utils.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules/drac copying build/lib/ironic/tests/unit/drivers/modules/drac/test_raid.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules/drac copying build/lib/ironic/tests/unit/drivers/modules/drac/test_power.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules/drac copying build/lib/ironic/tests/unit/drivers/modules/drac/test_periodic_task.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules/drac copying build/lib/ironic/tests/unit/drivers/modules/drac/test_common.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules/drac copying build/lib/ironic/tests/unit/drivers/modules/drac/__init__.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules/drac copying build/lib/ironic/tests/unit/drivers/modules/drac/test_bios.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules/drac copying build/lib/ironic/tests/unit/drivers/modules/drac/test_management.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules/drac copying build/lib/ironic/tests/unit/drivers/modules/drac/test_job.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules/drac copying build/lib/ironic/tests/unit/drivers/modules/test_agent.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules copying build/lib/ironic/tests/unit/drivers/modules/test_agent_client.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules creating /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules/ucs copying build/lib/ironic/tests/unit/drivers/modules/ucs/test_power.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules/ucs copying build/lib/ironic/tests/unit/drivers/modules/ucs/test_helper.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules/ucs copying build/lib/ironic/tests/unit/drivers/modules/ucs/__init__.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules/ucs copying build/lib/ironic/tests/unit/drivers/modules/ucs/test_management.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules/ucs creating /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules/ilo copying build/lib/ironic/tests/unit/drivers/modules/ilo/test_inspect.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules/ilo copying build/lib/ironic/tests/unit/drivers/modules/ilo/test_raid.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules/ilo copying build/lib/ironic/tests/unit/drivers/modules/ilo/test_power.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules/ilo copying build/lib/ironic/tests/unit/drivers/modules/ilo/test_boot.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules/ilo copying build/lib/ironic/tests/unit/drivers/modules/ilo/test_firmware_processor.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules/ilo copying build/lib/ironic/tests/unit/drivers/modules/ilo/test_common.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules/ilo copying build/lib/ironic/tests/unit/drivers/modules/ilo/__init__.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules/ilo copying build/lib/ironic/tests/unit/drivers/modules/ilo/test_bios.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules/ilo copying build/lib/ironic/tests/unit/drivers/modules/ilo/test_management.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules/ilo copying build/lib/ironic/tests/unit/drivers/modules/ilo/test_console.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules/ilo copying build/lib/ironic/tests/unit/drivers/modules/ilo/test_vendor.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules/ilo creating /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules/network copying build/lib/ironic/tests/unit/drivers/modules/network/test_noop.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules/network copying build/lib/ironic/tests/unit/drivers/modules/network/test_flat.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules/network copying build/lib/ironic/tests/unit/drivers/modules/network/test_common.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules/network copying build/lib/ironic/tests/unit/drivers/modules/network/__init__.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules/network copying build/lib/ironic/tests/unit/drivers/modules/network/test_neutron.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules/network copying build/lib/ironic/tests/unit/drivers/modules/test_iscsi_deploy.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules copying build/lib/ironic/tests/unit/drivers/modules/test_ipmitool.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules copying build/lib/ironic/tests/unit/policy_fixture.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit creating /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/functional copying build/lib/ironic/tests/functional/__init__.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/functional copying build/lib/ironic/tests/__init__.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests copying build/lib/ironic/tests/base.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests creating /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/db copying build/lib/ironic/db/api.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/db copying build/lib/ironic/db/migration.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/db copying build/lib/ironic/db/__init__.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/db creating /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/db/sqlalchemy copying build/lib/ironic/db/sqlalchemy/api.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/db/sqlalchemy creating /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/db/sqlalchemy/alembic creating /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/db/sqlalchemy/alembic/versions copying build/lib/ironic/db/sqlalchemy/alembic/versions/789acc877671_add_raid_config.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/db/sqlalchemy/alembic/versions copying build/lib/ironic/db/sqlalchemy/alembic/versions/bcdd431ba0bf_add_fields_for_all_interfaces.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/db/sqlalchemy/alembic/versions copying build/lib/ironic/db/sqlalchemy/alembic/versions/5674c57409b9_replace_nostate_with_available.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/db/sqlalchemy/alembic/versions copying build/lib/ironic/db/sqlalchemy/alembic/versions/21b331f883ef_add_provision_updated_at.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/db/sqlalchemy/alembic/versions copying build/lib/ironic/db/sqlalchemy/alembic/versions/60cf717201bc_add_standalone_ports_supported.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/db/sqlalchemy/alembic/versions copying build/lib/ironic/db/sqlalchemy/alembic/versions/1e15e7122cc9_add_extra_column_to_deploy_templates.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/db/sqlalchemy/alembic/versions copying build/lib/ironic/db/sqlalchemy/alembic/versions/3ae36a5f5131_add_logical_name.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/db/sqlalchemy/alembic/versions copying build/lib/ironic/db/sqlalchemy/alembic/versions/82c315d60161_add_bios_settings.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/db/sqlalchemy/alembic/versions copying build/lib/ironic/db/sqlalchemy/alembic/versions/2353895ecfae_add_conductor_hardware_interfaces_table.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/db/sqlalchemy/alembic/versions copying build/lib/ironic/db/sqlalchemy/alembic/versions/868cb606a74a_add_version_field_in_base_class.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/db/sqlalchemy/alembic/versions copying build/lib/ironic/db/sqlalchemy/alembic/versions/516faf1bb9b1_resizing_column_nodes_driver.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/db/sqlalchemy/alembic/versions copying build/lib/ironic/db/sqlalchemy/alembic/versions/b4130a7fc904_create_nodetraits_table.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/db/sqlalchemy/alembic/versions copying build/lib/ironic/db/sqlalchemy/alembic/versions/4f399b21ae71_add_node_clean_step.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/db/sqlalchemy/alembic/versions copying build/lib/ironic/db/sqlalchemy/alembic/versions/f6fdb920c182_set_pxe_enabled_true.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/db/sqlalchemy/alembic/versions copying build/lib/ironic/db/sqlalchemy/alembic/versions/9cbeefa3763f_add_port_is_smartnic.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/db/sqlalchemy/alembic/versions copying build/lib/ironic/db/sqlalchemy/alembic/versions/e294876e8028_add_node_network_interface.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/db/sqlalchemy/alembic/versions copying build/lib/ironic/db/sqlalchemy/alembic/versions/fb3f10dd262e_add_fault_to_node_table.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/db/sqlalchemy/alembic/versions copying build/lib/ironic/db/sqlalchemy/alembic/versions/c14cef6dfedf_populate_node_network_interface.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/db/sqlalchemy/alembic/versions copying build/lib/ironic/db/sqlalchemy/alembic/versions/28c44432c9c3_add_node_description.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/db/sqlalchemy/alembic/versions copying build/lib/ironic/db/sqlalchemy/alembic/versions/664f85c2f622_add_conductor_group_to_nodes_conductors.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/db/sqlalchemy/alembic/versions copying build/lib/ironic/db/sqlalchemy/alembic/versions/10b163d4481e_add_port_portgroup_internal_info.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/db/sqlalchemy/alembic/versions copying build/lib/ironic/db/sqlalchemy/alembic/versions/d2b036ae9378_add_automated_clean_field.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/db/sqlalchemy/alembic/versions copying build/lib/ironic/db/sqlalchemy/alembic/versions/b9117ac17882_add_node_deploy_step.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/db/sqlalchemy/alembic/versions copying build/lib/ironic/db/sqlalchemy/alembic/versions/1e1d5ace7dc6_add_inspection_started_at_and_.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/db/sqlalchemy/alembic/versions copying build/lib/ironic/db/sqlalchemy/alembic/versions/dd34e1f1303b_add_resource_class_to_node.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/db/sqlalchemy/alembic/versions copying build/lib/ironic/db/sqlalchemy/alembic/versions/1a59178ebdf6_add_volume_targets_table.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/db/sqlalchemy/alembic/versions copying build/lib/ironic/db/sqlalchemy/alembic/versions/493d8f27f235_add_portgroup_configuration_fields.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/db/sqlalchemy/alembic/versions copying build/lib/ironic/db/sqlalchemy/alembic/versions/3bea56f25597_add_unique_constraint_to_instance_uuid.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/db/sqlalchemy/alembic/versions copying build/lib/ironic/db/sqlalchemy/alembic/versions/405cfe08f18d_add_rescue_interface_to_node.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/db/sqlalchemy/alembic/versions copying build/lib/ironic/db/sqlalchemy/alembic/versions/242cc6a923b3_add_node_maintenance_reason.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/db/sqlalchemy/alembic/versions copying build/lib/ironic/db/sqlalchemy/alembic/versions/f190f9d00a11_add_node_owner.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/db/sqlalchemy/alembic/versions copying build/lib/ironic/db/sqlalchemy/alembic/versions/2fb93ffd2af1_increase_node_name_length.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/db/sqlalchemy/alembic/versions copying build/lib/ironic/db/sqlalchemy/alembic/versions/daa1ba02d98_add_volume_connectors_table.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/db/sqlalchemy/alembic/versions copying build/lib/ironic/db/sqlalchemy/alembic/versions/3d86a077a3f2_add_port_physical_network.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/db/sqlalchemy/alembic/versions copying build/lib/ironic/db/sqlalchemy/alembic/versions/5ea1b0d310e_added_port_group_table_and_altered_ports.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/db/sqlalchemy/alembic/versions copying build/lib/ironic/db/sqlalchemy/alembic/versions/2581ebaf0cb2_initial_migration.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/db/sqlalchemy/alembic/versions copying build/lib/ironic/db/sqlalchemy/alembic/versions/1d6951876d68_add_storage_interface_db_field_and_.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/db/sqlalchemy/alembic/versions copying build/lib/ironic/db/sqlalchemy/alembic/versions/93706939026c_add_node_protected_field.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/db/sqlalchemy/alembic/versions copying build/lib/ironic/db/sqlalchemy/alembic/versions/dd67b91a1981_add_allocations_table.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/db/sqlalchemy/alembic/versions copying build/lib/ironic/db/sqlalchemy/alembic/versions/bb59b63f55a_add_node_driver_internal_info.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/db/sqlalchemy/alembic/versions copying build/lib/ironic/db/sqlalchemy/alembic/versions/2aac7e0872f6_add_deploy_templates.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/db/sqlalchemy/alembic/versions copying build/lib/ironic/db/sqlalchemy/alembic/versions/48d6c242bb9b_add_node_tags.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/db/sqlalchemy/alembic/versions copying build/lib/ironic/db/sqlalchemy/alembic/versions/e918ff30eb42_resize_column_nodes_instance_info.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/db/sqlalchemy/alembic/versions copying build/lib/ironic/db/sqlalchemy/alembic/versions/dbefd6bdaa2c_add_default_column_to_.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/db/sqlalchemy/alembic/versions copying build/lib/ironic/db/sqlalchemy/alembic/versions/487deb87cc9d_add_conductor_affinity_and_online.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/db/sqlalchemy/alembic/versions copying build/lib/ironic/db/sqlalchemy/alembic/versions/3cb628139ea4_nodes_add_console_enabled.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/db/sqlalchemy/alembic/versions copying build/lib/ironic/db/sqlalchemy/alembic/versions/2d13bc3d6bba_add_bios_config_and_interface.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/db/sqlalchemy/alembic/versions copying build/lib/ironic/db/sqlalchemy/alembic/versions/31baaf680d2b_add_node_instance_info.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/db/sqlalchemy/alembic/versions copying build/lib/ironic/db/sqlalchemy/alembic/README -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/db/sqlalchemy/alembic copying build/lib/ironic/db/sqlalchemy/alembic/script.py.mako -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/db/sqlalchemy/alembic copying build/lib/ironic/db/sqlalchemy/alembic/env.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/db/sqlalchemy/alembic copying build/lib/ironic/db/sqlalchemy/alembic.ini -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/db/sqlalchemy copying build/lib/ironic/db/sqlalchemy/migration.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/db/sqlalchemy copying build/lib/ironic/db/sqlalchemy/__init__.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/db/sqlalchemy copying build/lib/ironic/db/sqlalchemy/models.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/db/sqlalchemy creating /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/hacking copying build/lib/ironic/hacking/__init__.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/hacking copying build/lib/ironic/hacking/checks.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/hacking creating /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/conf copying build/lib/ironic/conf/api.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/conf copying build/lib/ironic/conf/agent.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/conf copying build/lib/ironic/conf/database.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/conf copying build/lib/ironic/conf/ilo.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/conf copying build/lib/ironic/conf/opts.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/conf copying build/lib/ironic/conf/service_catalog.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/conf copying build/lib/ironic/conf/inspector.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/conf copying build/lib/ironic/conf/audit.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/conf copying build/lib/ironic/conf/json_rpc.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/conf copying build/lib/ironic/conf/metrics.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/conf copying build/lib/ironic/conf/dhcp.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/conf copying build/lib/ironic/conf/irmc.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/conf copying build/lib/ironic/conf/ibmc.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/conf copying build/lib/ironic/conf/default.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/conf copying build/lib/ironic/conf/deploy.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/conf copying build/lib/ironic/conf/xclarity.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/conf copying build/lib/ironic/conf/pxe.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/conf copying build/lib/ironic/conf/cinder.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/conf copying build/lib/ironic/conf/cisco.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/conf copying build/lib/ironic/conf/snmp.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/conf copying build/lib/ironic/conf/ansible.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/conf copying build/lib/ironic/conf/__init__.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/conf copying build/lib/ironic/conf/conductor.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/conf copying build/lib/ironic/conf/iscsi.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/conf copying build/lib/ironic/conf/auth.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/conf copying build/lib/ironic/conf/metrics_statsd.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/conf copying build/lib/ironic/conf/ipmi.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/conf copying build/lib/ironic/conf/console.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/conf copying build/lib/ironic/conf/glance.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/conf copying build/lib/ironic/conf/neutron.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/conf copying build/lib/ironic/conf/drac.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/conf copying build/lib/ironic/conf/healthcheck.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/conf copying build/lib/ironic/conf/redfish.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/conf copying build/lib/ironic/conf/swift.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/conf copying build/lib/ironic/__init__.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic creating /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/dhcp copying build/lib/ironic/dhcp/__init__.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/dhcp copying build/lib/ironic/dhcp/none.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/dhcp copying build/lib/ironic/dhcp/neutron.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/dhcp copying build/lib/ironic/dhcp/base.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/dhcp creating /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/objects copying build/lib/ironic/objects/allocation.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/objects copying build/lib/ironic/objects/volume_target.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/objects copying build/lib/ironic/objects/fields.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/objects copying build/lib/ironic/objects/volume_connector.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/objects copying build/lib/ironic/objects/trait.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/objects copying build/lib/ironic/objects/__init__.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/objects copying build/lib/ironic/objects/notification.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/objects copying build/lib/ironic/objects/conductor.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/objects copying build/lib/ironic/objects/port.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/objects copying build/lib/ironic/objects/portgroup.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/objects copying build/lib/ironic/objects/node.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/objects copying build/lib/ironic/objects/bios.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/objects copying build/lib/ironic/objects/deploy_template.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/objects copying build/lib/ironic/objects/indirection.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/objects copying build/lib/ironic/objects/chassis.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/objects copying build/lib/ironic/objects/base.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/objects creating /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/conductor copying build/lib/ironic/conductor/utils.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/conductor copying build/lib/ironic/conductor/notification_utils.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/conductor copying build/lib/ironic/conductor/__init__.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/conductor copying build/lib/ironic/conductor/task_manager.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/conductor copying build/lib/ironic/conductor/steps.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/conductor copying build/lib/ironic/conductor/base_manager.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/conductor copying build/lib/ironic/conductor/manager.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/conductor copying build/lib/ironic/conductor/allocations.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/conductor copying build/lib/ironic/conductor/rpcapi.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/conductor creating /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/cmd copying build/lib/ironic/cmd/api.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/cmd copying build/lib/ironic/cmd/status.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/cmd copying build/lib/ironic/cmd/__init__.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/cmd copying build/lib/ironic/cmd/conductor.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/cmd copying build/lib/ironic/cmd/dbsync.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/cmd creating /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers copying build/lib/ironic/drivers/utils.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers copying build/lib/ironic/drivers/ilo.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers copying build/lib/ironic/drivers/irmc.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers copying build/lib/ironic/drivers/ibmc.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers copying build/lib/ironic/drivers/xclarity.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers copying build/lib/ironic/drivers/raid_config_schema.json -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers copying build/lib/ironic/drivers/generic.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers copying build/lib/ironic/drivers/snmp.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers copying build/lib/ironic/drivers/__init__.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers copying build/lib/ironic/drivers/fake_hardware.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers copying build/lib/ironic/drivers/cisco_ucs.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers copying build/lib/ironic/drivers/ipmi.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers copying build/lib/ironic/drivers/drac.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers copying build/lib/ironic/drivers/redfish.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers copying build/lib/ironic/drivers/hardware_type.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers creating /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules copying build/lib/ironic/drivers/modules/inspect_utils.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules copying build/lib/ironic/drivers/modules/elilo_efi_pxe_config.template -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules copying build/lib/ironic/drivers/modules/agent.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules copying build/lib/ironic/drivers/modules/ipxe.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules copying build/lib/ironic/drivers/modules/agent_client.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules creating /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/xclarity copying build/lib/ironic/drivers/modules/xclarity/management.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/xclarity copying build/lib/ironic/drivers/modules/xclarity/__init__.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/xclarity copying build/lib/ironic/drivers/modules/xclarity/common.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/xclarity copying build/lib/ironic/drivers/modules/xclarity/power.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/xclarity copying build/lib/ironic/drivers/modules/console_utils.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules creating /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/ibmc copying build/lib/ironic/drivers/modules/ibmc/utils.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/ibmc copying build/lib/ironic/drivers/modules/ibmc/management.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/ibmc copying build/lib/ironic/drivers/modules/ibmc/mappings.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/ibmc copying build/lib/ironic/drivers/modules/ibmc/vendor.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/ibmc copying build/lib/ironic/drivers/modules/ibmc/__init__.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/ibmc copying build/lib/ironic/drivers/modules/ibmc/power.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/ibmc copying build/lib/ironic/drivers/modules/pxe_grub_config.template -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules copying build/lib/ironic/drivers/modules/inspector.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules creating /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/cimc copying build/lib/ironic/drivers/modules/cimc/management.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/cimc copying build/lib/ironic/drivers/modules/cimc/__init__.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/cimc copying build/lib/ironic/drivers/modules/cimc/common.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/cimc copying build/lib/ironic/drivers/modules/cimc/power.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/cimc creating /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/storage copying build/lib/ironic/drivers/modules/storage/external.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/storage copying build/lib/ironic/drivers/modules/storage/cinder.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/storage copying build/lib/ironic/drivers/modules/storage/__init__.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/storage copying build/lib/ironic/drivers/modules/storage/noop.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/storage copying build/lib/ironic/drivers/modules/pxe.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules copying build/lib/ironic/drivers/modules/pxe_base.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules copying build/lib/ironic/drivers/modules/ipxe_config.template -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules creating /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/irmc copying build/lib/ironic/drivers/modules/irmc/boot.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/irmc copying build/lib/ironic/drivers/modules/irmc/raid.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/irmc copying build/lib/ironic/drivers/modules/irmc/management.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/irmc copying build/lib/ironic/drivers/modules/irmc/__init__.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/irmc copying build/lib/ironic/drivers/modules/irmc/bios.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/irmc copying build/lib/ironic/drivers/modules/irmc/common.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/irmc copying build/lib/ironic/drivers/modules/irmc/power.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/irmc copying build/lib/ironic/drivers/modules/irmc/inspect.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/irmc copying build/lib/ironic/drivers/modules/agent_config.template -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules copying build/lib/ironic/drivers/modules/snmp.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules copying build/lib/ironic/drivers/modules/pxe_config.template -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules copying build/lib/ironic/drivers/modules/master_grub_cfg.txt -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules creating /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/ansible copying build/lib/ironic/drivers/modules/ansible/deploy.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/ansible copying build/lib/ironic/drivers/modules/ansible/__init__.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/ansible creating /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/ansible/playbooks copying build/lib/ironic/drivers/modules/ansible/playbooks/ansible.cfg -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/ansible/playbooks creating /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/ansible/playbooks/roles creating /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/ansible/playbooks/roles/discover creating /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/ansible/playbooks/roles/discover/tasks copying build/lib/ironic/drivers/modules/ansible/playbooks/roles/discover/tasks/roothints.yaml -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/ansible/playbooks/roles/discover/tasks copying build/lib/ironic/drivers/modules/ansible/playbooks/roles/discover/tasks/main.yaml -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/ansible/playbooks/roles/discover/tasks creating /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/ansible/playbooks/roles/deploy creating /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/ansible/playbooks/roles/deploy/files copying build/lib/ironic/drivers/modules/ansible/playbooks/roles/deploy/files/partition_configdrive.sh -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/ansible/playbooks/roles/deploy/files creating /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/ansible/playbooks/roles/deploy/tasks copying build/lib/ironic/drivers/modules/ansible/playbooks/roles/deploy/tasks/download.yaml -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/ansible/playbooks/roles/deploy/tasks copying build/lib/ironic/drivers/modules/ansible/playbooks/roles/deploy/tasks/main.yaml -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/ansible/playbooks/roles/deploy/tasks copying build/lib/ironic/drivers/modules/ansible/playbooks/roles/deploy/tasks/configdrive.yaml -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/ansible/playbooks/roles/deploy/tasks copying build/lib/ironic/drivers/modules/ansible/playbooks/roles/deploy/tasks/write.yaml -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/ansible/playbooks/roles/deploy/tasks creating /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/ansible/playbooks/roles/prepare creating /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/ansible/playbooks/roles/prepare/tasks copying build/lib/ironic/drivers/modules/ansible/playbooks/roles/prepare/tasks/parted.yaml -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/ansible/playbooks/roles/prepare/tasks copying build/lib/ironic/drivers/modules/ansible/playbooks/roles/prepare/tasks/main.yaml -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/ansible/playbooks/roles/prepare/tasks creating /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/ansible/playbooks/roles/shutdown creating /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/ansible/playbooks/roles/shutdown/tasks copying build/lib/ironic/drivers/modules/ansible/playbooks/roles/shutdown/tasks/main.yaml -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/ansible/playbooks/roles/shutdown/tasks creating /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/ansible/playbooks/roles/configure creating /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/ansible/playbooks/roles/configure/defaults copying build/lib/ironic/drivers/modules/ansible/playbooks/roles/configure/defaults/main.yaml -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/ansible/playbooks/roles/configure/defaults creating /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/ansible/playbooks/roles/configure/tasks copying build/lib/ironic/drivers/modules/ansible/playbooks/roles/configure/tasks/main.yaml -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/ansible/playbooks/roles/configure/tasks copying build/lib/ironic/drivers/modules/ansible/playbooks/roles/configure/tasks/mounts.yaml -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/ansible/playbooks/roles/configure/tasks copying build/lib/ironic/drivers/modules/ansible/playbooks/roles/configure/tasks/grub.yaml -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/ansible/playbooks/roles/configure/tasks creating /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/ansible/playbooks/roles/clean creating /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/ansible/playbooks/roles/clean/defaults copying build/lib/ironic/drivers/modules/ansible/playbooks/roles/clean/defaults/main.yaml -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/ansible/playbooks/roles/clean/defaults creating /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/ansible/playbooks/roles/clean/tasks copying build/lib/ironic/drivers/modules/ansible/playbooks/roles/clean/tasks/zap.yaml -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/ansible/playbooks/roles/clean/tasks copying build/lib/ironic/drivers/modules/ansible/playbooks/roles/clean/tasks/shred.yaml -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/ansible/playbooks/roles/clean/tasks copying build/lib/ironic/drivers/modules/ansible/playbooks/roles/clean/tasks/wipe.yaml -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/ansible/playbooks/roles/clean/tasks copying build/lib/ironic/drivers/modules/ansible/playbooks/roles/clean/tasks/main.yaml -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/ansible/playbooks/roles/clean/tasks copying build/lib/ironic/drivers/modules/ansible/playbooks/deploy.yaml -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/ansible/playbooks copying build/lib/ironic/drivers/modules/ansible/playbooks/inventory -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/ansible/playbooks copying build/lib/ironic/drivers/modules/ansible/playbooks/clean_steps.yaml -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/ansible/playbooks creating /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/ansible/playbooks/callback_plugins copying build/lib/ironic/drivers/modules/ansible/playbooks/callback_plugins/ironic_log.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/ansible/playbooks/callback_plugins copying build/lib/ironic/drivers/modules/ansible/playbooks/callback_plugins/ironic_log.ini -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/ansible/playbooks/callback_plugins creating /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/ansible/playbooks/library copying build/lib/ironic/drivers/modules/ansible/playbooks/library/facts_wwn.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/ansible/playbooks/library copying build/lib/ironic/drivers/modules/ansible/playbooks/library/stream_url.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/ansible/playbooks/library copying build/lib/ironic/drivers/modules/ansible/playbooks/library/root_hints.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/ansible/playbooks/library copying build/lib/ironic/drivers/modules/ansible/playbooks/clean.yaml -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/ansible/playbooks copying build/lib/ironic/drivers/modules/ansible/playbooks/add-ironic-nodes.yaml -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/ansible/playbooks copying build/lib/ironic/drivers/modules/ansible/playbooks/shutdown.yaml -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/ansible/playbooks copying build/lib/ironic/drivers/modules/__init__.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules copying build/lib/ironic/drivers/modules/noop.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules copying build/lib/ironic/drivers/modules/boot.ipxe -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules copying build/lib/ironic/drivers/modules/agent_base_vendor.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules copying build/lib/ironic/drivers/modules/deploy_utils.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules copying build/lib/ironic/drivers/modules/fake.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules copying build/lib/ironic/drivers/modules/noop_mgmt.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules copying build/lib/ironic/drivers/modules/image_cache.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules creating /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/redfish copying build/lib/ironic/drivers/modules/redfish/utils.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/redfish copying build/lib/ironic/drivers/modules/redfish/management.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/redfish copying build/lib/ironic/drivers/modules/redfish/__init__.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/redfish copying build/lib/ironic/drivers/modules/redfish/bios.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/redfish copying build/lib/ironic/drivers/modules/redfish/power.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/redfish copying build/lib/ironic/drivers/modules/redfish/inspect.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/redfish copying build/lib/ironic/drivers/modules/boot_mode_utils.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules creating /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/drac copying build/lib/ironic/drivers/modules/drac/job.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/drac copying build/lib/ironic/drivers/modules/drac/raid.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/drac copying build/lib/ironic/drivers/modules/drac/management.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/drac copying build/lib/ironic/drivers/modules/drac/__init__.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/drac copying build/lib/ironic/drivers/modules/drac/bios.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/drac copying build/lib/ironic/drivers/modules/drac/common.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/drac copying build/lib/ironic/drivers/modules/drac/vendor_passthru.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/drac copying build/lib/ironic/drivers/modules/drac/power.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/drac copying build/lib/ironic/drivers/modules/drac/inspect.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/drac copying build/lib/ironic/drivers/modules/iscsi_deploy.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules creating /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/ucs copying build/lib/ironic/drivers/modules/ucs/helper.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/ucs copying build/lib/ironic/drivers/modules/ucs/management.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/ucs copying build/lib/ironic/drivers/modules/ucs/__init__.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/ucs copying build/lib/ironic/drivers/modules/ucs/power.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/ucs creating /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/ilo copying build/lib/ironic/drivers/modules/ilo/boot.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/ilo copying build/lib/ironic/drivers/modules/ilo/raid.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/ilo copying build/lib/ironic/drivers/modules/ilo/management.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/ilo copying build/lib/ironic/drivers/modules/ilo/firmware_processor.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/ilo copying build/lib/ironic/drivers/modules/ilo/vendor.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/ilo copying build/lib/ironic/drivers/modules/ilo/__init__.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/ilo copying build/lib/ironic/drivers/modules/ilo/bios.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/ilo copying build/lib/ironic/drivers/modules/ilo/common.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/ilo copying build/lib/ironic/drivers/modules/ilo/console.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/ilo copying build/lib/ironic/drivers/modules/ilo/power.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/ilo copying build/lib/ironic/drivers/modules/ilo/inspect.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/ilo creating /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/network copying build/lib/ironic/drivers/modules/network/__init__.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/network copying build/lib/ironic/drivers/modules/network/noop.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/network copying build/lib/ironic/drivers/modules/network/flat.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/network copying build/lib/ironic/drivers/modules/network/common.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/network copying build/lib/ironic/drivers/modules/network/neutron.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/network copying build/lib/ironic/drivers/modules/ipmitool.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules copying build/lib/ironic/drivers/base.py -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/version.py to version.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/common/utils.py to utils.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/common/wsgi_service.py to wsgi_service.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/common/keystone.py to keystone.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/common/images.py to images.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/common/release_mappings.py to release_mappings.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/common/driver_factory.py to driver_factory.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/common/raid.py to raid.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/common/json_rpc/client.py to client.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/common/json_rpc/server.py to server.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/common/json_rpc/__init__.py to __init__.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/common/profiler.py to profiler.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/common/network.py to network.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/common/exception.py to exception.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/common/hash_ring.py to hash_ring.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/common/fsm.py to fsm.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/common/cinder.py to cinder.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/common/boot_devices.py to boot_devices.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/common/policy.py to policy.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/common/context.py to context.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/common/__init__.py to __init__.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/common/rpc.py to rpc.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/common/boot_modes.py to boot_modes.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/common/config.py to config.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/common/i18n.py to i18n.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/common/image_service.py to image_service.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/common/service.py to service.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/common/glance_service/service_utils.py to service_utils.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/common/glance_service/v2/__init__.py to __init__.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/common/glance_service/v2/image_service.py to image_service.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/common/glance_service/__init__.py to __init__.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/common/glance_service/base_image_service.py to base_image_service.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/common/states.py to states.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/common/pxe_utils.py to pxe_utils.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/common/dhcp_factory.py to dhcp_factory.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/common/faults.py to faults.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/common/rpc_service.py to rpc_service.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/common/neutron.py to neutron.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/common/swift.py to swift.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/api/expose.py to expose.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/api/hooks.py to hooks.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/api/app.py to app.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/api/__init__.py to __init__.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/api/config.py to config.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/api/controllers/version.py to version.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/api/controllers/link.py to link.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/api/controllers/root.py to root.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/api/controllers/__init__.py to __init__.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/api/controllers/v1/utils.py to utils.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/api/controllers/v1/volume.py to volume.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/api/controllers/v1/allocation.py to allocation.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/api/controllers/v1/event.py to event.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/api/controllers/v1/collection.py to collection.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/api/controllers/v1/volume_target.py to volume_target.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/api/controllers/v1/types.py to types.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/api/controllers/v1/ramdisk.py to ramdisk.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/api/controllers/v1/notification_utils.py to notification_utils.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/api/controllers/v1/volume_connector.py to volume_connector.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/api/controllers/v1/driver.py to driver.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/api/controllers/v1/__init__.py to __init__.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/api/controllers/v1/conductor.py to conductor.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/api/controllers/v1/port.py to port.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/api/controllers/v1/versions.py to versions.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/api/controllers/v1/portgroup.py to portgroup.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/api/controllers/v1/node.py to node.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/api/controllers/v1/bios.py to bios.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/api/controllers/v1/deploy_template.py to deploy_template.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/api/controllers/v1/state.py to state.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/api/controllers/v1/chassis.py to chassis.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/api/controllers/base.py to base.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/api/wsgi.py to wsgi.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/api/middleware/auth_token.py to auth_token.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/api/middleware/json_ext.py to json_ext.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/api/middleware/__init__.py to __init__.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/api/middleware/parsable_error.py to parsable_error.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/stubs.py to stubs.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/common/test_driver_factory.py to test_driver_factory.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/common/test_hash_ring.py to test_hash_ring.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/common/test_utils.py to test_utils.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/common/test_context.py to test_context.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/common/test_rpc_service.py to test_rpc_service.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/common/test_release_mappings.py to test_release_mappings.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/common/test_raid.py to test_raid.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/common/test_policy.py to test_policy.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/common/test_swift.py to test_swift.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/common/test_pxe_utils.py to test_pxe_utils.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/common/test_rpc.py to test_rpc.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/common/__init__.py to __init__.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/common/test_image_service.py to test_image_service.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/common/test_neutron.py to test_neutron.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/common/test_glance_service.py to test_glance_service.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/common/test_exception.py to test_exception.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/common/test_network.py to test_network.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/common/test_images.py to test_images.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/common/test_cinder.py to test_cinder.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/common/test_keystone.py to test_keystone.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/common/test_fsm.py to test_fsm.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/common/test_states.py to test_states.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/common/test_json_rpc.py to test_json_rpc.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/common/test_wsgi_service.py to test_wsgi_service.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/raid_constants.py to raid_constants.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/api/utils.py to utils.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/api/test_root.py to test_root.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/api/test_acl.py to test_acl.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/api/test_healthcheck.py to test_healthcheck.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/api/__init__.py to __init__.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/api/test_ospmiddleware.py to test_ospmiddleware.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/api/test_hooks.py to test_hooks.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/api/test_middleware.py to test_middleware.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/api/controllers/test_base.py to test_base.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/api/controllers/__init__.py to __init__.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/api/controllers/v1/test_ramdisk.py to test_ramdisk.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/api/controllers/v1/test_utils.py to test_utils.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/api/controllers/v1/test_port.py to test_port.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/api/controllers/v1/test_root.py to test_root.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/api/controllers/v1/test_node.py to test_node.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/api/controllers/v1/test_notification_utils.py to test_notification_utils.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/api/controllers/v1/test_expose.py to test_expose.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/api/controllers/v1/test_deploy_template.py to test_deploy_template.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/api/controllers/v1/test_event.py to test_event.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/api/controllers/v1/test_volume_target.py to test_volume_target.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/api/controllers/v1/test_driver.py to test_driver.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/api/controllers/v1/test_conductor.py to test_conductor.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/api/controllers/v1/test_versions.py to test_versions.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/api/controllers/v1/test_types.py to test_types.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/api/controllers/v1/__init__.py to __init__.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/api/controllers/v1/test_chassis.py to test_chassis.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/api/controllers/v1/test_volume_connector.py to test_volume_connector.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/api/controllers/v1/test_portgroup.py to test_portgroup.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/api/controllers/v1/test_allocation.py to test_allocation.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/api/controllers/v1/test_volume.py to test_volume.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/api/test_audit.py to test_audit.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/api/base.py to base.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/db/utils.py to utils.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/db/test_volume_connectors.py to test_volume_connectors.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/db/test_ports.py to test_ports.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/db/test_node_traits.py to test_node_traits.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/db/test_volume_targets.py to test_volume_targets.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/db/test_conductor.py to test_conductor.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/db/__init__.py to __init__.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/db/test_chassis.py to test_chassis.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/db/test_portgroups.py to test_portgroups.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/db/test_deploy_templates.py to test_deploy_templates.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/db/test_allocations.py to test_allocations.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/db/test_api.py to test_api.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/db/test_nodes.py to test_nodes.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/db/test_bios_settings.py to test_bios_settings.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/db/test_node_tags.py to test_node_tags.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/db/sqlalchemy/test_types.py to test_types.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/db/sqlalchemy/test_models.py to test_models.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/db/sqlalchemy/__init__.py to __init__.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/db/sqlalchemy/test_migrations.py to test_migrations.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/db/sqlalchemy/test_api.py to test_api.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/db/base.py to base.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/conf/test_auth.py to test_auth.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/conf/__init__.py to __init__.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/test_base.py to test_base.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/__init__.py to __init__.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/dhcp/test_factory.py to test_factory.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/dhcp/__init__.py to __init__.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/dhcp/test_neutron.py to test_neutron.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/objects/utils.py to utils.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/objects/test_fields.py to test_fields.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/objects/test_port.py to test_port.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/objects/test_notification.py to test_notification.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/objects/test_node.py to test_node.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/objects/test_deploy_template.py to test_deploy_template.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/objects/test_volume_target.py to test_volume_target.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/objects/test_conductor.py to test_conductor.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/objects/__init__.py to __init__.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/objects/test_bios.py to test_bios.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/objects/test_chassis.py to test_chassis.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/objects/test_volume_connector.py to test_volume_connector.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/objects/test_trait.py to test_trait.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/objects/test_objects.py to test_objects.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/objects/test_portgroup.py to test_portgroup.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/objects/test_allocation.py to test_allocation.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/conductor/test_utils.py to test_utils.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/conductor/test_rpcapi.py to test_rpcapi.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/conductor/test_notification_utils.py to test_notification_utils.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/conductor/test_task_manager.py to test_task_manager.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/conductor/test_manager.py to test_manager.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/conductor/__init__.py to __init__.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/conductor/test_allocations.py to test_allocations.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/conductor/test_steps.py to test_steps.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/conductor/mgr_utils.py to mgr_utils.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/conductor/test_base_manager.py to test_base_manager.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/cmd/test_conductor.py to test_conductor.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/cmd/__init__.py to __init__.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/cmd/test_status.py to test_status.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/cmd/test_dbsync.py to test_dbsync.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/third_party_driver_mock_specs.py to third_party_driver_mock_specs.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/test_generic.py to test_generic.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/test_utils.py to test_utils.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/test_ilo.py to test_ilo.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/test_snmp.py to test_snmp.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/test_cisco.py to test_cisco.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/test_fake_hardware.py to test_fake_hardware.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/test_base.py to test_base.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/test_ibmc.py to test_ibmc.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/__init__.py to __init__.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/test_irmc.py to test_irmc.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/test_drac.py to test_drac.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/third_party_driver_mocks.py to third_party_driver_mocks.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/test_ipmi.py to test_ipmi.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/test_xclarity.py to test_xclarity.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/test_redfish.py to test_redfish.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules/test_boot_mode_utils.py to test_boot_mode_utils.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules/xclarity/test_power.py to test_power.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules/xclarity/test_common.py to test_common.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules/xclarity/__init__.py to __init__.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules/xclarity/test_management.py to test_management.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules/ibmc/test_utils.py to test_utils.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules/ibmc/test_power.py to test_power.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules/ibmc/__init__.py to __init__.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules/ibmc/test_management.py to test_management.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules/ibmc/test_vendor.py to test_vendor.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules/ibmc/base.py to base.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules/test_noop.py to test_noop.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules/cimc/test_power.py to test_power.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules/cimc/test_common.py to test_common.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules/cimc/__init__.py to __init__.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules/cimc/test_management.py to test_management.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules/test_console_utils.py to test_console_utils.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules/test_inspect_utils.py to test_inspect_utils.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules/test_deploy_utils.py to test_deploy_utils.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules/test_snmp.py to test_snmp.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules/storage/test_external.py to test_external.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules/storage/__init__.py to __init__.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules/storage/test_cinder.py to test_cinder.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules/test_image_cache.py to test_image_cache.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules/test_ipxe.py to test_ipxe.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules/irmc/test_inspect.py to test_inspect.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules/irmc/test_raid.py to test_raid.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules/irmc/test_power.py to test_power.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules/irmc/test_periodic_task.py to test_periodic_task.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules/irmc/test_boot.py to test_boot.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules/irmc/test_common.py to test_common.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules/irmc/__init__.py to __init__.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules/irmc/test_bios.py to test_bios.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules/irmc/test_management.py to test_management.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules/ansible/test_deploy.py to test_deploy.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules/ansible/__init__.py to __init__.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules/__init__.py to __init__.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules/test_inspector.py to test_inspector.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules/test_agent_base_vendor.py to test_agent_base_vendor.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules/test_pxe.py to test_pxe.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules/redfish/test_inspect.py to test_inspect.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules/redfish/test_utils.py to test_utils.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules/redfish/test_power.py to test_power.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules/redfish/__init__.py to __init__.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules/redfish/test_bios.py to test_bios.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules/redfish/test_management.py to test_management.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules/test_noop_mgmt.py to test_noop_mgmt.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules/drac/test_inspect.py to test_inspect.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules/drac/utils.py to utils.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules/drac/test_raid.py to test_raid.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules/drac/test_power.py to test_power.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules/drac/test_periodic_task.py to test_periodic_task.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules/drac/test_common.py to test_common.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules/drac/__init__.py to __init__.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules/drac/test_bios.py to test_bios.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules/drac/test_management.py to test_management.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules/drac/test_job.py to test_job.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules/test_agent.py to test_agent.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules/test_agent_client.py to test_agent_client.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules/ucs/test_power.py to test_power.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules/ucs/test_helper.py to test_helper.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules/ucs/__init__.py to __init__.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules/ucs/test_management.py to test_management.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules/ilo/test_inspect.py to test_inspect.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules/ilo/test_raid.py to test_raid.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules/ilo/test_power.py to test_power.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules/ilo/test_boot.py to test_boot.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules/ilo/test_firmware_processor.py to test_firmware_processor.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules/ilo/test_common.py to test_common.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules/ilo/__init__.py to __init__.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules/ilo/test_bios.py to test_bios.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules/ilo/test_management.py to test_management.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules/ilo/test_console.py to test_console.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules/ilo/test_vendor.py to test_vendor.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules/network/test_noop.py to test_noop.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules/network/test_flat.py to test_flat.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules/network/test_common.py to test_common.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules/network/__init__.py to __init__.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules/network/test_neutron.py to test_neutron.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules/test_iscsi_deploy.py to test_iscsi_deploy.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/drivers/modules/test_ipmitool.py to test_ipmitool.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/unit/policy_fixture.py to policy_fixture.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/functional/__init__.py to __init__.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/__init__.py to __init__.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/tests/base.py to base.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/db/api.py to api.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/db/migration.py to migration.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/db/__init__.py to __init__.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/db/sqlalchemy/api.py to api.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/db/sqlalchemy/alembic/versions/789acc877671_add_raid_config.py to 789acc877671_add_raid_config.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/db/sqlalchemy/alembic/versions/bcdd431ba0bf_add_fields_for_all_interfaces.py to bcdd431ba0bf_add_fields_for_all_interfaces.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/db/sqlalchemy/alembic/versions/5674c57409b9_replace_nostate_with_available.py to 5674c57409b9_replace_nostate_with_available.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/db/sqlalchemy/alembic/versions/21b331f883ef_add_provision_updated_at.py to 21b331f883ef_add_provision_updated_at.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/db/sqlalchemy/alembic/versions/60cf717201bc_add_standalone_ports_supported.py to 60cf717201bc_add_standalone_ports_supported.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/db/sqlalchemy/alembic/versions/1e15e7122cc9_add_extra_column_to_deploy_templates.py to 1e15e7122cc9_add_extra_column_to_deploy_templates.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/db/sqlalchemy/alembic/versions/3ae36a5f5131_add_logical_name.py to 3ae36a5f5131_add_logical_name.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/db/sqlalchemy/alembic/versions/82c315d60161_add_bios_settings.py to 82c315d60161_add_bios_settings.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/db/sqlalchemy/alembic/versions/2353895ecfae_add_conductor_hardware_interfaces_table.py to 2353895ecfae_add_conductor_hardware_interfaces_table.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/db/sqlalchemy/alembic/versions/868cb606a74a_add_version_field_in_base_class.py to 868cb606a74a_add_version_field_in_base_class.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/db/sqlalchemy/alembic/versions/516faf1bb9b1_resizing_column_nodes_driver.py to 516faf1bb9b1_resizing_column_nodes_driver.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/db/sqlalchemy/alembic/versions/b4130a7fc904_create_nodetraits_table.py to b4130a7fc904_create_nodetraits_table.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/db/sqlalchemy/alembic/versions/4f399b21ae71_add_node_clean_step.py to 4f399b21ae71_add_node_clean_step.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/db/sqlalchemy/alembic/versions/f6fdb920c182_set_pxe_enabled_true.py to f6fdb920c182_set_pxe_enabled_true.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/db/sqlalchemy/alembic/versions/9cbeefa3763f_add_port_is_smartnic.py to 9cbeefa3763f_add_port_is_smartnic.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/db/sqlalchemy/alembic/versions/e294876e8028_add_node_network_interface.py to e294876e8028_add_node_network_interface.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/db/sqlalchemy/alembic/versions/fb3f10dd262e_add_fault_to_node_table.py to fb3f10dd262e_add_fault_to_node_table.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/db/sqlalchemy/alembic/versions/c14cef6dfedf_populate_node_network_interface.py to c14cef6dfedf_populate_node_network_interface.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/db/sqlalchemy/alembic/versions/28c44432c9c3_add_node_description.py to 28c44432c9c3_add_node_description.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/db/sqlalchemy/alembic/versions/664f85c2f622_add_conductor_group_to_nodes_conductors.py to 664f85c2f622_add_conductor_group_to_nodes_conductors.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/db/sqlalchemy/alembic/versions/10b163d4481e_add_port_portgroup_internal_info.py to 10b163d4481e_add_port_portgroup_internal_info.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/db/sqlalchemy/alembic/versions/d2b036ae9378_add_automated_clean_field.py to d2b036ae9378_add_automated_clean_field.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/db/sqlalchemy/alembic/versions/b9117ac17882_add_node_deploy_step.py to b9117ac17882_add_node_deploy_step.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/db/sqlalchemy/alembic/versions/1e1d5ace7dc6_add_inspection_started_at_and_.py to 1e1d5ace7dc6_add_inspection_started_at_and_.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/db/sqlalchemy/alembic/versions/dd34e1f1303b_add_resource_class_to_node.py to dd34e1f1303b_add_resource_class_to_node.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/db/sqlalchemy/alembic/versions/1a59178ebdf6_add_volume_targets_table.py to 1a59178ebdf6_add_volume_targets_table.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/db/sqlalchemy/alembic/versions/493d8f27f235_add_portgroup_configuration_fields.py to 493d8f27f235_add_portgroup_configuration_fields.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/db/sqlalchemy/alembic/versions/3bea56f25597_add_unique_constraint_to_instance_uuid.py to 3bea56f25597_add_unique_constraint_to_instance_uuid.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/db/sqlalchemy/alembic/versions/405cfe08f18d_add_rescue_interface_to_node.py to 405cfe08f18d_add_rescue_interface_to_node.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/db/sqlalchemy/alembic/versions/242cc6a923b3_add_node_maintenance_reason.py to 242cc6a923b3_add_node_maintenance_reason.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/db/sqlalchemy/alembic/versions/f190f9d00a11_add_node_owner.py to f190f9d00a11_add_node_owner.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/db/sqlalchemy/alembic/versions/2fb93ffd2af1_increase_node_name_length.py to 2fb93ffd2af1_increase_node_name_length.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/db/sqlalchemy/alembic/versions/daa1ba02d98_add_volume_connectors_table.py to daa1ba02d98_add_volume_connectors_table.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/db/sqlalchemy/alembic/versions/3d86a077a3f2_add_port_physical_network.py to 3d86a077a3f2_add_port_physical_network.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/db/sqlalchemy/alembic/versions/5ea1b0d310e_added_port_group_table_and_altered_ports.py to 5ea1b0d310e_added_port_group_table_and_altered_ports.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/db/sqlalchemy/alembic/versions/2581ebaf0cb2_initial_migration.py to 2581ebaf0cb2_initial_migration.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/db/sqlalchemy/alembic/versions/1d6951876d68_add_storage_interface_db_field_and_.py to 1d6951876d68_add_storage_interface_db_field_and_.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/db/sqlalchemy/alembic/versions/93706939026c_add_node_protected_field.py to 93706939026c_add_node_protected_field.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/db/sqlalchemy/alembic/versions/dd67b91a1981_add_allocations_table.py to dd67b91a1981_add_allocations_table.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/db/sqlalchemy/alembic/versions/bb59b63f55a_add_node_driver_internal_info.py to bb59b63f55a_add_node_driver_internal_info.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/db/sqlalchemy/alembic/versions/2aac7e0872f6_add_deploy_templates.py to 2aac7e0872f6_add_deploy_templates.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/db/sqlalchemy/alembic/versions/48d6c242bb9b_add_node_tags.py to 48d6c242bb9b_add_node_tags.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/db/sqlalchemy/alembic/versions/e918ff30eb42_resize_column_nodes_instance_info.py to e918ff30eb42_resize_column_nodes_instance_info.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/db/sqlalchemy/alembic/versions/dbefd6bdaa2c_add_default_column_to_.py to dbefd6bdaa2c_add_default_column_to_.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/db/sqlalchemy/alembic/versions/487deb87cc9d_add_conductor_affinity_and_online.py to 487deb87cc9d_add_conductor_affinity_and_online.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/db/sqlalchemy/alembic/versions/3cb628139ea4_nodes_add_console_enabled.py to 3cb628139ea4_nodes_add_console_enabled.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/db/sqlalchemy/alembic/versions/2d13bc3d6bba_add_bios_config_and_interface.py to 2d13bc3d6bba_add_bios_config_and_interface.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/db/sqlalchemy/alembic/versions/31baaf680d2b_add_node_instance_info.py to 31baaf680d2b_add_node_instance_info.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/db/sqlalchemy/alembic/env.py to env.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/db/sqlalchemy/migration.py to migration.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/db/sqlalchemy/__init__.py to __init__.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/db/sqlalchemy/models.py to models.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/hacking/__init__.py to __init__.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/hacking/checks.py to checks.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/conf/api.py to api.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/conf/agent.py to agent.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/conf/database.py to database.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/conf/ilo.py to ilo.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/conf/opts.py to opts.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/conf/service_catalog.py to service_catalog.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/conf/inspector.py to inspector.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/conf/audit.py to audit.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/conf/json_rpc.py to json_rpc.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/conf/metrics.py to metrics.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/conf/dhcp.py to dhcp.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/conf/irmc.py to irmc.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/conf/ibmc.py to ibmc.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/conf/default.py to default.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/conf/deploy.py to deploy.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/conf/xclarity.py to xclarity.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/conf/pxe.py to pxe.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/conf/cinder.py to cinder.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/conf/cisco.py to cisco.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/conf/snmp.py to snmp.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/conf/ansible.py to ansible.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/conf/__init__.py to __init__.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/conf/conductor.py to conductor.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/conf/iscsi.py to iscsi.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/conf/auth.py to auth.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/conf/metrics_statsd.py to metrics_statsd.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/conf/ipmi.py to ipmi.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/conf/console.py to console.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/conf/glance.py to glance.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/conf/neutron.py to neutron.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/conf/drac.py to drac.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/conf/healthcheck.py to healthcheck.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/conf/redfish.py to redfish.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/conf/swift.py to swift.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/__init__.py to __init__.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/dhcp/__init__.py to __init__.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/dhcp/none.py to none.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/dhcp/neutron.py to neutron.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/dhcp/base.py to base.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/objects/allocation.py to allocation.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/objects/volume_target.py to volume_target.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/objects/fields.py to fields.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/objects/volume_connector.py to volume_connector.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/objects/trait.py to trait.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/objects/__init__.py to __init__.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/objects/notification.py to notification.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/objects/conductor.py to conductor.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/objects/port.py to port.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/objects/portgroup.py to portgroup.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/objects/node.py to node.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/objects/bios.py to bios.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/objects/deploy_template.py to deploy_template.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/objects/indirection.py to indirection.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/objects/chassis.py to chassis.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/objects/base.py to base.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/conductor/utils.py to utils.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/conductor/notification_utils.py to notification_utils.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/conductor/__init__.py to __init__.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/conductor/task_manager.py to task_manager.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/conductor/steps.py to steps.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/conductor/base_manager.py to base_manager.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/conductor/manager.py to manager.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/conductor/allocations.py to allocations.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/conductor/rpcapi.py to rpcapi.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/cmd/api.py to api.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/cmd/status.py to status.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/cmd/__init__.py to __init__.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/cmd/conductor.py to conductor.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/cmd/dbsync.py to dbsync.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/utils.py to utils.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/ilo.py to ilo.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/irmc.py to irmc.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/ibmc.py to ibmc.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/xclarity.py to xclarity.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/generic.py to generic.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/snmp.py to snmp.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/__init__.py to __init__.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/fake_hardware.py to fake_hardware.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/cisco_ucs.py to cisco_ucs.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/ipmi.py to ipmi.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/drac.py to drac.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/redfish.py to redfish.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/hardware_type.py to hardware_type.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/inspect_utils.py to inspect_utils.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/agent.py to agent.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/ipxe.py to ipxe.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/agent_client.py to agent_client.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/xclarity/management.py to management.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/xclarity/__init__.py to __init__.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/xclarity/common.py to common.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/xclarity/power.py to power.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/console_utils.py to console_utils.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/ibmc/utils.py to utils.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/ibmc/management.py to management.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/ibmc/mappings.py to mappings.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/ibmc/vendor.py to vendor.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/ibmc/__init__.py to __init__.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/ibmc/power.py to power.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/inspector.py to inspector.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/cimc/management.py to management.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/cimc/__init__.py to __init__.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/cimc/common.py to common.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/cimc/power.py to power.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/storage/external.py to external.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/storage/cinder.py to cinder.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/storage/__init__.py to __init__.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/storage/noop.py to noop.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/pxe.py to pxe.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/pxe_base.py to pxe_base.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/irmc/boot.py to boot.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/irmc/raid.py to raid.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/irmc/management.py to management.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/irmc/__init__.py to __init__.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/irmc/bios.py to bios.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/irmc/common.py to common.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/irmc/power.py to power.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/irmc/inspect.py to inspect.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/snmp.py to snmp.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/ansible/deploy.py to deploy.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/ansible/__init__.py to __init__.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/ansible/playbooks/callback_plugins/ironic_log.py to ironic_log.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/ansible/playbooks/library/facts_wwn.py to facts_wwn.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/ansible/playbooks/library/stream_url.py to stream_url.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/ansible/playbooks/library/root_hints.py to root_hints.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/__init__.py to __init__.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/noop.py to noop.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/agent_base_vendor.py to agent_base_vendor.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/deploy_utils.py to deploy_utils.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/fake.py to fake.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/noop_mgmt.py to noop_mgmt.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/image_cache.py to image_cache.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/redfish/utils.py to utils.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/redfish/management.py to management.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/redfish/__init__.py to __init__.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/redfish/bios.py to bios.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/redfish/power.py to power.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/redfish/inspect.py to inspect.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/boot_mode_utils.py to boot_mode_utils.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/drac/job.py to job.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/drac/raid.py to raid.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/drac/management.py to management.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/drac/__init__.py to __init__.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/drac/bios.py to bios.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/drac/common.py to common.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/drac/vendor_passthru.py to vendor_passthru.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/drac/power.py to power.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/drac/inspect.py to inspect.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/iscsi_deploy.py to iscsi_deploy.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/ucs/helper.py to helper.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/ucs/management.py to management.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/ucs/__init__.py to __init__.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/ucs/power.py to power.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/ilo/boot.py to boot.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/ilo/raid.py to raid.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/ilo/management.py to management.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/ilo/firmware_processor.py to firmware_processor.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/ilo/vendor.py to vendor.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/ilo/__init__.py to __init__.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/ilo/bios.py to bios.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/ilo/common.py to common.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/ilo/console.py to console.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/ilo/power.py to power.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/ilo/inspect.py to inspect.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/network/__init__.py to __init__.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/network/noop.py to noop.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/network/flat.py to flat.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/network/common.py to common.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/network/neutron.py to neutron.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/modules/ipmitool.py to ipmitool.pyc byte-compiling /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic/drivers/base.py to base.pyc writing byte-compilation script '/tmp/tmpgYzF8G.py' /usr/bin/python2 -O /tmp/tmpgYzF8G.py removing /tmp/tmpgYzF8G.py running install_data creating /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/etc creating /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/etc/ironic copying etc/ironic/rootwrap.conf -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/etc/ironic creating /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/etc/ironic/rootwrap.d copying etc/ironic/rootwrap.d/ironic-images.filters -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/etc/ironic/rootwrap.d/ copying etc/ironic/rootwrap.d/ironic-utils.filters -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/etc/ironic/rootwrap.d/ copying etc/ironic/rootwrap.d/ironic-lib.filters -> /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/etc/ironic/rootwrap.d/ running install_egg_info running egg_info writing ironic.egg-info/PKG-INFO writing top-level names to ironic.egg-info/top_level.txt writing dependency_links to ironic.egg-info/dependency_links.txt writing entry points to ironic.egg-info/entry_points.txt [pbr] Reusing existing SOURCES.txt Copying ironic.egg-info to /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic-12.1.1-py2.7.egg-info running install_scripts /usr/lib/python2.7/site-packages/pbr/packaging.py:410: EasyInstallDeprecationWarning: Use get_header header = easy_install.get_script_header("", executable, is_wininst) Installing ironic-api-wsgi script to /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/bin Installing ironic-rootwrap script to /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/bin Installing ironic-dbsync script to /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/bin Installing ironic-conductor script to /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/bin Installing ironic-status script to /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/bin Installing ironic-api script to /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/bin + install -p -D -m 644 /builddir/build/SOURCES/ironic.logrotate /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/etc/logrotate.d/openstack-ironic + mkdir -p /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/systemd/system + install -p -D -m 644 /builddir/build/SOURCES/openstack-ironic-api.service /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/systemd/system + install -p -D -m 644 /builddir/build/SOURCES/openstack-ironic-conductor.service /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/systemd/system + mkdir -p /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/etc/sudoers.d + install -p -D -m 440 /builddir/build/SOURCES/ironic-rootwrap-sudoers /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/etc/sudoers.d/ironic + mkdir -p /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/var/lib/ironic/ + mkdir -p /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/var/log/ironic/ + mkdir -p /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/etc/ironic/rootwrap.d + export PYTHONPATH=. + PYTHONPATH=. + oslo-config-generator-2 --config-file tools/config/ironic-config-generator.conf --output-file /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch//etc/ironic/ironic.conf + oslopolicy-sample-generator-2 --config-file tools/policy/ironic-policy-generator.conf --output-file /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch//etc/ironic/policy.json + mv /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/etc/ironic/rootwrap.conf /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch//etc/ironic/rootwrap.conf + mv /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/etc/ironic/rootwrap.d/ironic-images.filters /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/etc/ironic/rootwrap.d/ironic-lib.filters /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/etc/ironic/rootwrap.d/ironic-utils.filters /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch//etc/ironic/rootwrap.d/ + rmdir /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/etc/ironic/rootwrap.d + rmdir /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/etc/ironic + install -p -D -m 640 /builddir/build/SOURCES/ironic-dist.conf /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch//usr/share/ironic/ironic-dist.conf + /usr/lib/rpm/find-debuginfo.sh --strict-build-id -m --run-dwz --dwz-low-mem-die-limit 10000000 --dwz-max-die-limit 50000000 /builddir/build/BUILD/ironic-12.1.1 /usr/lib/rpm/sepdebugcrcfix: Updated 0 CRC32s, 0 CRC32s did match. find: 'debug': No such file or directory + /usr/lib/rpm/check-buildroot + /usr/lib/rpm/redhat/brp-compress + /usr/lib/rpm/redhat/brp-strip-static-archive /usr/bin/strip + /usr/lib/rpm/brp-python-bytecompile /usr/bin/python 1 Bytecompiling .py files below /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7 using /usr/bin/python2.7 + /usr/lib/rpm/redhat/brp-python-hardlink + /usr/lib/rpm/redhat/brp-java-repack-jars Executing(%check): /bin/sh -e /var/tmp/rpm-tmp.amatbg + umask 022 + cd /builddir/build/BUILD + cd ironic-12.1.1 + PYTHON=python2 + stestr-2 run 2019-06-06 07:02:05.438 15088 INFO oslo_utils.netutils [-] Could not determine default network interface, using 127.0.0.1 for IPv4 address 2019-06-06 07:02:05.464 15091 INFO oslo_utils.netutils [-] Could not determine default network interface, using 127.0.0.1 for IPv4 address 2019-06-06 07:02:05.470 15100 INFO oslo_utils.netutils [-] Could not determine default network interface, using 127.0.0.1 for IPv4 address 2019-06-06 07:02:05.475 15089 INFO oslo_utils.netutils [-] Could not determine default network interface, using 127.0.0.1 for IPv4 address 2019-06-06 07:02:05.477 15090 INFO oslo_utils.netutils [-] Could not determine default network interface, using 127.0.0.1 for IPv4 address 2019-06-06 07:02:05.512 15092 INFO oslo_utils.netutils [-] Could not determine default network interface, using 127.0.0.1 for IPv4 address 2019-06-06 07:02:05.519 15094 INFO oslo_utils.netutils [-] Could not determine default network interface, using 127.0.0.1 for IPv4 address 2019-06-06 07:02:05.527 15099 INFO oslo_utils.netutils [-] Could not determine default network interface, using 127.0.0.1 for IPv4 address 2019-06-06 07:02:05.520 15101 INFO oslo_utils.netutils [-] Could not determine default network interface, using 127.0.0.1 for IPv4 address 2019-06-06 07:02:05.537 15097 INFO oslo_utils.netutils [-] Could not determine default network interface, using 127.0.0.1 for IPv4 address 2019-06-06 07:02:05.549 15098 INFO oslo_utils.netutils [-] Could not determine default network interface, using 127.0.0.1 for IPv4 address 2019-06-06 07:02:05.548 15093 INFO oslo_utils.netutils [-] Could not determine default network interface, using 127.0.0.1 for IPv4 address 2019-06-06 07:02:05.571 15095 INFO oslo_utils.netutils [-] Could not determine default network interface, using 127.0.0.1 for IPv4 address 2019-06-06 07:02:05.582 15104 INFO oslo_utils.netutils [-] Could not determine default network interface, using 127.0.0.1 for IPv4 address 2019-06-06 07:02:05.609 15096 INFO oslo_utils.netutils [-] Could not determine default network interface, using 127.0.0.1 for IPv4 address 2019-06-06 07:02:05.607 15103 INFO oslo_utils.netutils [-] Could not determine default network interface, using 127.0.0.1 for IPv4 address 2019-06-06 07:02:05.604 15105 INFO oslo_utils.netutils [-] Could not determine default network interface, using 127.0.0.1 for IPv4 address 2019-06-06 07:02:05.651 15106 INFO oslo_utils.netutils [-] Could not determine default network interface, using 127.0.0.1 for IPv4 address 2019-06-06 07:02:05.661 15102 INFO oslo_utils.netutils [-] Could not determine default network interface, using 127.0.0.1 for IPv4 address 2019-06-06 07:02:05.663 15108 INFO oslo_utils.netutils [-] Could not determine default network interface, using 127.0.0.1 for IPv4 address 2019-06-06 07:02:05.685 15107 INFO oslo_utils.netutils [-] Could not determine default network interface, using 127.0.0.1 for IPv4 address 2019-06-06 07:02:05.686 15114 INFO oslo_utils.netutils [-] Could not determine default network interface, using 127.0.0.1 for IPv4 address 2019-06-06 07:02:05.680 15109 INFO oslo_utils.netutils [-] Could not determine default network interface, using 127.0.0.1 for IPv4 address 2019-06-06 07:02:05.688 15115 INFO oslo_utils.netutils [-] Could not determine default network interface, using 127.0.0.1 for IPv4 address 2019-06-06 07:02:05.695 15112 INFO oslo_utils.netutils [-] Could not determine default network interface, using 127.0.0.1 for IPv4 address 2019-06-06 07:02:05.715 15113 INFO oslo_utils.netutils [-] Could not determine default network interface, using 127.0.0.1 for IPv4 address 2019-06-06 07:02:05.734 15110 INFO oslo_utils.netutils [-] Could not determine default network interface, using 127.0.0.1 for IPv4 address 2019-06-06 07:02:05.718 15111 INFO oslo_utils.netutils [-] Could not determine default network interface, using 127.0.0.1 for IPv4 address 2019-06-06 07:02:05.757 15116 INFO oslo_utils.netutils [-] Could not determine default network interface, using 127.0.0.1 for IPv4 address 2019-06-06 07:02:05.767 15118 INFO oslo_utils.netutils [-] Could not determine default network interface, using 127.0.0.1 for IPv4 address 2019-06-06 07:02:05.765 15117 INFO oslo_utils.netutils [-] Could not determine default network interface, using 127.0.0.1 for IPv4 address 2019-06-06 07:02:05.862 15119 INFO oslo_utils.netutils [-] Could not determine default network interface, using 127.0.0.1 for IPv4 address INFO [alembic.runtime.migration] Context impl SQLiteImpl. INFO [alembic.runtime.migration] Will assume non-transactional DDL. INFO [alembic.runtime.migration] Context impl SQLiteImpl. INFO [alembic.runtime.migration] Will assume non-transactional DDL. INFO [alembic.runtime.migration] Context impl SQLiteImpl. INFO [alembic.runtime.migration] Will assume non-transactional DDL. INFO [alembic.runtime.migration] Context impl SQLiteImpl. INFO [alembic.runtime.migration] Will assume non-transactional DDL. INFO [alembic.runtime.migration] Context impl SQLiteImpl. INFO [alembic.runtime.migration] Will assume non-transactional DDL. INFO [alembic.runtime.migration] Running stamp_revision -> 1e15e7122cc9 INFO [alembic.runtime.migration] Running stamp_revision -> 1e15e7122cc9 INFO [alembic.runtime.migration] Running stamp_revision -> 1e15e7122cc9 INFO [alembic.runtime.migration] Running stamp_revision -> 1e15e7122cc9 INFO [alembic.runtime.migration] Context impl SQLiteImpl. INFO [alembic.runtime.migration] Will assume non-transactional DDL. INFO [alembic.runtime.migration] Context impl SQLiteImpl. INFO [alembic.runtime.migration] Running stamp_revision -> 1e15e7122cc9 INFO [alembic.runtime.migration] Will assume non-transactional DDL. INFO [alembic.runtime.migration] Running stamp_revision -> 1e15e7122cc9 INFO [alembic.runtime.migration] Running stamp_revision -> 1e15e7122cc9 INFO [alembic.runtime.migration] Context impl SQLiteImpl. INFO [alembic.runtime.migration] Will assume non-transactional DDL. INFO [alembic.runtime.migration] Context impl SQLiteImpl. INFO [alembic.runtime.migration] Will assume non-transactional DDL. INFO [alembic.runtime.migration] Running stamp_revision -> 1e15e7122cc9 INFO [alembic.runtime.migration] Running stamp_revision -> 1e15e7122cc9 INFO [alembic.runtime.migration] Context impl SQLiteImpl. INFO [alembic.runtime.migration] Will assume non-transactional DDL. INFO [alembic.runtime.migration] Context impl SQLiteImpl. INFO [alembic.runtime.migration] Will assume non-transactional DDL. INFO [alembic.runtime.migration] Context impl SQLiteImpl. INFO [alembic.runtime.migration] Will assume non-transactional DDL. INFO [alembic.runtime.migration] Context impl SQLiteImpl. INFO [alembic.runtime.migration] Will assume non-transactional DDL. INFO [alembic.runtime.migration] Context impl SQLiteImpl. INFO [alembic.runtime.migration] Will assume non-transactional DDL. INFO [alembic.runtime.migration] Context impl SQLiteImpl. INFO [alembic.runtime.migration] Will assume non-transactional DDL. INFO [alembic.runtime.migration] Context impl SQLiteImpl. INFO [alembic.runtime.migration] Will assume non-transactional DDL. INFO [alembic.runtime.migration] Context impl SQLiteImpl. INFO [alembic.runtime.migration] Will assume non-transactional DDL. INFO [alembic.runtime.migration] Context impl SQLiteImpl. INFO [alembic.runtime.migration] Will assume non-transactional DDL. INFO [alembic.runtime.migration] Context impl SQLiteImpl. INFO [alembic.runtime.migration] Will assume non-transactional DDL. INFO [alembic.runtime.migration] Context impl SQLiteImpl. INFO [alembic.runtime.migration] Will assume non-transactional DDL. INFO [alembic.runtime.migration] Running stamp_revision -> 1e15e7122cc9 INFO [alembic.runtime.migration] Context impl SQLiteImpl. INFO [alembic.runtime.migration] Will assume non-transactional DDL. INFO [alembic.runtime.migration] Running stamp_revision -> 1e15e7122cc9 INFO [alembic.runtime.migration] Running stamp_revision -> 1e15e7122cc9 INFO [alembic.runtime.migration] Running stamp_revision -> 1e15e7122cc9 INFO [alembic.runtime.migration] Running stamp_revision -> 1e15e7122cc9 INFO [alembic.runtime.migration] Running stamp_revision -> 1e15e7122cc9 INFO [alembic.runtime.migration] Running stamp_revision -> 1e15e7122cc9 INFO [alembic.runtime.migration] Running stamp_revision -> 1e15e7122cc9 INFO [alembic.runtime.migration] Running stamp_revision -> 1e15e7122cc9 INFO [alembic.runtime.migration] Running stamp_revision -> 1e15e7122cc9 INFO [alembic.runtime.migration] Running stamp_revision -> 1e15e7122cc9 INFO [alembic.runtime.migration] Context impl SQLiteImpl. INFO [alembic.runtime.migration] Will assume non-transactional DDL. INFO [alembic.runtime.migration] Running stamp_revision -> 1e15e7122cc9 INFO [alembic.runtime.migration] Context impl SQLiteImpl. INFO [alembic.runtime.migration] Will assume non-transactional DDL. INFO [alembic.runtime.migration] Context impl SQLiteImpl. INFO [alembic.runtime.migration] Will assume non-transactional DDL. INFO [alembic.runtime.migration] Context impl SQLiteImpl. INFO [alembic.runtime.migration] Will assume non-transactional DDL. INFO [alembic.runtime.migration] Context impl SQLiteImpl. INFO [alembic.runtime.migration] Will assume non-transactional DDL. INFO [alembic.runtime.migration] Context impl SQLiteImpl. INFO [alembic.runtime.migration] Will assume non-transactional DDL. INFO [alembic.runtime.migration] Context impl SQLiteImpl. INFO [alembic.runtime.migration] Will assume non-transactional DDL. INFO [alembic.runtime.migration] Context impl SQLiteImpl. INFO [alembic.runtime.migration] Will assume non-transactional DDL. INFO [alembic.runtime.migration] Running stamp_revision -> 1e15e7122cc9 INFO [alembic.runtime.migration] Running stamp_revision -> 1e15e7122cc9 INFO [alembic.runtime.migration] Running stamp_revision -> 1e15e7122cc9 INFO [alembic.runtime.migration] Context impl SQLiteImpl. INFO [alembic.runtime.migration] Will assume non-transactional DDL. INFO [alembic.runtime.migration] Running stamp_revision -> 1e15e7122cc9 INFO [alembic.runtime.migration] Context impl SQLiteImpl. INFO [alembic.runtime.migration] Will assume non-transactional DDL. INFO [alembic.runtime.migration] Running stamp_revision -> 1e15e7122cc9 INFO [alembic.runtime.migration] Running stamp_revision -> 1e15e7122cc9 INFO [alembic.runtime.migration] Running stamp_revision -> 1e15e7122cc9 INFO [alembic.runtime.migration] Running stamp_revision -> 1e15e7122cc9 INFO [alembic.runtime.migration] Context impl SQLiteImpl. INFO [alembic.runtime.migration] Will assume non-transactional DDL. INFO [alembic.runtime.migration] Running stamp_revision -> 1e15e7122cc9 INFO [alembic.runtime.migration] Running stamp_revision -> 1e15e7122cc9 INFO [alembic.runtime.migration] Running stamp_revision -> 1e15e7122cc9 INFO [alembic.runtime.migration] Context impl SQLiteImpl. INFO [alembic.runtime.migration] Will assume non-transactional DDL. Error while running foo: bar. INFO [alembic.runtime.migration] Context impl SQLiteImpl. INFO [alembic.runtime.migration] Will assume non-transactional DDL. /usr/lib/python2.7/site-packages/oslo_serialization/jsonutils.py:192: UserWarning: Cannot convert to primitive, will raise ValueError instead of warning in version 3.0 "instead of warning in version 3.0" % (value,)) INFO [alembic.runtime.migration] Context impl SQLiteImpl. INFO [alembic.runtime.migration] Will assume non-transactional DDL. /usr/lib/python2.7/site-packages/oslo_serialization/jsonutils.py:192: UserWarning: Cannot convert to primitive, will raise ValueError instead of warning in version 3.0 "instead of warning in version 3.0" % (value,)) "max-count" must be a positive value. INFO [alembic.runtime.migration] Context impl SQLiteImpl. INFO [alembic.runtime.migration] Will assume non-transactional DDL. INFO [alembic.runtime.migration] Context impl SQLiteImpl. INFO [alembic.runtime.migration] Will assume non-transactional DDL. 2019-06-06 07:02:13.531 15088 INFO alembic.runtime.migration [req-8596da5f-7f27-4a41-aee9-acb7601e59f6 - - - - -] Context impl SQLiteImpl. 2019-06-06 07:02:13.532 15088 INFO alembic.runtime.migration [req-8596da5f-7f27-4a41-aee9-acb7601e59f6 - - - - -] Will assume non-transactional DDL. POST: /v1/chassis {'uuid': 'e74c40e0-d825-11e2-a28f-0800200c9a66', 'description': 'data-center-1-chassis', 'extra': {'foo': 123}} /usr/lib/python2.7/site-packages/oslo_serialization/jsonutils.py:192: UserWarning: Cannot convert to primitive, will raise ValueError instead of warning in version 3.0 "instead of warning in version 3.0" % (value,)) GOT:Response: 201 Created Content-Type: application/json Location: http://localhost/v1/chassis/e74c40e0-d825-11e2-a28f-0800200c9a66 Openstack-Request-Id: req-412fe27b-8988-4177-8e01-ee5ca1401b9c X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"uuid": "e74c40e0-d825-11e2-a28f-0800200c9a66", "links": [{"href": "http://localhost/v1/chassis/e74c40e0-d825-11e2-a28f-0800200c9a66", "rel": "self"}, {"href": "http://localhost/chassis/e74c40e0-d825-11e2-a28f-0800200c9a66", "rel": "bookmark"}], "extra": {"foo": 123}, "created_at": "2019-06-06T07:02:13.754447+00:00", "updated_at": null, "nodes": [{"href": "http://localhost/v1/chassis/e74c40e0-d825-11e2-a28f-0800200c9a66/nodes", "rel": "self"}, {"href": "http://localhost/chassis/e74c40e0-d825-11e2-a28f-0800200c9a66/nodes", "rel": "bookmark"}], "description": "data-center-1-chassis"} GET: /v1/chassis/e74c40e0-d825-11e2-a28f-0800200c9a66 {} GOT:{u'uuid': u'e74c40e0-d825-11e2-a28f-0800200c9a66', u'links': [{u'href': u'http://localhost/v1/chassis/e74c40e0-d825-11e2-a28f-0800200c9a66', u'rel': u'self'}, {u'href': u'http://localhost/chassis/e74c40e0-d825-11e2-a28f-0800200c9a66', u'rel': u'bookmark'}], u'extra': {u'foo': 123}, u'created_at': u'2019-06-06T07:02:13.754447+00:00', u'updated_at': None, u'nodes': [{u'href': u'http://localhost/v1/chassis/e74c40e0-d825-11e2-a28f-0800200c9a66/nodes', u'rel': u'self'}, {u'href': u'http://localhost/chassis/e74c40e0-d825-11e2-a28f-0800200c9a66/nodes', u'rel': u'bookmark'}], u'description': u'data-center-1-chassis'} {0} ironic.tests.unit.api.controllers.v1.test_chassis.TestPost.test_create_chassis_doesnt_contain_id [0.401345s] ... ok GET: /v1/conductors?sort_key=alive {} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-0f9facd0-01fd-48dc-8983-cc0372b775af X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"The sort_key value alive is an invalid field for sorting\"}"} GET: /v1/conductors?sort_key=drivers {} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-a962d677-e1a2-4fc2-ae71-20aba5be089b X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"The sort_key value drivers is an invalid field for sorting\"}"} {0} ironic.tests.unit.api.controllers.v1.test_conductor.TestListConductors.test_sort_key_invalid [0.102215s] ... ok /usr/lib/python2.7/site-packages/oslo_serialization/jsonutils.py:192: UserWarning: Cannot convert to primitive, will raise ValueError instead of warning in version 3.0 "instead of warning in version 3.0" % (value,)) PATCH: /v1/deploy_templates/363498ee-a5a3-454b-90f6-547577267ccf [{'path': '/steps/0', 'value': {'interface': 'raid', 'priority': 10, 'step': 'create_configuration0', 'args': {}}, 'op': 'add'}, {'path': '/steps/1', 'value': {'interface': 'raid', 'priority': 10, 'step': 'create_configuration1', 'args': {}}, 'op': 'add'}, {'path': '/steps/2', 'value': {'interface': 'raid', 'priority': 10, 'step': 'create_configuration2', 'args': {}}, 'op': 'add'}] GOT:Response: 200 OK Content-Type: application/json Openstack-Request-Id: req-33b3fd05-1087-4a0a-af0e-603531e896a1 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"uuid": "363498ee-a5a3-454b-90f6-547577267ccf", "links": [{"href": "http://localhost/v1/deploy_templates/363498ee-a5a3-454b-90f6-547577267ccf", "rel": "self"}, {"href": "http://localhost/deploy_templates/363498ee-a5a3-454b-90f6-547577267ccf", "rel": "bookmark"}], "extra": {}, "created_at": "2019-06-06T07:02:13.921262+00:00", "updated_at": null, "steps": [{"interface": "raid", "priority": 10, "step": "create_configuration0", "args": {}}, {"interface": "raid", "priority": 10, "step": "create_configuration1", "args": {}}, {"interface": "raid", "priority": 10, "step": "create_configuration2", "args": {}}, {"interface": "raid", "priority": 10, "step": "create_configuration", "args": {"logical_disks": []}}], "name": "CUSTOM_DT1"} {0} ironic.tests.unit.api.controllers.v1.test_deploy_template.TestPatch.test_add_multi [0.093357s] ... ok PATCH: /v1/deploy_templates/b6a2c266-5f0f-493a-8b0c-f3b9f5b244e6 [{'path': '/name', 'op': 'remove'}] GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-df7e7e79-3801-4e84-9f6a-504723872f4b X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"'/name' is a mandatory attribute and can not be removed\"}"} {0} ironic.tests.unit.api.controllers.v1.test_deploy_template.TestPatch.test_remove_name [0.079602s] ... ok PATCH: /v1/deploy_templates/d5d80875-4266-456b-8580-5cf5accff952 [{'path': '/steps/0', 'value': {'interface': 'raid', 'priority': 11, 'step': 'create_configuration0', 'args': {}}, 'op': 'replace'}, {'path': '/steps/1', 'value': {'interface': 'raid', 'priority': 11, 'step': 'create_configuration1', 'args': {}}, 'op': 'replace'}, {'path': '/steps/2', 'value': {'interface': 'raid', 'priority': 11, 'step': 'create_configuration2', 'args': {}}, 'op': 'replace'}] GOT:Response: 200 OK Content-Type: application/json Openstack-Request-Id: req-97a52ee1-9f3b-46c5-8620-e4104c8df5fb X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"uuid": "d5d80875-4266-456b-8580-5cf5accff952", "links": [{"href": "http://localhost/v1/deploy_templates/d5d80875-4266-456b-8580-5cf5accff952", "rel": "self"}, {"href": "http://localhost/deploy_templates/d5d80875-4266-456b-8580-5cf5accff952", "rel": "bookmark"}], "extra": {}, "created_at": "2019-06-06T07:02:14.102335+00:00", "updated_at": null, "steps": [{"interface": "raid", "priority": 11, "step": "create_configuration0", "args": {}}, {"interface": "raid", "priority": 11, "step": "create_configuration1", "args": {}}, {"interface": "raid", "priority": 11, "step": "create_configuration2", "args": {}}], "name": "CUSTOM_DT2"} {0} ironic.tests.unit.api.controllers.v1.test_deploy_template.TestPatch.test_replace_multi [0.082232s] ... ok PATCH: /v1/deploy_templates/5935652f-21df-4a7a-b3a5-c53f1a732d17 [{'path': '/steps/0/interface', 'value': 'foo', 'op': 'replace'}] GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-88e8425a-57ed-4ccc-820b-13553397e33e X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Invalid input for field/attribute interface. Value: 'foo'. Value should be one of: bios, management, raid, power, deploy\"}"} {0} ironic.tests.unit.api.controllers.v1.test_deploy_template.TestPatch.test_replace_step_invalid_interface [0.066210s] ... ok POST: /v1/deploy_templates {'extra': {}, 'steps': [{'priority': -1, 'interface': 'raid', 'step': 'create_configuration', 'args': {'logical_disks': []}}], 'uuid': 'bc878e03-e27e-4942-a150-59cc6813d994', 'name': u'CUSTOM_DT1'} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-b2931034-30fc-40cb-b1ee-78d1e86ef65d X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Invalid input for field/attribute priority. Value: '-1'. Value should be greater or equal to 0\"}"} {0} ironic.tests.unit.api.controllers.v1.test_deploy_template.TestPost.test_create_invalid_step_field_negative_priority [0.061048s] ... ok POST: /v1/deploy_templates {'extra': {}, 'steps': [{'priority': 10, 'step': 'create_configuration', 'args': {'logical_disks': []}}], 'uuid': 'd31264fb-14c0-4028-8116-949b5b7a54cc', 'name': u'CUSTOM_DT1'} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-73f7bbba-f2cf-4e05-9b71-944e2d47415e X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Invalid input for field/attribute interface. Value: 'None'. Mandatory field missing.\"}"} {0} ironic.tests.unit.api.controllers.v1.test_deploy_template.TestPost.test_create_no_mandatory_step_field_interface [0.078413s] ... ok GET: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123?fields=conductor_group {} GOT:{u'conductor_group': u'', u'links': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'bookmark'}]} {0} ironic.tests.unit.api.controllers.v1.test_node.TestListNodes.test_get_conductor_group_fields [0.120347s] ... ok GET: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states/console {} GOT:{u'console_enabled': True, u'console_info': {u'test': u'test-data'}} {0} ironic.tests.unit.api.controllers.v1.test_node.TestListNodes.test_get_console_information [0.081340s] ... ok GET: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/portgroups {} GOT:{u'portgroups': [{u'address': u'52:54:00:cf:2d:30', u'uuid': u'2e01c98a-e0a6-40b0-8df7-bcc886932ffd', u'links': [{u'href': u'http://localhost/v1/portgroups/2e01c98a-e0a6-40b0-8df7-bcc886932ffd', u'rel': u'self'}, {u'href': u'http://localhost/portgroups/2e01c98a-e0a6-40b0-8df7-bcc886932ffd', u'rel': u'bookmark'}], u'name': u'pg-0'}, {u'address': u'52:54:00:cf:2d:31', u'uuid': u'585fc962-cb48-4017-95ef-a4f4a05758c0', u'links': [{u'href': u'http://localhost/v1/portgroups/585fc962-cb48-4017-95ef-a4f4a05758c0', u'rel': u'self'}, {u'href': u'http://localhost/portgroups/585fc962-cb48-4017-95ef-a4f4a05758c0', u'rel': u'bookmark'}], u'name': u'pg-1'}]} GET: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/portgroups?limit=1 {} GOT:{u'portgroups': [{u'address': u'52:54:00:cf:2d:30', u'uuid': u'2e01c98a-e0a6-40b0-8df7-bcc886932ffd', u'links': [{u'href': u'http://localhost/v1/portgroups/2e01c98a-e0a6-40b0-8df7-bcc886932ffd', u'rel': u'self'}, {u'href': u'http://localhost/portgroups/2e01c98a-e0a6-40b0-8df7-bcc886932ffd', u'rel': u'bookmark'}], u'name': u'pg-0'}], u'next': u'http://localhost/v1/portgroups?sort_dir=asc&sort_key=id&limit=1&marker=2e01c98a-e0a6-40b0-8df7-bcc886932ffd'} {0} ironic.tests.unit.api.controllers.v1.test_node.TestListNodes.test_portgroups_subresource [0.184191s] ... ok GET: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/portgroups {} GOT:Response: 404 Not Found Content-Type: application/json {"error_message": "{\"code\": 404, \"description\": \"\", \"title\": \"Not Found\"}"} {0} ironic.tests.unit.api.controllers.v1.test_node.TestListNodes.test_portgroups_subresource_old_api_version [0.054938s] ... ok GET: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123 {} GOT:{u'target_power_state': None, u'automated_clean': None, u'inspect_interface': None, u'links': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'bookmark'}], u'target_provision_state': None, u'deploy_step': {}, u'storage_interface': None, u'conductor_group': u'', u'protected_reason': None, u'maintenance_reason': None, u'states': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states', u'rel': u'bookmark'}], u'traits': [], u'provision_state': u'available', u'clean_step': {}, u'vendor_interface': None, u'uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'console_enabled': False, u'extra': {}, u'raid_config': {}, u'provision_updated_at': None, u'power_state': None, u'last_error': None, u'target_raid_config': {}, u'maintenance': False, u'network_interface': None, u'inspection_started_at': None, u'inspection_finished_at': None, u'description': None, u'conductor': u'fake.conductor', u'driver': u'fake-hardware', u'power_interface': None, u'updated_at': None, u'volume': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/volume', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/volume', u'rel': u'bookmark'}], u'raid_interface': None, u'rescue_interface': None, u'boot_interface': None, u'reservation': None, u'management_interface': None, u'properties': {u'memory_mb': u'4096', u'cpu_arch': u'x86_64', u'local_gb': u'10', u'cpus': u'8'}, u'bios_interface': None, u'instance_uuid': None, u'name': None, u'driver_info': {u'ssh_password': u'******', u'ssh_key_contents': u'******'}, u'resource_class': None, u'fault': None, u'created_at': u'2019-06-06T07:02:14.838012+00:00', u'portgroups': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/portgroups', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/portgroups', u'rel': u'bookmark'}], u'deploy_interface': None, u'instance_info': {u'foo': u'bar', u'image_url': u'******', u'configdrive': u'******'}, u'console_interface': None, u'protected': False, u'driver_internal_info': {u'private_state': u'secret value'}, u'chassis_uuid': u'e74c40e0-d825-11e2-a28f-0800200c9a66', u'owner': None, u'ports': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'bookmark'}], u'allocation_uuid': None} {0} ironic.tests.unit.api.controllers.v1.test_node.TestListNodes.test_ssh_creds_masked [0.093792s] ... ok PATCH: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/portgroups/9bb50f13-0b8d-4ade-ad2d-d91fefdef9cc [{'path': '/extra/foo', 'value': 'bar', 'op': 'add'}] GOT:Response: 403 Forbidden Content-Type: application/json Openstack-Request-Id: req-8b4e008e-85da-44a7-b0e8-9b27497d3deb X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.24 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Operation not permitted.\"}"} {0} ironic.tests.unit.api.controllers.v1.test_node.TestPatch.test_patch_portgroups_subresource [0.075520s] ... ok PATCH: /v1/nodes/0a1cd833-ec1d-4b3e-938e-f15015bd2457 [{'path': '/storage_interface', 'value': 'cinder', 'op': 'add'}] GOT:Response: 406 Not Acceptable Content-Type: application/json Openstack-Request-Id: req-df81ea72-cbfe-4aec-9a73-4d84b4cd2dec X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.32 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Request not acceptable.\"}"} {0} ironic.tests.unit.api.controllers.v1.test_node.TestPatch.test_update_storage_interface_old_api [0.088387s] ... ok POST: /v1/nodes {'instance_uuid': None, 'uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123', 'driver_info': {'fake_password': 'fakepass', 'foo': 'bar'}, 'resource_class': 'class2', 'extra': {}, 'driver': 'fake-hardware', 'properties': {'memory_mb': '4096', 'cpu_arch': 'x86_64', 'local_gb': '10', 'cpus': '8'}, 'maintenance': False, 'chassis_uuid': 'e74c40e0-d825-11e2-a28f-0800200c9a66', 'instance_info': {'foo': 'bar', 'image_url': 'http://example.com/test_image_url', 'configdrive': 'TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQ='}} GOT:Response: 201 Created Content-Type: application/json Location: http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123 Openstack-Request-Id: req-321662a4-9db8-4290-9ff4-5cfa86da28f8 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.21 {"target_power_state": null, "links": [{"href": "http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "rel": "self"}, {"href": "http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "rel": "bookmark"}], "target_provision_state": null, "last_error": null, "updated_at": null, "maintenance_reason": null, "states": [{"href": "http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states", "rel": "self"}, {"href": "http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states", "rel": "bookmark"}], "provision_state": "enroll", "clean_step": {}, "uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "console_enabled": false, "extra": {}, "raid_config": {}, "provision_updated_at": null, "power_state": null, "target_raid_config": {}, "network_interface": "flat", "inspection_started_at": null, "inspection_finished_at": null, "maintenance": false, "driver": "fake-hardware", "reservation": null, "properties": {"memory_mb": "4096", "cpu_arch": "x86_64", "local_gb": "10", "cpus": "8"}, "instance_uuid": null, "name": null, "driver_info": {"fake_password": "******", "foo": "bar"}, "resource_class": "class2", "created_at": "2019-06-06T07:02:15.143608+00:00", "ports": [{"href": "http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports", "rel": "self"}, {"href": "http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports", "rel": "bookmark"}], "driver_internal_info": {}, "chassis_uuid": "e74c40e0-d825-11e2-a28f-0800200c9a66", "instance_info": {"foo": "bar", "image_url": "******", "configdrive": "******"}} GET: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123 {} GOT:{u'target_power_state': None, u'links': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'bookmark'}], u'target_provision_state': None, u'last_error': None, u'updated_at': None, u'maintenance_reason': None, u'states': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states', u'rel': u'bookmark'}], u'provision_state': u'enroll', u'clean_step': {}, u'uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'console_enabled': False, u'extra': {}, u'raid_config': {}, u'provision_updated_at': None, u'power_state': None, u'target_raid_config': {}, u'network_interface': u'flat', u'inspection_started_at': None, u'inspection_finished_at': None, u'maintenance': False, u'driver': u'fake-hardware', u'reservation': None, u'properties': {u'memory_mb': u'4096', u'cpu_arch': u'x86_64', u'local_gb': u'10', u'cpus': u'8'}, u'instance_uuid': None, u'name': None, u'driver_info': {u'fake_password': u'******', u'foo': u'bar'}, u'resource_class': u'class2', u'created_at': u'2019-06-06T07:02:15.143608+00:00', u'instance_info': {u'foo': u'bar', u'image_url': u'******', u'configdrive': u'******'}, u'driver_internal_info': {}, u'chassis_uuid': u'e74c40e0-d825-11e2-a28f-0800200c9a66', u'ports': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'bookmark'}]} {0} ironic.tests.unit.api.controllers.v1.test_node.TestPost.test_create_node_explicit_resource_class [0.143427s] ... ok 2019-06-06 07:02:13.535 15091 INFO alembic.runtime.migration [req-c1dc1640-5089-4aae-9a4d-7556b81d4f27 - - - - -] Context impl SQLiteImpl. 2019-06-06 07:02:13.536 15091 INFO alembic.runtime.migration [req-c1dc1640-5089-4aae-9a4d-7556b81d4f27 - - - - -] Will assume non-transactional DDL. {3} ironic.tests.unit.api.controllers.test_base.TestVersion.test_equals [0.261979s] ... ok POST: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/vendor_passthru/test {'foo': 'bar'} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-a9a7c5d3-2413-4abd-941c-aacfe0ed789c X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Driver fake-hardware does not support test (disabled or not implemented).\"}"} {0} ironic.tests.unit.api.controllers.v1.test_node.TestPost.test_vendor_passthru_no_such_method [0.077909s] ... ok PUT: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states/provision {'target': 'manage'} GOT:Response: 202 Accepted Location: http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states Openstack-Request-Id: req-11024372-3d4e-4652-abe4-8ef8a064ca6e X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.17 DELETE: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/allocation GOT:Response: 204 No Content Openstack-Request-Id: req-ccbb2124-84a5-480c-88bd-4dbbf51b6093 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {0} ironic.tests.unit.api.controllers.v1.test_node.TestPut.test_manage_from_adoptfail [0.102660s] ... ok {3} ironic.tests.unit.api.controllers.v1.test_allocation.TestDelete.test_delete_allocation_by_node [0.190711s] ... ok PUT: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states/provision {'target': 'active'} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-1cce5871-0018-41e2-8787-56d6f6285a06 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"The provisioning operation can't be performed on node 1be26c0b-03f2-4d2e-ae87-c02d7f33c123 because it's in maintenance mode.\"}"} {0} ironic.tests.unit.api.controllers.v1.test_node.TestPut.test_provision_node_in_maintenance_fail [0.107547s] ... ok POST: /v1/allocations {'uuid': '3108d928-4005-4b2e-a5f0-2e9e0cb86603', 'resource_class': 'baremetal', 'extra': {}, 'traits': [], 'candidate_nodes': [], 'name': 'aa:bb_cc'} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-d9384ccd-1162-4652-bd9a-bad6ca8001ff X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Cannot create allocation with invalid name 'aa:bb_cc'\"}"} {3} ironic.tests.unit.api.controllers.v1.test_allocation.TestPost.test_create_allocation_name_invalid [0.049786s] ... ok PUT: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states/provision {'target': 'deleted'} GOT:Response: 202 Accepted Location: http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states Openstack-Request-Id: req-174a9236-f3a3-435f-8882-c686d6eea47c X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {0} ironic.tests.unit.api.controllers.v1.test_node.TestPut.test_provision_with_tear_down_in_progress_deploywait [0.113491s] ... ok DELETE: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/traits GOT:Response: 404 Not Found Content-Type: application/json {"error_message": "{\"code\": 404, \"description\": \"\", \"title\": \"Not Found\"}"} {0} ironic.tests.unit.api.controllers.v1.test_node.TestTraits.test_delete_all_traits_fails_with_bad_version [0.069742s] ... ok GET: /v1/ports?detail=True {} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-806e4487-bc75-476b-82b5-89bc47443816 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Invalid query parameter ?detail=True received.\"}"} {0} ironic.tests.unit.api.controllers.v1.test_port.TestListPorts.test_detail_using_query_old_version [0.072004s] ... ok GET: /v1/chassis/3fe12e99-0e16-460d-9365-10e35895a51e {} GOT:{u'uuid': u'3fe12e99-0e16-460d-9365-10e35895a51e', u'links': [{u'href': u'http://localhost/v1/chassis/3fe12e99-0e16-460d-9365-10e35895a51e', u'rel': u'self'}, {u'href': u'http://localhost/chassis/3fe12e99-0e16-460d-9365-10e35895a51e', u'rel': u'bookmark'}], u'extra': {}, u'created_at': u'2019-06-06T07:02:13.939022+00:00', u'updated_at': None, u'nodes': [{u'href': u'http://localhost/v1/chassis/3fe12e99-0e16-460d-9365-10e35895a51e/nodes', u'rel': u'self'}, {u'href': u'http://localhost/chassis/3fe12e99-0e16-460d-9365-10e35895a51e/nodes', u'rel': u'bookmark'}], u'description': u'data-center-1-chassis'} GET: /v1/chassis/3fe12e99-0e16-460d-9365-10e35895a51e {} GOT:{u'uuid': u'3fe12e99-0e16-460d-9365-10e35895a51e', u'links': [{u'href': u'http://localhost/v1/chassis/3fe12e99-0e16-460d-9365-10e35895a51e', u'rel': u'self'}, {u'href': u'http://localhost/chassis/3fe12e99-0e16-460d-9365-10e35895a51e', u'rel': u'bookmark'}], u'extra': {}, u'created_at': u'2019-06-06T07:02:13.939022+00:00', u'updated_at': None, u'nodes': [{u'href': u'http://localhost/v1/chassis/3fe12e99-0e16-460d-9365-10e35895a51e/nodes', u'rel': u'self'}, {u'href': u'http://localhost/chassis/3fe12e99-0e16-460d-9365-10e35895a51e/nodes', u'rel': u'bookmark'}], u'description': u'data-center-1-chassis'} GET: /chassis/3fe12e99-0e16-460d-9365-10e35895a51e {} GOT:{u'uuid': u'3fe12e99-0e16-460d-9365-10e35895a51e', u'links': [{u'href': u'http://localhost/v1/chassis/3fe12e99-0e16-460d-9365-10e35895a51e', u'rel': u'self'}, {u'href': u'http://localhost/chassis/3fe12e99-0e16-460d-9365-10e35895a51e', u'rel': u'bookmark'}], u'extra': {}, u'created_at': u'2019-06-06T07:02:13.939022+00:00', u'updated_at': None, u'nodes': [{u'href': u'http://localhost/v1/chassis/3fe12e99-0e16-460d-9365-10e35895a51e/nodes', u'rel': u'self'}, {u'href': u'http://localhost/chassis/3fe12e99-0e16-460d-9365-10e35895a51e/nodes', u'rel': u'bookmark'}], u'description': u'data-center-1-chassis'} 2019-06-06 07:02:13.799 15103 INFO alembic.runtime.migration [req-3269cc31-5b2e-4e89-aa2d-558c6a8eb312 - - - - -] Context impl SQLiteImpl. 2019-06-06 07:02:13.800 15103 INFO alembic.runtime.migration [req-3269cc31-5b2e-4e89-aa2d-558c6a8eb312 - - - - -] Will assume non-transactional DDL. {3} ironic.tests.unit.api.controllers.v1.test_chassis.TestListChassis.test_links [0.091114s] ... ok {15} ironic.tests.unit.api.controllers.test_base.TestVersion.test_parse_no_header [0.276392s] ... ok GET: /v1/ports {} GOT:{u'ports': [{u'uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c781', u'links': [{u'href': u'http://localhost/v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781', u'rel': u'self'}, {u'href': u'http://localhost/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781', u'rel': u'bookmark'}], u'address': u'52:54:00:cf:2d:31'}]} {0} ironic.tests.unit.api.controllers.v1.test_port.TestListPorts.test_one [0.086985s] ... ok {15} ironic.tests.unit.api.controllers.test_base.TestVersion.test_repr [0.029584s] ... ok GET: /v1/conductors?fields=hostname,alive {} GOT:{u'conductors': [{u'hostname': u'rocky.rocks', u'alive': True, u'links': [{u'href': u'http://localhost/v1/conductors/rocky.rocks', u'rel': u'self'}, {u'href': u'http://localhost/conductors/rocky.rocks', u'rel': u'bookmark'}]}, {u'hostname': u'stein.rocks', u'alive': True, u'links': [{u'href': u'http://localhost/v1/conductors/stein.rocks', u'rel': u'self'}, {u'href': u'http://localhost/conductors/stein.rocks', u'rel': u'bookmark'}]}]} {3} ironic.tests.unit.api.controllers.v1.test_conductor.TestListConductors.test_get_collection_custom_fields [0.076011s] ... ok ERROR [ironic.drivers.modules.drac.bios] DRAC driver failed to delete the pending BIOS settings for node 1be26c0b-03f2-4d2e-ae87-c02d7f33c123. Reason: An unknown exception occurred. POST: /v1/ports {'local_link_connection': {'switch_info': 'switch1', 'port_id': 'Ethernet3/1', 'switch_id': '0a:1b:2c:3d:4e:5f'}, 'node_uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123', 'uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c781', 'extra': {'vif_port_id': 'e711d4aa-960c-45cc-af29-d61a8f988355'}, 'pxe_enabled': True, 'portgroup_uuid': '6eb02b44-18a3-4659-8c0b-8d2802581ae4', 'physical_network': None, 'address': '52:54:00:cf:2d:31', 'is_smartnic': False} GOT:Response: 409 Conflict Content-Type: application/json Openstack-Request-Id: req-324bf60c-bff0-42a1-8ee9-f1f4a3149042 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Port group 6eb02b44-18a3-4659-8c0b-8d2802581ae4 doesn't support standalone ports. This port cannot be created as a member of that port group because either 'extra/vif_port_id' was specified or 'pxe_enabled' was set to True.\"}"} GET: /v1/node/74896238-678d-47c5-bb86-ab043c1e1d6c/allocation {} GOT:Response: 404 Not Found Content-Type: application/json {"error_message": "{\"code\": 404, \"description\": \"\", \"title\": \"Not Found\"}"} {15} ironic.tests.unit.api.controllers.v1.test_allocation.TestListAllocations.test_by_node_invalid_node [0.129823s] ... ok GET: /v1/deploy_templates?sort_key=extra {} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-20b5749e-24d3-4291-a1ed-bae9040fc8fc X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"The sort_key value extra is an invalid field for sorting\"}"} GET: /v1/deploy_templates?sort_key=foo {} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-2ceb211f-ee9d-44e9-a95d-c9d2c185c00c X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"The sort_key value \\\"foo\\\" is an invalid field for sorting\"}"} GET: /v1/deploy_templates?sort_key=steps {} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-abf2bb95-459d-48b6-be06-27f36360398e X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"The sort_key value steps is an invalid field for sorting\"}"} 2019-06-06 07:02:13.531 15090 INFO alembic.runtime.migration [req-deecb76c-7588-4fec-85a0-82a42eeaedc1 - - - - -] Context impl SQLiteImpl. 2019-06-06 07:02:13.532 15090 INFO alembic.runtime.migration [req-deecb76c-7588-4fec-85a0-82a42eeaedc1 - - - - -] Will assume non-transactional DDL. DELETE: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/allocation GOT:Response: 404 Not Found Content-Type: application/json {"error_message": "{\"code\": 404, \"description\": \"\", \"title\": \"Not Found\"}"} 2019-06-06 07:02:13.719 15095 INFO alembic.runtime.migration [req-6aff0f9e-faa8-4c39-bfa1-aafb4c000f5b - - - - -] Context impl SQLiteImpl. 2019-06-06 07:02:13.720 15095 INFO alembic.runtime.migration [req-6aff0f9e-faa8-4c39-bfa1-aafb4c000f5b - - - - -] Will assume non-transactional DDL. /usr/lib/python2.7/site-packages/oslo_serialization/jsonutils.py:192: UserWarning: Cannot convert to primitive, will raise ValueError instead of warning in version 3.0 "instead of warning in version 3.0" % (value,)) {3} ironic.tests.unit.api.controllers.v1.test_deploy_template.TestListDeployTemplates.test_sort_key_invalid [0.066131s] ... ok {2} ironic.tests.unit.api.controllers.v1.test_allocation.TestDelete.test_delete_allocation_by_node_invalid_api_version [0.372633s] ... ok {7} ironic.tests.unit.api.controllers.test_base.TestVersion.test_not_equals [0.243744s] ... ok {0} ironic.tests.unit.api.controllers.v1.test_port.TestPost.test_create_port_vif_pxe_portgroup_nostandalone_ports [0.103445s] ... ok GET: /v1/allocations/13e03e0f-2b07-482d-9ef1-b40ad179d58e?fields=resource_class,extra {} GOT:{u'extra': {}, u'links': [{u'href': u'http://localhost/v1/allocations/13e03e0f-2b07-482d-9ef1-b40ad179d58e', u'rel': u'self'}, {u'href': u'http://localhost/allocations/13e03e0f-2b07-482d-9ef1-b40ad179d58e', u'rel': u'bookmark'}], u'resource_class': u'baremetal'} {15} ironic.tests.unit.api.controllers.v1.test_allocation.TestListAllocations.test_get_one_custom_fields [0.107479s] ... ok GET: /v1/allocations/ba!na!na! {} GOT:Response: 404 Not Found Content-Type: application/json {"error_message": "{\"code\": 404, \"description\": \"The API version does not allow allocations\", \"title\": \"Not Found\"}"} {15} ironic.tests.unit.api.controllers.v1.test_allocation.TestListAllocations.test_get_one_invalid_api_version_without_check [0.044804s] ... ok ERROR [ironic.drivers.modules.drac.bios] DRAC driver failed to set the BIOS settings for node 1be26c0b-03f2-4d2e-ae87-c02d7f33c123. Reason: An unknown exception occurred. POST: /v1/deploy_templates {'extra': {}, 'steps': [{'priority': 10, 'interface': 'raid', 'args': {'logical_disks': []}}], 'uuid': '64777025-18b2-42b8-a3b5-ee03e17ea7c2', 'name': u'CUSTOM_DT1'} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-e8852539-7dc2-444b-96ad-13adafc1a4dd X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Invalid input for field/attribute step. Value: 'None'. Mandatory field missing.\"}"} {3} ironic.tests.unit.api.controllers.v1.test_deploy_template.TestPost.test_create_no_mandatory_step_field_step [0.048590s] ... ok GET: /v1/allocations/b14a6e9a-34a4-462c-9c23-ec4e5c51bbcb {} GOT:{u'node_uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'uuid': u'b14a6e9a-34a4-462c-9c23-ec4e5c51bbcb', u'links': [{u'href': u'http://localhost/v1/allocations/b14a6e9a-34a4-462c-9c23-ec4e5c51bbcb', u'rel': u'self'}, {u'href': u'http://localhost/allocations/b14a6e9a-34a4-462c-9c23-ec4e5c51bbcb', u'rel': u'bookmark'}], u'extra': {}, u'last_error': None, u'created_at': u'2019-06-06T07:02:13.973606+00:00', u'resource_class': u'baremetal', u'updated_at': None, u'traits': [], u'state': u'allocating', u'candidate_nodes': [], u'name': None} POST: /v1/allocations {'uuid': '4bef6a86-bc4f-44c7-8cc9-8870cccb716c', 'resource_class': 'baremetal', 'extra': {}, 'traits': ['CUSTOM_GPU', 'FOO_BAR'], 'candidate_nodes': [], 'name': None} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-04f5ffd8-351a-444d-97cf-f0ca72be29bd X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Invalid trait. A valid trait must be no longer than 255 characters. Standard traits are defined in the os_traits library. A custom trait must start with the prefix CUSTOM_ and use the following characters: A-Z, 0-9 and _\"}"} {7} ironic.tests.unit.api.controllers.v1.test_allocation.TestListAllocations.test_get_one [0.192529s] ... ok {2} ironic.tests.unit.api.controllers.v1.test_allocation.TestPost.test_create_allocation_invalid_trait [0.054073s] ... ok POST: /v1/allocations {'uuid': 'ad05eede-dcc1-413d-bb9f-cbdc286e005d', 'resource_class': 'baremetal', 'extra': {}, 'traits': [], 'candidate_nodes': ['1a1a1a1a-2b2b-3c3c-4d4d-5e5e5e5e5e5e'], 'name': None} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-d79a77c7-4f66-45f4-94be-7c6663980b45 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Nodes cannot be found: 1a1a1a1a-2b2b-3c3c-4d4d-5e5e5e5e5e5e\"}"} {15} ironic.tests.unit.api.controllers.v1.test_allocation.TestPost.test_create_allocation_candidate_node_not_found [0.053041s] ... ok GET: /v1/portgroups/?limit=3 {} GOT:{u'portgroups': [{u'address': u'52:54:00:cf:2d:30', u'uuid': u'a711d5d4-3b3d-4fe0-818d-c1b496135e5a', u'links': [{u'href': u'http://localhost/v1/portgroups/a711d5d4-3b3d-4fe0-818d-c1b496135e5a', u'rel': u'self'}, {u'href': u'http://localhost/portgroups/a711d5d4-3b3d-4fe0-818d-c1b496135e5a', u'rel': u'bookmark'}], u'name': u'portgroup0'}, {u'address': u'52:54:00:cf:2d:31', u'uuid': u'362cf532-3b39-465d-8573-13d1ef388fa2', u'links': [{u'href': u'http://localhost/v1/portgroups/362cf532-3b39-465d-8573-13d1ef388fa2', u'rel': u'self'}, {u'href': u'http://localhost/portgroups/362cf532-3b39-465d-8573-13d1ef388fa2', u'rel': u'bookmark'}], u'name': u'portgroup1'}, {u'address': u'52:54:00:cf:2d:32', u'uuid': u'edc06bca-c2c7-4a45-a4f3-2567e0992077', u'links': [{u'href': u'http://localhost/v1/portgroups/edc06bca-c2c7-4a45-a4f3-2567e0992077', u'rel': u'self'}, {u'href': u'http://localhost/portgroups/edc06bca-c2c7-4a45-a4f3-2567e0992077', u'rel': u'bookmark'}], u'name': u'portgroup2'}], u'next': u'http://localhost/v1/portgroups?sort_dir=asc&sort_key=id&limit=3&marker=edc06bca-c2c7-4a45-a4f3-2567e0992077'} {0} ironic.tests.unit.api.controllers.v1.test_portgroup.TestListPortgroups.test_collection_links [0.129455s] ... ok GET: /v1/allocations/6aacc680-ddd2-47b6-b2f8-d8c3f1823889 {} GOT:Response: 404 Not Found Content-Type: application/json {"error_message": "{\"code\": 404, \"description\": \"The API version does not allow allocations\", \"title\": \"Not Found\"}"} {12} ironic.tests.unit.api.controllers.v1.test_allocation.TestAllocationObject.test_allocation_init [0.100982s] ... ok DELETE: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123 GOT:Response: 404 Not Found Content-Type: application/json Openstack-Request-Id: req-a3f4b91f-571f-4408-ba93-d7d89f56ee1e X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Node 1be26c0b-03f2-4d2e-ae87-c02d7f33c123 could not be found.\"}"} {7} ironic.tests.unit.api.controllers.v1.test_allocation.TestListAllocations.test_get_one_invalid_api_version [0.049444s] ... ok {3} ironic.tests.unit.api.controllers.v1.test_node.TestDelete.test_delete_node_not_found [0.047831s] ... ok 2019-06-06 07:02:13.875 15116 INFO alembic.runtime.migration [req-09b3e476-82ef-4396-90fd-8a2e4b533aeb - - - - -] Context impl SQLiteImpl. 2019-06-06 07:02:13.876 15116 INFO alembic.runtime.migration [req-09b3e476-82ef-4396-90fd-8a2e4b533aeb - - - - -] Will assume non-transactional DDL. DELETE: /v1/chassis/e40db94a-4349-4ccf-8c8c-d1b4d4eb989f GOT:Response: 404 Not Found Content-Type: application/json Openstack-Request-Id: req-4e45bd01-3100-423a-b165-b7b93233aee0 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Chassis e40db94a-4349-4ccf-8c8c-d1b4d4eb989f could not be found.\"}"} GET: /v1/chassis?fields=extra&limit=2 {} GOT:{u'chassis': [{u'links': [{u'href': u'http://localhost/v1/chassis/93d05b6b-1e76-433e-a112-b53f78b6f6c8', u'rel': u'self'}, {u'href': u'http://localhost/chassis/93d05b6b-1e76-433e-a112-b53f78b6f6c8', u'rel': u'bookmark'}], u'extra': {}}, {u'links': [{u'href': u'http://localhost/v1/chassis/35f3ff80-7a98-4985-82d7-0d5559ee3d0f', u'rel': u'self'}, {u'href': u'http://localhost/chassis/35f3ff80-7a98-4985-82d7-0d5559ee3d0f', u'rel': u'bookmark'}], u'extra': {}}], u'next': u'http://localhost/v1/chassis?sort_dir=asc&sort_key=id&limit=2&marker=35f3ff80-7a98-4985-82d7-0d5559ee3d0f'} {28} ironic.tests.unit.api.controllers.test_base.TestVersion.test_greaterthan [0.256523s] ... ok {15} ironic.tests.unit.api.controllers.v1.test_chassis.TestDelete.test_delete_chassis_not_found [0.052976s] ... ok {2} ironic.tests.unit.api.controllers.v1.test_chassis.TestListChassis.test_get_collection_pagination_no_uuid [0.071516s] ... ok {28} ironic.tests.unit.api.controllers.test_base.TestVersion.test_init [0.029368s] ... ok GET: /v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4/ports {} GOT:{u'ports': [{u'uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c781', u'links': [{u'href': u'http://localhost/v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781', u'rel': u'self'}, {u'href': u'http://localhost/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781', u'rel': u'bookmark'}], u'address': u'52:54:00:cf:2d:31'}]} {0} ironic.tests.unit.api.controllers.v1.test_portgroup.TestListPortgroups.test_get_all_ports_by_portgroup_uuid [0.096883s] ... ok 2019-06-06 07:02:13.914 15097 INFO alembic.runtime.migration [req-61e1ff9d-5066-4c84-9c7d-ce366523ef4e - - - - -] Context impl SQLiteImpl. 2019-06-06 07:02:13.916 15097 INFO alembic.runtime.migration [req-61e1ff9d-5066-4c84-9c7d-ce366523ef4e - - - - -] Will assume non-transactional DDL. POST: /v1/allocations {'uuid': 'cf67604d-236e-41d7-b6ce-08bd9a4697a1', 'resource_class': 'baremetal', 'extra': {}, 'traits': [], 'candidate_nodes': ['this/is/not a/node/name'], 'name': None} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-45583447-8740-4c48-832c-64d26e21bb8b X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Nodes cannot be found: this/is/not a/node/name\"}"} {30} ironic.tests.unit.api.controllers.v1.test_chassis.TestChassisObject.test_chassis_init [0.106607s] ... ok {9} ironic.tests.unit.api.controllers.v1.test_allocation.TestPost.test_create_allocation_candidate_node_invalid [0.281408s] ... ok GET: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123?fields=conductor_group {} GOT:Response: 406 Not Acceptable Content-Type: application/json Openstack-Request-Id: req-bb836403-1800-48f0-a048-4b65e4ab9d88 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.45 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Request not acceptable.\"}"} 2019-06-06 07:02:13.685 15104 INFO alembic.runtime.migration [req-df2c4941-19c7-4c60-bf29-4c5ce5fe2a9a - - - - -] Context impl SQLiteImpl. 2019-06-06 07:02:13.686 15104 INFO alembic.runtime.migration [req-df2c4941-19c7-4c60-bf29-4c5ce5fe2a9a - - - - -] Will assume non-transactional DDL. 2019-06-06 07:02:13.554 15100 INFO alembic.runtime.migration [req-ab2364e4-5c3c-4680-ae82-f217ac5a1f8b - - - - -] Context impl SQLiteImpl. 2019-06-06 07:02:13.555 15100 INFO alembic.runtime.migration [req-ab2364e4-5c3c-4680-ae82-f217ac5a1f8b - - - - -] Will assume non-transactional DDL. DELETE: /v1/allocations/ba!na!na1 GOT:Response: 405 Method Not Allowed Content-Type: application/json {"error_message": "{\"code\": 405, \"description\": \"The API version does not allow allocations\", \"title\": \"Method Not Allowed\"}"} {3} ironic.tests.unit.api.controllers.v1.test_node.TestListNodes.test_get_conductor_group_fields_invalid_api_version [0.067299s] ... ok {16} ironic.tests.unit.api.controllers.test_base.TestVersion.test_parse_headers_ok [0.239172s] ... ok {12} ironic.tests.unit.api.controllers.v1.test_allocation.TestDelete.test_delete_allocation_invalid_api_version_without_check [0.257938s] ... ok 2019-06-06 07:02:13.788 15109 INFO alembic.runtime.migration [req-16d07a0a-f2b7-4536-aad6-91b3c22d7d32 - - - - -] Context impl SQLiteImpl. 2019-06-06 07:02:13.789 15109 INFO alembic.runtime.migration [req-16d07a0a-f2b7-4536-aad6-91b3c22d7d32 - - - - -] Will assume non-transactional DDL. {21} ironic.tests.unit.api.controllers.test_base.TestVersion.test_repr_with_strings [0.241751s] ... ok DELETE: /v1/allocations/blah GOT:Response: 404 Not Found Content-Type: application/json Openstack-Request-Id: req-a62ec2eb-f9bf-45bf-aac9-27121504aeb7 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Allocation blah could not be found.\"}"} {28} ironic.tests.unit.api.controllers.v1.test_allocation.TestDelete.test_delete_allocation_by_name_not_existed [0.158318s] ... ok 2019-06-06 07:02:13.808 15093 INFO alembic.runtime.migration [req-fc55bd1e-fc29-4f16-bfe4-2f71cb548838 - - - - -] Context impl SQLiteImpl. 2019-06-06 07:02:13.810 15093 INFO alembic.runtime.migration [req-fc55bd1e-fc29-4f16-bfe4-2f71cb548838 - - - - -] Will assume non-transactional DDL. GET: /v1/allocations {} GOT:{u'allocations': []} {5} ironic.tests.unit.api.controllers.v1.test_allocation.TestListAllocations.test_empty [0.378885s] ... ok 2019-06-06 07:02:13.618 15101 INFO alembic.runtime.migration [req-682284b9-e881-4957-b7a7-d35633434ba2 - - - - -] Context impl SQLiteImpl. 2019-06-06 07:02:13.619 15101 INFO alembic.runtime.migration [req-682284b9-e881-4957-b7a7-d35633434ba2 - - - - -] Will assume non-transactional DDL. GET: /v1/allocations {} GOT:Response: 404 Not Found Content-Type: application/json {"error_message": "{\"code\": 404, \"description\": \"The API version does not allow allocations\", \"title\": \"Not Found\"}"} {13} ironic.tests.unit.api.controllers.v1.test_allocation.TestListAllocations.test_allocation_get_all_invalid_api_version [0.353270s] ... ok 2019-06-06 07:02:13.795 15111 INFO alembic.runtime.migration [req-edc2ea85-87aa-4faa-8ff3-7a69c083a208 - - - - -] Context impl SQLiteImpl. 2019-06-06 07:02:13.796 15111 INFO alembic.runtime.migration [req-edc2ea85-87aa-4faa-8ff3-7a69c083a208 - - - - -] Will assume non-transactional DDL. DELETE: /v1/allocations/alloc1 GOT:Response: 204 No Content Openstack-Request-Id: req-5e0061c7-227f-4071-b5f5-f44168b6c21c X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {23} ironic.tests.unit.api.controllers.v1.test_allocation.TestDelete.test_delete_allocation_by_name [0.391200s] ... ok DELETE: /v1/allocations/a8a33046-6d90-4dfa-8aa6-48682ad4f42b GOT:Response: 204 No Content Openstack-Request-Id: req-36fc791b-bc03-4c56-bfaf-e9fd18f251a1 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 2019-06-06 07:02:13.783 15098 INFO alembic.runtime.migration [req-1aa48705-fb00-4b9d-9b0b-911381209529 - - - - -] Context impl SQLiteImpl. 2019-06-06 07:02:13.784 15098 INFO alembic.runtime.migration [req-1aa48705-fb00-4b9d-9b0b-911381209529 - - - - -] Will assume non-transactional DDL. {21} ironic.tests.unit.api.controllers.v1.test_allocation.TestDelete.test_delete_allocation_by_id [0.185108s] ... ok {10} ironic.tests.unit.api.controllers.test_base.TestVersion.test_lessthan [0.243625s] ... ok 2019-06-06 07:02:13.912 15108 INFO alembic.runtime.migration [req-eae762d7-5bfd-4ce2-9a51-331c76df31df - - - - -] Context impl SQLiteImpl. 2019-06-06 07:02:13.914 15108 INFO alembic.runtime.migration [req-eae762d7-5bfd-4ce2-9a51-331c76df31df - - - - -] Will assume non-transactional DDL. GET: /v1/allocations?node=banana {} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-7784faf6-95e2-4ca4-b73d-cd1405eb6c77 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Node banana could not be found.\"}"} {20} ironic.tests.unit.api.controllers.v1.test_allocation.TestListAllocations.test_get_all_by_non_existing_node [0.398322s] ... ok PATCH: /v1/deploy_templates/5d3d6c01-b963-4132-a9b7-16a15758ccf7 [{'path': '/name', 'value': 'HW_CPU_X86_VMX', 'op': 'replace'}] GOT:Response: 200 OK Content-Type: application/json Openstack-Request-Id: req-0a41e3fb-8374-4e1f-986f-2731d7a153ea X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"uuid": "5d3d6c01-b963-4132-a9b7-16a15758ccf7", "links": [{"href": "http://localhost/v1/deploy_templates/5d3d6c01-b963-4132-a9b7-16a15758ccf7", "rel": "self"}, {"href": "http://localhost/deploy_templates/5d3d6c01-b963-4132-a9b7-16a15758ccf7", "rel": "bookmark"}], "extra": {}, "created_at": "2019-06-06T07:02:13.932529+00:00", "updated_at": null, "steps": [{"interface": "raid", "priority": 10, "step": "create_configuration", "args": {"logical_disks": []}}], "name": "HW_CPU_X86_VMX"} {2} ironic.tests.unit.api.controllers.v1.test_deploy_template.TestPatch.test_update_name_standard_trait [0.091212s] ... ok 2019-06-06 07:02:13.870 15118 INFO alembic.runtime.migration [req-6e6468d9-e0a8-4d6f-80b2-a82112b5fe68 - - - - -] Context impl SQLiteImpl. 2019-06-06 07:02:13.871 15118 INFO alembic.runtime.migration [req-6e6468d9-e0a8-4d6f-80b2-a82112b5fe68 - - - - -] Will assume non-transactional DDL. GET: /v1/chassis {} GOT:{u'chassis': [{u'uuid': u'e74c40e0-d825-11e2-a28f-0800200c9a66', u'links': [{u'href': u'http://localhost/v1/chassis/e74c40e0-d825-11e2-a28f-0800200c9a66', u'rel': u'self'}, {u'href': u'http://localhost/chassis/e74c40e0-d825-11e2-a28f-0800200c9a66', u'rel': u'bookmark'}], u'description': u'data-center-1-chassis'}]} {30} ironic.tests.unit.api.controllers.v1.test_chassis.TestListChassis.test_one [0.255360s] ... ok 2019-06-06 07:02:13.806 15114 INFO alembic.runtime.migration [req-74e4f4cc-d9a8-4e3a-bc27-bf6d51ee7622 - - - - -] Context impl SQLiteImpl. 2019-06-06 07:02:13.807 15114 INFO alembic.runtime.migration [req-74e4f4cc-d9a8-4e3a-bc27-bf6d51ee7622 - - - - -] Will assume non-transactional DDL. GET: /v1/allocations/110a92fb-94e5-49d0-94b5-1ceb39d3739a.json {} GOT:{u'node_uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'uuid': u'110a92fb-94e5-49d0-94b5-1ceb39d3739a', u'links': [{u'href': u'http://localhost/v1/allocations/110a92fb-94e5-49d0-94b5-1ceb39d3739a', u'rel': u'self'}, {u'href': u'http://localhost/allocations/110a92fb-94e5-49d0-94b5-1ceb39d3739a', u'rel': u'bookmark'}], u'extra': {}, u'last_error': None, u'created_at': u'2019-06-06T07:02:14.021137+00:00', u'resource_class': u'baremetal', u'updated_at': None, u'traits': [], u'state': u'allocating', u'candidate_nodes': [], u'name': None} {26} ironic.tests.unit.api.controllers.v1.test_allocation.TestListAllocations.test_get_one_with_json [0.401202s] ... ok GET: /v1/allocations/dcf48cba-de8c-4720-821f-0814f97ffafd {} GOT:{u'node_uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'uuid': u'dcf48cba-de8c-4720-821f-0814f97ffafd', u'links': [{u'href': u'http://localhost/v1/allocations/dcf48cba-de8c-4720-821f-0814f97ffafd', u'rel': u'self'}, {u'href': u'http://localhost/allocations/dcf48cba-de8c-4720-821f-0814f97ffafd', u'rel': u'bookmark'}], u'extra': {}, u'last_error': None, u'created_at': u'2019-06-06T07:02:13.823333+00:00', u'resource_class': u'baremetal', u'updated_at': None, u'traits': [], u'state': u'allocating', u'candidate_nodes': [], u'name': u'pg.json'} {12} ironic.tests.unit.api.controllers.v1.test_allocation.TestListAllocations.test_get_one_with_json_in_name [0.107999s] ... ok 2019-06-06 07:02:13.591 15099 INFO alembic.runtime.migration [req-b2ab80fe-cc90-4553-a03a-8d259020e9a0 - - - - -] Context impl SQLiteImpl. 2019-06-06 07:02:13.592 15099 INFO alembic.runtime.migration [req-b2ab80fe-cc90-4553-a03a-8d259020e9a0 - - - - -] Will assume non-transactional DDL. GET: /v1/allocations?sort_key=uuid {} GOT:{u'allocations': [{u'node_uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'uuid': u'0c730bf8-337b-4cf7-a3d4-7bf577ccff60', u'links': [{u'href': u'http://localhost/v1/allocations/0c730bf8-337b-4cf7-a3d4-7bf577ccff60', u'rel': u'self'}, {u'href': u'http://localhost/allocations/0c730bf8-337b-4cf7-a3d4-7bf577ccff60', u'rel': u'bookmark'}], u'extra': {}, u'last_error': None, u'created_at': u'2019-06-06T07:02:13.822339+00:00', u'resource_class': u'baremetal', u'updated_at': None, u'traits': [], u'state': u'allocating', u'candidate_nodes': [], u'name': u'allocation2'}, {u'node_uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'uuid': u'65bb8c7c-c239-4dad-a9cc-66e59df9ed13', u'links': [{u'href': u'http://localhost/v1/allocations/65bb8c7c-c239-4dad-a9cc-66e59df9ed13', u'rel': u'self'}, {u'href': u'http://localhost/allocations/65bb8c7c-c239-4dad-a9cc-66e59df9ed13', u'rel': u'bookmark'}], u'extra': {}, u'last_error': None, u'created_at': u'2019-06-06T07:02:13.818181+00:00', u'resource_class': u'baremetal', u'updated_at': None, u'traits': [], u'state': u'allocating', u'candidate_nodes': [], u'name': u'allocation1'}, {u'node_uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'uuid': u'a4b6719a-2028-492a-a363-9c97204f46b0', u'links': [{u'href': u'http://localhost/v1/allocations/a4b6719a-2028-492a-a363-9c97204f46b0', u'rel': u'self'}, {u'href': u'http://localhost/allocations/a4b6719a-2028-492a-a363-9c97204f46b0', u'rel': u'bookmark'}], u'extra': {}, u'last_error': None, u'created_at': u'2019-06-06T07:02:13.809927+00:00', u'resource_class': u'baremetal', u'updated_at': None, u'traits': [], u'state': u'allocating', u'candidate_nodes': [], u'name': u'allocation0'}]} {11} ironic.tests.unit.api.controllers.v1.test_allocation.TestListAllocations.test_sort_key [0.457329s] ... ok 2019-06-06 07:02:13.895 15115 INFO alembic.runtime.migration [req-85a2fe33-0966-45b6-a58f-5776df6477c2 - - - - -] Context impl SQLiteImpl. 2019-06-06 07:02:13.896 15115 INFO alembic.runtime.migration [req-85a2fe33-0966-45b6-a58f-5776df6477c2 - - - - -] Will assume non-transactional DDL. POST: /v1/allocations {'uuid': 'c56bada4-caf6-4f69-9191-80ef9b0eedce', 'resource_class': 'baremetal', 'extra': {}, 'traits': [], 'candidate_nodes': [], 'name': None} GOT:Response: 500 Internal Server Error Content-Type: application/json Openstack-Request-Id: req-1b2a815a-b4bd-42b0-af90-1ea6cf3a5728 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Server\", \"faultstring\": \"\"}"} 2019-06-06 07:02:13.897 15105 INFO alembic.runtime.migration [req-626d353c-495e-473a-96ca-eaa08d87c085 - - - - -] Context impl SQLiteImpl. 2019-06-06 07:02:13.898 15105 INFO alembic.runtime.migration [req-626d353c-495e-473a-96ca-eaa08d87c085 - - - - -] Will assume non-transactional DDL. GET: /v1/chassis/?limit=3 {} GOT:{u'chassis': [{u'uuid': u'fc0337aa-3e34-495f-9189-ec5bcf647e89', u'links': [{u'href': u'http://localhost/v1/chassis/fc0337aa-3e34-495f-9189-ec5bcf647e89', u'rel': u'self'}, {u'href': u'http://localhost/chassis/fc0337aa-3e34-495f-9189-ec5bcf647e89', u'rel': u'bookmark'}], u'description': u'data-center-1-chassis'}, {u'uuid': u'164d93ea-1c36-4d13-9d72-423e34aa7486', u'links': [{u'href': u'http://localhost/v1/chassis/164d93ea-1c36-4d13-9d72-423e34aa7486', u'rel': u'self'}, {u'href': u'http://localhost/chassis/164d93ea-1c36-4d13-9d72-423e34aa7486', u'rel': u'bookmark'}], u'description': u'data-center-1-chassis'}, {u'uuid': u'bb60b200-47c3-4191-9faa-88bce7992aab', u'links': [{u'href': u'http://localhost/v1/chassis/bb60b200-47c3-4191-9faa-88bce7992aab', u'rel': u'self'}, {u'href': u'http://localhost/chassis/bb60b200-47c3-4191-9faa-88bce7992aab', u'rel': u'bookmark'}], u'description': u'data-center-1-chassis'}], u'next': u'http://localhost/v1/chassis?sort_dir=asc&sort_key=id&limit=3&marker=bb60b200-47c3-4191-9faa-88bce7992aab'} {17} ironic.tests.unit.api.controllers.test_base.TestVersion.test_parse_headers_bad_length [0.246892s] ... ok {27} ironic.tests.unit.api.controllers.v1.test_allocation.TestPost.test_create_allocation_error [0.282372s] ... ok {15} ironic.tests.unit.api.controllers.v1.test_chassis.TestListChassis.test_collection_links [0.078508s] ... ok DELETE: /v1/allocations/alloc1.json GOT:Response: 204 No Content Openstack-Request-Id: req-c8e95c9b-0d2f-4dfc-8ba3-39f51a4ee346 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {21} ironic.tests.unit.api.controllers.v1.test_allocation.TestDelete.test_delete_allocation_by_name_with_json [0.084992s] ... ok 2019-06-06 07:02:13.781 15106 INFO alembic.runtime.migration [req-3ab6bd7a-a10a-49c7-a1d9-57b1378d3c68 - - - - -] Context impl SQLiteImpl. 2019-06-06 07:02:13.782 15106 INFO alembic.runtime.migration [req-3ab6bd7a-a10a-49c7-a1d9-57b1378d3c68 - - - - -] Will assume non-transactional DDL. GET: /v1/bad/path {} GOT:Response: 404 Not Found Content-Type: application/json {"error_message": "{\"code\": 404, \"description\": \"\", \"title\": \"Not Found\"}"} {18} ironic.tests.unit.api.controllers.test_base.TestBase.test_bad_uri [0.259472s] ... ok GET: /v1/conductors {} GOT:{u'conductors': []} {15} ironic.tests.unit.api.controllers.v1.test_conductor.TestListConductors.test_empty [0.053986s] ... ok 2019-06-06 07:02:13.865 15102 INFO alembic.runtime.migration [req-954df0f5-129b-49cd-98ca-9bb89690ceb2 - - - - -] Context impl SQLiteImpl. 2019-06-06 07:02:13.866 15102 INFO alembic.runtime.migration [req-954df0f5-129b-49cd-98ca-9bb89690ceb2 - - - - -] Will assume non-transactional DDL. {14} ironic.tests.unit.api.controllers.test_base.TestBase.test_api_setup [0.248538s] ... ok {14} ironic.tests.unit.api.controllers.test_base.TestVersion.test_parse_headers_latest [0.028637s] ... ok 2019-06-06 07:02:13.787 15092 INFO alembic.runtime.migration [req-d18fd4ac-dc8b-4eae-8d7a-f30e207892e8 - - - - -] Context impl SQLiteImpl. 2019-06-06 07:02:13.788 15092 INFO alembic.runtime.migration [req-d18fd4ac-dc8b-4eae-8d7a-f30e207892e8 - - - - -] Will assume non-transactional DDL. PATCH: /v1/allocations/69887fd0-75ea-4c34-9ac1-01495a3ff350 [{'path': '/extra/foo', 'value': 'bar', 'op': 'add'}] GOT:Response: 405 Method Not Allowed Allow: DELETE, GET, POST Content-Type: application/json {"error_message": "{\"code\": 405, \"description\": \"\", \"title\": \"Method Not Allowed\"}"} {4} ironic.tests.unit.api.controllers.v1.test_allocation.TestPatch.test_update_not_allowed [0.320855s] ... ok GET: /v1/allocations?node=1be26c0b-03f2-4d2e-ae87-c02d7f33c123 {} GOT:{u'allocations': [{u'node_uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'uuid': u'b2af0c49-7b5e-4646-b1f2-d55240303655', u'links': [{u'href': u'http://localhost/v1/allocations/b2af0c49-7b5e-4646-b1f2-d55240303655', u'rel': u'self'}, {u'href': u'http://localhost/allocations/b2af0c49-7b5e-4646-b1f2-d55240303655', u'rel': u'bookmark'}], u'extra': {}, u'last_error': None, u'created_at': u'2019-06-06T07:02:14.237382+00:00', u'resource_class': u'baremetal', u'updated_at': None, u'traits': [], u'state': u'allocating', u'candidate_nodes': [], u'name': None}]} {28} ironic.tests.unit.api.controllers.v1.test_allocation.TestListAllocations.test_get_all_by_node_uuid [0.112645s] ... ok 2019-06-06 07:02:13.812 15089 INFO alembic.runtime.migration [req-8fc99fc0-19d9-491e-8936-e8e01d923694 - - - - -] Context impl SQLiteImpl. 2019-06-06 07:02:13.813 15089 INFO alembic.runtime.migration [req-8fc99fc0-19d9-491e-8936-e8e01d923694 - - - - -] Will assume non-transactional DDL. GET: /v1/conductors {} GOT:Response: 404 Not Found Content-Type: application/json Openstack-Request-Id: req-271d1c9c-ea89-499e-8385-c01ca7fe67e2 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.48 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Resource could not be found.\"}"} GET: /v1/allocations {} GOT:{u'allocations': [{u'node_uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'uuid': u'dcc556ee-6859-485b-aecf-6925dbac19f5', u'links': [{u'href': u'http://localhost/v1/allocations/dcc556ee-6859-485b-aecf-6925dbac19f5', u'rel': u'self'}, {u'href': u'http://localhost/allocations/dcc556ee-6859-485b-aecf-6925dbac19f5', u'rel': u'bookmark'}], u'extra': {}, u'last_error': None, u'created_at': u'2019-06-06T07:02:14.105574+00:00', u'resource_class': u'baremetal', u'updated_at': None, u'traits': [], u'state': u'allocating', u'candidate_nodes': [], u'name': None}]} {1} ironic.tests.unit.api.controllers.v1.test_conductor.TestListConductors.test_list_with_invalid_api [0.277188s] ... ok {5} ironic.tests.unit.api.controllers.v1.test_allocation.TestListAllocations.test_one [0.102276s] ... ok POST: /v1/portgroups {'node_uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123', 'uuid': '6eb02b44-18a3-4659-8c0b-8d2802581ae4', 'extra': {}, 'standalone_ports_supported': True, 'address': '52:54:00:cf:2d:31', 'internal_info': 'info', 'name': 'fooname'} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-70b1d512-5b44-4005-89e2-5b04ce846b9c X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Invalid input for field/attribute portgroup. Value: '{'node_uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123', 'uuid': '6eb02b44-18a3-4659-8c0b-8d2802581ae4', 'extra': {}, 'standalone_ports_supported': True, 'address': '52:54:00:cf:2d:31', 'internal_info': 'info', 'name': 'fooname'}'. Value not a valid dict: info\"}"} {0} ironic.tests.unit.api.controllers.v1.test_portgroup.TestPost.test_create_portgroup_internal_info_not_allowed [0.058696s] ... ok 2019-06-06 07:02:13.826 15107 INFO alembic.runtime.migration [req-e18a351a-26c9-4aeb-ab72-2dc88e104e0c - - - - -] Context impl SQLiteImpl. 2019-06-06 07:02:13.828 15107 INFO alembic.runtime.migration [req-e18a351a-26c9-4aeb-ab72-2dc88e104e0c - - - - -] Will assume non-transactional DDL. DELETE: /v1/nodes/ebcd2520-c75a-4130-96dc-79bd90839505/allocation GOT:Response: 404 Not Found Content-Type: application/json Openstack-Request-Id: req-476ffd1f-4b37-471a-b9df-14ac4a4439a6 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Node ebcd2520-c75a-4130-96dc-79bd90839505 could not be found.\"}"} 2019-06-06 07:02:13.582 15094 INFO alembic.runtime.migration [req-d6014d73-517e-480e-8bdb-75664c6c2b6d - - - - -] Context impl SQLiteImpl. 2019-06-06 07:02:13.583 15094 INFO alembic.runtime.migration [req-d6014d73-517e-480e-8bdb-75664c6c2b6d - - - - -] Will assume non-transactional DDL. POST: /v1/chassis {'uuid': 'e74c40e0-d825-11e2-a28f-0800200c9a66', 'description': 'data-center-1-chassis', 'extra': {}} GOT:Response: 500 Internal Server Error Content-Type: application/json Openstack-Request-Id: req-46e9fff4-988a-48d0-a16a-c3cf06bea90a X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Server\", \"faultstring\": \"\"}"} {0} ironic.tests.unit.api.controllers.v1.test_types.TestBooleanType.test_valid_false_values [0.015675s] ... ok {19} ironic.tests.unit.api.controllers.v1.test_allocation.TestDelete.test_delete_allocation_invalid_node [0.391919s] ... ok 2019-06-06 07:02:13.786 15112 INFO alembic.runtime.migration [req-c649a45f-5aab-40ff-b17e-f16bdfa48857 - - - - -] Context impl SQLiteImpl. 2019-06-06 07:02:13.787 15112 INFO alembic.runtime.migration [req-c649a45f-5aab-40ff-b17e-f16bdfa48857 - - - - -] Will assume non-transactional DDL. GET: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/allocation {} GOT:{u'node_uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'uuid': u'e44734d0-66e0-4f10-ac30-9a92a6696dec', u'links': [{u'href': u'http://localhost/v1/allocations/e44734d0-66e0-4f10-ac30-9a92a6696dec', u'rel': u'self'}, {u'href': u'http://localhost/allocations/e44734d0-66e0-4f10-ac30-9a92a6696dec', u'rel': u'bookmark'}], u'extra': {}, u'last_error': None, u'created_at': u'2019-06-06T07:02:14.004577+00:00', u'resource_class': u'baremetal', u'updated_at': None, u'traits': [], u'state': u'allocating', u'candidate_nodes': [], u'name': None} {6} ironic.tests.unit.api.controllers.v1.test_chassis.TestPost.test_create_chassis_error [0.268128s] ... ok GET: /v1/nodes?resource_class=foo {} GOT:{u'nodes': [{u'instance_uuid': None, u'maintenance': False, u'links': [{u'href': u'http://localhost/v1/nodes/d1106d77-02b5-400c-b864-8a2b555a1f3d', u'rel': u'self'}, {u'href': u'http://localhost/nodes/d1106d77-02b5-400c-b864-8a2b555a1f3d', u'rel': u'bookmark'}], u'name': None, u'power_state': None, u'provision_state': u'available', u'uuid': u'd1106d77-02b5-400c-b864-8a2b555a1f3d'}]} GET: /v1/nodes?resource_class=bar {} GOT:{u'nodes': [{u'instance_uuid': None, u'maintenance': False, u'links': [{u'href': u'http://localhost/v1/nodes/d84bc7f6-3c27-480e-a241-2d5177bdd4ab', u'rel': u'self'}, {u'href': u'http://localhost/nodes/d84bc7f6-3c27-480e-a241-2d5177bdd4ab', u'rel': u'bookmark'}], u'name': None, u'power_state': None, u'provision_state': u'available', u'uuid': u'd84bc7f6-3c27-480e-a241-2d5177bdd4ab'}]} {24} ironic.tests.unit.api.controllers.v1.test_allocation.TestListAllocations.test_get_by_node_resource [0.422395s] ... ok {3} ironic.tests.unit.api.controllers.v1.test_node.TestListNodes.test_get_nodes_by_resource_class [0.219711s] ... ok {0} ironic.tests.unit.api.controllers.v1.test_types.TestJsonType.test_apimultitype_tostring [0.015225s] ... ok {0} ironic.tests.unit.api.controllers.v1.test_types.TestLocalLinkConnectionType.test_local_link_connection_type_missing_local_link_mandatory_key [0.016080s] ... ok {0} ironic.tests.unit.api.controllers.v1.test_utils.TestApiUtils.test_apply_jsonpatch_replace_non_existent_list_item [0.017554s] ... ok {0} ironic.tests.unit.api.controllers.v1.test_utils.TestApiUtils.test_check_allow_driver_detail [0.016715s] ... ok {0} ironic.tests.unit.api.controllers.v1.test_utils.TestNodeIdent.test_get_rpc_node_expect_uuid [0.018347s] ... ok {0} ironic.tests.unit.api.controllers.v1.test_utils.TestVendorPassthru.test_driver_vendor_passthru_async [0.017726s] ... ok POST: /v1/chassis/nodes {'instance_uuid': None, 'uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123', 'driver_info': {'fake_password': 'fakepass', 'foo': 'bar'}, 'extra': {}, 'driver': 'fake-hardware', 'properties': {'memory_mb': '4096', 'cpu_arch': 'x86_64', 'local_gb': '10', 'cpus': '8'}, 'maintenance': False, 'chassis_uuid': 'e74c40e0-d825-11e2-a28f-0800200c9a66', 'instance_info': {'foo': 'bar', 'image_url': 'http://example.com/test_image_url', 'configdrive': 'TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQ='}} GOT:Response: 403 Forbidden Content-Type: application/json Openstack-Request-Id: req-058d0499-315f-4373-b7ad-4c81073b9870 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Operation not permitted.\"}"} {9} ironic.tests.unit.api.controllers.v1.test_chassis.TestPost.test_post_nodes_subresource [0.123334s] ... ok 2019-06-06 07:02:13.865 15110 INFO alembic.runtime.migration [req-84332a00-fa34-4b79-8748-5f68e6ca75d3 - - - - -] Context impl SQLiteImpl. 2019-06-06 07:02:13.866 15110 INFO alembic.runtime.migration [req-84332a00-fa34-4b79-8748-5f68e6ca75d3 - - - - -] Will assume non-transactional DDL. DELETE: /v1/nodes/2065b1da-fc9f-41d0-945a-e64252241042/allocation GOT:Response: 404 Not Found Content-Type: application/json Openstack-Request-Id: req-f8223009-6f6b-4f72-acf9-265221819203 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Allocation for node 2065b1da-fc9f-41d0-945a-e64252241042 was not found\"}"} {22} ironic.tests.unit.api.controllers.v1.test_allocation.TestDelete.test_delete_allocation_by_node_not_existed [0.411576s] ... ok POST: /v1/allocations {'uuid': '71cee83d-0331-4d58-bf1a-98bb39520091', 'extra': {}, 'traits': [], 'candidate_nodes': [], 'name': None} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-523bdd68-69cd-4bc6-be14-caf657601273 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Invalid input for field/attribute resource_class. Value: 'None'. Mandatory field missing.\"}"} {23} ironic.tests.unit.api.controllers.v1.test_allocation.TestPost.test_create_allocation_no_mandatory_field_resource_class [0.048404s] ... ok GET: /v1/nodes/spam/management/boot_device/supported {} GOT:{u'supported_boot_devices': [u'pxe']} {3} ironic.tests.unit.api.controllers.v1.test_node.TestListNodes.test_get_supported_boot_devices_by_name [0.080237s] ... ok DELETE: /v1/allocations/49e2d735-a5d9-4e87-ac4c-50ab24ff2d39 GOT:Response: 405 Method Not Allowed Content-Type: application/json {"error_message": "{\"code\": 405, \"description\": \"The API version does not allow allocations\", \"title\": \"Method Not Allowed\"}"} {14} ironic.tests.unit.api.controllers.v1.test_allocation.TestDelete.test_delete_allocation_invalid_api_version [0.134559s] ... ok DELETE: /v1/deploy_templates/6a39e87f-e706-451e-af67-a55b8c5acbba GOT:Response: 204 No Content Openstack-Request-Id: req-02b30380-c21c-424a-98fd-99b2ce93d1bd X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {15} ironic.tests.unit.api.controllers.v1.test_deploy_template.TestDelete.test_delete_by_uuid [0.081029s] ... ok 2019-06-06 07:02:13.815 15096 INFO alembic.runtime.migration [req-7c4a7cf7-232d-4488-b405-e186537da5e1 - - - - -] Context impl SQLiteImpl. 2019-06-06 07:02:13.816 15096 INFO alembic.runtime.migration [req-7c4a7cf7-232d-4488-b405-e186537da5e1 - - - - -] Will assume non-transactional DDL. GET: /v1/allocations?fields=uuid,extra {} GOT:{u'allocations': [{u'uuid': u'952d327c-fbe2-4109-981d-b5b2e0fe5a94', u'links': [{u'href': u'http://localhost/v1/allocations/952d327c-fbe2-4109-981d-b5b2e0fe5a94', u'rel': u'self'}, {u'href': u'http://localhost/allocations/952d327c-fbe2-4109-981d-b5b2e0fe5a94', u'rel': u'bookmark'}], u'extra': {}}, {u'uuid': u'65c961b1-b703-4112-b2a8-35b0db85ae85', u'links': [{u'href': u'http://localhost/v1/allocations/65c961b1-b703-4112-b2a8-35b0db85ae85', u'rel': u'self'}, {u'href': u'http://localhost/allocations/65c961b1-b703-4112-b2a8-35b0db85ae85', u'rel': u'bookmark'}], u'extra': {}}, {u'uuid': u'2072030d-5f3d-4b79-ac23-80ca3f4e6d19', u'links': [{u'href': u'http://localhost/v1/allocations/2072030d-5f3d-4b79-ac23-80ca3f4e6d19', u'rel': u'self'}, {u'href': u'http://localhost/allocations/2072030d-5f3d-4b79-ac23-80ca3f4e6d19', u'rel': u'bookmark'}], u'extra': {}}]} {8} ironic.tests.unit.api.controllers.v1.test_allocation.TestListAllocations.test_get_collection_custom_fields [0.444233s] ... ok GET: /v1/node/e8ba629e-4c7b-4eae-a6ec-5a646ae96aef/allocation {} GOT:Response: 404 Not Found Content-Type: application/json {"error_message": "{\"code\": 404, \"description\": \"\", \"title\": \"Not Found\"}"} {19} ironic.tests.unit.api.controllers.v1.test_allocation.TestListAllocations.test_by_node_resource_not_existed [0.053727s] ... ok DELETE: /v1/deploy_templates/CUSTOM_DT1 GOT:Response: 405 Method Not Allowed Content-Type: application/json {"error_message": "{\"code\": 405, \"description\": \"The API version does not allow deploy templates\", \"title\": \"Method Not Allowed\"}"} {1} ironic.tests.unit.api.controllers.v1.test_deploy_template.TestDelete.test_delete_old_api_version [0.113050s] ... ok GET: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/allocation/a879029b-01b1-4c44-98d9-75d4989ed522 {} GOT:Response: 405 Method Not Allowed Allow: DELETE, GET Content-Type: application/json {"error_message": "{\"code\": 405, \"description\": \"\", \"title\": \"Method Not Allowed\"}"} {28} ironic.tests.unit.api.controllers.v1.test_allocation.TestListAllocations.test_get_by_node_resource_and_id [0.052694s] ... ok POST: /v1/allocations {'uuid': '33bf6428-4c40-411d-b63a-7d40808f2127', 'resource_class': 'baremetal', 'extra': {}, 'traits': [], 'candidate_nodes': [], 'name': 'foo'} GOT:Response: 201 Created Content-Type: application/json Location: http://localhost/v1/allocations/33bf6428-4c40-411d-b63a-7d40808f2127 Openstack-Request-Id: req-ce03ea32-4f7e-4248-83f5-9298cc153647 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"node_uuid": null, "uuid": "33bf6428-4c40-411d-b63a-7d40808f2127", "links": [{"href": "http://localhost/v1/allocations/33bf6428-4c40-411d-b63a-7d40808f2127", "rel": "self"}, {"href": "http://localhost/allocations/33bf6428-4c40-411d-b63a-7d40808f2127", "rel": "bookmark"}], "extra": {}, "last_error": null, "created_at": "2019-06-06T07:02:14.140224+00:00", "resource_class": "baremetal", "updated_at": null, "traits": [], "state": "allocating", "candidate_nodes": [], "name": "foo"} GET: /v1/allocations/33bf6428-4c40-411d-b63a-7d40808f2127 {} GOT:{u'node_uuid': None, u'uuid': u'33bf6428-4c40-411d-b63a-7d40808f2127', u'links': [{u'href': u'http://localhost/v1/allocations/33bf6428-4c40-411d-b63a-7d40808f2127', u'rel': u'self'}, {u'href': u'http://localhost/allocations/33bf6428-4c40-411d-b63a-7d40808f2127', u'rel': u'bookmark'}], u'extra': {}, u'last_error': None, u'created_at': u'2019-06-06T07:02:14.140224+00:00', u'resource_class': u'baremetal', u'updated_at': None, u'traits': [], u'state': u'allocating', u'candidate_nodes': [], u'name': u'foo'} {7} ironic.tests.unit.api.controllers.v1.test_allocation.TestPost.test_create_allocation_name_ok [0.069839s] ... ok POST: /v1/deploy_templates {'extra': {}, 'steps': [{'priority': 10, 'interface': 'raid', 'step': 'create_configuration', 'args': {'logical_disks': []}}], 'uuid': '1fcec68a-c382-4f20-b055-fb2603fc5969', 'name': u'CUSTOM_DT1'} GOT:Response: 500 Internal Server Error Content-Type: application/json Openstack-Request-Id: req-1294a781-4f2f-414c-a63f-75d45ce349d4 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Server\", \"faultstring\": \"\"}"} {2} ironic.tests.unit.api.controllers.v1.test_deploy_template.TestPost.test_create_error [0.058842s] ... ok GET: /v1/chassis/nodes {} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-a93a1ad2-b80e-4b54-9d64-aae15112e74f X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Chassis id not specified.\"}"} {4} ironic.tests.unit.api.controllers.v1.test_chassis.TestListChassis.test_nodes_subresource_no_uuid [0.058425s] ... ok GET: /v1/chassis {} GOT:{u'chassis': []} {28} ironic.tests.unit.api.controllers.v1.test_chassis.TestListChassis.test_empty [0.056008s] ... ok POST: /v1/allocations {'uuid': '4f6c5931-324c-4090-9277-857854726468', 'resource_class': 'baremetal', 'extra': {}, 'traits': [], 'candidate_nodes': ['invalid-format'], 'name': None} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-791eb32c-3b86-4bd8-acfe-d8915f234eb2 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Nodes cannot be found: invalid-format\"}"} {11} ironic.tests.unit.api.controllers.v1.test_allocation.TestPost.test_create_allocation_invalid_candidate_node_format [0.052442s] ... ok GET: /v1/chassis?sort_key=uuid {} GOT:{u'chassis': [{u'uuid': u'33fd40dc-3d36-4207-aac5-eb0b643874b0', u'links': [{u'href': u'http://localhost/v1/chassis/33fd40dc-3d36-4207-aac5-eb0b643874b0', u'rel': u'self'}, {u'href': u'http://localhost/chassis/33fd40dc-3d36-4207-aac5-eb0b643874b0', u'rel': u'bookmark'}], u'description': u'data-center-1-chassis'}, {u'uuid': u'a02f36d0-403e-441a-8495-1ec5a8ef3497', u'links': [{u'href': u'http://localhost/v1/chassis/a02f36d0-403e-441a-8495-1ec5a8ef3497', u'rel': u'self'}, {u'href': u'http://localhost/chassis/a02f36d0-403e-441a-8495-1ec5a8ef3497', u'rel': u'bookmark'}], u'description': u'data-center-1-chassis'}, {u'uuid': u'c844be2d-8a65-475a-b89e-8f3a72099a8f', u'links': [{u'href': u'http://localhost/v1/chassis/c844be2d-8a65-475a-b89e-8f3a72099a8f', u'rel': u'self'}, {u'href': u'http://localhost/chassis/c844be2d-8a65-475a-b89e-8f3a72099a8f', u'rel': u'bookmark'}], u'description': u'data-center-1-chassis'}]} DELETE: /v1/allocations/4fea994c-d456-461a-9b96-fa5598440288 GOT:Response: 409 Conflict Content-Type: application/json Openstack-Request-Id: req-4ed25f09-221a-462e-b0b4-6899f9fa82ef X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Node fake-node is locked by host fake-host, please retry after the current operation is completed.\"}"} {11} ironic.tests.unit.api.controllers.v1.test_deploy_template.TestDeployTemplateObject.test_deploy_template_init [0.016108s] ... ok {13} ironic.tests.unit.api.controllers.v1.test_chassis.TestListChassis.test_sort_key [0.073466s] ... ok {17} ironic.tests.unit.api.controllers.v1.test_allocation.TestDelete.test_delete_allocation_node_locked [0.200450s] ... ok PATCH: /v1/chassis/e74c40e0-d825-11e2-a28f-0800200c9a66 [{'path': '/foo', 'value': 'bar', 'op': 'add'}] GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-d18f5b6b-896d-4ee4-85d4-ed97b3be8295 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Adding a new attribute (/foo) to the root of the resource is not allowed\"}"} {27} ironic.tests.unit.api.controllers.v1.test_chassis.TestPatch.test_add_root_non_existent [0.120993s] ... ok POST: /v1/deploy_templates {'extra': {}, 'steps': [{'priority': 10, 'interface': [3], 'step': 'create_configuration', 'args': {'logical_disks': []}}], 'uuid': 'dcdbd172-953b-406d-b07c-14ee7982563d', 'name': u'CUSTOM_DT1'} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-aec5e322-b915-484a-bb22-c60f9d052c92 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Invalid input for field/attribute interface. Value: '[3]'. unhashable type: 'list'\"}"} {30} ironic.tests.unit.api.controllers.v1.test_deploy_template.TestPost.test_create_invalid_step_field_interface1 [0.047785s] ... ok POST: /v1/allocations {'uuid': '28854280-803b-4a1d-9836-cbafd9559d69', 'resource_class': 'baremetal', 'extra': {}, 'traits': [], 'candidate_nodes': [], 'name': None} GOT:Response: 405 Method Not Allowed Content-Type: application/json {"error_message": "{\"code\": 405, \"description\": \"The API version does not allow allocations\", \"title\": \"Method Not Allowed\"}"} {22} ironic.tests.unit.api.controllers.v1.test_allocation.TestPost.test_create_allocation_invalid_api_version [0.033665s] ... ok GET: /v1/deploy_templates {} GOT:Response: 404 Not Found Content-Type: application/json {"error_message": "{\"code\": 404, \"description\": \"The API version does not allow deploy templates\", \"title\": \"Not Found\"}"} {1} ironic.tests.unit.api.controllers.v1.test_deploy_template.TestListDeployTemplates.test_get_all_invalid_api_version [0.039901s] ... ok GET: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/allocation?fields=name,extra {} GOT:{u'name': None, u'links': [{u'href': u'http://localhost/v1/allocations/ce76c6ab-8857-45f9-a82c-e8f2d8dd7c59', u'rel': u'self'}, {u'href': u'http://localhost/allocations/ce76c6ab-8857-45f9-a82c-e8f2d8dd7c59', u'rel': u'bookmark'}], u'extra': {}} {14} ironic.tests.unit.api.controllers.v1.test_allocation.TestListAllocations.test_get_by_node_resource_with_fields [0.119661s] ... ok POST: /v1/allocations {'uuid': 'b4690fb7-bbfc-4764-83f5-b8be6d9610bc', 'resource_class': 'fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff', 'extra': {}, 'traits': [], 'candidate_nodes': [], 'name': None} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-079b0469-c8f2-452f-84e1-a207d405c913 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Invalid input for field/attribute resource_class. Value: 'fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff'. Value should have a maximum character requirement of 80\"}"} {26} ironic.tests.unit.api.controllers.v1.test_allocation.TestPost.test_create_allocation_resource_class_too_long [0.048452s] ... ok GET: /v1/chassis/e74c40e0-d825-11e2-a28f-0800200c9a66/detail {} GOT:Response: 404 Not Found Content-Type: application/json Openstack-Request-Id: req-ad80df2a-63ed-4fc2-8ded-5afbe1412d27 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Resource could not be found.\"}"} {23} ironic.tests.unit.api.controllers.v1.test_chassis.TestListChassis.test_detail_against_single [0.052095s] ... ok {23} ironic.tests.unit.api.controllers.v1.test_deploy_template.TestDeployTemplateObject.test_deploy_template_sample [0.016146s] ... ok GET: /v1/volume/connectors/detail {} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-1d5149d0-d4c1-4f5a-91cd-6efaa8a53b29 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Invalid input for field/attribute connector_uuid. Value: 'detail'. unable to convert to uuid. Error: Expected a UUID but received detail.\"}"} {0} ironic.tests.unit.api.controllers.v1.test_volume_connector.TestListVolumeConnectors.test_detail_sepecified_by_path [0.063914s] ... ok {0} ironic.tests.unit.cmd.test_conductor.ConductorStartTestCase.test_warn_about_unsafe_shred_parameters_produces_a_warning [0.032692s] ... ok {0} ironic.tests.unit.common.test_cinder.TestCinderActions.test_detach_volumes [0.102642s] ... ok {0} ironic.tests.unit.common.test_cinder.TestCinderSession.test__get_cinder_session [0.018372s] ... ok {0} ironic.tests.unit.common.test_glance_service.TestServiceUtils.test_parse_image_id_from_glance_fail [0.015784s] ... ok GET: /v1/deploy_templates {} GOT:{u'deploy_templates': []} {26} ironic.tests.unit.api.controllers.v1.test_deploy_template.TestListDeployTemplates.test_empty [0.066238s] ... ok {0} ironic.tests.unit.common.test_image_service.FileImageServiceTestCase.test_download_copy_fail [0.027624s] ... ok {0} ironic.tests.unit.common.test_image_service.ServiceGetterTestCase.test_get_glance_image_service_url [0.018595s] ... ok {0} ironic.tests.unit.common.test_images.FsImageTestCase.test_create_boot_iso_for_uefi_deploy_iso_for_hrefs [0.026920s] ... ok {0} ironic.tests.unit.common.test_images.IronicImagesTestCase.test_image_show_no_image_service [0.013769s] ... ok {0} ironic.tests.unit.common.test_images.IronicImagesTestCase.test_image_to_raw_not_raw_after_conversion [0.024585s] ... ok {0} ironic.tests.unit.common.test_network.GetPortgroupByIdTestCase.test_portgroup_by_id_no_such_portgroup [0.105747s] ... ok {0} ironic.tests.unit.common.test_neutron.TestNeutronNetworkActions.test_validate_port_info_neutron_with_smartnic_and_no_link_info [0.089340s] ... ok {0} ironic.tests.unit.common.test_pxe_utils.PXEInterfacesTestCase.test_parse_driver_info_missing_deploy_kernel [0.034018s] ... ok {0} ironic.tests.unit.common.test_pxe_utils.TestPXEUtils.test__write_infiniband_mac_pxe_configs [0.125137s] ... ok {0} ironic.tests.unit.common.test_pxe_utils.TestPXEUtils.test_create_pxe_config_uefi_ipxe [0.116507s] ... ok {0} ironic.tests.unit.common.test_raid.ValidateRaidConfigurationTestCase.test_validate_configuration_okay [0.027988s] ... ok {0} ironic.tests.unit.common.test_rpc.TestRequestContextSerializer.test_serialize_entity [0.017979s] ... ok {0} ironic.tests.unit.common.test_utils.TempFilesTestCase.test__check_dir_free_space_ok [0.017777s] ... ok {0} ironic.tests.unit.conductor.test_allocations.DoAllocateTestCase.test_nodes_changed_after_lock [0.215946s] ... ok GET: /v1/deploy_templates/6b15e946-9038-4f6d-ad6a-f120c0ba46d5?fields=uuid,spongebob {} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-e064b059-fbf0-46ee-8ee3-ed994752d743 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Field(s) \\\"spongebob\\\" are not valid\"}"} {0} ironic.tests.unit.conductor.test_manager.ConsoleTestCase.test_set_console_mode_validation_fail [0.319948s] ... ok {15} ironic.tests.unit.api.controllers.v1.test_deploy_template.TestListDeployTemplates.test_get_custom_fields_invalid_fields [0.062325s] ... ok {0} ironic.tests.unit.conductor.test_manager.CreatePortTestCase.test_create_port_physnet_validation_failure_inconsistent [0.107131s] ... ok {0} ironic.tests.unit.conductor.test_manager.DestroyNodeTestCase.test_destroy_node_power_off [0.312666s] ... ok {0} ironic.tests.unit.conductor.test_manager.DoNodeCleanTestCase.test__do_next_clean_step_manual_bad_step_return_value [0.338102s] ... ok DELETE: /v1/deploy_templates/CUSTOM_DT1 GOT:Response: 204 No Content Openstack-Request-Id: req-41e7bc88-d080-42a6-8a60-9690a8485bcc X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {27} ironic.tests.unit.api.controllers.v1.test_deploy_template.TestDelete.test_delete_by_name [0.081623s] ... ok {0} ironic.tests.unit.conductor.test_manager.DoNodeCleanTestCase.test__do_next_clean_step_manual_execute_fail [0.328744s] ... ok {0} ironic.tests.unit.conductor.test_manager.DoNodeCleanTestCase.test_continue_node_clean_automated [0.352828s] ... ok {0} ironic.tests.unit.conductor.test_manager.DoNodeDeployTestCase.test__do_node_deploy_unexpected_prepare_error [0.342684s] ... ok {0} ironic.tests.unit.conductor.test_manager.DoNodeRescueTestCase.test__do_node_rescue_abort [0.092374s] ... ok {0} ironic.tests.unit.conductor.test_manager.ManagerCheckInspectWaitTimeoutsTestCase.test__check_inspect_timeouts_acquire_node_disappears [0.016128s] ... ok {0} ironic.tests.unit.conductor.test_manager.NodeInspectHardware.test__check_inspect_wait_timeouts [0.261816s] ... ok {0} ironic.tests.unit.conductor.test_manager.NodeInspectHardware.test_inspect_hardware_worker_pool_full [0.251511s] ... ok GET: /v1/conductors/rocky.rocks {} GOT:Response: 404 Not Found Content-Type: application/json Openstack-Request-Id: req-51b3a5ff-ae3a-44ca-834a-69f91123d329 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.48 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Resource could not be found.\"}"} {28} ironic.tests.unit.api.controllers.v1.test_conductor.TestListConductors.test_get_one_with_invalid_api [0.046896s] ... ok PATCH: /v1/deploy_templates/970fd6a7-9dc1-4d91-aab9-f5e6529d0548 [{'path': '/name', 'value': 'not-a-trait', 'op': 'replace'}] GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-aa74642b-775b-4e1a-b9ce-d022c2631d74 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Deploy template name must be a valid trait. A valid trait must be no longer than 255 characters. Standard traits are defined in the os_traits library. A custom trait must start with the prefix CUSTOM_ and use the following characters: A-Z, 0-9 and _\"}"} GET: /v1/conductors/rocky.rocks {} GOT:{u'links': [{u'href': u'http://localhost/v1/conductors/rocky.rocks', u'rel': u'self'}, {u'href': u'http://localhost/conductors/rocky.rocks', u'rel': u'bookmark'}], u'created_at': u'2019-06-06T07:02:13.960613+00:00', u'hostname': u'rocky.rocks', u'conductor_group': u'', u'updated_at': u'2019-06-06T07:02:13.958976+00:00', u'alive': True, u'drivers': [u'fake-driver', u'null-driver']} {9} ironic.tests.unit.api.controllers.v1.test_deploy_template.TestPatch.test_replace_invalid_name_not_a_trait [0.083702s] ... ok {13} ironic.tests.unit.api.controllers.v1.test_conductor.TestListConductors.test_get_one [0.061632s] ... ok PATCH: /v1/chassis/e74c40e0-d825-11e2-a28f-0800200c9a66 [{'path': '/uuid', 'op': 'remove'}] GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-f1512111-b1cd-4f4b-ab84-7706869fff8b X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"'/uuid' is an internal attribute and can not be updated\"}"} {4} ironic.tests.unit.api.controllers.v1.test_chassis.TestPatch.test_remove_uuid [0.055548s] ... ok GET: /v1/chassis/detail {} GOT:{u'chassis': [{u'uuid': u'e74c40e0-d825-11e2-a28f-0800200c9a66', u'links': [{u'href': u'http://localhost/v1/chassis/e74c40e0-d825-11e2-a28f-0800200c9a66', u'rel': u'self'}, {u'href': u'http://localhost/chassis/e74c40e0-d825-11e2-a28f-0800200c9a66', u'rel': u'bookmark'}], u'extra': {}, u'created_at': u'2019-06-06T07:02:14.173892+00:00', u'updated_at': None, u'nodes': [{u'href': u'http://localhost/v1/chassis/e74c40e0-d825-11e2-a28f-0800200c9a66/nodes', u'rel': u'self'}, {u'href': u'http://localhost/chassis/e74c40e0-d825-11e2-a28f-0800200c9a66/nodes', u'rel': u'bookmark'}], u'description': u'data-center-1-chassis'}]} {8} ironic.tests.unit.api.controllers.v1.test_chassis.TestListChassis.test_detail [0.059337s] ... ok GET: /v1/allocations?node=node-1 {} GOT:{u'allocations': [{u'node_uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'uuid': u'f17c2a68-492a-491c-af6b-5c67d6fa376a', u'links': [{u'href': u'http://localhost/v1/allocations/f17c2a68-492a-491c-af6b-5c67d6fa376a', u'rel': u'self'}, {u'href': u'http://localhost/allocations/f17c2a68-492a-491c-af6b-5c67d6fa376a', u'rel': u'bookmark'}], u'extra': {}, u'last_error': None, u'created_at': u'2019-06-06T07:02:13.929936+00:00', u'resource_class': u'baremetal', u'updated_at': None, u'traits': [], u'state': u'allocating', u'candidate_nodes': [], u'name': u'allocation0'}, {u'node_uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'uuid': u'80a5dff5-5757-456b-8284-93bc39e77bc2', u'links': [{u'href': u'http://localhost/v1/allocations/80a5dff5-5757-456b-8284-93bc39e77bc2', u'rel': u'self'}, {u'href': u'http://localhost/allocations/80a5dff5-5757-456b-8284-93bc39e77bc2', u'rel': u'bookmark'}], u'extra': {}, u'last_error': None, u'created_at': u'2019-06-06T07:02:13.937957+00:00', u'resource_class': u'baremetal', u'updated_at': None, u'traits': [], u'state': u'allocating', u'candidate_nodes': [], u'name': u'allocation1'}, {u'node_uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'uuid': u'a85a96c3-4f6d-4364-972c-02cd2d13031f', u'links': [{u'href': u'http://localhost/v1/allocations/a85a96c3-4f6d-4364-972c-02cd2d13031f', u'rel': u'self'}, {u'href': u'http://localhost/allocations/a85a96c3-4f6d-4364-972c-02cd2d13031f', u'rel': u'bookmark'}], u'extra': {}, u'last_error': None, u'created_at': u'2019-06-06T07:02:13.942260+00:00', u'resource_class': u'baremetal', u'updated_at': None, u'traits': [], u'state': u'allocating', u'candidate_nodes': [], u'name': u'allocation2'}]} GET: /v1/chassis?fields=uuid,extra {} GOT:{u'chassis': [{u'uuid': u'3adcbd91-3aed-4fd4-aee9-e43d0133e718', u'links': [{u'href': u'http://localhost/v1/chassis/3adcbd91-3aed-4fd4-aee9-e43d0133e718', u'rel': u'self'}, {u'href': u'http://localhost/chassis/3adcbd91-3aed-4fd4-aee9-e43d0133e718', u'rel': u'bookmark'}], u'extra': {}}, {u'uuid': u'a0097d00-93df-440a-a034-90d506cbe220', u'links': [{u'href': u'http://localhost/v1/chassis/a0097d00-93df-440a-a034-90d506cbe220', u'rel': u'self'}, {u'href': u'http://localhost/chassis/a0097d00-93df-440a-a034-90d506cbe220', u'rel': u'bookmark'}], u'extra': {}}, {u'uuid': u'f64faf13-71b9-457b-8769-05281f3731a0', u'links': [{u'href': u'http://localhost/v1/chassis/f64faf13-71b9-457b-8769-05281f3731a0', u'rel': u'self'}, {u'href': u'http://localhost/chassis/f64faf13-71b9-457b-8769-05281f3731a0', u'rel': u'bookmark'}], u'extra': {}}]} {16} ironic.tests.unit.api.controllers.v1.test_allocation.TestListAllocations.test_get_all_by_node_name [0.260391s] ... ok {24} ironic.tests.unit.api.controllers.v1.test_chassis.TestListChassis.test_get_collection_custom_fields [0.069881s] ... ok {0} ironic.tests.unit.conductor.test_manager.ServiceDoNodeDeployTestCase.test_do_node_deploy_rebuild_active_state_done [0.337228s] ... ok GET: /v1/allocations/41f76361-a445-444b-b569-9475007d8094?fields=uuid,spongebob {} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-6dc06b3f-5bfd-46f2-8185-661adcba554f X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Field(s) \\\"spongebob\\\" are not valid\"}"} {14} ironic.tests.unit.api.controllers.v1.test_allocation.TestListAllocations.test_get_custom_fields_invalid_fields [0.086946s] ... ok GET: /v1/deploy_templates?detail=True {} GOT:{u'deploy_templates': [{u'uuid': u'f7e6ec74-da67-41b5-b008-2c13a6228828', u'links': [{u'href': u'http://localhost/v1/deploy_templates/f7e6ec74-da67-41b5-b008-2c13a6228828', u'rel': u'self'}, {u'href': u'http://localhost/deploy_templates/f7e6ec74-da67-41b5-b008-2c13a6228828', u'rel': u'bookmark'}], u'extra': {}, u'created_at': u'2019-06-06T07:02:14.018998+00:00', u'updated_at': None, u'steps': [{u'interface': u'raid', u'priority': 10, u'step': u'create_configuration', u'args': {u'logical_disks': []}}], u'name': u'CUSTOM_DT1'}]} {11} ironic.tests.unit.api.controllers.v1.test_deploy_template.TestListDeployTemplates.test_detail_query [0.084710s] ... ok GET: /v1/allocations/1d3b44a3-e0ea-4561-872c-3966d487f5ee {} GOT:{u'node_uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'uuid': u'1d3b44a3-e0ea-4561-872c-3966d487f5ee', u'links': [{u'href': u'http://localhost/v1/allocations/1d3b44a3-e0ea-4561-872c-3966d487f5ee', u'rel': u'self'}, {u'href': u'http://localhost/allocations/1d3b44a3-e0ea-4561-872c-3966d487f5ee', u'rel': u'bookmark'}], u'extra': {}, u'last_error': None, u'created_at': u'2019-06-06T07:02:14.265240+00:00', u'resource_class': u'baremetal', u'updated_at': None, u'traits': [], u'state': u'allocating', u'candidate_nodes': [], u'name': u'pg.1'} {0} ironic.tests.unit.conductor.test_manager.StoreConfigDriveTestCase.test_store_configdrive_swift_no_deploy_timeout_fallback [0.059820s] ... ok {17} ironic.tests.unit.api.controllers.v1.test_allocation.TestListAllocations.test_get_one_with_suffix [0.082638s] ... ok {0} ironic.tests.unit.conductor.test_manager.UpdateNodeTestCase.test_update_node_invalid_driver [0.041166s] ... ok POST: /v1/deploy_templates {'extra': {}, 'steps': [{'priority': 10, 'interface': 'raid', 'step': 'create_configuration', 'args': []}], 'uuid': '02e989b0-0c7f-467a-86f8-e2fb14627262', 'name': u'CUSTOM_DT1'} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-a35f9f39-181c-4511-b92c-2e9dea1a52fd X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Invalid input for field/attribute template. Value: '{'steps': [{'priority': 10, 'interface': 'raid', 'step': 'create_configuration', 'args': []}], 'uuid': '02e989b0-0c7f-467a-86f8-e2fb14627262', 'name': 'CUSTOM_DT1', 'extra': {}}'. Value not a valid dict: []\"}"} {2} ironic.tests.unit.api.controllers.v1.test_deploy_template.TestPost.test_create_invalid_step_field_args2 [0.047978s] ... ok POST: /v1/chassis {'uuid': 'e74c40e0-d825-11e2-a28f-0800200c9a66', 'description': 'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa', 'extra': {}} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-a9f4c25c-7f0d-4b87-a152-1a7a0a32a95d X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Invalid input for field/attribute description. Value: 'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa'. Value should have a maximum character requirement of 255\"}"} {6} ironic.tests.unit.api.controllers.v1.test_chassis.TestPost.test_create_chassis_toolong_description [0.050013s] ... ok PATCH: /v1/deploy_templates/7545b182-d8ce-43ee-ae2a-a4d338e0fcc4 [{'path': '/foo', 'value': 'bar', 'op': 'add'}] GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-bb53776f-2884-411c-a52b-986e9d9881f5 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Adding a new attribute (/foo) to the root of the resource is not allowed\"}"} {23} ironic.tests.unit.api.controllers.v1.test_deploy_template.TestPatch.test_add_root_non_existent [0.081300s] ... ok GET: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/allocation {} GOT:Response: 404 Not Found Content-Type: application/json {"error_message": "{\"code\": 404, \"description\": \"\", \"title\": \"Not Found\"}"} {16} ironic.tests.unit.api.controllers.v1.test_allocation.TestListAllocations.test_get_by_node_resource_invalid_api_version [0.049533s] ... ok GET: /v1/chassis?detail=True {} GOT:{u'chassis': [{u'uuid': u'e74c40e0-d825-11e2-a28f-0800200c9a66', u'links': [{u'href': u'http://localhost/v1/chassis/e74c40e0-d825-11e2-a28f-0800200c9a66', u'rel': u'self'}, {u'href': u'http://localhost/chassis/e74c40e0-d825-11e2-a28f-0800200c9a66', u'rel': u'bookmark'}], u'extra': {}, u'created_at': u'2019-06-06T07:02:14.223783+00:00', u'updated_at': None, u'nodes': [{u'href': u'http://localhost/v1/chassis/e74c40e0-d825-11e2-a28f-0800200c9a66/nodes', u'rel': u'self'}, {u'href': u'http://localhost/chassis/e74c40e0-d825-11e2-a28f-0800200c9a66/nodes', u'rel': u'bookmark'}], u'description': u'data-center-1-chassis'}]} {22} ironic.tests.unit.api.controllers.v1.test_chassis.TestListChassis.test_detail_query [0.061140s] ... ok POST: /v1/allocations {'uuid': '20ea6e06-9dc9-4951-99a0-8a17b3c7e6bf', 'resource_class': 'baremetal', 'extra': {}, 'traits': [], 'candidate_nodes': [], 'name': None} GOT:Response: 201 Created Content-Type: application/json Location: http://localhost/v1/allocations/20ea6e06-9dc9-4951-99a0-8a17b3c7e6bf Openstack-Request-Id: req-e4db3192-fbc7-4fc3-918a-0ebe1d098da3 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"node_uuid": null, "uuid": "20ea6e06-9dc9-4951-99a0-8a17b3c7e6bf", "links": [{"href": "http://localhost/v1/allocations/20ea6e06-9dc9-4951-99a0-8a17b3c7e6bf", "rel": "self"}, {"href": "http://localhost/allocations/20ea6e06-9dc9-4951-99a0-8a17b3c7e6bf", "rel": "bookmark"}], "extra": {}, "last_error": null, "created_at": "2000-01-01T00:00:00+00:00", "resource_class": "baremetal", "updated_at": null, "traits": [], "state": "allocating", "candidate_nodes": [], "name": null} GET: /v1/allocations/20ea6e06-9dc9-4951-99a0-8a17b3c7e6bf {} GOT:{u'node_uuid': None, u'uuid': u'20ea6e06-9dc9-4951-99a0-8a17b3c7e6bf', u'links': [{u'href': u'http://localhost/v1/allocations/20ea6e06-9dc9-4951-99a0-8a17b3c7e6bf', u'rel': u'self'}, {u'href': u'http://localhost/allocations/20ea6e06-9dc9-4951-99a0-8a17b3c7e6bf', u'rel': u'bookmark'}], u'extra': {}, u'last_error': None, u'created_at': u'2000-01-01T00:00:00+00:00', u'resource_class': u'baremetal', u'updated_at': None, u'traits': [], u'state': u'allocating', u'candidate_nodes': [], u'name': None} {20} ironic.tests.unit.api.controllers.v1.test_allocation.TestPost.test_create_allocation [0.078739s] ... ok 2019-06-06 07:02:13.939 15119 INFO alembic.runtime.migration [req-963e4e4c-19dc-412b-8558-c95307477375 - - - - -] Context impl SQLiteImpl. 2019-06-06 07:02:13.940 15119 INFO alembic.runtime.migration [req-963e4e4c-19dc-412b-8558-c95307477375 - - - - -] Will assume non-transactional DDL. POST: /v1/allocations {'resource_class': 'baremetal', 'extra': {}, 'traits': [], 'candidate_nodes': [], 'name': None} GOT:Response: 201 Created Content-Type: application/json Location: http://localhost/v1/allocations/c8d7ff91-54e3-4df0-9349-5f35d25aff93 Openstack-Request-Id: req-9d4c4f22-376e-4634-847d-f9b4f6a8f7f2 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"node_uuid": null, "uuid": "c8d7ff91-54e3-4df0-9349-5f35d25aff93", "links": [{"href": "http://localhost/v1/allocations/c8d7ff91-54e3-4df0-9349-5f35d25aff93", "rel": "self"}, {"href": "http://localhost/allocations/c8d7ff91-54e3-4df0-9349-5f35d25aff93", "rel": "bookmark"}], "extra": {}, "last_error": null, "created_at": "2019-06-06T07:02:14.166440+00:00", "resource_class": "baremetal", "updated_at": null, "traits": [], "state": "allocating", "candidate_nodes": [], "name": null} GET: /v1/allocations/c8d7ff91-54e3-4df0-9349-5f35d25aff93 {} GOT:{u'node_uuid': None, u'uuid': u'c8d7ff91-54e3-4df0-9349-5f35d25aff93', u'links': [{u'href': u'http://localhost/v1/allocations/c8d7ff91-54e3-4df0-9349-5f35d25aff93', u'rel': u'self'}, {u'href': u'http://localhost/allocations/c8d7ff91-54e3-4df0-9349-5f35d25aff93', u'rel': u'bookmark'}], u'extra': {}, u'last_error': None, u'created_at': u'2019-06-06T07:02:14.166440+00:00', u'resource_class': u'baremetal', u'updated_at': None, u'traits': [], u'state': u'allocating', u'candidate_nodes': [], u'name': None} {31} ironic.tests.unit.api.controllers.v1.test_allocation.TestPost.test_create_allocation_generate_uuid [0.371860s] ... ok GET: /v1/chassis/e74c40e0-d825-11e2-a28f-0800200c9a66?fields=extra,description {} GOT:{u'description': u'data-center-1-chassis', u'links': [{u'href': u'http://localhost/v1/chassis/e74c40e0-d825-11e2-a28f-0800200c9a66', u'rel': u'self'}, {u'href': u'http://localhost/chassis/e74c40e0-d825-11e2-a28f-0800200c9a66', u'rel': u'bookmark'}], u'extra': {}} {24} ironic.tests.unit.api.controllers.v1.test_chassis.TestListChassis.test_get_one_custom_fields [0.055557s] ... ok GET: /v1/allocations/acd43b92-de63-46e0-8319-b72da151bc3b {} GOT:{u'node_uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'uuid': u'acd43b92-de63-46e0-8319-b72da151bc3b', u'links': [{u'href': u'http://localhost/v1/allocations/acd43b92-de63-46e0-8319-b72da151bc3b', u'rel': u'self'}, {u'href': u'http://localhost/allocations/acd43b92-de63-46e0-8319-b72da151bc3b', u'rel': u'bookmark'}], u'extra': {}, u'last_error': None, u'created_at': u'2019-06-06T07:02:14.033934+00:00', u'resource_class': u'baremetal', u'updated_at': None, u'traits': [], u'state': u'allocating', u'candidate_nodes': [], u'name': None} GET: /v1/allocations/acd43b92-de63-46e0-8319-b72da151bc3b {} GOT:{u'node_uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'uuid': u'acd43b92-de63-46e0-8319-b72da151bc3b', u'links': [{u'href': u'http://localhost/v1/allocations/acd43b92-de63-46e0-8319-b72da151bc3b', u'rel': u'self'}, {u'href': u'http://localhost/allocations/acd43b92-de63-46e0-8319-b72da151bc3b', u'rel': u'bookmark'}], u'extra': {}, u'last_error': None, u'created_at': u'2019-06-06T07:02:14.033934+00:00', u'resource_class': u'baremetal', u'updated_at': None, u'traits': [], u'state': u'allocating', u'candidate_nodes': [], u'name': None} GET: /allocations/acd43b92-de63-46e0-8319-b72da151bc3b {} GOT:{u'node_uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'uuid': u'acd43b92-de63-46e0-8319-b72da151bc3b', u'links': [{u'href': u'http://localhost/v1/allocations/acd43b92-de63-46e0-8319-b72da151bc3b', u'rel': u'self'}, {u'href': u'http://localhost/allocations/acd43b92-de63-46e0-8319-b72da151bc3b', u'rel': u'bookmark'}], u'extra': {}, u'last_error': None, u'created_at': u'2019-06-06T07:02:14.033934+00:00', u'resource_class': u'baremetal', u'updated_at': None, u'traits': [], u'state': u'allocating', u'candidate_nodes': [], u'name': None} {0} ironic.tests.unit.conductor.test_manager.UpdateNodeTestCase.test_update_resource_class_no_previous_value [0.420388s] ... ok {10} ironic.tests.unit.api.controllers.v1.test_allocation.TestListAllocations.test_links [0.245947s] ... ok POST: /v1/deploy_templates {'extra': {}, 'steps': [{'priority': 10, 'interface': 'raid', 'step': 'create_configuration', 'args': {'logical_disks': []}}], 'uuid': '93682568-ce29-4dd6-8cf2-2c25266d44ae', 'name': None} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-097d6f5a-a034-47f5-87fe-6b4ed676966f X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Deploy template invalid: Deploy template name cannot be None.\"}"} {0} ironic.tests.unit.conductor.test_manager.UpdateVolumeConnectorTestCase.test_update_volume_connector_duplicate [0.068306s] ... ok {9} ironic.tests.unit.api.controllers.v1.test_deploy_template.TestPost.test_create_invalid_field_name_none [0.049310s] ... ok PATCH: /v1/deploy_templates/4b83dfff-68ad-4f31-8d29-c6e5bd44e4b6 [{'path': '/name', 'value': 'CUSTOM_DT2', 'op': 'replace'}] GOT:Response: 200 OK Content-Type: application/json Openstack-Request-Id: req-fe7bcb8a-e0a3-4480-9286-4d06cc912fd9 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"uuid": "4b83dfff-68ad-4f31-8d29-c6e5bd44e4b6", "links": [{"href": "http://localhost/v1/deploy_templates/4b83dfff-68ad-4f31-8d29-c6e5bd44e4b6", "rel": "self"}, {"href": "http://localhost/deploy_templates/4b83dfff-68ad-4f31-8d29-c6e5bd44e4b6", "rel": "bookmark"}], "extra": {}, "created_at": "2019-06-06T07:02:14.236864+00:00", "updated_at": null, "steps": [{"interface": "raid", "priority": 10, "step": "create_configuration", "args": {"logical_disks": []}}], "name": "CUSTOM_DT2"} {26} ironic.tests.unit.api.controllers.v1.test_deploy_template.TestPatch.test_update_name_custom_trait [0.078273s] ... ok {0} ironic.tests.unit.conductor.test_rpcapi.RPCAPITestCase.test_get_node_vendor_passthru_methods [0.015166s] ... ok POST: /v1/deploy_templates {'extra': {}, 'steps': [{'priority': 10, 'interface': 'raid', 'step': 'create_configuration', 'args': 'not a dict'}], 'uuid': 'ac8997bf-4436-48e1-9992-669ef1294ace', 'name': u'CUSTOM_DT1'} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-3624a86f-7136-44d2-816e-e85ef20145a3 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Invalid input for field/attribute template. Value: '{'steps': [{'priority': 10, 'interface': 'raid', 'step': 'create_configuration', 'args': 'not a dict'}], 'uuid': 'ac8997bf-4436-48e1-9992-669ef1294ace', 'name': 'CUSTOM_DT1', 'extra': {}}'. Value not a valid dict: not a dict\"}"} {1} ironic.tests.unit.api.controllers.v1.test_deploy_template.TestPost.test_create_invalid_step_field_args1 [0.049459s] ... ok {0} ironic.tests.unit.conductor.test_rpcapi.RPCAPITestCase.test_inspect_hardware [0.016257s] ... ok GET: /v1/deploy_templates {} GOT:{u'deploy_templates': [{u'uuid': u'4d4ea109-bf71-4a79-bfa3-cccd77197a5d', u'links': [{u'href': u'http://localhost/v1/deploy_templates/4d4ea109-bf71-4a79-bfa3-cccd77197a5d', u'rel': u'self'}, {u'href': u'http://localhost/deploy_templates/4d4ea109-bf71-4a79-bfa3-cccd77197a5d', u'rel': u'bookmark'}], u'name': u'CUSTOM_DT1'}]} GET: /v1/deploy_templates?detail=False {} GOT:{u'deploy_templates': [{u'uuid': u'4d4ea109-bf71-4a79-bfa3-cccd77197a5d', u'links': [{u'href': u'http://localhost/v1/deploy_templates/4d4ea109-bf71-4a79-bfa3-cccd77197a5d', u'rel': u'self'}, {u'href': u'http://localhost/deploy_templates/4d4ea109-bf71-4a79-bfa3-cccd77197a5d', u'rel': u'bookmark'}], u'name': u'CUSTOM_DT1'}]} {27} ironic.tests.unit.api.controllers.v1.test_deploy_template.TestListDeployTemplates.test_detail_query_false [0.092703s] ... ok {0} ironic.tests.unit.conductor.test_rpcapi.RPCAPITestCase.test_object_action_invalid_version [0.017335s] ... ok GET: /v1/allocations?state=allocating {} GOT:{u'allocations': [{u'node_uuid': None, u'uuid': u'bc6aa549-c943-42b1-ae4f-45c99604d1c9', u'links': [{u'href': u'http://localhost/v1/allocations/bc6aa549-c943-42b1-ae4f-45c99604d1c9', u'rel': u'self'}, {u'href': u'http://localhost/allocations/bc6aa549-c943-42b1-ae4f-45c99604d1c9', u'rel': u'bookmark'}], u'extra': {}, u'last_error': None, u'created_at': u'2019-06-06T07:02:14.226073+00:00', u'resource_class': u'baremetal', u'updated_at': None, u'traits': [], u'state': u'allocating', u'candidate_nodes': [], u'name': u'allocation0'}, {u'node_uuid': None, u'uuid': u'd7f74b05-62e5-4341-9623-c910126ff857', u'links': [{u'href': u'http://localhost/v1/allocations/d7f74b05-62e5-4341-9623-c910126ff857', u'rel': u'self'}, {u'href': u'http://localhost/allocations/d7f74b05-62e5-4341-9623-c910126ff857', u'rel': u'bookmark'}], u'extra': {}, u'last_error': None, u'created_at': u'2019-06-06T07:02:14.230201+00:00', u'resource_class': u'baremetal', u'updated_at': None, u'traits': [], u'state': u'allocating', u'candidate_nodes': [], u'name': u'allocation1'}, {u'node_uuid': None, u'uuid': u'924e35c9-9cfe-4adb-888b-aa13671a4707', u'links': [{u'href': u'http://localhost/v1/allocations/924e35c9-9cfe-4adb-888b-aa13671a4707', u'rel': u'self'}, {u'href': u'http://localhost/allocations/924e35c9-9cfe-4adb-888b-aa13671a4707', u'rel': u'bookmark'}], u'extra': {}, u'last_error': None, u'created_at': u'2019-06-06T07:02:14.234230+00:00', u'resource_class': u'baremetal', u'updated_at': None, u'traits': [], u'state': u'allocating', u'candidate_nodes': [], u'name': u'allocation2'}]} {21} ironic.tests.unit.api.controllers.v1.test_allocation.TestListAllocations.test_get_all_by_state [0.094019s] ... ok {0} ironic.tests.unit.conductor.test_steps.NodeDeployStepsTestCase.test__get_all_deployment_steps_no_steps [0.068784s] ... ok {0} ironic.tests.unit.conductor.test_task_manager.ThreadExceptionTestCase.test_set_node_last_error_exists [0.011429s] ... ok GET: /v1/allocations?sort_key=name {} GOT:{u'allocations': [{u'node_uuid': None, u'uuid': u'05e11a9f-4a42-4d82-8a08-2532ace1faee', u'links': [{u'href': u'http://localhost/v1/allocations/05e11a9f-4a42-4d82-8a08-2532ace1faee', u'rel': u'self'}, {u'href': u'http://localhost/allocations/05e11a9f-4a42-4d82-8a08-2532ace1faee', u'rel': u'bookmark'}], u'extra': {}, u'last_error': None, u'created_at': u'2019-06-06T07:02:13.940309+00:00', u'resource_class': u'baremetal', u'updated_at': None, u'traits': [], u'state': u'allocating', u'candidate_nodes': [], u'name': u'allocation1'}, {u'node_uuid': None, u'uuid': u'70d4b812-ba8c-4888-951a-f93b2aa5f854', u'links': [{u'href': u'http://localhost/v1/allocations/70d4b812-ba8c-4888-951a-f93b2aa5f854', u'rel': u'self'}, {u'href': u'http://localhost/allocations/70d4b812-ba8c-4888-951a-f93b2aa5f854', u'rel': u'bookmark'}], u'extra': {}, u'last_error': None, u'created_at': u'2019-06-06T07:02:13.936333+00:00', u'resource_class': u'baremetal', u'updated_at': None, u'traits': [], u'state': u'allocating', u'candidate_nodes': [], u'name': u'allocation2'}, {u'node_uuid': None, u'uuid': u'd66220f0-7d1f-4feb-a671-c403d6d809a8', u'links': [{u'href': u'http://localhost/v1/allocations/d66220f0-7d1f-4feb-a671-c403d6d809a8', u'rel': u'self'}, {u'href': u'http://localhost/allocations/d66220f0-7d1f-4feb-a671-c403d6d809a8', u'rel': u'bookmark'}], u'extra': {}, u'last_error': None, u'created_at': u'2019-06-06T07:02:13.932312+00:00', u'resource_class': u'baremetal', u'updated_at': None, u'traits': [], u'state': u'allocating', u'candidate_nodes': [], u'name': u'allocation3'}]} {12} ironic.tests.unit.api.controllers.v1.test_allocation.TestListAllocations.test_sort_key_allowed [0.083306s] ... ok {12} ironic.tests.unit.api.controllers.v1.test_chassis.TestChassisObject.test_chassis_sample [0.016893s] ... ok GET: /v1/chassis/e74c40e0-d825-11e2-a28f-0800200c9a66 {} GOT:{u'uuid': u'e74c40e0-d825-11e2-a28f-0800200c9a66', u'links': [{u'href': u'http://localhost/v1/chassis/e74c40e0-d825-11e2-a28f-0800200c9a66', u'rel': u'self'}, {u'href': u'http://localhost/chassis/e74c40e0-d825-11e2-a28f-0800200c9a66', u'rel': u'bookmark'}], u'extra': {}, u'created_at': u'2019-06-06T07:02:14.232610+00:00', u'updated_at': None, u'nodes': [{u'href': u'http://localhost/v1/chassis/e74c40e0-d825-11e2-a28f-0800200c9a66/nodes', u'rel': u'self'}, {u'href': u'http://localhost/chassis/e74c40e0-d825-11e2-a28f-0800200c9a66/nodes', u'rel': u'bookmark'}], u'description': u'data-center-1-chassis'} {8} ironic.tests.unit.api.controllers.v1.test_chassis.TestListChassis.test_get_one [0.055881s] ... ok {0} ironic.tests.unit.conductor.test_utils.ValidatePortPhysnetTestCase.test_validate_port_physnet_1_port_portgroup_no_physnet_create_1 [0.068383s] ... ok GET: /v1/chassis/e74c40e0-d825-11e2-a28f-0800200c9a66?fields=uuid,spongebob {} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-ae978225-090a-460d-b308-820dd08a91cf X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Field(s) \\\"spongebob\\\" are not valid\"}"} {22} ironic.tests.unit.api.controllers.v1.test_chassis.TestListChassis.test_get_custom_fields_invalid_fields [0.056117s] ... ok {0} ironic.tests.unit.conductor.test_utils.ValidatePortPhysnetTestCase.test_validate_port_physnet_1_port_portgroup_no_physnet_update_add_2 [0.071899s] ... ok PATCH: /v1/chassis/e74c40e0-d825-11e2-a28f-0800200c9a66 [{'path': '/extra/non-existent', 'op': 'remove'}] GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-e0641295-d58b-44bb-8519-11aec5b05b29 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Couldn't apply patch '{'path': '/extra/non-existent', 'op': 'remove'}'. Reason: can't remove non-existent object 'non-existent'\"}"} {0} ironic.tests.unit.db.test_allocations.AllocationsTestCase.test_update_allocation_uuid [0.021796s] ... ok {17} ironic.tests.unit.api.controllers.v1.test_chassis.TestPatch.test_remove_non_existent_property_fail [0.063770s] ... ok POST: /v1/events {'events': [{'status': 'ACTIVE', 'binding:host_id': '22222222-aaaa-bbbb-cccc-555555555555', 'binding:vnic_type': ['binding:vnic_type', 'SHOULD', 'BE', 'TEXT'], 'mac_address': 'de:ad:ca:fe:ba:be', 'port_id': '11111111-aaaa-bbbb-cccc-555555555555', 'event': 'network.bind_port', 'device_id': '22222222-aaaa-bbbb-cccc-555555555555'}]} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-4a126327-37d7-446c-beaa-5f32709021ed X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Invalid input for field/attribute events. Value: '[{'status': 'ACTIVE', 'binding:host_id': '22222222-aaaa-bbbb-cccc-555555555555', 'binding:vnic_type': ['binding:vnic_type', 'SHOULD', 'BE', 'TEXT'], 'mac_address': 'de:ad:ca:fe:ba:be', 'port_id': '11111111-aaaa-bbbb-cccc-555555555555', 'event': 'network.bind_port', 'device_id': '22222222-aaaa-bbbb-cccc-555555555555'}]'. Wrong type. Expected '', got ''\"}"} GET: /v1/allocations/?limit=3 {} GOT:{u'allocations': [{u'node_uuid': None, u'uuid': u'5c4be052-f660-40ee-9251-fd8dfcc3f127', u'links': [{u'href': u'http://localhost/v1/allocations/5c4be052-f660-40ee-9251-fd8dfcc3f127', u'rel': u'self'}, {u'href': u'http://localhost/allocations/5c4be052-f660-40ee-9251-fd8dfcc3f127', u'rel': u'bookmark'}], u'extra': {}, u'last_error': None, u'created_at': u'2019-06-06T07:02:14.037309+00:00', u'resource_class': u'baremetal', u'updated_at': None, u'traits': [], u'state': u'allocating', u'candidate_nodes': [], u'name': u'allocation0'}, {u'node_uuid': None, u'uuid': u'd4763a7c-2c92-460a-b77f-de066ca16840', u'links': [{u'href': u'http://localhost/v1/allocations/d4763a7c-2c92-460a-b77f-de066ca16840', u'rel': u'self'}, {u'href': u'http://localhost/allocations/d4763a7c-2c92-460a-b77f-de066ca16840', u'rel': u'bookmark'}], u'extra': {}, u'last_error': None, u'created_at': u'2019-06-06T07:02:14.045314+00:00', u'resource_class': u'baremetal', u'updated_at': None, u'traits': [], u'state': u'allocating', u'candidate_nodes': [], u'name': u'allocation1'}, {u'node_uuid': None, u'uuid': u'7182959f-2a6f-48d4-815e-cea3e390c552', u'links': [{u'href': u'http://localhost/v1/allocations/7182959f-2a6f-48d4-815e-cea3e390c552', u'rel': u'self'}, {u'href': u'http://localhost/allocations/7182959f-2a6f-48d4-815e-cea3e390c552', u'rel': u'bookmark'}], u'extra': {}, u'last_error': None, u'created_at': u'2019-06-06T07:02:14.049469+00:00', u'resource_class': u'baremetal', u'updated_at': None, u'traits': [], u'state': u'allocating', u'candidate_nodes': [], u'name': u'allocation2'}], u'next': u'http://localhost/v1/allocations?sort_key=id&sort_dir=asc&limit=3&marker=7182959f-2a6f-48d4-815e-cea3e390c552'} {30} ironic.tests.unit.api.controllers.v1.test_event.TestPost.test_network_port_event_invalid_binding_vnic_type [0.047477s] ... ok {18} ironic.tests.unit.api.controllers.v1.test_allocation.TestListAllocations.test_collection_links [0.175698s] ... ok GET: /v1/deploy_templates?sort_key=uuid {} GOT:{u'deploy_templates': [{u'uuid': u'd335de55-6c3c-4a0c-9f35-972af80adf7f', u'links': [{u'href': u'http://localhost/v1/deploy_templates/d335de55-6c3c-4a0c-9f35-972af80adf7f', u'rel': u'self'}, {u'href': u'http://localhost/deploy_templates/d335de55-6c3c-4a0c-9f35-972af80adf7f', u'rel': u'bookmark'}], u'name': u'CUSTOM_DT1'}, {u'uuid': u'e75db768-8f6d-4e65-99af-064749c18df5', u'links': [{u'href': u'http://localhost/v1/deploy_templates/e75db768-8f6d-4e65-99af-064749c18df5', u'rel': u'self'}, {u'href': u'http://localhost/deploy_templates/e75db768-8f6d-4e65-99af-064749c18df5', u'rel': u'bookmark'}], u'name': u'CUSTOM_DT0'}, {u'uuid': u'f3aba1d5-deaf-4118-bc1b-415c834a8c94', u'links': [{u'href': u'http://localhost/v1/deploy_templates/f3aba1d5-deaf-4118-bc1b-415c834a8c94', u'rel': u'self'}, {u'href': u'http://localhost/deploy_templates/f3aba1d5-deaf-4118-bc1b-415c834a8c94', u'rel': u'bookmark'}], u'name': u'CUSTOM_DT2'}]} {0} ironic.tests.unit.db.test_api.UpgradingTestCase.test_check_versions_missing_version_columns [0.016256s] ... ok POST: /v1/deploy_templates {'extra': {}, 'steps': [{'priority': 10, 'interface': 'raid', 'step': 42, 'args': {'logical_disks': []}}], 'uuid': 'b082c0a2-f94d-40a0-8233-f182c3ed1e96', 'name': u'CUSTOM_DT1'} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-f9d77206-8f52-4a0e-9f14-fa03ddfaf408 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Invalid input for field/attribute step. Value: '42'. Wrong type. Expected '', got ''\"}"} {15} ironic.tests.unit.api.controllers.v1.test_deploy_template.TestListDeployTemplates.test_sort_key [0.086802s] ... ok {11} ironic.tests.unit.api.controllers.v1.test_deploy_template.TestPost.test_create_invalid_step_field_step [0.047863s] ... ok {0} ironic.tests.unit.db.test_bios_settings.DbBIOSSettingTestCase.test_delete_bios_setting_list_node_not_exist [0.023236s] ... ok 2019-06-06 07:02:13.872 15117 INFO alembic.runtime.migration [req-fb74f54d-4684-45c3-88b3-62aaf5a282d8 - - - - -] Context impl SQLiteImpl. 2019-06-06 07:02:13.873 15117 INFO alembic.runtime.migration [req-fb74f54d-4684-45c3-88b3-62aaf5a282d8 - - - - -] Will assume non-transactional DDL. GET: /v1/allocations {} GOT:{u'allocations': [{u'node_uuid': None, u'uuid': u'6abdeb53-9f8f-4ab0-b7a8-1a1a6dac3c5d', u'links': [{u'href': u'http://localhost/v1/allocations/6abdeb53-9f8f-4ab0-b7a8-1a1a6dac3c5d', u'rel': u'self'}, {u'href': u'http://localhost/allocations/6abdeb53-9f8f-4ab0-b7a8-1a1a6dac3c5d', u'rel': u'bookmark'}], u'extra': {}, u'last_error': None, u'created_at': u'2019-06-06T07:02:14.082418+00:00', u'resource_class': u'baremetal', u'updated_at': None, u'traits': [], u'state': u'allocating', u'candidate_nodes': [], u'name': u'allocation0'}, {u'node_uuid': None, u'uuid': u'cf427aa2-847c-4e1c-8d63-a424059b5b76', u'links': [{u'href': u'http://localhost/v1/allocations/cf427aa2-847c-4e1c-8d63-a424059b5b76', u'rel': u'self'}, {u'href': u'http://localhost/allocations/cf427aa2-847c-4e1c-8d63-a424059b5b76', u'rel': u'bookmark'}], u'extra': {}, u'last_error': None, u'created_at': u'2019-06-06T07:02:14.090432+00:00', u'resource_class': u'baremetal', u'updated_at': None, u'traits': [], u'state': u'allocating', u'candidate_nodes': [], u'name': u'allocation1'}, {u'node_uuid': None, u'uuid': u'501708b2-dead-42e0-ab6e-9553f86d3169', u'links': [{u'href': u'http://localhost/v1/allocations/501708b2-dead-42e0-ab6e-9553f86d3169', u'rel': u'self'}, {u'href': u'http://localhost/allocations/501708b2-dead-42e0-ab6e-9553f86d3169', u'rel': u'bookmark'}], u'extra': {}, u'last_error': None, u'created_at': u'2019-06-06T07:02:14.094403+00:00', u'resource_class': u'baremetal', u'updated_at': None, u'traits': [], u'state': u'allocating', u'candidate_nodes': [], u'name': u'allocation2'}], u'next': u'http://localhost/v1/allocations?sort_key=id&sort_dir=asc&limit=3&marker=501708b2-dead-42e0-ab6e-9553f86d3169'} {29} ironic.tests.unit.api.controllers.v1.test_allocation.TestListAllocations.test_collection_links_default_limit [0.387545s] ... ok {0} ironic.tests.unit.db.test_chassis.DbChassisTestCase.test_create_chassis_already_exists [0.017991s] ... ok PATCH: /v1/deploy_templates/9cca75d8-5aa8-45ee-b6f3-9a1c7cbc8dd9 [{'path': '/steps', 'value': [], 'op': 'replace'}] GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-ef867605-55b4-498a-9554-5efb761ff89f X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Deploy template invalid: No deploy steps specified. A deploy template must have at least one deploy step..\"}"} POST: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/allocation {'uuid': 'c8e99147-1927-4e80-99c1-4286e18c3c80', 'resource_class': 'baremetal', 'extra': {}, 'traits': [], 'candidate_nodes': [], 'name': None} GOT:Response: 405 Method Not Allowed Allow: DELETE, GET Content-Type: application/json {"error_message": "{\"code\": 405, \"description\": \"\", \"title\": \"Method Not Allowed\"}"} {31} ironic.tests.unit.api.controllers.v1.test_allocation.TestPost.test_create_by_node_not_allowed [0.062663s] ... ok {23} ironic.tests.unit.api.controllers.v1.test_deploy_template.TestPatch.test_replace_empty_step_list_fail [0.065173s] ... ok {0} ironic.tests.unit.db.test_conductor.DbConductorTestCase.test_get_offline_conductors [0.025597s] ... ok {0} ironic.tests.unit.db.test_deploy_templates.DbDeployTemplateTestCase.test_get_deploy_template_by_name [0.026704s] ... ok {0} ironic.tests.unit.db.test_deploy_templates.DbDeployTemplateTestCase.test_update_extra [0.026327s] ... ok {0} ironic.tests.unit.db.test_deploy_templates.DbDeployTemplateTestCase.test_update_steps_replace_args [0.029322s] ... ok {0} ironic.tests.unit.db.test_node_traits.DbNodeTraitTestCase.test_node_trait_exists [0.050397s] ... ok GET: /v1/chassis {} GOT:{u'chassis': [{u'uuid': u'c9429ce4-436b-43fe-8720-e518dd0d82cf', u'links': [{u'href': u'http://localhost/v1/chassis/c9429ce4-436b-43fe-8720-e518dd0d82cf', u'rel': u'self'}, {u'href': u'http://localhost/chassis/c9429ce4-436b-43fe-8720-e518dd0d82cf', u'rel': u'bookmark'}], u'description': u'data-center-1-chassis'}, {u'uuid': u'53514fd5-2e3c-4e43-bd10-f9de7dcd51ee', u'links': [{u'href': u'http://localhost/v1/chassis/53514fd5-2e3c-4e43-bd10-f9de7dcd51ee', u'rel': u'self'}, {u'href': u'http://localhost/chassis/53514fd5-2e3c-4e43-bd10-f9de7dcd51ee', u'rel': u'bookmark'}], u'description': u'data-center-1-chassis'}, {u'uuid': u'90527ed5-81fc-412c-8430-d9c72a34a581', u'links': [{u'href': u'http://localhost/v1/chassis/90527ed5-81fc-412c-8430-d9c72a34a581', u'rel': u'self'}, {u'href': u'http://localhost/chassis/90527ed5-81fc-412c-8430-d9c72a34a581', u'rel': u'bookmark'}], u'description': u'data-center-1-chassis'}, {u'uuid': u'42f91cba-fb1e-4980-834b-6c21fddc130d', u'links': [{u'href': u'http://localhost/v1/chassis/42f91cba-fb1e-4980-834b-6c21fddc130d', u'rel': u'self'}, {u'href': u'http://localhost/chassis/42f91cba-fb1e-4980-834b-6c21fddc130d', u'rel': u'bookmark'}], u'description': u'data-center-1-chassis'}, {u'uuid': u'a4fefae9-d4a6-4447-b89f-e0d6fc9c7052', u'links': [{u'href': u'http://localhost/v1/chassis/a4fefae9-d4a6-4447-b89f-e0d6fc9c7052', u'rel': u'self'}, {u'href': u'http://localhost/chassis/a4fefae9-d4a6-4447-b89f-e0d6fc9c7052', u'rel': u'bookmark'}], u'description': u'data-center-1-chassis'}]} {19} ironic.tests.unit.api.controllers.v1.test_chassis.TestListChassis.test_many [0.079398s] ... ok {0} ironic.tests.unit.db.test_nodes.DbNodeTestCase.test_get_node_by_port_addresses [0.068713s] ... ok GET: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/bios {} GOT:{u'bios': [{u'value': u'on', u'created_at': u'2019-06-06T07:02:14.340451+00:00', u'name': u'virtualization', u'links': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/bios/virtualization', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/bios/virtualization', u'rel': u'bookmark'}], u'updated_at': None}]} {26} ironic.tests.unit.api.controllers.v1.test_node.TestBIOS.test_get_all_bios [0.107158s] ... ok {26} ironic.tests.unit.api.controllers.v1.test_node.TestCheckCleanSteps.test__check_clean_steps_not_list [0.029605s] ... ok {0} ironic.tests.unit.db.test_nodes.DbNodeTestCase.test_get_node_by_uuid [0.052814s] ... ok GET: /v1/allocations?fields=node_uuid&limit=2 {} GOT:{u'allocations': [{u'node_uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'links': [{u'href': u'http://localhost/v1/allocations/050b8d7a-a260-4dc9-b4b3-c5642e4890a6', u'rel': u'self'}, {u'href': u'http://localhost/allocations/050b8d7a-a260-4dc9-b4b3-c5642e4890a6', u'rel': u'bookmark'}]}, {u'node_uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'links': [{u'href': u'http://localhost/v1/allocations/9c7cda8c-0372-486b-a20d-3ef4dc37a1aa', u'rel': u'self'}, {u'href': u'http://localhost/allocations/9c7cda8c-0372-486b-a20d-3ef4dc37a1aa', u'rel': u'bookmark'}]}], u'next': u'http://localhost/v1/allocations?sort_key=id&sort_dir=asc&limit=2&marker=9c7cda8c-0372-486b-a20d-3ef4dc37a1aa'} {16} ironic.tests.unit.api.controllers.v1.test_allocation.TestListAllocations.test_get_collection_pagination_no_uuid [0.111268s] ... ok POST: /v1/deploy_templates {'extra': {}, 'steps': [{'interface': 'raid', 'priority': 0, 'step': 'create_configuration', 'args': {'foo': '0'}}, {'interface': 'raid', 'priority': 1, 'step': 'create_configuration', 'args': {'foo': '1'}}], 'uuid': '9105392e-7f40-4736-8694-2f8065614cfb', 'name': u'CUSTOM_DT1'} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-2e335603-39f4-488b-89d6-741e611bc36b X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Deploy template invalid: Duplicate deploy steps. A deploy template cannot have multiple deploy steps with the same interface and step. Duplicates: interface: raid, step: create_configuration.\"}"} {2} ironic.tests.unit.api.controllers.v1.test_deploy_template.TestPost.test_create_steps_invalid_duplicate [0.052565s] ... ok {0} ironic.tests.unit.db.test_nodes.DbNodeTestCase.test_get_nodeinfo_list_provision [0.033245s] ... ok {0} ironic.tests.unit.db.test_nodes.DbNodeTestCase.test_update_node_provision [0.033035s] ... ok POST: /v1/chassis {'uuid': 'e74c40e0-d825-11e2-a28f-0800200c9a66', 'description': 'data-center-1-chassis', 'extra': {'none': None, 'int': 123, 'float': 0.1, 'list': [1, 2], 'bool': True, 'str': 'foo', 'dict': {'cat': 'meow'}}} GOT:Response: 201 Created Content-Type: application/json Location: http://localhost/v1/chassis/e74c40e0-d825-11e2-a28f-0800200c9a66 Openstack-Request-Id: req-b770fc4d-3c2f-4f86-8cbc-5e789cbdd440 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"uuid": "e74c40e0-d825-11e2-a28f-0800200c9a66", "links": [{"href": "http://localhost/v1/chassis/e74c40e0-d825-11e2-a28f-0800200c9a66", "rel": "self"}, {"href": "http://localhost/chassis/e74c40e0-d825-11e2-a28f-0800200c9a66", "rel": "bookmark"}], "extra": {"none": null, "int": 123, "float": 0.1, "list": [1, 2], "dict": {"cat": "meow"}, "str": "foo", "bool": true}, "created_at": "2019-06-06T07:02:14.216577+00:00", "updated_at": null, "nodes": [{"href": "http://localhost/v1/chassis/e74c40e0-d825-11e2-a28f-0800200c9a66/nodes", "rel": "self"}, {"href": "http://localhost/chassis/e74c40e0-d825-11e2-a28f-0800200c9a66/nodes", "rel": "bookmark"}], "description": "data-center-1-chassis"} GET: /v1/chassis/e74c40e0-d825-11e2-a28f-0800200c9a66 {} GOT:{u'uuid': u'e74c40e0-d825-11e2-a28f-0800200c9a66', u'links': [{u'href': u'http://localhost/v1/chassis/e74c40e0-d825-11e2-a28f-0800200c9a66', u'rel': u'self'}, {u'href': u'http://localhost/chassis/e74c40e0-d825-11e2-a28f-0800200c9a66', u'rel': u'bookmark'}], u'extra': {u'none': None, u'int': 123, u'float': 0.1, u'list': [1, 2], u'bool': True, u'str': u'foo', u'dict': {u'cat': u'meow'}}, u'created_at': u'2019-06-06T07:02:14.216577+00:00', u'updated_at': None, u'nodes': [{u'href': u'http://localhost/v1/chassis/e74c40e0-d825-11e2-a28f-0800200c9a66/nodes', u'rel': u'self'}, {u'href': u'http://localhost/chassis/e74c40e0-d825-11e2-a28f-0800200c9a66/nodes', u'rel': u'bookmark'}], u'description': u'data-center-1-chassis'} {5} ironic.tests.unit.api.controllers.v1.test_chassis.TestPost.test_create_chassis_valid_extra [0.072226s] ... ok {0} ironic.tests.unit.db.test_portgroups.DbportgroupTestCase.test_get_portgroup_by_address_that_does_not_exist [0.024083s] ... ok PATCH: /v1/deploy_templates/CUSTOM_DT1.json [{'path': '/steps/0/interface', 'value': 'bios', 'op': 'replace'}] GOT:Response: 200 OK Content-Type: application/json Openstack-Request-Id: req-e3732d9b-9078-407e-83ab-0581d4117027 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"uuid": "ef668e23-8798-4833-8704-246023691800", "links": [{"href": "http://localhost/v1/deploy_templates/ef668e23-8798-4833-8704-246023691800", "rel": "self"}, {"href": "http://localhost/deploy_templates/ef668e23-8798-4833-8704-246023691800", "rel": "bookmark"}], "extra": {}, "created_at": "2019-06-06T07:02:13.882010+00:00", "updated_at": null, "steps": [{"interface": "bios", "priority": 10, "step": "create_configuration", "args": {"logical_disks": []}}], "name": "CUSTOM_DT1"} {6} ironic.tests.unit.api.controllers.v1.test_deploy_template.TestPatch.test_update_by_name_with_json [0.153129s] ... ok GET: /v1/nodes/spam/management/boot_device {} GOT:{u'boot_device': u'pxe', u'persistent': True} {26} ironic.tests.unit.api.controllers.v1.test_node.TestListNodes.test_get_boot_device_by_name [0.081064s] ... ok {0} ironic.tests.unit.db.test_portgroups.DbportgroupTestCase.test_update_portgroup_not_found [0.023456s] ... ok PATCH: /v1/deploy_templates/e708fcd3-841b-4899-80c2-5739493c95ad [{'path': '/steps/1', 'op': 'remove'}] GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-473244c0-a15b-4103-8467-cafbffbece04 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Couldn't apply patch '{'path': '/steps/1', 'op': 'remove'}'. Reason: can't remove non-existent object '1'\"}"} {27} ironic.tests.unit.api.controllers.v1.test_deploy_template.TestPatch.test_remove_non_existent_step_fail [0.066607s] ... ok {0} ironic.tests.unit.db.test_volume_connectors.DbVolumeConnectorTestCase.test_get_volume_connectors_by_node_id [0.023752s] ... ok GET: /v1/drivers/test/properties {} GOT:{u'prop1': u'Property 1. Required.'} {2} ironic.tests.unit.api.controllers.v1.test_driver.TestDriverProperties.test_driver_properties_fake [0.046662s] ... ok {0} ironic.tests.unit.db.test_volume_connectors.DbVolumeConnectorTestCase.test_update_volume_connector_uuid [0.020522s] ... ok {0} ironic.tests.unit.db.test_volume_targets.DbVolumeTargetTestCase.test_update_volume_target_uuid [0.022341s] ... ok {0} ironic.tests.unit.drivers.modules.ansible.test_deploy.TestAnsibleMethods.test__parse_ansible_driver_info [0.025450s] ... ok PATCH: /v1/chassis/e74c40e0-d825-11e2-a28f-0800200c9a66/nodes [{'path': '/extra/foo', 'value': 'bar', 'op': 'add'}] GOT:Response: 403 Forbidden Content-Type: application/json Openstack-Request-Id: req-14195d01-e153-42d0-9308-e244295924c0 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Operation not permitted.\"}"} {12} ironic.tests.unit.api.controllers.v1.test_chassis.TestPatch.test_patch_nodes_subresource [0.057315s] ... ok POST: /v1/allocations {'uuid': 'ab2a65bd-bfed-444c-83b1-d407c11c408f', 'resource_class': 'baremetal', 'extra': {}, 'traits': [], 'candidate_nodes': [u'node-1', '5e72fc9c-b6b6-40d9-a000-4f21df3bd117'], 'name': None} GOT:Response: 201 Created Content-Type: application/json Location: http://localhost/v1/allocations/ab2a65bd-bfed-444c-83b1-d407c11c408f Openstack-Request-Id: req-f85248b3-a56e-44b4-8e7e-dc863f11e79a X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"node_uuid": null, "uuid": "ab2a65bd-bfed-444c-83b1-d407c11c408f", "links": [{"href": "http://localhost/v1/allocations/ab2a65bd-bfed-444c-83b1-d407c11c408f", "rel": "self"}, {"href": "http://localhost/allocations/ab2a65bd-bfed-444c-83b1-d407c11c408f", "rel": "bookmark"}], "extra": {}, "last_error": null, "created_at": "2019-06-06T07:02:14.237617+00:00", "resource_class": "baremetal", "updated_at": null, "traits": [], "state": "allocating", "candidate_nodes": ["1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "5e72fc9c-b6b6-40d9-a000-4f21df3bd117"], "name": null} GET: /v1/allocations/ab2a65bd-bfed-444c-83b1-d407c11c408f {} GOT:{u'node_uuid': None, u'uuid': u'ab2a65bd-bfed-444c-83b1-d407c11c408f', u'links': [{u'href': u'http://localhost/v1/allocations/ab2a65bd-bfed-444c-83b1-d407c11c408f', u'rel': u'self'}, {u'href': u'http://localhost/allocations/ab2a65bd-bfed-444c-83b1-d407c11c408f', u'rel': u'bookmark'}], u'extra': {}, u'last_error': None, u'created_at': u'2019-06-06T07:02:14.237617+00:00', u'resource_class': u'baremetal', u'updated_at': None, u'traits': [], u'state': u'allocating', u'candidate_nodes': [u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'5e72fc9c-b6b6-40d9-a000-4f21df3bd117'], u'name': None} {7} ironic.tests.unit.api.controllers.v1.test_allocation.TestPost.test_create_allocation_with_candidate_nodes [0.096898s] ... ok {0} ironic.tests.unit.drivers.modules.cimc.test_management.CIMCManagementTestCase.test_set_boot_device [0.078866s] ... ok GET: /v1/deploy_templates/51760837-b888-48ce-ac4e-e37e4bbec83b?fields=name,steps {} GOT:{u'steps': [{u'interface': u'raid', u'priority': 10, u'step': u'create_configuration', u'args': {u'logical_disks': []}}], u'name': u'CUSTOM_DT1', u'links': [{u'href': u'http://localhost/v1/deploy_templates/51760837-b888-48ce-ac4e-e37e4bbec83b', u'rel': u'self'}, {u'href': u'http://localhost/deploy_templates/51760837-b888-48ce-ac4e-e37e4bbec83b', u'rel': u'bookmark'}]} {17} ironic.tests.unit.api.controllers.v1.test_deploy_template.TestListDeployTemplates.test_get_one_custom_fields [0.074639s] ... ok {0} ironic.tests.unit.drivers.modules.cimc.test_power.WaitForStateChangeTestCase.test__wait_for_state_change_fail [0.084800s] ... ok DELETE: /v1/chassis/e74c40e0-d825-11e2-a28f-0800200c9a66 GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-90fb4525-ef08-4a94-b6e0-299faaee822c X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Cannot complete the requested action because chassis e74c40e0-d825-11e2-a28f-0800200c9a66 contains nodes.\"}"} {29} ironic.tests.unit.api.controllers.v1.test_chassis.TestDelete.test_delete_chassis_with_node [0.109435s] ... ok PATCH: /v1/deploy_templates/09f95dd1-2f82-488e-920f-8646e5860f0d [{'path': '/name', 'value': 'CUSTOM_DT2', 'op': 'add'}] GOT:Response: 404 Not Found Content-Type: application/json Openstack-Request-Id: req-4109a2a8-7cdc-4b5a-b097-ae9641db5e94 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Deploy template 09f95dd1-2f82-488e-920f-8646e5860f0d could not be found.\"}"} {23} ironic.tests.unit.api.controllers.v1.test_deploy_template.TestPatch.test_update_not_found [0.062733s] ... ok {0} ironic.tests.unit.drivers.modules.drac.test_inspect.DracInspectionTestCase.test__get_pxe_dev_nics_with_UEFI_boot_mode [0.099209s] ... ok {0} ironic.tests.unit.drivers.modules.drac.test_management.DracManagementInternalMethodsTestCase.test__get_boot_device [0.041272s] ... ok {0} ironic.tests.unit.drivers.modules.drac.test_management.DracManagementInternalMethodsTestCase.test__get_next_persistent_boot_mode_with_empty_boot_mode_list [0.040988s] ... ok GET: /v1/chassis/e74c40e0-d825-11e2-a28f-0800200c9a66 {} GOT:{u'uuid': u'e74c40e0-d825-11e2-a28f-0800200c9a66', u'links': [{u'href': u'http://localhost/v1/chassis/e74c40e0-d825-11e2-a28f-0800200c9a66', u'rel': u'self'}, {u'href': u'http://localhost/chassis/e74c40e0-d825-11e2-a28f-0800200c9a66', u'rel': u'bookmark'}], u'extra': {}, u'created_at': u'2019-06-06T07:02:14.340896+00:00', u'updated_at': None, u'nodes': [{u'href': u'http://localhost/v1/chassis/e74c40e0-d825-11e2-a28f-0800200c9a66/nodes', u'rel': u'self'}, {u'href': u'http://localhost/chassis/e74c40e0-d825-11e2-a28f-0800200c9a66/nodes', u'rel': u'bookmark'}], u'description': u'data-center-1-chassis'} {22} ironic.tests.unit.api.controllers.v1.test_chassis.TestListChassis.test_nodes_subresource_link [0.055441s] ... ok POST: /v1/allocations {'node_uuid': '90d6a2a5-da1b-4d68-a7c9-c3e69eda52c0', 'uuid': 'e5aed818-7652-4a0b-b6fe-d59131ff6742', 'resource_class': 'baremetal', 'extra': {}, 'traits': [], 'candidate_nodes': [], 'name': None} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-8cedf9ef-d55e-4a93-9423-03fc746024f4 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Invalid input for field/attribute node_uuid. Value: '90d6a2a5-da1b-4d68-a7c9-c3e69eda52c0'. Cannot set read only field.\"}"} {18} ironic.tests.unit.api.controllers.v1.test_allocation.TestPost.test_create_with_node_uuid_not_allowed [0.048671s] ... ok GET: /v1/deploy_templates?sort_key=name&detail=True {} GOT:{u'deploy_templates': [{u'uuid': u'8776c321-86c5-4055-a070-54bda3357ca5', u'links': [{u'href': u'http://localhost/v1/deploy_templates/8776c321-86c5-4055-a070-54bda3357ca5', u'rel': u'self'}, {u'href': u'http://localhost/deploy_templates/8776c321-86c5-4055-a070-54bda3357ca5', u'rel': u'bookmark'}], u'extra': {}, u'created_at': u'2019-06-06T07:02:14.516810+00:00', u'updated_at': None, u'steps': [{u'interface': u'raid', u'priority': 10, u'step': u'create_configuration', u'args': {u'logical_disks': []}}], u'name': u'CUSTOM_DT1'}, {u'uuid': u'0f6b5a56-4211-43e9-8fbc-d5480aa35d14', u'links': [{u'href': u'http://localhost/v1/deploy_templates/0f6b5a56-4211-43e9-8fbc-d5480aa35d14', u'rel': u'self'}, {u'href': u'http://localhost/deploy_templates/0f6b5a56-4211-43e9-8fbc-d5480aa35d14', u'rel': u'bookmark'}], u'extra': {}, u'created_at': u'2019-06-06T07:02:14.510882+00:00', u'updated_at': None, u'steps': [{u'interface': u'raid', u'priority': 10, u'step': u'create_configuration', u'args': {u'logical_disks': []}}], u'name': u'CUSTOM_DT2'}, {u'uuid': u'fd288a15-daf0-4dfd-89af-0ec7c2861c84', u'links': [{u'href': u'http://localhost/v1/deploy_templates/fd288a15-daf0-4dfd-89af-0ec7c2861c84', u'rel': u'self'}, {u'href': u'http://localhost/deploy_templates/fd288a15-daf0-4dfd-89af-0ec7c2861c84', u'rel': u'bookmark'}], u'extra': {}, u'created_at': u'2019-06-06T07:02:14.499852+00:00', u'updated_at': None, u'steps': [{u'interface': u'raid', u'priority': 10, u'step': u'create_configuration', u'args': {u'logical_disks': []}}], u'name': u'CUSTOM_DT3'}]} POST: /v1/deploy_templates {'extra': {}, 'steps': [{'priority': 10, 'interface': 'raid', 'step': 'create_configuration', 'args': {'logical_disks': []}}], 'uuid': '08f45aaa-53a4-4316-980d-3a83df77cad4'} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-8ac8e1e0-6fec-445d-8694-b3f0e48c1b61 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Invalid input for field/attribute name. Value: 'None'. Mandatory field missing.\"}"} {28} ironic.tests.unit.api.controllers.v1.test_deploy_template.TestListDeployTemplates.test_detail_sort_key_allowed [0.100405s] ... ok {15} ironic.tests.unit.api.controllers.v1.test_deploy_template.TestPost.test_create_no_mandatory_field_name [0.047622s] ... ok PATCH: /v1/chassis/869382e8-95eb-41aa-8d16-a4817b384e90 [{'path': '/extra/a', 'value': 'b', 'op': 'add'}] GOT:Response: 404 Not Found Content-Type: application/json Openstack-Request-Id: req-20ba9a25-9ede-4d84-9329-67f58ac9dc66 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Chassis 869382e8-95eb-41aa-8d16-a4817b384e90 could not be found.\"}"} {19} ironic.tests.unit.api.controllers.v1.test_chassis.TestPatch.test_update_not_found [0.057109s] ... ok DELETE: /v1/deploy_templates/CUSTOM_DT1.json GOT:Response: 204 No Content Openstack-Request-Id: req-1b3f0b55-56ee-4b8e-8fa8-5575c51ab464 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {12} ironic.tests.unit.api.controllers.v1.test_deploy_template.TestDelete.test_delete_by_name_with_json [0.083039s] ... ok {0} ironic.tests.unit.drivers.modules.drac.test_periodic_task.DracPeriodicTaskTestCase.test__check_node_raid_jobs_without_update [0.079510s] ... ok GET: /v1/conductors?sort_key=hostname {} GOT:{u'conductors': [{u'hostname': u'0588dbce-b136-4141-88c0-13fdf2aa0173', u'conductor_group': u'', u'alive': True, u'links': [{u'href': u'http://localhost/v1/conductors/0588dbce-b136-4141-88c0-13fdf2aa0173', u'rel': u'self'}, {u'href': u'http://localhost/conductors/0588dbce-b136-4141-88c0-13fdf2aa0173', u'rel': u'bookmark'}]}, {u'hostname': u'0fe409b2-c298-4314-9619-530e209fc40b', u'conductor_group': u'', u'alive': True, u'links': [{u'href': u'http://localhost/v1/conductors/0fe409b2-c298-4314-9619-530e209fc40b', u'rel': u'self'}, {u'href': u'http://localhost/conductors/0fe409b2-c298-4314-9619-530e209fc40b', u'rel': u'bookmark'}]}, {u'hostname': u'32743dfb-dd23-4aaf-b9ec-a6f6d4b6e249', u'conductor_group': u'', u'alive': True, u'links': [{u'href': u'http://localhost/v1/conductors/32743dfb-dd23-4aaf-b9ec-a6f6d4b6e249', u'rel': u'self'}, {u'href': u'http://localhost/conductors/32743dfb-dd23-4aaf-b9ec-a6f6d4b6e249', u'rel': u'bookmark'}]}, {u'hostname': u'961403b8-954d-40de-867f-d23f2411662e', u'conductor_group': u'', u'alive': True, u'links': [{u'href': u'http://localhost/v1/conductors/961403b8-954d-40de-867f-d23f2411662e', u'rel': u'self'}, {u'href': u'http://localhost/conductors/961403b8-954d-40de-867f-d23f2411662e', u'rel': u'bookmark'}]}, {u'hostname': u'fd0bd21b-f933-499e-ae5b-e000226d2e62', u'conductor_group': u'', u'alive': True, u'links': [{u'href': u'http://localhost/v1/conductors/fd0bd21b-f933-499e-ae5b-e000226d2e62', u'rel': u'self'}, {u'href': u'http://localhost/conductors/fd0bd21b-f933-499e-ae5b-e000226d2e62', u'rel': u'bookmark'}]}]} {13} ironic.tests.unit.api.controllers.v1.test_conductor.TestListConductors.test_sort_key [0.088035s] ... ok 2019-06-06 07:02:13.880 15113 INFO alembic.runtime.migration [req-897d67d5-4c86-4936-a483-3c3b3733ed7f - - - - -] Context impl SQLiteImpl. 2019-06-06 07:02:13.881 15113 INFO alembic.runtime.migration [req-897d67d5-4c86-4936-a483-3c3b3733ed7f - - - - -] Will assume non-transactional DDL. GET: /v1/allocations {} GOT:{u'allocations': [{u'node_uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'uuid': u'f62eeb6d-cc0d-47c9-a3f5-8891a0d9675d', u'links': [{u'href': u'http://localhost/v1/allocations/f62eeb6d-cc0d-47c9-a3f5-8891a0d9675d', u'rel': u'self'}, {u'href': u'http://localhost/allocations/f62eeb6d-cc0d-47c9-a3f5-8891a0d9675d', u'rel': u'bookmark'}], u'extra': {}, u'last_error': None, u'created_at': u'2019-06-06T07:02:14.089308+00:00', u'resource_class': u'baremetal', u'updated_at': None, u'traits': [], u'state': u'allocating', u'candidate_nodes': [], u'name': u'allocation0'}, {u'node_uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'uuid': u'e252291e-ea9c-472f-a421-1bf5e1d72a2a', u'links': [{u'href': u'http://localhost/v1/allocations/e252291e-ea9c-472f-a421-1bf5e1d72a2a', u'rel': u'self'}, {u'href': u'http://localhost/allocations/e252291e-ea9c-472f-a421-1bf5e1d72a2a', u'rel': u'bookmark'}], u'extra': {}, u'last_error': None, u'created_at': u'2019-06-06T07:02:14.097380+00:00', u'resource_class': u'baremetal', u'updated_at': None, u'traits': [], u'state': u'allocating', u'candidate_nodes': [], u'name': u'allocation1'}, {u'node_uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'uuid': u'1db4f240-0bec-4f87-b7d4-548864c257ec', u'links': [{u'href': u'http://localhost/v1/allocations/1db4f240-0bec-4f87-b7d4-548864c257ec', u'rel': u'self'}, {u'href': u'http://localhost/allocations/1db4f240-0bec-4f87-b7d4-548864c257ec', u'rel': u'bookmark'}], u'extra': {}, u'last_error': None, u'created_at': u'2019-06-06T07:02:14.101534+00:00', u'resource_class': u'baremetal', u'updated_at': None, u'traits': [], u'state': u'allocating', u'candidate_nodes': [], u'name': u'allocation2'}, {u'node_uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'uuid': u'19c32dcd-1846-47da-9592-5291695cc639', u'links': [{u'href': u'http://localhost/v1/allocations/19c32dcd-1846-47da-9592-5291695cc639', u'rel': u'self'}, {u'href': u'http://localhost/allocations/19c32dcd-1846-47da-9592-5291695cc639', u'rel': u'bookmark'}], u'extra': {}, u'last_error': None, u'created_at': u'2019-06-06T07:02:14.105602+00:00', u'resource_class': u'baremetal', u'updated_at': None, u'traits': [], u'state': u'allocating', u'candidate_nodes': [], u'name': u'allocation3'}, {u'node_uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'uuid': u'f86891d6-376a-413d-b03b-936556afd659', u'links': [{u'href': u'http://localhost/v1/allocations/f86891d6-376a-413d-b03b-936556afd659', u'rel': u'self'}, {u'href': u'http://localhost/allocations/f86891d6-376a-413d-b03b-936556afd659', u'rel': u'bookmark'}], u'extra': {}, u'last_error': None, u'created_at': u'2019-06-06T07:02:14.109606+00:00', u'resource_class': u'baremetal', u'updated_at': None, u'traits': [], u'state': u'allocating', u'candidate_nodes': [], u'name': u'allocation4'}]} {25} ironic.tests.unit.api.controllers.v1.test_allocation.TestListAllocations.test_many [0.474282s] ... ok GET: /v1/drivers/driver/properties {} GOT:Response: 404 Not Found Content-Type: application/json Openstack-Request-Id: req-6c486342-76ff-4c62-b06a-657cf64e7934 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Could not find the following driver(s) or hardware type(s): driver.\"}"} {6} ironic.tests.unit.api.controllers.v1.test_driver.TestDriverProperties.test_driver_properties_cannot_load [0.048406s] ... ok GET: /v1/conductors/?limit=3 {} GOT:{u'conductors': [{u'hostname': u'3f97bae9-6edd-47d5-8511-e30e0227b266', u'conductor_group': u'', u'alive': True, u'links': [{u'href': u'http://localhost/v1/conductors/3f97bae9-6edd-47d5-8511-e30e0227b266', u'rel': u'self'}, {u'href': u'http://localhost/conductors/3f97bae9-6edd-47d5-8511-e30e0227b266', u'rel': u'bookmark'}]}, {u'hostname': u'468c8121-adb6-4830-afd0-027b459a8ec5', u'conductor_group': u'', u'alive': True, u'links': [{u'href': u'http://localhost/v1/conductors/468c8121-adb6-4830-afd0-027b459a8ec5', u'rel': u'self'}, {u'href': u'http://localhost/conductors/468c8121-adb6-4830-afd0-027b459a8ec5', u'rel': u'bookmark'}]}, {u'hostname': u'e47de88e-5bb5-42c1-bc9c-ccbcb2517acd', u'conductor_group': u'', u'alive': True, u'links': [{u'href': u'http://localhost/v1/conductors/e47de88e-5bb5-42c1-bc9c-ccbcb2517acd', u'rel': u'self'}, {u'href': u'http://localhost/conductors/e47de88e-5bb5-42c1-bc9c-ccbcb2517acd', u'rel': u'bookmark'}]}], u'next': u'http://localhost/v1/conductors?sort_key=id&sort_dir=asc&limit=3&marker=e47de88e-5bb5-42c1-bc9c-ccbcb2517acd'} {24} ironic.tests.unit.api.controllers.v1.test_conductor.TestListConductors.test_collection_links [0.100670s] ... ok {0} ironic.tests.unit.drivers.modules.drac.test_raid.DracRaidInterfaceTestCase.test_delete_configuration_no_change [0.124291s] ... ok GET: /v1/chassis?sort_key=foo {} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-007cc15e-fc3c-4dae-b21a-28f84711fdd2 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"The sort_key value \\\"foo\\\" is an invalid field for sorting\"}"} GET: /v1/chassis?sort_key=extra {} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-a5a39e04-3bc0-4d81-9869-885fcfd5e4a7 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"The sort_key value extra is an invalid field for sorting\"}"} {8} ironic.tests.unit.api.controllers.v1.test_chassis.TestListChassis.test_sort_key_invalid [0.056001s] ... ok {0} ironic.tests.unit.drivers.modules.ibmc.test_management.IBMCManagementTestCase.test_get_sensors_data [0.074721s] ... ok POST: /v1/events {'events': [{'status': ['status', 'SHOULD', 'BE', 'TEXT'], 'binding:host_id': '22222222-aaaa-bbbb-cccc-555555555555', 'binding:vnic_type': 'baremetal', 'mac_address': 'de:ad:ca:fe:ba:be', 'port_id': '11111111-aaaa-bbbb-cccc-555555555555', 'event': 'network.bind_port', 'device_id': '22222222-aaaa-bbbb-cccc-555555555555'}]} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-7cf2097d-97ca-4d8b-807e-925e2870fceb X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Invalid input for field/attribute events. Value: '[{'status': ['status', 'SHOULD', 'BE', 'TEXT'], 'binding:host_id': '22222222-aaaa-bbbb-cccc-555555555555', 'binding:vnic_type': 'baremetal', 'mac_address': 'de:ad:ca:fe:ba:be', 'port_id': '11111111-aaaa-bbbb-cccc-555555555555', 'event': 'network.bind_port', 'device_id': '22222222-aaaa-bbbb-cccc-555555555555'}]'. Wrong type. Expected '', got ''\"}"} {9} ironic.tests.unit.api.controllers.v1.test_event.TestPost.test_network_port_event_invalid_status [0.047696s] ... ok POST: /v1/chassis {'uuid': 'e74c40e0-d825-11e2-a28f-0800200c9a66', 'description': 'data-center-1-chassis', 'extra': {}} GOT:Response: 201 Created Content-Type: application/json Location: http://localhost/v1/chassis/e74c40e0-d825-11e2-a28f-0800200c9a66 Openstack-Request-Id: req-471bd385-9528-43e7-86fd-899b6b019fad X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"uuid": "e74c40e0-d825-11e2-a28f-0800200c9a66", "links": [{"href": "http://localhost/v1/chassis/e74c40e0-d825-11e2-a28f-0800200c9a66", "rel": "self"}, {"href": "http://localhost/chassis/e74c40e0-d825-11e2-a28f-0800200c9a66", "rel": "bookmark"}], "extra": {}, "created_at": "2000-01-01T00:00:00+00:00", "updated_at": null, "nodes": [{"href": "http://localhost/v1/chassis/e74c40e0-d825-11e2-a28f-0800200c9a66/nodes", "rel": "self"}, {"href": "http://localhost/chassis/e74c40e0-d825-11e2-a28f-0800200c9a66/nodes", "rel": "bookmark"}], "description": "data-center-1-chassis"} GET: /v1/chassis/e74c40e0-d825-11e2-a28f-0800200c9a66 {} GOT:{u'uuid': u'e74c40e0-d825-11e2-a28f-0800200c9a66', u'links': [{u'href': u'http://localhost/v1/chassis/e74c40e0-d825-11e2-a28f-0800200c9a66', u'rel': u'self'}, {u'href': u'http://localhost/chassis/e74c40e0-d825-11e2-a28f-0800200c9a66', u'rel': u'bookmark'}], u'extra': {}, u'created_at': u'2000-01-01T00:00:00+00:00', u'updated_at': None, u'nodes': [{u'href': u'http://localhost/v1/chassis/e74c40e0-d825-11e2-a28f-0800200c9a66/nodes', u'rel': u'self'}, {u'href': u'http://localhost/chassis/e74c40e0-d825-11e2-a28f-0800200c9a66/nodes', u'rel': u'bookmark'}], u'description': u'data-center-1-chassis'} {9} ironic.tests.unit.api.controllers.v1.test_expose.TestExposedAPIMethodsCheckPolicy.test_driver_api_policy [0.053824s] ... ok {4} ironic.tests.unit.api.controllers.v1.test_chassis.TestPost.test_create_chassis [0.069946s] ... ok DELETE: /v1/nodes/node-39/vifs/390c3541-c3fd-467c-96a5-ef407744276b GOT:Response: 204 No Content Openstack-Request-Id: req-64d8ee91-cbdf-4a18-89a3-c5cdcc851b7b X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.28 {23} ironic.tests.unit.api.controllers.v1.test_node.TestAttachDetachVif.test_vif_detach_by_node_name [0.060716s] ... ok {9} ironic.tests.unit.api.controllers.v1.test_expose.TestExposedAPIMethodsCheckPolicy.test_node_api_policy [0.191299s] ... ok PATCH: /v1/deploy_templates/58aba7e0-1a85-4503-aa10-eff120d6b6c7 [{'path': '/steps/0/non-existent', 'op': 'remove'}] GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-0b38b38e-10f8-4886-ac27-0350cee70e64 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Couldn't apply patch '{'path': '/steps/0/non-existent', 'op': 'remove'}'. Reason: can't remove non-existent object 'non-existent'\"}"} {5} ironic.tests.unit.api.controllers.v1.test_deploy_template.TestPatch.test_remove_non_existent_step_property_fail [0.084433s] ... ok {0} ironic.tests.unit.drivers.modules.ibmc.test_management.IBMCManagementTestCase.test_set_boot_device [0.097010s] ... ok GET: /v1/drivers/fake-hardware-type/vendor_passthru/methods {} GOT:{u'foo': u'bar'} GET: /v1/drivers/fake-hardware-type/vendor_passthru/methods {} GOT:{u'foo': u'bar'} {6} ironic.tests.unit.api.controllers.v1.test_driver.TestListDrivers.test_driver_vendor_passthru_methods [0.094908s] ... ok DELETE: /v1/deploy_templates/df573389-d5c9-4b58-a0b4-c6a21c00824a.json GOT:Response: 204 No Content Openstack-Request-Id: req-c148212b-ca27-4ca7-80e7-3cf40e67e30d X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {12} ironic.tests.unit.api.controllers.v1.test_deploy_template.TestDelete.test_delete_by_uuid_with_json [0.064785s] ... ok GET: /v1/nodes {} GOT:{u'nodes': []} {23} ironic.tests.unit.api.controllers.v1.test_node.TestListNodes.test_empty [0.105632s] ... ok PATCH: /v1/deploy_templates/8fe4ed11-e3e0-4c76-a4d1-709c91a33bcd [{'path': '/foo', 'op': 'remove'}] GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-823c9087-d63b-4a2f-8f32-2012e6450fa9 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Couldn't apply patch '{'path': '/foo', 'op': 'remove'}'. Reason: can't remove non-existent object 'foo'\"}"} {7} ironic.tests.unit.api.controllers.v1.test_deploy_template.TestPatch.test_remove_foo [0.082800s] ... ok GET: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/vifs {} GOT:{u'vifs': []} {9} ironic.tests.unit.api.controllers.v1.test_node.TestAttachDetachVif.test_vif_list [0.080305s] ... ok {0} ironic.tests.unit.drivers.modules.ibmc.test_management.IBMCManagementTestCase.test_set_boot_mode [0.082427s] ... ok GET: /v1/chassis?detail=True&fields=description {} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-132f8118-5637-472d-a998-a502a1069d3f X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Can not specify ?detail=True and fields in the same request.\"}"} {0} ironic.tests.unit.drivers.modules.ilo.test_bios.IloBiosTestCase.test__execute_pre_boot_bios_step_set_bios_failed [0.056552s] ... ok POST: /v1/events {'events': [{'status': 'ACTIVE', 'binding:host_id': '22222222-aaaa-bbbb-cccc-555555555555', 'binding:vnic_type': 'baremetal', 'mac_address': 'de:ad:ca:fe:ba:be', 'port_id': '11111111-aaaa-bbbb-cccc-555555555555', 'event': 'network.bind_port', 'device_id': 'DEVICE_ID_SHOULD_BE_UUID'}]} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-20259561-4bc0-459e-83d7-aaf519d7e675 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Event validation failure for device_id. Expected a UUID but received DEVICE_ID_SHOULD_BE_UUID.\"}"} {29} ironic.tests.unit.api.controllers.v1.test_chassis.TestListChassis.test_detail_using_query_and_fields [0.050616s] ... ok {2} ironic.tests.unit.api.controllers.v1.test_event.TestPost.test_network_port_event_invalid_device_id [0.048474s] ... ok GET: /v1/deploy_templates/5648b2b0-96d9-4b59-a8cd-420a7f79a72a {} GOT:{u'uuid': u'5648b2b0-96d9-4b59-a8cd-420a7f79a72a', u'links': [{u'href': u'http://localhost/v1/deploy_templates/5648b2b0-96d9-4b59-a8cd-420a7f79a72a', u'rel': u'self'}, {u'href': u'http://localhost/deploy_templates/5648b2b0-96d9-4b59-a8cd-420a7f79a72a', u'rel': u'bookmark'}], u'extra': {}, u'created_at': u'2019-06-06T07:02:14.479568+00:00', u'updated_at': None, u'steps': [{u'interface': u'raid', u'priority': 10, u'step': u'create_configuration', u'args': {u'password': u'******', u'logical_disks': []}}], u'name': u'CUSTOM_DT1'} {17} ironic.tests.unit.api.controllers.v1.test_deploy_template.TestListDeployTemplates.test_sensitive_data_masked [0.064120s] ... ok GET: /v1/conductors/rocky.rocks?fields=hostname,alive {} GOT:{u'hostname': u'rocky.rocks', u'alive': True, u'links': [{u'href': u'http://localhost/v1/conductors/rocky.rocks', u'rel': u'self'}, {u'href': u'http://localhost/conductors/rocky.rocks', u'rel': u'bookmark'}]} {24} ironic.tests.unit.api.controllers.v1.test_conductor.TestListConductors.test_get_one_custom_fields [0.058451s] ... ok {0} ironic.tests.unit.drivers.modules.ilo.test_boot.IloVirtualMediaBootTestCase.test_clean_up_ramdisk [0.068022s] ... ok PATCH: /v1/deploy_templates/51166213-8826-4018-ab49-9b0fb4a81e40 [{'path': '/name', 'value': 'aa:bb_cc', 'op': 'replace'}] GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-192be078-440b-44f4-9056-e6d1b372f73c X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Deploy template name must be a valid trait. A valid trait must be no longer than 255 characters. Standard traits are defined in the os_traits library. A custom trait must start with the prefix CUSTOM_ and use the following characters: A-Z, 0-9 and _\"}"} {27} ironic.tests.unit.api.controllers.v1.test_deploy_template.TestPatch.test_update_invalid_name [0.070261s] ... ok {0} ironic.tests.unit.drivers.modules.ilo.test_boot.IloVirtualMediaBootTestCase.test_prepare_instance_boot_from_volume_bios [0.074331s] ... ok GET: /v1/drivers/manual-management/properties {} GOT:{u'prop1': u'Property 1. Required.'} {17} ironic.tests.unit.api.controllers.v1.test_driver.TestDriverProperties.test_driver_properties_hw_type [0.053281s] ... ok GET: /v1/conductors {} GOT:{u'conductors': [{u'hostname': u'why care', u'conductor_group': u'', u'alive': True, u'links': [{u'href': u'http://localhost/v1/conductors/why care', u'rel': u'self'}, {u'href': u'http://localhost/conductors/why care', u'rel': u'bookmark'}]}, {u'hostname': u'why not', u'conductor_group': u'', u'alive': True, u'links': [{u'href': u'http://localhost/v1/conductors/why not', u'rel': u'self'}, {u'href': u'http://localhost/conductors/why not', u'rel': u'bookmark'}]}]} {19} ironic.tests.unit.api.controllers.v1.test_conductor.TestListConductors.test_list [0.070543s] ... ok DELETE: /v1/deploy_templates/f1a4b8cb-c3d6-4d41-a35e-070b47b13c28 GOT:Response: 405 Method Not Allowed Content-Type: application/json {"error_message": "{\"code\": 405, \"description\": \"The API version does not allow deploy templates\", \"title\": \"Method Not Allowed\"}"} {12} ironic.tests.unit.api.controllers.v1.test_deploy_template.TestDelete.test_delete_invalid_api_version [0.042168s] ... ok GET: /v1/nodes/?limit=3 {} GOT:{u'nodes': [{u'instance_uuid': None, u'maintenance': False, u'links': [{u'href': u'http://localhost/v1/nodes/5ae4300c-8e81-4ebc-b44b-620273541a62', u'rel': u'self'}, {u'href': u'http://localhost/nodes/5ae4300c-8e81-4ebc-b44b-620273541a62', u'rel': u'bookmark'}], u'power_state': None, u'provision_state': None, u'uuid': u'5ae4300c-8e81-4ebc-b44b-620273541a62'}, {u'instance_uuid': None, u'maintenance': False, u'links': [{u'href': u'http://localhost/v1/nodes/cd2d3afa-a330-4308-9dc9-5239a2865f0c', u'rel': u'self'}, {u'href': u'http://localhost/nodes/cd2d3afa-a330-4308-9dc9-5239a2865f0c', u'rel': u'bookmark'}], u'power_state': None, u'provision_state': None, u'uuid': u'cd2d3afa-a330-4308-9dc9-5239a2865f0c'}, {u'instance_uuid': None, u'maintenance': False, u'links': [{u'href': u'http://localhost/v1/nodes/b503807c-8928-4a8d-8411-e816e1010c3d', u'rel': u'self'}, {u'href': u'http://localhost/nodes/b503807c-8928-4a8d-8411-e816e1010c3d', u'rel': u'bookmark'}], u'power_state': None, u'provision_state': None, u'uuid': u'b503807c-8928-4a8d-8411-e816e1010c3d'}], u'next': u'http://localhost/v1/nodes?sort_key=id&sort_dir=asc&limit=3&marker=b503807c-8928-4a8d-8411-e816e1010c3d'} {30} ironic.tests.unit.api.controllers.v1.test_node.TestListNodes.test_collection_links [0.223390s] ... ok {0} ironic.tests.unit.drivers.modules.ilo.test_boot.IloVirtualMediaBootTestCase.test_prepare_ramdisk_glance_image_cleaning [0.140117s] ... ok DELETE: /v1/nodes/foo.json GOT:Response: 204 No Content Openstack-Request-Id: req-49b0d94e-dcd0-40ec-8c9e-f199f9aacf80 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.5 {2} ironic.tests.unit.api.controllers.v1.test_node.TestDelete.test_delete_node_by_name_with_json [0.090963s] ... ok POST: /v1/allocations {'uuid': '21d6dc83-1181-4911-b1fb-592c21f08cb1', 'resource_class': 'baremetal', 'traits': [], 'candidate_nodes': [], 'name': None} GOT:Response: 201 Created Content-Type: application/json Location: http://localhost/v1/allocations/21d6dc83-1181-4911-b1fb-592c21f08cb1 Openstack-Request-Id: req-fb51dcdf-b2ab-4b8b-9309-f9c941b3ec6c X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"node_uuid": null, "uuid": "21d6dc83-1181-4911-b1fb-592c21f08cb1", "links": [{"href": "http://localhost/v1/allocations/21d6dc83-1181-4911-b1fb-592c21f08cb1", "rel": "self"}, {"href": "http://localhost/allocations/21d6dc83-1181-4911-b1fb-592c21f08cb1", "rel": "bookmark"}], "extra": {}, "last_error": null, "created_at": "2019-06-06T07:02:14.280155+00:00", "resource_class": "baremetal", "updated_at": null, "traits": [], "state": "allocating", "candidate_nodes": [], "name": null} {16} ironic.tests.unit.api.controllers.v1.test_allocation.TestPost.test_create_allocation_with_no_extra [0.056160s] ... ok POST: /v1/allocations {'uuid': '93e13c3f-c3ec-459d-86ea-e246ef5bb249', 'resource_class': 'baremetal', 'extra': {'foo': 123}, 'traits': [], 'candidate_nodes': [], 'name': None} GOT:Response: 201 Created Content-Type: application/json Location: http://localhost/v1/allocations/93e13c3f-c3ec-459d-86ea-e246ef5bb249 Openstack-Request-Id: req-5e239982-0287-4c39-9240-e5397f401149 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"node_uuid": null, "uuid": "93e13c3f-c3ec-459d-86ea-e246ef5bb249", "links": [{"href": "http://localhost/v1/allocations/93e13c3f-c3ec-459d-86ea-e246ef5bb249", "rel": "self"}, {"href": "http://localhost/allocations/93e13c3f-c3ec-459d-86ea-e246ef5bb249", "rel": "bookmark"}], "extra": {"foo": 123}, "last_error": null, "created_at": "2019-06-06T07:02:14.206326+00:00", "resource_class": "baremetal", "updated_at": null, "traits": [], "state": "allocating", "candidate_nodes": [], "name": null} GET: /v1/allocations/93e13c3f-c3ec-459d-86ea-e246ef5bb249 {} GOT:{u'node_uuid': None, u'uuid': u'93e13c3f-c3ec-459d-86ea-e246ef5bb249', u'links': [{u'href': u'http://localhost/v1/allocations/93e13c3f-c3ec-459d-86ea-e246ef5bb249', u'rel': u'self'}, {u'href': u'http://localhost/allocations/93e13c3f-c3ec-459d-86ea-e246ef5bb249', u'rel': u'bookmark'}], u'extra': {u'foo': 123}, u'last_error': None, u'created_at': u'2019-06-06T07:02:14.206326+00:00', u'resource_class': u'baremetal', u'updated_at': None, u'traits': [], u'state': u'allocating', u'candidate_nodes': [], u'name': None} {10} ironic.tests.unit.api.controllers.v1.test_allocation.TestPost.test_create_allocation_doesnt_contain_id [0.070804s] ... ok {0} ironic.tests.unit.drivers.modules.ilo.test_boot.IloVirtualMediaBootTestCase.test_validate_rescue_no_rescue_ramdisk [0.074762s] ... ok POST: /v1/allocations {'uuid': '2f0adb59-60b3-49a7-acdf-86f5ae8dcbd8', 'resource_class': 'baremetal', 'extra': {'none': None, 'int': 123, 'float': 0.1, 'list': [1, 2], 'bool': True, 'str': 'foo', 'dict': {'cat': 'meow'}}, 'traits': [], 'candidate_nodes': [], 'name': None} GOT:Response: 201 Created Content-Type: application/json Location: http://localhost/v1/allocations/2f0adb59-60b3-49a7-acdf-86f5ae8dcbd8 Openstack-Request-Id: req-85fb66b1-6906-448f-a9ae-ed103ec02bfb X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"node_uuid": null, "uuid": "2f0adb59-60b3-49a7-acdf-86f5ae8dcbd8", "links": [{"href": "http://localhost/v1/allocations/2f0adb59-60b3-49a7-acdf-86f5ae8dcbd8", "rel": "self"}, {"href": "http://localhost/allocations/2f0adb59-60b3-49a7-acdf-86f5ae8dcbd8", "rel": "bookmark"}], "extra": {"none": null, "int": 123, "float": 0.1, "list": [1, 2], "dict": {"cat": "meow"}, "str": "foo", "bool": true}, "last_error": null, "created_at": "2019-06-06T07:02:14.415551+00:00", "resource_class": "baremetal", "updated_at": null, "traits": [], "state": "allocating", "candidate_nodes": [], "name": null} GET: /v1/allocations/2f0adb59-60b3-49a7-acdf-86f5ae8dcbd8 {} GOT:{u'node_uuid': None, u'uuid': u'2f0adb59-60b3-49a7-acdf-86f5ae8dcbd8', u'links': [{u'href': u'http://localhost/v1/allocations/2f0adb59-60b3-49a7-acdf-86f5ae8dcbd8', u'rel': u'self'}, {u'href': u'http://localhost/allocations/2f0adb59-60b3-49a7-acdf-86f5ae8dcbd8', u'rel': u'bookmark'}], u'extra': {u'none': None, u'int': 123, u'float': 0.1, u'list': [1, 2], u'bool': True, u'str': u'foo', u'dict': {u'cat': u'meow'}}, u'last_error': None, u'created_at': u'2019-06-06T07:02:14.415551+00:00', u'resource_class': u'baremetal', u'updated_at': None, u'traits': [], u'state': u'allocating', u'candidate_nodes': [], u'name': None} {14} ironic.tests.unit.api.controllers.v1.test_allocation.TestPost.test_create_allocation_valid_extra [0.072169s] ... ok POST: /v1/deploy_templates {'extra': {}, 'steps': [{'priority': 10, 'interface': 'raid', 'step': 'create_configuration', 'args': {'logical_disks': []}}], 'uuid': 'b305537b-411d-4823-9fa1-abb0d40e2226', 'name': 'CUSTOM_XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'} GOT:Response: 201 Created Content-Type: application/json Location: http://localhost/v1/deploy_templates/b305537b-411d-4823-9fa1-abb0d40e2226 Openstack-Request-Id: req-ee892f87-e12d-4daf-a094-916c921b54b9 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"uuid": "b305537b-411d-4823-9fa1-abb0d40e2226", "links": [{"href": "http://localhost/v1/deploy_templates/b305537b-411d-4823-9fa1-abb0d40e2226", "rel": "self"}, {"href": "http://localhost/deploy_templates/b305537b-411d-4823-9fa1-abb0d40e2226", "rel": "bookmark"}], "extra": {}, "created_at": "2019-06-06T07:02:14.227388+00:00", "updated_at": null, "steps": [{"interface": "raid", "priority": 10, "step": "create_configuration", "args": {"logical_disks": []}}], "name": "CUSTOM_XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX"} {1} ironic.tests.unit.api.controllers.v1.test_deploy_template.TestPost.test_create_long_name [0.060702s] ... ok GET: /v1/conductors/rocky.rocks?fields=hostname,spongebob {} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-388d3263-d1c2-4309-a056-b61a20b2f6c0 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Field(s) \\\"spongebob\\\" are not valid\"}"} {4} ironic.tests.unit.api.controllers.v1.test_conductor.TestListConductors.test_get_custom_fields_invalid_fields [0.063967s] ... ok {0} ironic.tests.unit.drivers.modules.ilo.test_common.IloCommonMethodsTestCase.test_cleanup_vmedia_boot_exc_resource_not_found [0.092419s] ... ok DELETE: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-83ec1954-bb05-4020-9f32-394a6782140e X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Missing argument: \\\"port_uuid\\\"\"}"} {9} ironic.tests.unit.api.controllers.v1.test_node.TestDelete.test_delete_ports_subresource_no_port_id [0.059933s] ... ok PATCH: /v1/deploy_templates/da17df72-989b-473c-8a19-f9721fa3e902 [{'path': '/steps/0', 'value': {'interface': 'foo', 'priority': 42, 'step': 'apply_configuration', 'args': {'foo': 'bar'}}, 'op': 'replace'}] GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-70ef45ca-5ec2-4ecd-8b98-9e947759a578 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Invalid input for field/attribute interface. Value: 'foo'. Value should be one of: bios, management, raid, power, deploy\"}"} {13} ironic.tests.unit.api.controllers.v1.test_deploy_template.TestPatch.test_replace_invalid_step_interface_fail [0.080743s] ... ok GET: /v1/nodes?fields=uuid,instance_info {} GOT:{u'nodes': [{u'uuid': u'dc45b510-f354-427a-bb50-b3b8e8267cf2', u'links': [{u'href': u'http://localhost/v1/nodes/dc45b510-f354-427a-bb50-b3b8e8267cf2', u'rel': u'self'}, {u'href': u'http://localhost/nodes/dc45b510-f354-427a-bb50-b3b8e8267cf2', u'rel': u'bookmark'}], u'instance_info': {u'foo': u'bar', u'image_url': u'******', u'configdrive': u'******'}}, {u'uuid': u'f3367d55-ff5e-43a0-aef2-3b1a2ca074f2', u'links': [{u'href': u'http://localhost/v1/nodes/f3367d55-ff5e-43a0-aef2-3b1a2ca074f2', u'rel': u'self'}, {u'href': u'http://localhost/nodes/f3367d55-ff5e-43a0-aef2-3b1a2ca074f2', u'rel': u'bookmark'}], u'instance_info': {u'foo': u'bar', u'image_url': u'******', u'configdrive': u'******'}}, {u'uuid': u'1402847c-c7d5-4bdf-a31a-4164b6a9d0ad', u'links': [{u'href': u'http://localhost/v1/nodes/1402847c-c7d5-4bdf-a31a-4164b6a9d0ad', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1402847c-c7d5-4bdf-a31a-4164b6a9d0ad', u'rel': u'bookmark'}], u'instance_info': {u'foo': u'bar', u'image_url': u'******', u'configdrive': u'******'}}]} {26} ironic.tests.unit.api.controllers.v1.test_node.TestListNodes.test_get_collection_custom_fields [0.174139s] ... ok {0} ironic.tests.unit.drivers.modules.ilo.test_common.IloCommonMethodsTestCase.test_update_boot_mode_use_def_boot_mode [0.093744s] ... ok GET: /v1/chassis/e74c40e0-d825-11e2-a28f-0800200c9a66/nodes {} GOT:{u'nodes': [{u'instance_uuid': None, u'maintenance': False, u'links': [{u'href': u'http://localhost/v1/nodes/8fce62ec-e420-45a4-b3a8-665cedae9ffb', u'rel': u'self'}, {u'href': u'http://localhost/nodes/8fce62ec-e420-45a4-b3a8-665cedae9ffb', u'rel': u'bookmark'}], u'power_state': None, u'provision_state': None, u'uuid': u'8fce62ec-e420-45a4-b3a8-665cedae9ffb'}, {u'instance_uuid': None, u'maintenance': False, u'links': [{u'href': u'http://localhost/v1/nodes/8ba7bd72-571f-448d-adfe-113dd1cc1a97', u'rel': u'self'}, {u'href': u'http://localhost/nodes/8ba7bd72-571f-448d-adfe-113dd1cc1a97', u'rel': u'bookmark'}], u'power_state': None, u'provision_state': None, u'uuid': u'8ba7bd72-571f-448d-adfe-113dd1cc1a97'}]} GET: /v1/chassis/e74c40e0-d825-11e2-a28f-0800200c9a66/nodes?limit=1 {} GOT:{u'nodes': [{u'instance_uuid': None, u'maintenance': False, u'links': [{u'href': u'http://localhost/v1/nodes/8fce62ec-e420-45a4-b3a8-665cedae9ffb', u'rel': u'self'}, {u'href': u'http://localhost/nodes/8fce62ec-e420-45a4-b3a8-665cedae9ffb', u'rel': u'bookmark'}], u'power_state': None, u'provision_state': None, u'uuid': u'8fce62ec-e420-45a4-b3a8-665cedae9ffb'}], u'next': u'http://localhost/v1/nodes?sort_key=id&sort_dir=asc&limit=1&marker=8fce62ec-e420-45a4-b3a8-665cedae9ffb'} {31} ironic.tests.unit.api.controllers.v1.test_chassis.TestListChassis.test_nodes_subresource [0.260350s] ... ok GET: /v1/chassis/e74c40e0-d825-11e2-a28f-0800200c9a66?fields=uuid,extra {} GOT:Response: 406 Not Acceptable Content-Type: application/json Openstack-Request-Id: req-ea2d7435-cd8c-408f-a401-09738d5abd83 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Request not acceptable.\"}"} {29} ironic.tests.unit.api.controllers.v1.test_chassis.TestListChassis.test_get_custom_fields_invalid_api_version [0.051294s] ... ok PATCH: /v1/deploy_templates/44a122a8-c68f-4282-bb16-ac5296dfd745 [{'path': '/uuid', 'op': 'remove'}] GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-68dc6a70-295d-478c-a89b-60d571ffd5e6 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"'/uuid' is an internal attribute and can not be updated\"}"} {0} ironic.tests.unit.drivers.modules.ilo.test_common.IloCommonMethodsTestCase.test_update_ipmi_properties [0.087285s] ... ok {7} ironic.tests.unit.api.controllers.v1.test_deploy_template.TestPatch.test_remove_uuid [0.056995s] ... ok {0} ironic.tests.unit.drivers.modules.ilo.test_firmware_processor.FirmwareProcessorTestCase.test__download_file_based_fw_to_gets_invoked_for_file_based_firmware [0.012252s] ... ok POST: /v1/drivers/fake-hardware-type/vendor_passthru/do_test {'test_key': 'test_value'} GOT:Response: 202 Accepted Content-Type: application/json Openstack-Request-Id: req-7a8cfab5-3f09-47e0-a81e-c4cce7f2c8ac X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 null {17} ironic.tests.unit.api.controllers.v1.test_driver.TestListDrivers.test_driver_vendor_passthru_async [0.089325s] ... ok {17} ironic.tests.unit.api.controllers.v1.test_expose.TestExposedAPIMethodsCheckPolicy.test_ramdisk_api_policy [0.031037s] ... ok POST: /v1/drivers/fake-hardware-type/vendor_passthru/do_test {'test_key': 'test_value'} GOT:Response: 404 Not Found Content-Type: application/json Openstack-Request-Id: req-b03b0c69-8e65-4cf9-bdcc-17f382cfd8e7 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"No conductors registered.\"}"} {27} ironic.tests.unit.api.controllers.v1.test_driver.TestListDrivers.test_driver_vendor_passthru_driver_not_found [0.062597s] ... ok {0} ironic.tests.unit.drivers.modules.ilo.test_management.IloManagementTestCase.test__update_firmware_sum_final_without_logs [0.066407s] ... ok {0} ironic.tests.unit.drivers.modules.ilo.test_management.IloManagementTestCase.test_update_firmware_throws_error_for_checksum_validation_error [0.071156s] ... ok PATCH: /v1/chassis/e74c40e0-d825-11e2-a28f-0800200c9a66 [{'path': '/description', 'value': 'test', 'op': 'add'}] GOT:Response: 200 OK Content-Type: application/json Openstack-Request-Id: req-50918d21-0798-45fa-9b4e-d90d592d82ad X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"uuid": "e74c40e0-d825-11e2-a28f-0800200c9a66", "links": [{"href": "http://localhost/v1/chassis/e74c40e0-d825-11e2-a28f-0800200c9a66", "rel": "self"}, {"href": "http://localhost/chassis/e74c40e0-d825-11e2-a28f-0800200c9a66", "rel": "bookmark"}], "extra": {}, "created_at": "2019-06-06T07:02:14.397014+00:00", "updated_at": "2019-06-06T07:02:14.431246+00:00", "nodes": [{"href": "http://localhost/v1/chassis/e74c40e0-d825-11e2-a28f-0800200c9a66/nodes", "rel": "self"}, {"href": "http://localhost/chassis/e74c40e0-d825-11e2-a28f-0800200c9a66/nodes", "rel": "bookmark"}], "description": "test"} GET: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123?fields=boot_interface,console_interface,deploy_interface,inspect_interface,management_interface,power_interface,raid_interface,vendor_interface {} GOT:{u'management_interface': None, u'inspect_interface': None, u'links': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'bookmark'}], u'power_interface': None, u'deploy_interface': None, u'boot_interface': None, u'console_interface': None, u'raid_interface': None, u'vendor_interface': None} {22} ironic.tests.unit.api.controllers.v1.test_chassis.TestPatch.test_add_root [0.071328s] ... ok {23} ironic.tests.unit.api.controllers.v1.test_node.TestListNodes.test_get_all_interface_fields [0.098549s] ... ok DELETE: /v1/nodes/foo GOT:Response: 404 Not Found Content-Type: application/json Openstack-Request-Id: req-d618881a-3ee1-42f4-be57-8d4244855197 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Node foo could not be found.\"}"} {0} ironic.tests.unit.drivers.modules.ilo.test_raid.Ilo5RAIDTestCase.test_create_configuration [0.065253s] ... ok {2} ironic.tests.unit.api.controllers.v1.test_node.TestDelete.test_delete_node_not_found_by_name_unsupported [0.048476s] ... ok POST: /v1/deploy_templates {'extra': {}, 'steps': [{'priority': 10, 'interface': 'raid', 'step': 'create_configuration', 'args': {'logical_disks': []}}], 'uuid': '20a4774e-da79-4bc4-bb18-73979bd2c877', 'name': 'not-a-trait'} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-14350777-130a-40bb-a678-d4bc8e966050 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Deploy template name must be a valid trait. A valid trait must be no longer than 255 characters. Standard traits are defined in the os_traits library. A custom trait must start with the prefix CUSTOM_ and use the following characters: A-Z, 0-9 and _\"}"} {8} ironic.tests.unit.api.controllers.v1.test_deploy_template.TestPost.test_create_name_invalid_not_a_trait [0.048107s] ... ok GET: /v1/allocations?sort_key=foo {} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-c746c77d-4f9d-40b5-b9ba-62b421f70f11 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"The sort_key value \\\"foo\\\" is an invalid field for sorting\"}"} GET: /v1/allocations?sort_key=extra {} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-f20e1005-8683-4f54-a401-ffb8ef1e0059 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"The sort_key value extra is an invalid field for sorting\"}"} GET: /v1/allocations?sort_key=internal_info {} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-8ee748c1-0fc9-4f4b-98a5-d70baffd15b0 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"The sort_key value \\\"internal_info\\\" is an invalid field for sorting\"}"} GET: /v1/allocations?sort_key=properties {} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-d41f4793-5f8d-4fe0-a7a3-7dceee00c574 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"The sort_key value \\\"properties\\\" is an invalid field for sorting\"}"} {21} ironic.tests.unit.api.controllers.v1.test_allocation.TestListAllocations.test_sort_key_invalid [0.084142s] ... ok GET: /v1/nodes/spam/states/console {} GOT:{u'console_enabled': True, u'console_info': {u'test': u'test-data'}} {23} ironic.tests.unit.api.controllers.v1.test_node.TestListNodes.test_get_console_information_by_name [0.079873s] ... ok GET: /v1/deploy_templates/23e0530c-aee7-4491-91ac-a8d25b9f07fd.json {} GOT:{u'uuid': u'23e0530c-aee7-4491-91ac-a8d25b9f07fd', u'links': [{u'href': u'http://localhost/v1/deploy_templates/23e0530c-aee7-4491-91ac-a8d25b9f07fd', u'rel': u'self'}, {u'href': u'http://localhost/deploy_templates/23e0530c-aee7-4491-91ac-a8d25b9f07fd', u'rel': u'bookmark'}], u'extra': {}, u'created_at': u'2019-06-06T07:02:14.394875+00:00', u'updated_at': None, u'steps': [{u'interface': u'raid', u'priority': 10, u'step': u'create_configuration', u'args': {u'logical_disks': []}}], u'name': u'CUSTOM_DT1'} {0} ironic.tests.unit.drivers.modules.ilo.test_raid.Ilo5RAIDTestCase.test_create_configuration_with_read_raid [0.115708s] ... ok {19} ironic.tests.unit.api.controllers.v1.test_deploy_template.TestListDeployTemplates.test_get_one_with_json [0.077320s] ... ok GET: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123?fields=boot_interface,console_interface,deploy_interface,inspect_interface,management_interface,power_interface,raid_interface,vendor_interface {} GOT:Response: 406 Not Acceptable Content-Type: application/json Openstack-Request-Id: req-9e5d0cf4-9ac3-4051-9162-880ed52bba88 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.30 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Request not acceptable.\"}"} {30} ironic.tests.unit.api.controllers.v1.test_node.TestListNodes.test_get_all_interface_fields_invalid_api_version [0.063916s] ... ok DELETE: /v1/chassis/e74c40e0-d825-11e2-a28f-0800200c9a66/nodes GOT:Response: 403 Forbidden Content-Type: application/json Openstack-Request-Id: req-b641be44-eed5-458f-949e-8b4a108d38ca X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Operation not permitted.\"}"} {14} ironic.tests.unit.api.controllers.v1.test_chassis.TestDelete.test_delete_nodes_subresource [0.053889s] ... ok GET: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123?fields=protected {} GOT:{u'protected': True, u'links': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'bookmark'}]} {26} ironic.tests.unit.api.controllers.v1.test_node.TestListNodes.test_get_protected_fields [0.086731s] ... ok PATCH: /v1/deploy_templates/47949b66-ef19-4d98-aec9-d75acc4f93b6 [{'path': '/non-existent', 'op': 'remove'}] GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-c9fab0c6-bd8a-42d9-bd5e-9974891ade2f X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Couldn't apply patch '{'path': '/non-existent', 'op': 'remove'}'. Reason: can't remove non-existent object 'non-existent'\"}"} {12} ironic.tests.unit.api.controllers.v1.test_deploy_template.TestPatch.test_remove_non_existent_property_fail [0.067731s] ... ok GET: /v1/deploy_templates/?limit=3 {} GOT:{u'deploy_templates': [{u'uuid': u'0b4635c1-2162-4470-99ee-faa2e4c8255f', u'links': [{u'href': u'http://localhost/v1/deploy_templates/0b4635c1-2162-4470-99ee-faa2e4c8255f', u'rel': u'self'}, {u'href': u'http://localhost/deploy_templates/0b4635c1-2162-4470-99ee-faa2e4c8255f', u'rel': u'bookmark'}], u'name': u'CUSTOM_DT0'}, {u'uuid': u'8a0c1902-8d68-44f7-b7e1-28a1613c27e8', u'links': [{u'href': u'http://localhost/v1/deploy_templates/8a0c1902-8d68-44f7-b7e1-28a1613c27e8', u'rel': u'self'}, {u'href': u'http://localhost/deploy_templates/8a0c1902-8d68-44f7-b7e1-28a1613c27e8', u'rel': u'bookmark'}], u'name': u'CUSTOM_DT1'}, {u'uuid': u'24617af7-302c-45f4-8ec4-16fe705df55f', u'links': [{u'href': u'http://localhost/v1/deploy_templates/24617af7-302c-45f4-8ec4-16fe705df55f', u'rel': u'self'}, {u'href': u'http://localhost/deploy_templates/24617af7-302c-45f4-8ec4-16fe705df55f', u'rel': u'bookmark'}], u'name': u'CUSTOM_DT2'}], u'next': u'http://localhost/v1/deploy_templates?sort_key=id&sort_dir=asc&limit=3&marker=24617af7-302c-45f4-8ec4-16fe705df55f'} {18} ironic.tests.unit.api.controllers.v1.test_deploy_template.TestListDeployTemplates.test_collection_links [0.113007s] ... ok GET: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123?fields=conductor {} GOT:Response: 406 Not Acceptable Content-Type: application/json Openstack-Request-Id: req-301c0d88-8985-4a0e-8bb9-c2457836ec50 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.48 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Request not acceptable.\"}"} {0} ironic.tests.unit.drivers.modules.irmc.test_boot.IRMCPXEBootBasicTestCase.test_prepare_instance_netboot [0.099842s] ... ok {9} ironic.tests.unit.api.controllers.v1.test_node.TestListNodes.test_get_conductor_field_invalid_api_version [0.064836s] ... ok PATCH: /v1/deploy_templates/215e713c-80f2-4506-ad7f-26a7a41b2508 [{'path': '/name', 'value': 'CUSTOM_XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX', 'op': 'replace'}] GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-9aea5f26-66a8-4455-9199-c492e002fedb X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Deploy template name must be a valid trait. A valid trait must be no longer than 255 characters. Standard traits are defined in the os_traits library. A custom trait must start with the prefix CUSTOM_ and use the following characters: A-Z, 0-9 and _\"}"} {5} ironic.tests.unit.api.controllers.v1.test_deploy_template.TestPatch.test_replace_invalid_name_too_long [0.068319s] ... ok {0} ironic.tests.unit.drivers.modules.irmc.test_boot.IRMCPXEBootBasicTestCase.test_prepare_ramdisk_set_boot_mode_not_called [0.159415s] ... ok GET: /v1/chassis/eeeeeeee-cccc-aaaa-bbbb-cccccccccccc/nodes {} GOT:Response: 404 Not Found Content-Type: application/json Openstack-Request-Id: req-50e26ed8-c6ba-4944-ace2-4c5bd6f3b119 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Chassis eeeeeeee-cccc-aaaa-bbbb-cccccccccccc could not be found.\"}"} {29} ironic.tests.unit.api.controllers.v1.test_chassis.TestListChassis.test_nodes_subresource_chassis_not_found [0.054164s] ... ok DELETE: /v1/chassis/e74c40e0-d825-11e2-a28f-0800200c9a66 GOT:Response: 204 No Content Openstack-Request-Id: req-f479551b-12db-47e5-a3af-d010e6855631 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 GET: /v1/chassis/e74c40e0-d825-11e2-a28f-0800200c9a66 {} GOT:Response: 404 Not Found Content-Type: application/json Openstack-Request-Id: req-744272e5-91ad-4e8d-9bda-c6fc61c6e6f2 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Chassis e74c40e0-d825-11e2-a28f-0800200c9a66 could not be found.\"}"} {16} ironic.tests.unit.api.controllers.v1.test_chassis.TestDelete.test_delete_chassis [0.103458s] ... ok {0} ironic.tests.unit.drivers.modules.irmc.test_boot.IRMCVirtualMediaBootTestCase.test_prepare_instance_partition_image [0.117721s] ... ok PATCH: /v1/deploy_templates/d33400f3-bf97-439e-9f1b-835f5d5e20fc [{'path': '/name', 'value': 'CUSTOM_DT2', 'op': 'add'}] GOT:Response: 405 Method Not Allowed Content-Type: application/json {"error_message": "{\"code\": 405, \"description\": \"The API version does not allow deploy templates\", \"title\": \"Method Not Allowed\"}"} {12} ironic.tests.unit.api.controllers.v1.test_deploy_template.TestPatch.test_update_by_id_invalid_api_version [0.043745s] ... ok GET: /v1/drivers {} GOT:{u'drivers': [{u'hosts': [u'fake-host1', u'fake-host2'], u'type': u'dynamic', u'name': u'fake-hardware-type', u'links': [{u'href': u'http://localhost/v1/drivers/fake-hardware-type', u'rel': u'self'}, {u'href': u'http://localhost/drivers/fake-hardware-type', u'rel': u'bookmark'}], u'properties': [{u'href': u'http://localhost/v1/drivers/fake-hardware-type/properties', u'rel': u'self'}, {u'href': u'http://localhost/drivers/fake-hardware-type/properties', u'rel': u'bookmark'}]}, {u'hosts': [u'fake-host1'], u'type': u'dynamic', u'name': u'fake-hardware-type-2', u'links': [{u'href': u'http://localhost/v1/drivers/fake-hardware-type-2', u'rel': u'self'}, {u'href': u'http://localhost/drivers/fake-hardware-type-2', u'rel': u'bookmark'}], u'properties': [{u'href': u'http://localhost/v1/drivers/fake-hardware-type-2/properties', u'rel': u'self'}, {u'href': u'http://localhost/drivers/fake-hardware-type-2/properties', u'rel': u'bookmark'}]}]} GET: /v1/drivers/fake-hardware-type {} GOT:{u'hosts': [u'fake-host1', u'fake-host2'], u'name': u'fake-hardware-type', u'links': [{u'href': u'http://localhost/v1/drivers/fake-hardware-type', u'rel': u'self'}, {u'href': u'http://localhost/drivers/fake-hardware-type', u'rel': u'bookmark'}]} GET: /drivers/fake-hardware-type {} GOT:{u'hosts': [u'fake-host1', u'fake-host2'], u'name': u'fake-hardware-type', u'links': [{u'href': u'http://localhost/v1/drivers/fake-hardware-type', u'rel': u'self'}, {u'href': u'http://localhost/drivers/fake-hardware-type', u'rel': u'bookmark'}]} GET: /v1/drivers/fake-hardware-type-2 {} GOT:{u'hosts': [u'fake-host1'], u'name': u'fake-hardware-type-2', u'links': [{u'href': u'http://localhost/v1/drivers/fake-hardware-type-2', u'rel': u'self'}, {u'href': u'http://localhost/drivers/fake-hardware-type-2', u'rel': u'bookmark'}]} GET: /drivers/fake-hardware-type-2 {} GOT:{u'hosts': [u'fake-host1'], u'name': u'fake-hardware-type-2', u'links': [{u'href': u'http://localhost/v1/drivers/fake-hardware-type-2', u'rel': u'self'}, {u'href': u'http://localhost/drivers/fake-hardware-type-2', u'rel': u'bookmark'}]} {11} ironic.tests.unit.api.controllers.v1.test_driver.TestListDrivers.test_drivers_with_dynamic [0.140960s] ... ok {11} ironic.tests.unit.api.controllers.v1.test_node.TestCheckCleanSteps.test__check_clean_steps_step_args_value_invalid [0.026451s] ... ok DELETE: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/volume/targets/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 GOT:Response: 403 Forbidden Content-Type: application/json Openstack-Request-Id: req-75dfad82-789e-41d0-97c8-4474aeeec03f X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Operation not permitted.\"}"} {2} ironic.tests.unit.api.controllers.v1.test_node.TestDelete.test_delete_volume_targets_subresource [0.066614s] ... ok GET: /v1/chassis?detail=True {} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-108eeea4-dd36-4ebb-b584-52b0f85628d5 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Invalid query parameter ?detail=True received.\"}"} {14} ironic.tests.unit.api.controllers.v1.test_chassis.TestListChassis.test_detail_using_query_old_version [0.051512s] ... ok GET: /v1/deploy_templates {} GOT:{u'deploy_templates': [{u'uuid': u'e6452c37-ab83-41a2-b163-009b01967eb4', u'links': [{u'href': u'http://localhost/v1/deploy_templates/e6452c37-ab83-41a2-b163-009b01967eb4', u'rel': u'self'}, {u'href': u'http://localhost/deploy_templates/e6452c37-ab83-41a2-b163-009b01967eb4', u'rel': u'bookmark'}], u'name': u'CUSTOM_DT0'}, {u'uuid': u'49e09bcd-0154-4a14-9bbc-6e1c5f408c23', u'links': [{u'href': u'http://localhost/v1/deploy_templates/49e09bcd-0154-4a14-9bbc-6e1c5f408c23', u'rel': u'self'}, {u'href': u'http://localhost/deploy_templates/49e09bcd-0154-4a14-9bbc-6e1c5f408c23', u'rel': u'bookmark'}], u'name': u'CUSTOM_DT1'}, {u'uuid': u'5b325dd0-563d-49de-bcf1-1c6c63d453f7', u'links': [{u'href': u'http://localhost/v1/deploy_templates/5b325dd0-563d-49de-bcf1-1c6c63d453f7', u'rel': u'self'}, {u'href': u'http://localhost/deploy_templates/5b325dd0-563d-49de-bcf1-1c6c63d453f7', u'rel': u'bookmark'}], u'name': u'CUSTOM_DT2'}], u'next': u'http://localhost/v1/deploy_templates?sort_key=id&sort_dir=asc&limit=3&marker=5b325dd0-563d-49de-bcf1-1c6c63d453f7'} {24} ironic.tests.unit.api.controllers.v1.test_deploy_template.TestListDeployTemplates.test_collection_links_default_limit [0.110709s] ... ok GET: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123?fields=network_interface {} GOT:Response: 406 Not Acceptable Content-Type: application/json Openstack-Request-Id: req-c5a52b8e-346b-42b0-9c3f-c93fcaf44793 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.19 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Request not acceptable.\"}"} {9} ironic.tests.unit.api.controllers.v1.test_node.TestListNodes.test_get_network_interface_fields_invalid_api_version [0.064362s] ... ok POST: /v1/deploy_templates {'extra': {}, 'steps': [{'priority': 10, 'interface': 'raid', 'step': 'create_configuration', 'args': {'logical_disks': []}}], 'uuid': 'd59d7e52-745d-46d7-baaf-971a7745a05b', 'name': 'CUSTOM_XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-dd5163d8-0320-4fa9-bec6-903fe22a659e X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Deploy template name must be a valid trait. A valid trait must be no longer than 255 characters. Standard traits are defined in the os_traits library. A custom trait must start with the prefix CUSTOM_ and use the following characters: A-Z, 0-9 and _\"}"} {1} ironic.tests.unit.api.controllers.v1.test_deploy_template.TestPost.test_create_name_invalid_too_long [0.049225s] ... ok {0} ironic.tests.unit.drivers.modules.irmc.test_management.IRMCManagementTestCase.test_management_interface_set_boot_device_ok_cdrom [0.411651s] ... ok GET: /v1/nodes {} GOT:{u'nodes': [{u'instance_uuid': None, u'maintenance': False, u'links': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'bookmark'}], u'name': None, u'power_state': None, u'provision_state': u'available', u'uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123'}]} GET: /v1/nodes?detail=False {} GOT:{u'nodes': [{u'instance_uuid': None, u'maintenance': False, u'links': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'bookmark'}], u'name': None, u'power_state': None, u'provision_state': u'available', u'uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123'}]} {17} ironic.tests.unit.api.controllers.v1.test_node.TestListNodes.test_detail_query_false [0.204453s] ... ok {0} ironic.tests.unit.drivers.modules.irmc.test_raid.IRMCRaidConfigurationInternalMethodsTestCase.test__fail_validation_with_physical_disk_outside_valid_slots_2 [0.062087s] ... ok GET: /v1/nodes?fields=name&limit=2 {} GOT:{u'nodes': [{u'name': None, u'links': [{u'href': u'http://localhost/v1/nodes/bb90d310-f7a5-4695-aa11-caa44bb8f907', u'rel': u'self'}, {u'href': u'http://localhost/nodes/bb90d310-f7a5-4695-aa11-caa44bb8f907', u'rel': u'bookmark'}]}, {u'name': None, u'links': [{u'href': u'http://localhost/v1/nodes/85550e78-1a69-43fa-907a-637b0f9cd2a5', u'rel': u'self'}, {u'href': u'http://localhost/nodes/85550e78-1a69-43fa-907a-637b0f9cd2a5', u'rel': u'bookmark'}]}], u'next': u'http://localhost/v1/nodes?sort_key=id&sort_dir=asc&limit=2&marker=85550e78-1a69-43fa-907a-637b0f9cd2a5'} {30} ironic.tests.unit.api.controllers.v1.test_node.TestListNodes.test_get_collection_pagination_no_uuid [0.158106s] ... ok GET: /v1/deploy_templates?detail=False&fields=steps {} GOT:{u'deploy_templates': [{u'steps': [{u'interface': u'raid', u'priority': 10, u'step': u'create_configuration', u'args': {u'logical_disks': []}}], u'links': [{u'href': u'http://localhost/v1/deploy_templates/7a2aa9b7-d218-43e2-a757-dab689477927', u'rel': u'self'}, {u'href': u'http://localhost/deploy_templates/7a2aa9b7-d218-43e2-a757-dab689477927', u'rel': u'bookmark'}]}]} {29} ironic.tests.unit.api.controllers.v1.test_deploy_template.TestListDeployTemplates.test_detail_using_query_false_and_fields [0.088156s] ... ok POST: /v1/deploy_templates {'extra': {}, 'steps': [{'priority': 10, 'interface': 'raid', 'step': 'create_configuration', 'args': {'foo': [{'bar': 'baz'}]}}], 'uuid': '0a8740da-e7c1-4ba3-8b35-39f038e6099f', 'name': u'CUSTOM_DT1'} GOT:Response: 201 Created Content-Type: application/json Location: http://localhost/v1/deploy_templates/0a8740da-e7c1-4ba3-8b35-39f038e6099f Openstack-Request-Id: req-84f16ba5-fd8e-42a1-ad82-0143056bc18f X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"uuid": "0a8740da-e7c1-4ba3-8b35-39f038e6099f", "links": [{"href": "http://localhost/v1/deploy_templates/0a8740da-e7c1-4ba3-8b35-39f038e6099f", "rel": "self"}, {"href": "http://localhost/deploy_templates/0a8740da-e7c1-4ba3-8b35-39f038e6099f", "rel": "bookmark"}], "extra": {}, "created_at": "2019-06-06T07:02:14.207810+00:00", "updated_at": null, "steps": [{"interface": "raid", "priority": 10, "step": "create_configuration", "args": {"foo": [{"bar": "baz"}]}}], "name": "CUSTOM_DT1"} {13} ironic.tests.unit.api.controllers.v1.test_deploy_template.TestPost.test_create_complex_step_args [0.056956s] ... ok POST: /v1/allocations {'uuid': 'b34160d6-ffed-4a58-a948-7c712b1d6bc7', 'resource_class': 'baremetal', 'extra': {}, 'traits': ['CUSTOM_GPU', 'CUSTOM_FOO_BAR'], 'candidate_nodes': [], 'name': None} GOT:Response: 201 Created Content-Type: application/json Location: http://localhost/v1/allocations/b34160d6-ffed-4a58-a948-7c712b1d6bc7 Openstack-Request-Id: req-1f414b4b-cd9e-4f02-a91c-ccff26077afa X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"node_uuid": null, "uuid": "b34160d6-ffed-4a58-a948-7c712b1d6bc7", "links": [{"href": "http://localhost/v1/allocations/b34160d6-ffed-4a58-a948-7c712b1d6bc7", "rel": "self"}, {"href": "http://localhost/allocations/b34160d6-ffed-4a58-a948-7c712b1d6bc7", "rel": "bookmark"}], "extra": {}, "last_error": null, "created_at": "2019-06-06T07:02:14.283826+00:00", "resource_class": "baremetal", "updated_at": null, "traits": ["CUSTOM_GPU", "CUSTOM_FOO_BAR"], "state": "allocating", "candidate_nodes": [], "name": null} GET: /v1/allocations/b34160d6-ffed-4a58-a948-7c712b1d6bc7 {} GOT:{u'node_uuid': None, u'uuid': u'b34160d6-ffed-4a58-a948-7c712b1d6bc7', u'links': [{u'href': u'http://localhost/v1/allocations/b34160d6-ffed-4a58-a948-7c712b1d6bc7', u'rel': u'self'}, {u'href': u'http://localhost/allocations/b34160d6-ffed-4a58-a948-7c712b1d6bc7', u'rel': u'bookmark'}], u'extra': {}, u'last_error': None, u'created_at': u'2019-06-06T07:02:14.283826+00:00', u'resource_class': u'baremetal', u'updated_at': None, u'traits': [u'CUSTOM_GPU', u'CUSTOM_FOO_BAR'], u'state': u'allocating', u'candidate_nodes': [], u'name': None} {25} ironic.tests.unit.api.controllers.v1.test_allocation.TestPost.test_create_allocation_with_traits [0.072675s] ... ok GET: /v1/deploy_templates/46f809d3-ce1c-4fcb-8c8f-128548c93547 {} GOT:Response: 404 Not Found Content-Type: application/json {"error_message": "{\"code\": 404, \"description\": \"The API version does not allow deploy templates\", \"title\": \"Not Found\"}"} {0} ironic.tests.unit.drivers.modules.network.test_common.TestCommonFunctions.test__get_free_portgroups_and_ports_physnet2 [0.134722s] ... ok {24} ironic.tests.unit.api.controllers.v1.test_deploy_template.TestListDeployTemplates.test_get_one_invalid_api_version [0.038980s] ... ok GET: /v1/deploy_templates/82327786-1070-4a9a-9bb8-3e13421eaedc {} GOT:{u'uuid': u'82327786-1070-4a9a-9bb8-3e13421eaedc', u'links': [{u'href': u'http://localhost/v1/deploy_templates/82327786-1070-4a9a-9bb8-3e13421eaedc', u'rel': u'self'}, {u'href': u'http://localhost/deploy_templates/82327786-1070-4a9a-9bb8-3e13421eaedc', u'rel': u'bookmark'}], u'extra': {}, u'created_at': u'2019-06-06T07:02:14.600422+00:00', u'updated_at': None, u'steps': [{u'interface': u'raid', u'priority': 10, u'step': u'create_configuration', u'args': {u'logical_disks': []}}], u'name': u'CUSTOM_DT1'} GET: /v1/deploy_templates/82327786-1070-4a9a-9bb8-3e13421eaedc {} GOT:{u'uuid': u'82327786-1070-4a9a-9bb8-3e13421eaedc', u'links': [{u'href': u'http://localhost/v1/deploy_templates/82327786-1070-4a9a-9bb8-3e13421eaedc', u'rel': u'self'}, {u'href': u'http://localhost/deploy_templates/82327786-1070-4a9a-9bb8-3e13421eaedc', u'rel': u'bookmark'}], u'extra': {}, u'created_at': u'2019-06-06T07:02:14.600422+00:00', u'updated_at': None, u'steps': [{u'interface': u'raid', u'priority': 10, u'step': u'create_configuration', u'args': {u'logical_disks': []}}], u'name': u'CUSTOM_DT1'} GET: /deploy_templates/82327786-1070-4a9a-9bb8-3e13421eaedc {} GOT:{u'uuid': u'82327786-1070-4a9a-9bb8-3e13421eaedc', u'links': [{u'href': u'http://localhost/v1/deploy_templates/82327786-1070-4a9a-9bb8-3e13421eaedc', u'rel': u'self'}, {u'href': u'http://localhost/deploy_templates/82327786-1070-4a9a-9bb8-3e13421eaedc', u'rel': u'bookmark'}], u'extra': {}, u'created_at': u'2019-06-06T07:02:14.600422+00:00', u'updated_at': None, u'steps': [{u'interface': u'raid', u'priority': 10, u'step': u'create_configuration', u'args': {u'logical_disks': []}}], u'name': u'CUSTOM_DT1'} {28} ironic.tests.unit.api.controllers.v1.test_deploy_template.TestListDeployTemplates.test_links [0.095862s] ... ok GET: /v1/nodes/detail {} GOT:{u'nodes': [{u'target_power_state': None, u'links': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'bookmark'}], u'target_provision_state': None, u'last_error': None, u'updated_at': None, u'maintenance_reason': None, u'states': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states', u'rel': u'bookmark'}], u'provision_state': u'available', u'clean_step': {}, u'uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'console_enabled': False, u'extra': {}, u'raid_config': {}, u'provision_updated_at': None, u'power_state': None, u'target_raid_config': {}, u'network_interface': None, u'inspection_started_at': None, u'inspection_finished_at': None, u'maintenance': False, u'driver': u'fake-hardware', u'reservation': None, u'properties': {u'memory_mb': u'4096', u'cpu_arch': u'x86_64', u'local_gb': u'10', u'cpus': u'8'}, u'instance_uuid': None, u'name': None, u'driver_info': {u'fake_password': u'******', u'foo': u'bar'}, u'resource_class': None, u'created_at': u'2019-06-06T07:02:14.648034+00:00', u'portgroups': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/portgroups', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/portgroups', u'rel': u'bookmark'}], u'instance_info': {u'foo': u'bar', u'image_url': u'******', u'configdrive': u'******'}, u'driver_internal_info': {u'private_state': u'secret value'}, u'chassis_uuid': None, u'ports': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'bookmark'}]}]} GET: /v1/nodes/detail {} GOT:{u'nodes': [{u'target_power_state': None, u'inspect_interface': None, u'links': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'bookmark'}], u'target_provision_state': None, u'last_error': None, u'updated_at': None, u'maintenance_reason': None, u'states': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states', u'rel': u'bookmark'}], u'provision_state': u'available', u'clean_step': {}, u'vendor_interface': None, u'uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'console_enabled': False, u'extra': {}, u'raid_config': {}, u'provision_updated_at': None, u'power_state': None, u'target_raid_config': {}, u'network_interface': None, u'inspection_started_at': None, u'inspection_finished_at': None, u'maintenance': False, u'driver': u'fake-hardware', u'power_interface': None, u'raid_interface': None, u'boot_interface': None, u'reservation': None, u'management_interface': None, u'properties': {u'memory_mb': u'4096', u'cpu_arch': u'x86_64', u'local_gb': u'10', u'cpus': u'8'}, u'instance_uuid': None, u'name': None, u'driver_info': {u'fake_password': u'******', u'foo': u'bar'}, u'resource_class': None, u'created_at': u'2019-06-06T07:02:14.648034+00:00', u'portgroups': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/portgroups', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/portgroups', u'rel': u'bookmark'}], u'deploy_interface': None, u'instance_info': {u'foo': u'bar', u'image_url': u'******', u'configdrive': u'******'}, u'console_interface': None, u'driver_internal_info': {u'private_state': u'secret value'}, u'chassis_uuid': None, u'ports': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'bookmark'}]}]} {3} ironic.tests.unit.api.controllers.v1.test_node.TestListNodes.test_hide_fields_in_newer_versions_interface_fields [0.204488s] ... ok POST: /v1/deploy_templates {'extra': 42, 'steps': [{'priority': 10, 'interface': 'raid', 'step': 'create_configuration', 'args': {'logical_disks': []}}], 'uuid': '7ded5f6d-2eac-4f02-8b70-7333385d4101', 'name': u'CUSTOM_DT1'} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-58bddbea-808a-4692-95bf-44806bde7c78 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Invalid input for field/attribute template. Value: '{'steps': [{'priority': 10, 'interface': 'raid', 'step': 'create_configuration', 'args': {'logical_disks': []}}], 'uuid': '7ded5f6d-2eac-4f02-8b70-7333385d4101', 'name': 'CUSTOM_DT1', 'extra': 42}'. Value not a valid dict: 42\"}"} {18} ironic.tests.unit.api.controllers.v1.test_deploy_template.TestPost.test_create_invalid_field_extra [0.049216s] ... ok {0} ironic.tests.unit.drivers.modules.network.test_common.TestCommonFunctions.test_get_free_port_like_object_ports [0.074351s] ... ok GET: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/bios/virtualization {} GOT:{u'virtualization': {u'value': u'on', u'created_at': u'2019-06-06T07:02:14.408650+00:00', u'name': u'virtualization', u'links': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/bios/virtualization', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/bios/virtualization', u'rel': u'bookmark'}], u'updated_at': None}} {12} ironic.tests.unit.api.controllers.v1.test_node.TestBIOS.test_get_one_bios [0.104657s] ... ok GET: /v1/conductors/rocky.rocks {} GOT:{u'links': [{u'href': u'http://localhost/v1/conductors/rocky.rocks', u'rel': u'self'}, {u'href': u'http://localhost/conductors/rocky.rocks', u'rel': u'bookmark'}], u'created_at': u'2019-06-06T07:02:14.274468+00:00', u'hostname': u'rocky.rocks', u'conductor_group': u'', u'updated_at': u'2019-06-06T07:02:14.273781+00:00', u'alive': True, u'drivers': [u'fake-driver', u'null-driver']} GET: /v1/conductors/rocky.rocks {} GOT:{u'links': [{u'href': u'http://localhost/v1/conductors/rocky.rocks', u'rel': u'self'}, {u'href': u'http://localhost/conductors/rocky.rocks', u'rel': u'bookmark'}], u'created_at': u'2019-06-06T07:02:14.274468+00:00', u'hostname': u'rocky.rocks', u'conductor_group': u'', u'updated_at': u'2019-06-06T07:02:14.273781+00:00', u'alive': True, u'drivers': [u'fake-driver', u'null-driver']} GET: /conductors/rocky.rocks {} GOT:{u'links': [{u'href': u'http://localhost/v1/conductors/rocky.rocks', u'rel': u'self'}, {u'href': u'http://localhost/conductors/rocky.rocks', u'rel': u'bookmark'}], u'created_at': u'2019-06-06T07:02:14.274468+00:00', u'hostname': u'rocky.rocks', u'conductor_group': u'', u'updated_at': u'2019-06-06T07:02:14.273781+00:00', u'alive': True, u'drivers': [u'fake-driver', u'null-driver']} {4} ironic.tests.unit.api.controllers.v1.test_conductor.TestListConductors.test_links [0.084628s] ... ok DELETE: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/volume/connectors/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 GOT:Response: 403 Forbidden Content-Type: application/json Openstack-Request-Id: req-1a9d86e0-0c2d-4c50-a194-10775c35bad0 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Operation not permitted.\"}"} {11} ironic.tests.unit.api.controllers.v1.test_node.TestDelete.test_delete_volume_connectors_subresource [0.065857s] ... ok {0} ironic.tests.unit.drivers.modules.network.test_common.TestNeutronVifPortIDMixin.test_port_changed_address_no_vif_id [0.089435s] ... ok DELETE: /v1/drivers/fake-hardware-type/vendor_passthru/do_test GOT:Response: 202 Accepted Content-Type: application/json Openstack-Request-Id: req-8c5222d7-69fe-402d-865e-22ef56dca8fd X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 null {1} ironic.tests.unit.api.controllers.v1.test_driver.TestListDrivers.test_driver_vendor_passthru_delete [0.091865s] ... ok PATCH: /v1/deploy_templates/d104680c-635b-4f93-95e1-2a7d33b98e89 [{'path': '/steps/1', 'op': 'remove'}] GOT:Response: 200 OK Content-Type: application/json Openstack-Request-Id: req-d44e30cb-8591-4b8c-ac93-4ac33816681c X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"uuid": "d104680c-635b-4f93-95e1-2a7d33b98e89", "links": [{"href": "http://localhost/v1/deploy_templates/d104680c-635b-4f93-95e1-2a7d33b98e89", "rel": "self"}, {"href": "http://localhost/deploy_templates/d104680c-635b-4f93-95e1-2a7d33b98e89", "rel": "bookmark"}], "extra": {}, "created_at": "2019-06-06T07:02:14.479271+00:00", "updated_at": null, "steps": [{"interface": "raid", "priority": 10, "step": "create_configuration0", "args": {}}, {"interface": "raid", "priority": 10, "step": "create_configuration2", "args": {}}], "name": "CUSTOM_DT2"} {19} ironic.tests.unit.api.controllers.v1.test_deploy_template.TestPatch.test_remove_multi [0.082178s] ... ok GET: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123?fields=storage_interface {} GOT:{u'storage_interface': None, u'links': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'bookmark'}]} {17} ironic.tests.unit.api.controllers.v1.test_node.TestListNodes.test_get_storage_interface_fields [0.090304s] ... ok GET: /v1/drivers/fake-hardware-type {} GOT:{u'enabled_rescue_interfaces': [], u'default_inspect_interface': None, u'default_storage_interface': None, u'links': [{u'href': u'http://localhost/v1/drivers/fake-hardware-type', u'rel': u'self'}, {u'href': u'http://localhost/drivers/fake-hardware-type', u'rel': u'bookmark'}], u'default_rescue_interface': None, u'enabled_raid_interfaces': [], u'enabled_management_interfaces': [], u'enabled_bios_interfaces': [], u'enabled_deploy_interfaces': [u'iscsi', u'direct'], u'default_boot_interface': None, u'default_bios_interface': None, u'default_raid_interface': None, u'default_power_interface': None, u'enabled_network_interfaces': [], u'default_management_interface': None, u'hosts': [u'fake-host1', u'fake-host2'], u'enabled_storage_interfaces': [], u'default_vendor_interface': None, u'default_network_interface': None, u'enabled_boot_interfaces': [], u'enabled_inspect_interfaces': [], u'enabled_console_interfaces': [], u'properties': [{u'href': u'http://localhost/v1/drivers/fake-hardware-type/properties', u'rel': u'self'}, {u'href': u'http://localhost/drivers/fake-hardware-type/properties', u'rel': u'bookmark'}], u'name': u'fake-hardware-type', u'default_console_interface': None, u'type': u'dynamic', u'default_deploy_interface': u'direct', u'enabled_vendor_interfaces': [], u'enabled_power_interfaces': []} GET: /v1/drivers/fake-hardware-type {} GOT:{u'hosts': [u'fake-host1', u'fake-host2'], u'name': u'fake-hardware-type', u'links': [{u'href': u'http://localhost/v1/drivers/fake-hardware-type', u'rel': u'self'}, {u'href': u'http://localhost/drivers/fake-hardware-type', u'rel': u'bookmark'}]} GET: /drivers/fake-hardware-type {} GOT:{u'hosts': [u'fake-host1', u'fake-host2'], u'name': u'fake-hardware-type', u'links': [{u'href': u'http://localhost/v1/drivers/fake-hardware-type', u'rel': u'self'}, {u'href': u'http://localhost/drivers/fake-hardware-type', u'rel': u'bookmark'}]} GET: /v1/drivers/fake-hardware-type/properties {} GOT:{} GET: /drivers/fake-hardware-type/properties {} GOT:{} {15} ironic.tests.unit.api.controllers.v1.test_driver.TestListDrivers.test_drivers_get_one_ok_dynamic_latest_interfaces [0.152144s] ... ok {0} ironic.tests.unit.drivers.modules.network.test_common.TestNeutronVifPortIDMixin.test_vif_detach_active_node_failure [0.108989s] ... ok {0} ironic.tests.unit.drivers.modules.network.test_common.TestVifPortIDMixin.test__save_vif_to_port_like_obj_portgroup [0.033772s] ... ok PATCH: /v1/deploy_templates/CUSTOM_DT1 [{'path': '/steps', 'value': [{'interface': 'bios', 'priority': 42, 'step': 'apply_configuration', 'args': {'foo': 'bar'}}], 'op': 'replace'}] GOT:Response: 200 OK Content-Type: application/json Openstack-Request-Id: req-586764ca-0481-4cf7-8588-dc38b9e2782c X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"uuid": "d95e7138-e007-47e1-96ec-d00fc56925d8", "links": [{"href": "http://localhost/v1/deploy_templates/d95e7138-e007-47e1-96ec-d00fc56925d8", "rel": "self"}, {"href": "http://localhost/deploy_templates/d95e7138-e007-47e1-96ec-d00fc56925d8", "rel": "bookmark"}], "extra": {}, "created_at": "2019-06-06T07:02:14.425053+00:00", "updated_at": null, "steps": [{"interface": "bios", "priority": 42, "step": "apply_configuration", "args": {"foo": "bar"}}], "name": "CUSTOM_DT1"} {5} ironic.tests.unit.api.controllers.v1.test_deploy_template.TestPatch.test_update_by_name [0.072712s] ... ok GET: /v1/chassis {} GOT:{u'chassis': [{u'uuid': u'5e3c9f02-cdb4-431b-b744-69320b529996', u'links': [{u'href': u'http://localhost/v1/chassis/5e3c9f02-cdb4-431b-b744-69320b529996', u'rel': u'self'}, {u'href': u'http://localhost/chassis/5e3c9f02-cdb4-431b-b744-69320b529996', u'rel': u'bookmark'}], u'description': u'data-center-1-chassis'}, {u'uuid': u'848ffbae-b645-4e45-898e-d60cfba492e5', u'links': [{u'href': u'http://localhost/v1/chassis/848ffbae-b645-4e45-898e-d60cfba492e5', u'rel': u'self'}, {u'href': u'http://localhost/chassis/848ffbae-b645-4e45-898e-d60cfba492e5', u'rel': u'bookmark'}], u'description': u'data-center-1-chassis'}, {u'uuid': u'd45dd1f5-2f3c-4505-b4a5-97beb18de1cb', u'links': [{u'href': u'http://localhost/v1/chassis/d45dd1f5-2f3c-4505-b4a5-97beb18de1cb', u'rel': u'self'}, {u'href': u'http://localhost/chassis/d45dd1f5-2f3c-4505-b4a5-97beb18de1cb', u'rel': u'bookmark'}], u'description': u'data-center-1-chassis'}], u'next': u'http://localhost/v1/chassis?sort_dir=asc&sort_key=id&limit=3&marker=d45dd1f5-2f3c-4505-b4a5-97beb18de1cb'} {21} ironic.tests.unit.api.controllers.v1.test_chassis.TestListChassis.test_collection_links_default_limit [0.076264s] ... ok {0} ironic.tests.unit.drivers.modules.network.test_neutron.NeutronInterfaceTestCase.test_configure_tenant_networks_vif_int_info [0.079562s] ... ok DELETE: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/vifs/f71b4a78-75d4-477a-9779-1de245e8358b GOT:Response: 204 No Content Openstack-Request-Id: req-e696f4a3-33ee-4015-87db-76bedc1b7fff X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.28 {24} ironic.tests.unit.api.controllers.v1.test_node.TestAttachDetachVif.test_vif_detach [0.060545s] ... ok GET: /v1/nodes/detail?resource_class=fake {} GOT:Response: 406 Not Acceptable Content-Type: application/json Openstack-Request-Id: req-b1abe1cb-164c-402c-bf3b-a7a8216c6c8e X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Request not acceptable. The minimal required API version should be 1.21\"}"} {9} ironic.tests.unit.api.controllers.v1.test_node.TestListNodes.test_get_nodes_by_resource_class_invalid_api_version_detail [0.053802s] ... ok GET: /v1/nodes?fault=somefake {} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-6afb5674-a375-42e3-8376-93303faf51c0 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.42 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Unrecognized fault \\\"somefake\\\" is specified, allowed faults are ('power failure', 'clean failure', 'rescue abort failure')\"}"} GET: /v1/nodes/detail?fault=somefake {} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-615a3696-493e-4207-9482-0968960a13e1 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.42 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Unrecognized fault \\\"somefake\\\" is specified, allowed faults are ('power failure', 'clean failure', 'rescue abort failure')\"}"} {23} ironic.tests.unit.api.controllers.v1.test_node.TestListNodes.test_get_nodes_by_fault_with_invalid_fault [0.061887s] ... ok {0} ironic.tests.unit.drivers.modules.network.test_neutron.NeutronInterfaceTestCase.test_validate_boot_option_local [0.103768s] ... ok PATCH: /v1/chassis/0d8ccf5a-7f13-446e-a660-fc8c75618323 [{'path': '/extra/foo2', 'op': 'remove'}] GOT:Response: 200 OK Content-Type: application/json Openstack-Request-Id: req-197221e2-b68d-4f32-8f08-27c46c0eff92 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"uuid": "0d8ccf5a-7f13-446e-a660-fc8c75618323", "links": [{"href": "http://localhost/v1/chassis/0d8ccf5a-7f13-446e-a660-fc8c75618323", "rel": "self"}, {"href": "http://localhost/chassis/0d8ccf5a-7f13-446e-a660-fc8c75618323", "rel": "bookmark"}], "extra": {"foo1": "bar1", "foo3": "bar3"}, "created_at": "2019-06-06T07:02:14.302701+00:00", "updated_at": "2019-06-06T07:02:14.334808+00:00", "nodes": [{"href": "http://localhost/v1/chassis/0d8ccf5a-7f13-446e-a660-fc8c75618323/nodes", "rel": "self"}, {"href": "http://localhost/chassis/0d8ccf5a-7f13-446e-a660-fc8c75618323/nodes", "rel": "bookmark"}], "description": "foobar"} GET: /v1/chassis/0d8ccf5a-7f13-446e-a660-fc8c75618323 {} GOT:{u'uuid': u'0d8ccf5a-7f13-446e-a660-fc8c75618323', u'links': [{u'href': u'http://localhost/v1/chassis/0d8ccf5a-7f13-446e-a660-fc8c75618323', u'rel': u'self'}, {u'href': u'http://localhost/chassis/0d8ccf5a-7f13-446e-a660-fc8c75618323', u'rel': u'bookmark'}], u'extra': {u'foo1': u'bar1', u'foo3': u'bar3'}, u'created_at': u'2019-06-06T07:02:14.302701+00:00', u'updated_at': u'2019-06-06T07:02:14.334808+00:00', u'nodes': [{u'href': u'http://localhost/v1/chassis/0d8ccf5a-7f13-446e-a660-fc8c75618323/nodes', u'rel': u'self'}, {u'href': u'http://localhost/chassis/0d8ccf5a-7f13-446e-a660-fc8c75618323/nodes', u'rel': u'bookmark'}], u'description': u'foobar'} PATCH: /v1/chassis/0d8ccf5a-7f13-446e-a660-fc8c75618323 [{'path': '/extra', 'op': 'remove'}] GOT:Response: 200 OK Content-Type: application/json Openstack-Request-Id: req-a7e47771-6912-4caa-9d5c-c27ff29f94b4 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"uuid": "0d8ccf5a-7f13-446e-a660-fc8c75618323", "links": [{"href": "http://localhost/v1/chassis/0d8ccf5a-7f13-446e-a660-fc8c75618323", "rel": "self"}, {"href": "http://localhost/chassis/0d8ccf5a-7f13-446e-a660-fc8c75618323", "rel": "bookmark"}], "extra": {}, "created_at": "2019-06-06T07:02:14.302701+00:00", "updated_at": "2019-06-06T07:02:14.368994+00:00", "nodes": [{"href": "http://localhost/v1/chassis/0d8ccf5a-7f13-446e-a660-fc8c75618323/nodes", "rel": "self"}, {"href": "http://localhost/chassis/0d8ccf5a-7f13-446e-a660-fc8c75618323/nodes", "rel": "bookmark"}], "description": "foobar"} GET: /v1/chassis/0d8ccf5a-7f13-446e-a660-fc8c75618323 {} GOT:{u'uuid': u'0d8ccf5a-7f13-446e-a660-fc8c75618323', u'links': [{u'href': u'http://localhost/v1/chassis/0d8ccf5a-7f13-446e-a660-fc8c75618323', u'rel': u'self'}, {u'href': u'http://localhost/chassis/0d8ccf5a-7f13-446e-a660-fc8c75618323', u'rel': u'bookmark'}], u'extra': {}, u'created_at': u'2019-06-06T07:02:14.302701+00:00', u'updated_at': u'2019-06-06T07:02:14.368994+00:00', u'nodes': [{u'href': u'http://localhost/v1/chassis/0d8ccf5a-7f13-446e-a660-fc8c75618323/nodes', u'rel': u'self'}, {u'href': u'http://localhost/chassis/0d8ccf5a-7f13-446e-a660-fc8c75618323/nodes', u'rel': u'bookmark'}], u'description': u'foobar'} {20} ironic.tests.unit.api.controllers.v1.test_chassis.TestPatch.test_remove_multi [0.123005s] ... ok GET: /v1/drivers?detail=True {} GOT:Response: 406 Not Acceptable Content-Type: application/json Openstack-Request-Id: req-c497afb1-5491-4dee-8529-82d70d3d8378 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.29 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Request not acceptable. The minimal required API version should be 1.30\"}"} {13} ironic.tests.unit.api.controllers.v1.test_driver.TestListDrivers.test_drivers_detail_bad_version [0.046636s] ... ok POST: /v1/events {'events': [{'INVALID': 'fake.event'}]} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-dcf320a5-4cee-4e9c-9f8a-fee4885507eb X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Missing mandatory keys: event\"}"} {18} ironic.tests.unit.api.controllers.v1.test_event.TestPost.test_events_does_not_contain_event [0.046475s] ... ok PUT: /v1/drivers/fake-hardware-type/vendor_passthru/do_test {'test_key': 'test_value'} GOT:Response: 202 Accepted Content-Type: application/json Openstack-Request-Id: req-e51c8dc2-bf62-4ec7-90e6-4624f6244977 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 null GET: /v1/drivers {} GOT:{u'drivers': []} {1} ironic.tests.unit.api.controllers.v1.test_driver.TestListDrivers.test_driver_vendor_passthru_put [0.083777s] ... ok {13} ironic.tests.unit.api.controllers.v1.test_driver.TestListDrivers.test_drivers_no_active_conductor [0.058660s] ... ok {0} ironic.tests.unit.drivers.modules.network.test_noop.NoopInterfaceTestCase.test_portgroup_changed [0.072153s] ... ok POST: /v1/events {'events': [{'event': 'valid.event'}]} GOT:Response: 204 No Content Openstack-Request-Id: req-17374e53-394c-4014-beaa-116084055625 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {15} ironic.tests.unit.api.controllers.v1.test_event.TestPost.test_events [0.047004s] ... ok {15} ironic.tests.unit.api.controllers.v1.test_node.TestCheckCleanSteps.test__check_clean_steps_step_missing_interface [0.028605s] ... ok {0} ironic.tests.unit.drivers.modules.redfish.test_inspect.RedfishInspectTestCase.test_validate [0.052689s] ... ok POST: /v1/deploy_templates {'extra': {}, 'steps': [], 'uuid': '3d7c042e-1c21-4ed6-9125-9460fdd2437b', 'name': u'CUSTOM_DT1'} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-5e9a1c25-ec1d-472c-bfe7-010a1cf5abe8 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Deploy template invalid: No deploy steps specified. A deploy template must have at least one deploy step..\"}"} {29} ironic.tests.unit.api.controllers.v1.test_deploy_template.TestPost.test_create_invalid_field_empty_steps [0.047398s] ... ok POST: /v1/deploy_templates {'extra': {}, 'steps': [{'priority': 10, 'interface': 'raid', 'step': 'create_configuration', 'args': {'logical_disks': []}}], 'name': u'CUSTOM_DT1'} GOT:Response: 201 Created Content-Type: application/json Location: http://localhost/v1/deploy_templates/179240e8-f8a1-43a1-b77b-f78fc0361778 Openstack-Request-Id: req-462c4ed4-97c3-456d-863f-0e94c1d80698 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"uuid": "179240e8-f8a1-43a1-b77b-f78fc0361778", "links": [{"href": "http://localhost/v1/deploy_templates/179240e8-f8a1-43a1-b77b-f78fc0361778", "rel": "self"}, {"href": "http://localhost/deploy_templates/179240e8-f8a1-43a1-b77b-f78fc0361778", "rel": "bookmark"}], "extra": {}, "created_at": "2019-06-06T07:02:14.459169+00:00", "updated_at": null, "steps": [{"interface": "raid", "priority": 10, "step": "create_configuration", "args": {"logical_disks": []}}], "name": "CUSTOM_DT1"} GET: /v1/deploy_templates/179240e8-f8a1-43a1-b77b-f78fc0361778 {} GOT:{u'uuid': u'179240e8-f8a1-43a1-b77b-f78fc0361778', u'links': [{u'href': u'http://localhost/v1/deploy_templates/179240e8-f8a1-43a1-b77b-f78fc0361778', u'rel': u'self'}, {u'href': u'http://localhost/deploy_templates/179240e8-f8a1-43a1-b77b-f78fc0361778', u'rel': u'bookmark'}], u'extra': {}, u'created_at': u'2019-06-06T07:02:14.459169+00:00', u'updated_at': None, u'steps': [{u'interface': u'raid', u'priority': 10, u'step': u'create_configuration', u'args': {u'logical_disks': []}}], u'name': u'CUSTOM_DT1'} PATCH: /v1/deploy_templates/CUSTOM_DT1 [{'path': '/name', 'value': 'CUSTOM_DT2', 'op': 'add'}] GOT:Response: 405 Method Not Allowed Content-Type: application/json {"error_message": "{\"code\": 405, \"description\": \"The API version does not allow deploy templates\", \"title\": \"Method Not Allowed\"}"} {7} ironic.tests.unit.api.controllers.v1.test_deploy_template.TestPost.test_create_generate_uuid [0.081862s] ... ok {19} ironic.tests.unit.api.controllers.v1.test_deploy_template.TestPatch.test_update_by_name_old_api_version [0.041386s] ... ok GET: /v1/nodes?detail=True&fields=name {} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-ad14f493-b233-47b8-a1db-96bfda863d8b X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Can not specify ?detail=True and fields in the same request.\"}"} {11} ironic.tests.unit.api.controllers.v1.test_node.TestListNodes.test_detail_using_query_and_fields [0.072327s] ... ok {0} ironic.tests.unit.drivers.modules.test_agent.AgentRAIDTestCase.test_create_configuration_no_target_raid_config_after_skipping [0.065982s] ... ok PATCH: /v1/chassis/e74c40e0-d825-11e2-a28f-0800200c9a66 [{'path': '/extra/foo1', 'value': 'bar1', 'op': 'add'}, {'path': '/extra/foo2', 'value': 'bar2', 'op': 'add'}] GOT:Response: 200 OK Content-Type: application/json Openstack-Request-Id: req-972d961d-2bcf-4308-953f-f522c0f5c9ce X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"uuid": "e74c40e0-d825-11e2-a28f-0800200c9a66", "links": [{"href": "http://localhost/v1/chassis/e74c40e0-d825-11e2-a28f-0800200c9a66", "rel": "self"}, {"href": "http://localhost/chassis/e74c40e0-d825-11e2-a28f-0800200c9a66", "rel": "bookmark"}], "extra": {"foo1": "bar1", "foo2": "bar2"}, "created_at": "2019-06-06T07:02:14.261053+00:00", "updated_at": "2019-06-06T07:02:14.292772+00:00", "nodes": [{"href": "http://localhost/v1/chassis/e74c40e0-d825-11e2-a28f-0800200c9a66/nodes", "rel": "self"}, {"href": "http://localhost/chassis/e74c40e0-d825-11e2-a28f-0800200c9a66/nodes", "rel": "bookmark"}], "description": "data-center-1-chassis"} GET: /v1/chassis/e74c40e0-d825-11e2-a28f-0800200c9a66 {} GOT:{u'uuid': u'e74c40e0-d825-11e2-a28f-0800200c9a66', u'links': [{u'href': u'http://localhost/v1/chassis/e74c40e0-d825-11e2-a28f-0800200c9a66', u'rel': u'self'}, {u'href': u'http://localhost/chassis/e74c40e0-d825-11e2-a28f-0800200c9a66', u'rel': u'bookmark'}], u'extra': {u'foo1': u'bar1', u'foo2': u'bar2'}, u'created_at': u'2019-06-06T07:02:14.261053+00:00', u'updated_at': u'2019-06-06T07:02:14.292772+00:00', u'nodes': [{u'href': u'http://localhost/v1/chassis/e74c40e0-d825-11e2-a28f-0800200c9a66/nodes', u'rel': u'self'}, {u'href': u'http://localhost/chassis/e74c40e0-d825-11e2-a28f-0800200c9a66/nodes', u'rel': u'bookmark'}], u'description': u'data-center-1-chassis'} {10} ironic.tests.unit.api.controllers.v1.test_chassis.TestPatch.test_add_multi [0.085465s] ... ok {0} ironic.tests.unit.drivers.modules.test_agent.AgentRescueTestCase.test_agent_unrescue_no_manage_agent_boot [0.104524s] ... ok DELETE: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/volume/connectors GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-b0fe5714-863b-4d62-aa58-cb81d4abd6a2 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Missing argument: \\\"connector_uuid\\\"\"}"} {12} ironic.tests.unit.api.controllers.v1.test_node.TestDelete.test_delete_volume_connectors_subresource_no_connector_id [0.061724s] ... ok DELETE: /v1/deploy_templates/blah GOT:Response: 404 Not Found Content-Type: application/json Openstack-Request-Id: req-6466ce60-45e8-4328-b737-575bf4fbb1b9 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Deploy template blah could not be found.\"}"} {21} ironic.tests.unit.api.controllers.v1.test_deploy_template.TestDelete.test_delete_by_name_non_existent [0.077456s] ... ok GET: /v1/chassis {} GOT:{u'chassis': [{u'uuid': u'e74c40e0-d825-11e2-a28f-0800200c9a66', u'links': [{u'href': u'http://localhost/v1/chassis/e74c40e0-d825-11e2-a28f-0800200c9a66', u'rel': u'self'}, {u'href': u'http://localhost/chassis/e74c40e0-d825-11e2-a28f-0800200c9a66', u'rel': u'bookmark'}], u'description': u'data-center-1-chassis'}]} GET: /v1/chassis?detail=False {} GOT:{u'chassis': [{u'uuid': u'e74c40e0-d825-11e2-a28f-0800200c9a66', u'links': [{u'href': u'http://localhost/v1/chassis/e74c40e0-d825-11e2-a28f-0800200c9a66', u'rel': u'self'}, {u'href': u'http://localhost/chassis/e74c40e0-d825-11e2-a28f-0800200c9a66', u'rel': u'bookmark'}], u'description': u'data-center-1-chassis'}]} {25} ironic.tests.unit.api.controllers.v1.test_chassis.TestListChassis.test_detail_query_false [0.072911s] ... ok POST: /v1/nodes/doesntexist/vifs {'id': 'e9213756-087a-4a27-903b-e79bcfc49ead'} GOT:Response: 404 Not Found Content-Type: application/json Openstack-Request-Id: req-24c90377-15d2-4f2a-a784-6117055cd5c1 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.28 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Node doesntexist could not be found.\"}"} {5} ironic.tests.unit.api.controllers.v1.test_node.TestAttachDetachVif.test_vif_attach_node_not_found [0.073834s] ... ok {0} ironic.tests.unit.drivers.modules.test_agent_base_vendor.AgentDeployMixinTest.test__cleaning_reboot [0.083950s] ... ok PATCH: /v1/chassis/e74c40e0-d825-11e2-a28f-0800200c9a66 [{'path': '/description', 'value': 'chassis-new-description', 'op': 'replace'}] GOT:Response: 200 OK Content-Type: application/json Openstack-Request-Id: req-5d7a9798-3477-4e15-8ec8-bae162709e39 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"uuid": "e74c40e0-d825-11e2-a28f-0800200c9a66", "links": [{"href": "http://localhost/v1/chassis/e74c40e0-d825-11e2-a28f-0800200c9a66", "rel": "self"}, {"href": "http://localhost/chassis/e74c40e0-d825-11e2-a28f-0800200c9a66", "rel": "bookmark"}], "extra": {}, "created_at": "2019-06-06T07:02:14.545930+00:00", "updated_at": "2000-01-01T00:00:00+00:00", "nodes": [{"href": "http://localhost/v1/chassis/e74c40e0-d825-11e2-a28f-0800200c9a66/nodes", "rel": "self"}, {"href": "http://localhost/chassis/e74c40e0-d825-11e2-a28f-0800200c9a66/nodes", "rel": "bookmark"}], "description": "chassis-new-description"} GET: /v1/chassis/e74c40e0-d825-11e2-a28f-0800200c9a66 {} GOT:{u'uuid': u'e74c40e0-d825-11e2-a28f-0800200c9a66', u'links': [{u'href': u'http://localhost/v1/chassis/e74c40e0-d825-11e2-a28f-0800200c9a66', u'rel': u'self'}, {u'href': u'http://localhost/chassis/e74c40e0-d825-11e2-a28f-0800200c9a66', u'rel': u'bookmark'}], u'extra': {}, u'created_at': u'2019-06-06T07:02:14.545930+00:00', u'updated_at': u'2000-01-01T00:00:00+00:00', u'nodes': [{u'href': u'http://localhost/v1/chassis/e74c40e0-d825-11e2-a28f-0800200c9a66/nodes', u'rel': u'self'}, {u'href': u'http://localhost/chassis/e74c40e0-d825-11e2-a28f-0800200c9a66/nodes', u'rel': u'bookmark'}], u'description': u'chassis-new-description'} {31} ironic.tests.unit.api.controllers.v1.test_chassis.TestPatch.test_replace_singular [0.080518s] ... ok GET: /v1/deploy_templates {} GOT:{u'deploy_templates': [{u'uuid': u'8b50a7da-e7e5-434b-8b57-6367d2555303', u'links': [{u'href': u'http://localhost/v1/deploy_templates/8b50a7da-e7e5-434b-8b57-6367d2555303', u'rel': u'self'}, {u'href': u'http://localhost/deploy_templates/8b50a7da-e7e5-434b-8b57-6367d2555303', u'rel': u'bookmark'}], u'name': u'CUSTOM_DT0'}, {u'uuid': u'1339a115-85fa-4482-a96b-c1ad5bd9a90b', u'links': [{u'href': u'http://localhost/v1/deploy_templates/1339a115-85fa-4482-a96b-c1ad5bd9a90b', u'rel': u'self'}, {u'href': u'http://localhost/deploy_templates/1339a115-85fa-4482-a96b-c1ad5bd9a90b', u'rel': u'bookmark'}], u'name': u'CUSTOM_DT1'}, {u'uuid': u'91fb385e-890e-4b02-9e92-419c5092f7e6', u'links': [{u'href': u'http://localhost/v1/deploy_templates/91fb385e-890e-4b02-9e92-419c5092f7e6', u'rel': u'self'}, {u'href': u'http://localhost/deploy_templates/91fb385e-890e-4b02-9e92-419c5092f7e6', u'rel': u'bookmark'}], u'name': u'CUSTOM_DT2'}, {u'uuid': u'225b8afd-2c07-4716-9700-8a0df87b51e6', u'links': [{u'href': u'http://localhost/v1/deploy_templates/225b8afd-2c07-4716-9700-8a0df87b51e6', u'rel': u'self'}, {u'href': u'http://localhost/deploy_templates/225b8afd-2c07-4716-9700-8a0df87b51e6', u'rel': u'bookmark'}], u'name': u'CUSTOM_DT3'}, {u'uuid': u'7509e185-04c3-4b70-bc51-a41175dff71d', u'links': [{u'href': u'http://localhost/v1/deploy_templates/7509e185-04c3-4b70-bc51-a41175dff71d', u'rel': u'self'}, {u'href': u'http://localhost/deploy_templates/7509e185-04c3-4b70-bc51-a41175dff71d', u'rel': u'bookmark'}], u'name': u'CUSTOM_DT4'}]} {22} ironic.tests.unit.api.controllers.v1.test_deploy_template.TestListDeployTemplates.test_many [0.137619s] ... ok GET: /v1/drivers {} GOT:{u'drivers': [{u'hosts': [u'fake-host1', u'fake-host2'], u'name': u'fake-hardware-type', u'links': [{u'href': u'http://localhost/v1/drivers/fake-hardware-type', u'rel': u'self'}, {u'href': u'http://localhost/drivers/fake-hardware-type', u'rel': u'bookmark'}]}, {u'hosts': [u'fake-host1'], u'name': u'fake-hardware-type-2', u'links': [{u'href': u'http://localhost/v1/drivers/fake-hardware-type-2', u'rel': u'self'}, {u'href': u'http://localhost/drivers/fake-hardware-type-2', u'rel': u'bookmark'}]}]} GET: /v1/drivers/fake-hardware-type {} GOT:{u'hosts': [u'fake-host1', u'fake-host2'], u'name': u'fake-hardware-type', u'links': [{u'href': u'http://localhost/v1/drivers/fake-hardware-type', u'rel': u'self'}, {u'href': u'http://localhost/drivers/fake-hardware-type', u'rel': u'bookmark'}]} GET: /drivers/fake-hardware-type {} GOT:{u'hosts': [u'fake-host1', u'fake-host2'], u'name': u'fake-hardware-type', u'links': [{u'href': u'http://localhost/v1/drivers/fake-hardware-type', u'rel': u'self'}, {u'href': u'http://localhost/drivers/fake-hardware-type', u'rel': u'bookmark'}]} GET: /v1/drivers/fake-hardware-type-2 {} GOT:{u'hosts': [u'fake-host1'], u'name': u'fake-hardware-type-2', u'links': [{u'href': u'http://localhost/v1/drivers/fake-hardware-type-2', u'rel': u'self'}, {u'href': u'http://localhost/drivers/fake-hardware-type-2', u'rel': u'bookmark'}]} GET: /drivers/fake-hardware-type-2 {} GOT:{u'hosts': [u'fake-host1'], u'name': u'fake-hardware-type-2', u'links': [{u'href': u'http://localhost/v1/drivers/fake-hardware-type-2', u'rel': u'self'}, {u'href': u'http://localhost/drivers/fake-hardware-type-2', u'rel': u'bookmark'}]} {27} ironic.tests.unit.api.controllers.v1.test_driver.TestListDrivers.test_drivers [0.137458s] ... ok POST: /v1/deploy_templates {'foo': 'bar', 'extra': {}, 'steps': [{'priority': 10, 'interface': 'raid', 'step': 'create_configuration', 'args': {'logical_disks': []}}], 'uuid': '57b07dae-1cca-42d4-afb1-11af19b31d4b', 'name': u'CUSTOM_DT1'} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-50a5c95d-610a-46c3-ba44-68cbdbd5fdf2 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Unknown attribute for argument template: foo\"}"} {4} ironic.tests.unit.api.controllers.v1.test_deploy_template.TestPost.test_create_invalid_field_foo [0.048401s] ... ok PATCH: /v1/deploy_templates/5928e5d8-210b-4dc1-9259-0d91efba72d3 [{'path': '/steps', 'value': [{'interface': 'raid', 'priority': 0, 'step': 'create_configuration', 'args': {'foo': '0'}}, {'interface': 'raid', 'priority': 1, 'step': 'create_configuration', 'args': {'foo': '1'}}], 'op': 'replace'}] GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-2b0d87cb-1f74-4ab6-8af5-e08ed53e7fb2 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Deploy template invalid: Duplicate deploy steps. A deploy template cannot have multiple deploy steps with the same interface and step. Duplicates: interface: raid, step: create_configuration.\"}"} {28} ironic.tests.unit.api.controllers.v1.test_deploy_template.TestPatch.test_replace_duplicate_step [0.069053s] ... ok POST: /v1/events {'events': [{'event': 'valid.event'}]} GOT:Response: 404 Not Found Content-Type: application/json Openstack-Request-Id: req-7c86339b-65d5-4945-b3ca-004a2007c7dc X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.50 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Resource could not be found.\"}"} {18} ironic.tests.unit.api.controllers.v1.test_event.TestPost.test_events_unsupported_api_version [0.047030s] ... ok {18} ironic.tests.unit.api.controllers.v1.test_expose.TestExposedAPIMethodsCheckPolicy.test_port_api_policy [0.083027s] ... ok {0} ironic.tests.unit.drivers.modules.test_agent_base_vendor.AgentDeployMixinTest.test_continue_cleaning_manual_clean_version_mismatch [0.114795s] ... ok POST: /v1/chassis {'description': 'data-center-1-chassis', 'extra': {}} GOT:Response: 201 Created Content-Type: application/json Location: http://localhost/v1/chassis/9a8658b3-969f-4127-86df-76b2f2d4b157 Openstack-Request-Id: req-0ee82d49-675e-4324-ae58-b79d683279bf X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"uuid": "9a8658b3-969f-4127-86df-76b2f2d4b157", "links": [{"href": "http://localhost/v1/chassis/9a8658b3-969f-4127-86df-76b2f2d4b157", "rel": "self"}, {"href": "http://localhost/chassis/9a8658b3-969f-4127-86df-76b2f2d4b157", "rel": "bookmark"}], "extra": {}, "created_at": "2019-06-06T07:02:14.449700+00:00", "updated_at": null, "nodes": [{"href": "http://localhost/v1/chassis/9a8658b3-969f-4127-86df-76b2f2d4b157/nodes", "rel": "self"}, {"href": "http://localhost/chassis/9a8658b3-969f-4127-86df-76b2f2d4b157/nodes", "rel": "bookmark"}], "description": "data-center-1-chassis"} GET: /v1/chassis {} GOT:{u'chassis': [{u'uuid': u'9a8658b3-969f-4127-86df-76b2f2d4b157', u'links': [{u'href': u'http://localhost/v1/chassis/9a8658b3-969f-4127-86df-76b2f2d4b157', u'rel': u'self'}, {u'href': u'http://localhost/chassis/9a8658b3-969f-4127-86df-76b2f2d4b157', u'rel': u'bookmark'}], u'description': u'data-center-1-chassis'}]} {16} ironic.tests.unit.api.controllers.v1.test_chassis.TestPost.test_create_chassis_generate_uuid [0.078684s] ... ok GET: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/bios/fake_setting {} GOT:Response: 404 Not Found Content-Type: application/json Openstack-Request-Id: req-f8e33350-d4a0-4b68-b7bb-4c9dcfcd048c X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.40 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Node 1be26c0b-03f2-4d2e-ae87-c02d7f33c123 doesn't have a BIOS setting 'fake_setting'\"}"} {24} ironic.tests.unit.api.controllers.v1.test_node.TestBIOS.test_get_one_bios_fails_if_not_found [0.114344s] ... ok {24} ironic.tests.unit.api.controllers.v1.test_node.TestCheckCleanSteps.test__check_clean_steps_step_missing_step_key [0.043939s] ... ok DELETE: /v1/nodes/doesntexist/vifs/9dea297c-cb8a-4304-a90d-58fab12881b0 GOT:Response: 404 Not Found Content-Type: application/json Openstack-Request-Id: req-b8d8b4db-e458-4d0d-af25-47db72cd61a4 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.28 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Node doesntexist could not be found.\"}"} GET: /v1/drivers/fake-hardware-type/raid/logical_disk_properties {} GOT:{u'foo': u'description of foo'} {27} ironic.tests.unit.api.controllers.v1.test_driver.TestListDrivers.test_raid_logical_disk_properties [0.082006s] ... ok {1} ironic.tests.unit.api.controllers.v1.test_node.TestAttachDetachVif.test_vif_detach_node_not_found [0.107906s] ... ok GET: /v1/drivers/fake-hardware-type {} GOT:{u'hosts': [u'fake-host1', u'fake-host2'], u'name': u'fake-hardware-type', u'links': [{u'href': u'http://localhost/v1/drivers/fake-hardware-type', u'rel': u'self'}, {u'href': u'http://localhost/drivers/fake-hardware-type', u'rel': u'bookmark'}]} {21} ironic.tests.unit.api.controllers.v1.test_driver.TestListDrivers.test_driver_properties_hidden_in_lower_version [0.082729s] ... ok GET: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123?fields=network_interface {} GOT:{u'links': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'bookmark'}], u'network_interface': None} {15} ironic.tests.unit.api.controllers.v1.test_node.TestListNodes.test_get_network_interface_fields [0.097301s] ... ok {0} ironic.tests.unit.drivers.modules.test_agent_base_vendor.AgentDeployMixinTest.test_reboot_and_finish_deploy_power_off_fails [0.136825s] ... ok {0} ironic.tests.unit.drivers.modules.test_agent_client.TestAgentClient.test__command_fail_connect [0.011335s] ... ok {0} ironic.tests.unit.drivers.modules.test_agent_client.TestAgentClient.test_finalize_rescue [0.010977s] ... ok {0} ironic.tests.unit.drivers.modules.test_agent_client.TestAgentClient.test_prepare_image_with_configdrive [0.010548s] ... ok GET: /v1/drivers/fake-hardware-type/vendor_passthru/do_test {} GOT:foo {21} ironic.tests.unit.api.controllers.v1.test_driver.TestListDrivers.test_driver_vendor_passthru_get [0.081617s] ... ok GET: /v1/chassis?detail=False&fields=description {} GOT:{u'chassis': [{u'description': u'data-center-1-chassis', u'links': [{u'href': u'http://localhost/v1/chassis/e74c40e0-d825-11e2-a28f-0800200c9a66', u'rel': u'self'}, {u'href': u'http://localhost/chassis/e74c40e0-d825-11e2-a28f-0800200c9a66', u'rel': u'bookmark'}]}]} {25} ironic.tests.unit.api.controllers.v1.test_chassis.TestListChassis.test_detail_using_query_false_and_fields [0.056918s] ... ok {0} ironic.tests.unit.drivers.modules.test_console_utils.ConsoleUtilsTestCase.test__ensure_console_pid_dir_exists [0.016459s] ... ok GET: /v1/nodes?driver=test {} GOT:{u'nodes': []} {15} ironic.tests.unit.api.controllers.v1.test_node.TestListNodes.test_get_nodes_by_invalid_driver [0.109307s] ... ok POST: /v1/events {'events': [{'status': 'ACTIVE', 'binding:host_id': '22222222-aaaa-bbbb-cccc-555555555555', 'binding:vnic_type': 'baremetal', 'mac_address': 'de:ad:ca:fe:ba:be', 'port_id': '11111111-aaaa-bbbb-cccc-555555555555', 'event': 'network.bind_port', 'device_id': '22222222-aaaa-bbbb-cccc-555555555555'}]} GOT:Response: 204 No Content Openstack-Request-Id: req-46efb9aa-18ee-419a-adaa-bb2466773fdf X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {7} ironic.tests.unit.api.controllers.v1.test_event.TestPost.test_network_bind_port_events [0.048983s] ... ok {0} ironic.tests.unit.drivers.modules.test_deploy_utils.AgentMethodsTestCase.test_agent_get_clean_steps [0.063547s] ... ok GET: /v1/nodes?resource_class=test {} GOT:{u'nodes': []} {15} ironic.tests.unit.api.controllers.v1.test_node.TestListNodes.test_get_nodes_by_invalid_resource_class [0.109695s] ... ok {0} ironic.tests.unit.drivers.modules.test_deploy_utils.GetPxeBootConfigTestCase.test_get_pxe_config_template_emtpy_property [0.013700s] ... ok {0} ironic.tests.unit.drivers.modules.test_deploy_utils.InstanceInfoTestCase.test__check_disk_layout_unchanged_fails [0.019477s] ... ok GET: /v1/nodes/detail?sort_key=resource_class {} GOT:Response: 406 Not Acceptable Content-Type: application/json Openstack-Request-Id: req-6e2dbee9-6af9-47d8-83b3-f18616b8fade X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.20 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Request not acceptable.\"}"} {5} ironic.tests.unit.api.controllers.v1.test_node.TestListNodes.test_detail_sort_key_not_allowed [0.055358s] ... ok DELETE: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/maintenance GOT:Response: 202 Accepted Openstack-Request-Id: req-e6246563-ffc3-4446-8398-6ac605f210f3 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {1} ironic.tests.unit.api.controllers.v1.test_node.TestDelete.test_delete_node_maintenance_mode [0.063029s] ... ok {0} ironic.tests.unit.drivers.modules.test_deploy_utils.OtherFunctionTestCase.test_get_boot_option [0.020633s] ... ok POST: /v1/deploy_templates {'extra': {}, 'steps': [{'priority': 10, 'interface': 'raid', 'step': 'create_configuration', 'args': {'logical_disks': []}}], 'uuid': '0ec188b9-aea4-4ded-9c7c-119922c9f7d7', 'name': 42} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-63781915-cb47-408e-9d0c-1b5cfdd532b5 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Invalid input for field/attribute name. Value: '42'. Wrong type. Expected '', got ''\"}"} {29} ironic.tests.unit.api.controllers.v1.test_deploy_template.TestPost.test_create_invalid_field_name [0.047351s] ... ok {0} ironic.tests.unit.drivers.modules.test_deploy_utils.OtherFunctionTestCase.test_set_failed_state_collect_deploy_logs_never [0.090118s] ... ok GET: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/management/boot_device/supported {} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-ec3fbf83-0b2b-489b-87a4-6887519b84c8 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Driver test-driver does not support management (disabled or not implemented).\"}"} GET: /v1/conductors/rocky.rocks {} GOT:{u'links': [{u'href': u'http://localhost/v1/conductors/rocky.rocks', u'rel': u'self'}, {u'href': u'http://localhost/conductors/rocky.rocks', u'rel': u'bookmark'}], u'created_at': u'2000-01-01T00:00:00+00:00', u'hostname': u'rocky.rocks', u'conductor_group': u'', u'updated_at': u'2000-01-01T00:00:00+00:00', u'alive': False, u'drivers': [u'fake-driver', u'null-driver']} {12} ironic.tests.unit.api.controllers.v1.test_node.TestListNodes.test_get_supported_boot_devices_iface_not_supported [0.085915s] ... ok {16} ironic.tests.unit.api.controllers.v1.test_conductor.TestListConductors.test_get_one_conductor_offline [0.065064s] ... ok DELETE: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123 GOT:Response: 409 Conflict Content-Type: application/json Openstack-Request-Id: req-df1fe548-bbb3-4c93-9946-86685a9148fa X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Node 1be26c0b-03f2-4d2e-ae87-c02d7f33c123 is associated with instance aaaaaaaa-1111-bbbb-2222-cccccccccccc.\"}"} {18} ironic.tests.unit.api.controllers.v1.test_node.TestDelete.test_delete_associated [0.091892s] ... ok POST: /v1/events {'events': [{'event': 'valid.event1'}, {'event': 'valid.event2'}, {'event': 'valid.event3'}]} GOT:Response: 204 No Content Openstack-Request-Id: req-ceb99acd-a066-495c-b255-e21e3feb5909 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {21} ironic.tests.unit.api.controllers.v1.test_event.TestPost.test_multiple_events [0.050823s] ... ok GET: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states/console {} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-971d9f45-9410-48a3-924a-b386f19e6b84 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Driver test-driver does not support console (disabled or not implemented).\"}"} {27} ironic.tests.unit.api.controllers.v1.test_node.TestListNodes.test_get_console_information_not_supported [0.113887s] ... ok POST: /v1/deploy_templates {'extra': {}, 'steps': {}, 'uuid': '69614621-323c-42da-aeed-db0bcc257512', 'name': u'CUSTOM_DT1'} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-d4365520-8207-4bd8-982d-3cfe81cfe465 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Invalid input for field/attribute template. Value: '{'steps': {}, 'uuid': '69614621-323c-42da-aeed-db0bcc257512', 'name': 'CUSTOM_DT1', 'extra': {}}'. Value not a valid list: {}\"}"} {4} ironic.tests.unit.api.controllers.v1.test_deploy_template.TestPost.test_create_invalid_field_steps [0.048674s] ... ok GET: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/management/boot_device/supported {} GOT:{u'supported_boot_devices': [u'pxe']} {18} ironic.tests.unit.api.controllers.v1.test_node.TestListNodes.test_get_supported_boot_devices [0.082077s] ... ok {0} ironic.tests.unit.drivers.modules.test_deploy_utils.OtherFunctionTestCase.test_set_failed_state_no_poweroff [0.263475s] ... ok {0} ironic.tests.unit.drivers.modules.test_deploy_utils.ParseInstanceInfoCapabilitiesTestCase.test_is_secure_boot_requested_true [0.009803s] ... ok {0} ironic.tests.unit.drivers.modules.test_deploy_utils.SwitchPxeConfigTestCase.test_switch_pxe_config_partition_image [0.022041s] ... ok GET: /v1/nodes/ports {} GOT:Response: 404 Not Found Content-Type: application/json Openstack-Request-Id: req-a15348f7-4ced-4c65-87f6-63a7efb3e04b X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Node ports could not be found.\"}"} {5} ironic.tests.unit.api.controllers.v1.test_node.TestListNodes.test_ports_subresource_noid [0.073258s] ... ok {0} ironic.tests.unit.drivers.modules.test_deploy_utils.SwitchPxeConfigTestCase.test_switch_uefi_ipxe_config_whole_disk_image [0.020238s] ... ok POST: /v1/drivers/fake-hardware-type/vendor_passthru/do_test {'test_key': 'test_value'} GOT:Response: 200 OK Content-Type: application/json Openstack-Request-Id: req-b2e5e3ba-fa2a-4a94-a5d2-c4b5f41181eb X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"return_key": "return_value"} {29} ironic.tests.unit.api.controllers.v1.test_driver.TestListDrivers.test_driver_vendor_passthru_sync [0.090210s] ... ok {0} ironic.tests.unit.drivers.modules.test_image_cache.TestUpdateImages.test__delete_dest_path_if_stale_out_of_date [0.010856s] ... ok {0} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolCheckInitTestCase.test_power_init_calls_raises_2 [0.013626s] ... ok PATCH: /v1/deploy_templates/30e598e2-3b09-4b8e-84d9-a0116e49c59c [{'path': '/steps/1', 'value': {'interface': 'bios', 'priority': 42, 'step': 'apply_configuration', 'args': {'foo': 'bar'}}, 'op': 'replace'}] GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-d9078e6c-8129-4e12-bfba-dd8dc2b8836f X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Couldn't apply patch '{'path': '/steps/1', 'value': {'interface': 'bios', 'priority': 42, 'step': 'apply_configuration', 'args': {'foo': 'bar'}}, 'op': 'replace'}'. Reason: list assignment index out of range\"}"} {22} ironic.tests.unit.api.controllers.v1.test_deploy_template.TestPatch.test_replace_non_existent_step_fail [0.074805s] ... ok GET: /v1/drivers?type=dynamic {} GOT:{u'drivers': [{u'hosts': [u'fake-host1', u'fake-host2'], u'type': u'dynamic', u'name': u'fake-hardware-type', u'links': [{u'href': u'http://localhost/v1/drivers/fake-hardware-type', u'rel': u'self'}, {u'href': u'http://localhost/drivers/fake-hardware-type', u'rel': u'bookmark'}], u'properties': [{u'href': u'http://localhost/v1/drivers/fake-hardware-type/properties', u'rel': u'self'}, {u'href': u'http://localhost/drivers/fake-hardware-type/properties', u'rel': u'bookmark'}]}, {u'hosts': [u'fake-host1'], u'type': u'dynamic', u'name': u'fake-hardware-type-2', u'links': [{u'href': u'http://localhost/v1/drivers/fake-hardware-type-2', u'rel': u'self'}, {u'href': u'http://localhost/drivers/fake-hardware-type-2', u'rel': u'bookmark'}], u'properties': [{u'href': u'http://localhost/v1/drivers/fake-hardware-type-2/properties', u'rel': u'self'}, {u'href': u'http://localhost/drivers/fake-hardware-type-2/properties', u'rel': u'bookmark'}]}]} {13} ironic.tests.unit.api.controllers.v1.test_driver.TestListDrivers.test_drivers_type_filter_dynamic [0.078723s] ... ok {0} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolCheckInitTestCase.test_vendor_passthru_init_calls_already_checked [0.012978s] ... ok {13} ironic.tests.unit.api.controllers.v1.test_node.TestCheckCleanSteps.test__check_clean_steps_step_interface_value_invalid [0.026210s] ... ok GET: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123?fields=traits {} GOT:{u'traits': [], u'links': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'bookmark'}]} {12} ironic.tests.unit.api.controllers.v1.test_node.TestListNodes.test_get_traits_fields [0.096354s] ... ok {0} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolCheckOptionSupportedTestCase.test_check_single_bridge_fail [0.012532s] ... ok PATCH: /v1/deploy_templates/c46ed2e5-da51-4185-8a91-ea97791a0fb7 [{'path': '/name', 'value': 'CUSTOM_DT2', 'op': 'add'}] GOT:Response: 200 OK Content-Type: application/json Openstack-Request-Id: req-b29741eb-277b-4d97-8579-eeff361545a9 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"uuid": "c46ed2e5-da51-4185-8a91-ea97791a0fb7", "links": [{"href": "http://localhost/v1/deploy_templates/c46ed2e5-da51-4185-8a91-ea97791a0fb7", "rel": "self"}, {"href": "http://localhost/deploy_templates/c46ed2e5-da51-4185-8a91-ea97791a0fb7", "rel": "bookmark"}], "extra": {}, "created_at": "2019-06-06T07:02:14.766469+00:00", "updated_at": null, "steps": [{"interface": "raid", "priority": 10, "step": "create_configuration", "args": {"logical_disks": []}}], "name": "CUSTOM_DT2"} {28} ironic.tests.unit.api.controllers.v1.test_deploy_template.TestPatch.test_update_by_id [0.073166s] ... ok POST: /v1/chassis {'uuid': 'e74c40e0-d825-11e2-a28f-0800200c9a66', 'description': 1334, 'extra': {}} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-fbb7f0f1-5615-42f1-a72b-2f360a6afb33 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Invalid input for field/attribute description. Value: '1334'. Value should be string\"}"} {0} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolDriverTestCase.test_set_power_on_timeout_ok [0.065344s] ... ok {25} ironic.tests.unit.api.controllers.v1.test_chassis.TestPost.test_create_chassis_invalid_description [0.047704s] ... ok POST: /v1/events {'events': [{'status': 'ACTIVE', 'binding:host_id': '22222222-aaaa-bbbb-cccc-555555555555', 'binding:vnic_type': 'baremetal', 'mac_address': 'de:ad:ca:fe:ba:be', 'port_id': '11111111-aaaa-bbbb-cccc-555555555555', 'event': 'network.delete_port', 'device_id': '22222222-aaaa-bbbb-cccc-555555555555'}]} GOT:Response: 204 No Content Openstack-Request-Id: req-da4639d5-e8f0-4ec3-acd0-b37f291e4d91 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {7} ironic.tests.unit.api.controllers.v1.test_event.TestPost.test_network_delete_port_events [0.047341s] ... ok {0} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolDriverTestCase.test_vendor_passthru_vendor_routes [0.049801s] ... ok {0} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolPrivateMethodTestCase.test__parse_driver_info_have_credentials [0.025477s] ... ok {0} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolPrivateMethodTestCase.test__parse_driver_info_invalid_ipmi_port [0.023188s] ... ok GET: /v1/chassis/d71d025d-db27-47a7-959c-7475ef5536a6 {} GOT:{u'uuid': u'd71d025d-db27-47a7-959c-7475ef5536a6', u'links': [{u'href': u'http://foo/v1/chassis/d71d025d-db27-47a7-959c-7475ef5536a6', u'rel': u'self'}, {u'href': u'http://foo/chassis/d71d025d-db27-47a7-959c-7475ef5536a6', u'rel': u'bookmark'}], u'extra': {}, u'created_at': u'2019-06-06T07:02:14.574703+00:00', u'updated_at': None, u'nodes': [{u'href': u'http://foo/v1/chassis/d71d025d-db27-47a7-959c-7475ef5536a6/nodes', u'rel': u'self'}, {u'href': u'http://foo/chassis/d71d025d-db27-47a7-959c-7475ef5536a6/nodes', u'rel': u'bookmark'}], u'description': u'data-center-1-chassis'} GET: /v1/chassis/d71d025d-db27-47a7-959c-7475ef5536a6 {} GOT:{u'uuid': u'd71d025d-db27-47a7-959c-7475ef5536a6', u'links': [{u'href': u'http://foo/v1/chassis/d71d025d-db27-47a7-959c-7475ef5536a6', u'rel': u'self'}, {u'href': u'http://foo/chassis/d71d025d-db27-47a7-959c-7475ef5536a6', u'rel': u'bookmark'}], u'extra': {}, u'created_at': u'2019-06-06T07:02:14.574703+00:00', u'updated_at': None, u'nodes': [{u'href': u'http://foo/v1/chassis/d71d025d-db27-47a7-959c-7475ef5536a6/nodes', u'rel': u'self'}, {u'href': u'http://foo/chassis/d71d025d-db27-47a7-959c-7475ef5536a6/nodes', u'rel': u'bookmark'}], u'description': u'data-center-1-chassis'} GET: /chassis/d71d025d-db27-47a7-959c-7475ef5536a6 {} GOT:{u'uuid': u'd71d025d-db27-47a7-959c-7475ef5536a6', u'links': [{u'href': u'http://foo/v1/chassis/d71d025d-db27-47a7-959c-7475ef5536a6', u'rel': u'self'}, {u'href': u'http://foo/chassis/d71d025d-db27-47a7-959c-7475ef5536a6', u'rel': u'bookmark'}], u'extra': {}, u'created_at': u'2019-06-06T07:02:14.574703+00:00', u'updated_at': None, u'nodes': [{u'href': u'http://foo/v1/chassis/d71d025d-db27-47a7-959c-7475ef5536a6/nodes', u'rel': u'self'}, {u'href': u'http://foo/chassis/d71d025d-db27-47a7-959c-7475ef5536a6/nodes', u'rel': u'bookmark'}], u'description': u'data-center-1-chassis'} {14} ironic.tests.unit.api.controllers.v1.test_chassis.TestListChassis.test_links_public_url [0.083971s] ... ok GET: /v1/conductors {} GOT:{u'conductors': [{u'hostname': u'd2dfa642-35fe-4fb7-9921-61128906deb8', u'conductor_group': u'', u'alive': True, u'links': [{u'href': u'http://localhost/v1/conductors/d2dfa642-35fe-4fb7-9921-61128906deb8', u'rel': u'self'}, {u'href': u'http://localhost/conductors/d2dfa642-35fe-4fb7-9921-61128906deb8', u'rel': u'bookmark'}]}, {u'hostname': u'326d5b99-f7c7-4c4f-a06e-4966d3793489', u'conductor_group': u'', u'alive': True, u'links': [{u'href': u'http://localhost/v1/conductors/326d5b99-f7c7-4c4f-a06e-4966d3793489', u'rel': u'self'}, {u'href': u'http://localhost/conductors/326d5b99-f7c7-4c4f-a06e-4966d3793489', u'rel': u'bookmark'}]}, {u'hostname': u'a31561e3-9799-4697-8084-5a3443a468e1', u'conductor_group': u'', u'alive': True, u'links': [{u'href': u'http://localhost/v1/conductors/a31561e3-9799-4697-8084-5a3443a468e1', u'rel': u'self'}, {u'href': u'http://localhost/conductors/a31561e3-9799-4697-8084-5a3443a468e1', u'rel': u'bookmark'}]}], u'next': u'http://localhost/v1/conductors?sort_key=id&sort_dir=asc&limit=3&marker=a31561e3-9799-4697-8084-5a3443a468e1'} {20} ironic.tests.unit.api.controllers.v1.test_conductor.TestListConductors.test_collection_links_default_limit [0.093837s] ... ok PATCH: /v1/nodes/node-57.1 [{'path': '/instance_uuid', 'value': 'aaaaaaaa-1111-bbbb-2222-cccccccccccc', 'op': 'replace'}] GOT:Response: 200 OK Content-Type: application/json Openstack-Request-Id: req-b2be4952-cbe3-43b6-b9a1-9a637c650cd0 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.5 {"target_power_state": null, "links": [{"href": "http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "rel": "self"}, {"href": "http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "rel": "bookmark"}], "target_provision_state": null, "last_error": null, "updated_at": "2013-12-03T06:20:41.184720+00:00", "maintenance_reason": null, "provision_state": "available", "uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "console_enabled": false, "extra": {}, "provision_updated_at": null, "maintenance": false, "power_state": null, "driver": "fake-hardware", "reservation": null, "properties": {"memory_mb": "4096", "cpu_arch": "x86_64", "local_gb": "10", "cpus": "8"}, "instance_uuid": null, "name": "node-57.1", "driver_info": {"fake_password": "******", "foo": "bar"}, "created_at": "2019-06-06T07:02:15.023874+00:00", "instance_info": {"foo": "bar", "image_url": "******", "configdrive": "******"}, "driver_internal_info": {"private_state": "secret value"}, "chassis_uuid": "e74c40e0-d825-11e2-a28f-0800200c9a66", "ports": [{"href": "http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports", "rel": "self"}, {"href": "http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports", "rel": "bookmark"}]} {17} ironic.tests.unit.api.controllers.v1.test_node.TestPatch.test_update_ok_by_name [0.115577s] ... ok DELETE: /v1/nodes/foo/maintenance GOT:Response: 202 Accepted Openstack-Request-Id: req-7de9f41e-08e4-462f-815c-9789b2fe1eed X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.5 {13} ironic.tests.unit.api.controllers.v1.test_node.TestDelete.test_delete_node_maintenance_mode_by_name [0.062030s] ... ok GET: /v1/nodes?conductor_group=group1 {} GOT:Response: 406 Not Acceptable Content-Type: application/json Openstack-Request-Id: req-8bfe2e02-a42c-48a3-8daa-e7835d453dfd X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.45 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Request not acceptable. The minimal required API version should be 1.46\"}"} GET: /v1/nodes/detail?conductor_group=group1 {} GOT:Response: 406 Not Acceptable Content-Type: application/json Openstack-Request-Id: req-45f73c69-6a1f-4a72-9286-28194242c45e X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.45 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Request not acceptable. The minimal required API version should be 1.46\"}"} {24} ironic.tests.unit.api.controllers.v1.test_node.TestListNodes.test_get_nodes_by_conductor_group_not_allowed [0.087280s] ... ok {0} ironic.tests.unit.drivers.modules.test_iscsi_deploy.ISCSIDeployTestCase.test_prepare_node_deploying_with_smartnic_port [0.115966s] ... ok GET: /v1/nodes?associated=true&maintenance=blah {} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-8ca87355-be92-483d-b956-205ee778d8bd X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Invalid input for field/attribute maintenance. Value: 'blah'. unable to convert to boolean. Error: Unrecognized value 'blah', acceptable values are: '0', '1', 'f', 'false', 'n', 'no', 'off', 'on', 't', 'true', 'y', 'yes'\"}"} {15} ironic.tests.unit.api.controllers.v1.test_node.TestListNodes.test_maintenance_nodes_error [0.058474s] ... ok POST: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/vifs {'bad_id': '1d272016-0090-44d1-853f-2385775b871e'} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-92b38815-fb18-477e-a3b6-292f30917efa X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.28 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Missing mandatory keys: id\"}"} {21} ironic.tests.unit.api.controllers.v1.test_node.TestAttachDetachVif.test_vif_attach_no_vif_id [0.060350s] ... ok GET: /v1/nodes?maintenance=true {} GOT:{u'nodes': [{u'instance_uuid': None, u'maintenance': True, u'links': [{u'href': u'http://localhost/v1/nodes/43601a1e-1d2e-40b6-9537-e62df20a5469', u'rel': u'self'}, {u'href': u'http://localhost/nodes/43601a1e-1d2e-40b6-9537-e62df20a5469', u'rel': u'bookmark'}], u'power_state': None, u'provision_state': None, u'uuid': u'43601a1e-1d2e-40b6-9537-e62df20a5469'}, {u'instance_uuid': None, u'maintenance': True, u'links': [{u'href': u'http://localhost/v1/nodes/161fb38e-b1ca-4ee0-b23c-258b90c92553', u'rel': u'self'}, {u'href': u'http://localhost/nodes/161fb38e-b1ca-4ee0-b23c-258b90c92553', u'rel': u'bookmark'}], u'power_state': None, u'provision_state': None, u'uuid': u'161fb38e-b1ca-4ee0-b23c-258b90c92553'}]} GET: /v1/nodes?maintenance=false {} GOT:{u'nodes': [{u'instance_uuid': None, u'maintenance': False, u'links': [{u'href': u'http://localhost/v1/nodes/38344c56-1648-473d-b123-677f72465e5b', u'rel': u'self'}, {u'href': u'http://localhost/nodes/38344c56-1648-473d-b123-677f72465e5b', u'rel': u'bookmark'}], u'power_state': None, u'provision_state': None, u'uuid': u'38344c56-1648-473d-b123-677f72465e5b'}, {u'instance_uuid': None, u'maintenance': False, u'links': [{u'href': u'http://localhost/v1/nodes/5f6d8246-82a5-4382-b443-cd9170827ee7', u'rel': u'self'}, {u'href': u'http://localhost/nodes/5f6d8246-82a5-4382-b443-cd9170827ee7', u'rel': u'bookmark'}], u'power_state': None, u'provision_state': None, u'uuid': u'5f6d8246-82a5-4382-b443-cd9170827ee7'}, {u'instance_uuid': None, u'maintenance': False, u'links': [{u'href': u'http://localhost/v1/nodes/6c7b5720-389c-4ddf-8639-777a19e874b9', u'rel': u'self'}, {u'href': u'http://localhost/nodes/6c7b5720-389c-4ddf-8639-777a19e874b9', u'rel': u'bookmark'}], u'power_state': None, u'provision_state': None, u'uuid': u'6c7b5720-389c-4ddf-8639-777a19e874b9'}]} {3} ironic.tests.unit.api.controllers.v1.test_node.TestListNodes.test_maintenance_nodes [0.264252s] ... ok GET: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123?fields=traits {} GOT:Response: 406 Not Acceptable Content-Type: application/json Openstack-Request-Id: req-a3794c74-f9da-4467-8add-a84e36fedd2b X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.36 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Request not acceptable.\"}"} {18} ironic.tests.unit.api.controllers.v1.test_node.TestListNodes.test_get_traits_fields_invalid_api_version [0.065032s] ... ok GET: /v1/nodes?sort_key=resource_class {} GOT:Response: 406 Not Acceptable Content-Type: application/json Openstack-Request-Id: req-ff3073d7-0c29-4dab-8eb1-4daba898b0b5 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.20 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Request not acceptable.\"}"} {5} ironic.tests.unit.api.controllers.v1.test_node.TestListNodes.test_sort_key_not_allowed [0.057032s] ... ok {0} ironic.tests.unit.drivers.modules.test_iscsi_deploy.ISCSIDeployTestCase.test_tear_down_with_smartnic_port [0.153501s] ... ok GET: /v1/nodes?provision_state=available {} GOT:{u'nodes': [{u'instance_uuid': None, u'maintenance': False, u'links': [{u'href': u'http://localhost/v1/nodes/f8f4391a-0af0-4cdb-9f7a-8c160499b1c5', u'rel': u'self'}, {u'href': u'http://localhost/nodes/f8f4391a-0af0-4cdb-9f7a-8c160499b1c5', u'rel': u'bookmark'}], u'name': None, u'power_state': None, u'provision_state': u'available', u'uuid': u'f8f4391a-0af0-4cdb-9f7a-8c160499b1c5'}]} GET: /v1/nodes?provision_state=deploying {} GOT:{u'nodes': [{u'instance_uuid': None, u'maintenance': False, u'links': [{u'href': u'http://localhost/v1/nodes/c087f1fe-9825-43bb-a08b-5aacaca726a8', u'rel': u'self'}, {u'href': u'http://localhost/nodes/c087f1fe-9825-43bb-a08b-5aacaca726a8', u'rel': u'bookmark'}], u'name': None, u'power_state': None, u'provision_state': u'deploying', u'uuid': u'c087f1fe-9825-43bb-a08b-5aacaca726a8'}]} {1} ironic.tests.unit.api.controllers.v1.test_node.TestListNodes.test_get_nodes_by_provision_state [0.224338s] ... ok {0} ironic.tests.unit.drivers.modules.test_iscsi_deploy.IscsiDeployMethodsTestCase.test_do_agent_iscsi_deploy_preserve_ephemeral [0.101726s] ... ok GET: /v1/deploy_templates?fields=uuid,steps {} GOT:{u'deploy_templates': [{u'steps': [{u'interface': u'raid', u'priority': 10, u'step': u'create_configuration', u'args': {u'logical_disks': []}}], u'uuid': u'09ce5eb2-f429-42af-bf46-03f727f54654', u'links': [{u'href': u'http://localhost/v1/deploy_templates/09ce5eb2-f429-42af-bf46-03f727f54654', u'rel': u'self'}, {u'href': u'http://localhost/deploy_templates/09ce5eb2-f429-42af-bf46-03f727f54654', u'rel': u'bookmark'}]}, {u'steps': [{u'interface': u'raid', u'priority': 10, u'step': u'create_configuration', u'args': {u'logical_disks': []}}], u'uuid': u'0e8afb6d-4596-4e39-abd0-a1f7e1029421', u'links': [{u'href': u'http://localhost/v1/deploy_templates/0e8afb6d-4596-4e39-abd0-a1f7e1029421', u'rel': u'self'}, {u'href': u'http://localhost/deploy_templates/0e8afb6d-4596-4e39-abd0-a1f7e1029421', u'rel': u'bookmark'}]}, {u'steps': [{u'interface': u'raid', u'priority': 10, u'step': u'create_configuration', u'args': {u'logical_disks': []}}], u'uuid': u'c662bc24-debd-4512-9d01-e53d54b39fd0', u'links': [{u'href': u'http://localhost/v1/deploy_templates/c662bc24-debd-4512-9d01-e53d54b39fd0', u'rel': u'self'}, {u'href': u'http://localhost/deploy_templates/c662bc24-debd-4512-9d01-e53d54b39fd0', u'rel': u'bookmark'}]}]} {31} ironic.tests.unit.api.controllers.v1.test_deploy_template.TestListDeployTemplates.test_get_collection_custom_fields [0.100270s] ... ok POST: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/vifs {'id': 'invalid%id^'} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-4cffc9aa-0872-4a80-a72b-54da876671c2 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.28 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Expected a logical name or UUID but received invalid%id^.\"}"} {28} ironic.tests.unit.api.controllers.v1.test_node.TestAttachDetachVif.test_vif_attach_invalid_vif_id [0.065538s] ... ok POST: /v1/deploy_templates {'extra': {}, 'steps': [{'priority': 10, 'interface': 'raid', 'step': 'create_configuration', 'args': {'logical_disks': []}}], 'uuid': '7fd2565d-c1fa-4ed6-8e88-8bd390eb9cdc', 'name': u'CUSTOM_DT1'} GOT:Response: 201 Created Content-Type: application/json Location: http://localhost/v1/deploy_templates/7fd2565d-c1fa-4ed6-8e88-8bd390eb9cdc Openstack-Request-Id: req-345765bd-d978-42aa-b3d1-f457ca4f0faf X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"uuid": "7fd2565d-c1fa-4ed6-8e88-8bd390eb9cdc", "links": [{"href": "http://localhost/v1/deploy_templates/7fd2565d-c1fa-4ed6-8e88-8bd390eb9cdc", "rel": "self"}, {"href": "http://localhost/deploy_templates/7fd2565d-c1fa-4ed6-8e88-8bd390eb9cdc", "rel": "bookmark"}], "extra": {}, "created_at": "2000-01-01T00:00:00+00:00", "updated_at": null, "steps": [{"interface": "raid", "priority": 10, "step": "create_configuration", "args": {"logical_disks": []}}], "name": "CUSTOM_DT1"} GET: /v1/deploy_templates/7fd2565d-c1fa-4ed6-8e88-8bd390eb9cdc {} GOT:{u'uuid': u'7fd2565d-c1fa-4ed6-8e88-8bd390eb9cdc', u'links': [{u'href': u'http://localhost/v1/deploy_templates/7fd2565d-c1fa-4ed6-8e88-8bd390eb9cdc', u'rel': u'self'}, {u'href': u'http://localhost/deploy_templates/7fd2565d-c1fa-4ed6-8e88-8bd390eb9cdc', u'rel': u'bookmark'}], u'extra': {}, u'created_at': u'2000-01-01T00:00:00+00:00', u'updated_at': None, u'steps': [{u'interface': u'raid', u'priority': 10, u'step': u'create_configuration', u'args': {u'logical_disks': []}}], u'name': u'CUSTOM_DT1'} {19} ironic.tests.unit.api.controllers.v1.test_deploy_template.TestPost.test_create [0.081441s] ... ok POST: /v1/deploy_templates {'extra': {}, 'steps': [{'interface': 'raid', 'step': 'create_configuration', 'args': {'logical_disks': []}}], 'uuid': 'a3924f45-77c8-487b-bcb9-fd9877c9f2dd', 'name': u'CUSTOM_DT1'} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-40213c24-4f58-4655-9d88-775764a0922c X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Invalid input for field/attribute priority. Value: 'None'. Mandatory field missing.\"}"} PATCH: /v1/chassis/e8c22113-d4fd-47e6-a7d0-2ab440ea830c [{'path': '/description', 'op': 'remove'}] GOT:Response: 200 OK Content-Type: application/json Openstack-Request-Id: req-b9167424-9c45-442f-8b40-f774bcbbe977 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"uuid": "e8c22113-d4fd-47e6-a7d0-2ab440ea830c", "links": [{"href": "http://localhost/v1/chassis/e8c22113-d4fd-47e6-a7d0-2ab440ea830c", "rel": "self"}, {"href": "http://localhost/chassis/e8c22113-d4fd-47e6-a7d0-2ab440ea830c", "rel": "bookmark"}], "extra": {"a": "b"}, "created_at": "2019-06-06T07:02:14.347335+00:00", "updated_at": "2019-06-06T07:02:14.374702+00:00", "nodes": [{"href": "http://localhost/v1/chassis/e8c22113-d4fd-47e6-a7d0-2ab440ea830c/nodes", "rel": "self"}, {"href": "http://localhost/chassis/e8c22113-d4fd-47e6-a7d0-2ab440ea830c/nodes", "rel": "bookmark"}], "description": null} GET: /v1/chassis/e8c22113-d4fd-47e6-a7d0-2ab440ea830c {} GOT:{u'uuid': u'e8c22113-d4fd-47e6-a7d0-2ab440ea830c', u'links': [{u'href': u'http://localhost/v1/chassis/e8c22113-d4fd-47e6-a7d0-2ab440ea830c', u'rel': u'self'}, {u'href': u'http://localhost/chassis/e8c22113-d4fd-47e6-a7d0-2ab440ea830c', u'rel': u'bookmark'}], u'extra': {u'a': u'b'}, u'created_at': u'2019-06-06T07:02:14.347335+00:00', u'updated_at': u'2019-06-06T07:02:14.374702+00:00', u'nodes': [{u'href': u'http://localhost/v1/chassis/e8c22113-d4fd-47e6-a7d0-2ab440ea830c/nodes', u'rel': u'self'}, {u'href': u'http://localhost/chassis/e8c22113-d4fd-47e6-a7d0-2ab440ea830c/nodes', u'rel': u'bookmark'}], u'description': None} {10} ironic.tests.unit.api.controllers.v1.test_chassis.TestPatch.test_remove_singular [0.081039s] ... ok {4} ironic.tests.unit.api.controllers.v1.test_deploy_template.TestPost.test_create_no_mandatory_step_field_priority [0.048089s] ... ok POST: /v1/deploy_templates {'extra': {}, 'steps': [{'priority': 10, 'interface': 'raid', 'step': 'create_configuration', 'args': {'logical_disks': []}, 'foo': 'bar'}], 'uuid': 'fe99da0f-643b-4e77-9ebe-6430f035f4de', 'name': u'CUSTOM_DT1'} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-65703914-5738-448f-8f85-6f2076805556 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Unknown attribute for argument template.steps: foo\"}"} {22} ironic.tests.unit.api.controllers.v1.test_deploy_template.TestPost.test_create_invalid_step_field_foo [0.047953s] ... ok PATCH: /v1/deploy_templates/aa941cb3-b922-4874-9e0a-c216a51c0e8d [{'path': '/name', 'value': None, 'op': 'replace'}] GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-e552e63f-cb0a-4a74-bf5f-8272eaa3cb9a X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Deploy template invalid: Deploy template name cannot be None.\"}"} {14} ironic.tests.unit.api.controllers.v1.test_deploy_template.TestPatch.test_replace_invalid_name_none [0.082222s] ... ok GET: /v1/nodes?fault=power failure {} GOT:Response: 406 Not Acceptable Content-Type: application/json Openstack-Request-Id: req-8f3cab8e-a4d1-4d24-8c42-6eb9844f4f40 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.41 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Request not acceptable. The minimal required API version should be 1.42\"}"} GET: /v1/nodes/detail?fault=power failure {} GOT:Response: 406 Not Acceptable Content-Type: application/json Openstack-Request-Id: req-65726cb6-d62d-4a66-a936-9e9893a1fc9d X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.41 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Request not acceptable. The minimal required API version should be 1.42\"}"} {27} ironic.tests.unit.api.controllers.v1.test_node.TestListNodes.test_get_nodes_by_fault_not_allowed [0.062441s] ... ok PATCH: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123 [{'path': '/uuid', 'op': 'remove'}] GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-ae76e0c6-c37b-4ba6-b905-50878b55c111 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"'/uuid' is an internal attribute and can not be updated\"}"} {5} ironic.tests.unit.api.controllers.v1.test_node.TestPatch.test_remove_uuid [0.079744s] ... ok PATCH: /v1/nodes/520c9bd4-5d91-4de0-baff-c8a275c8e42c [{'path': '/extra/foo', 'value': 'bar', 'op': 'add'}] GOT:Response: 409 Conflict Content-Type: application/json Openstack-Request-Id: req-56ee40ee-4a74-4d7c-9e83-5df71e62c4e4 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Node 520c9bd4-5d91-4de0-baff-c8a275c8e42c can not be updated while a state transition is in progress.\"}"} {21} ironic.tests.unit.api.controllers.v1.test_node.TestPatch.test_add_state_in_cleaning [0.102523s] ... ok GET: /v1/nodes/detail?traits=CUSTOM_TRAIT_1 {} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-4aa6090b-b6a5-4e73-a97b-a3b4df4222a5 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Unknown argument: \\\"traits\\\"\"}"} {1} ironic.tests.unit.api.controllers.v1.test_node.TestListNodes.test_get_nodes_by_traits_not_allowed_detail [0.054249s] ... ok GET: /v1/conductors/rocky.rocks {} GOT:{u'links': [{u'href': u'http://foo/v1/conductors/rocky.rocks', u'rel': u'self'}, {u'href': u'http://foo/conductors/rocky.rocks', u'rel': u'bookmark'}], u'created_at': u'2019-06-06T07:02:14.568414+00:00', u'hostname': u'rocky.rocks', u'conductor_group': u'', u'updated_at': u'2019-06-06T07:02:14.567764+00:00', u'alive': True, u'drivers': [u'fake-driver', u'null-driver']} GET: /v1/conductors/rocky.rocks {} GOT:{u'links': [{u'href': u'http://foo/v1/conductors/rocky.rocks', u'rel': u'self'}, {u'href': u'http://foo/conductors/rocky.rocks', u'rel': u'bookmark'}], u'created_at': u'2019-06-06T07:02:14.568414+00:00', u'hostname': u'rocky.rocks', u'conductor_group': u'', u'updated_at': u'2019-06-06T07:02:14.567764+00:00', u'alive': True, u'drivers': [u'fake-driver', u'null-driver']} GET: /conductors/rocky.rocks {} GOT:{u'links': [{u'href': u'http://foo/v1/conductors/rocky.rocks', u'rel': u'self'}, {u'href': u'http://foo/conductors/rocky.rocks', u'rel': u'bookmark'}], u'created_at': u'2019-06-06T07:02:14.568414+00:00', u'hostname': u'rocky.rocks', u'conductor_group': u'', u'updated_at': u'2019-06-06T07:02:14.567764+00:00', u'alive': True, u'drivers': [u'fake-driver', u'null-driver']} {16} ironic.tests.unit.api.controllers.v1.test_conductor.TestListConductors.test_links_public_url [0.083486s] ... ok {0} ironic.tests.unit.drivers.modules.test_pxe.PXEBootTestCase.test_prepare_ramdisk_set_default_boot_mode_on_ironic_uefi [0.699064s] ... ok GET: /v1/drivers?detail=False {} GOT:Response: 406 Not Acceptable Content-Type: application/json Openstack-Request-Id: req-668c0f6c-80d0-47c1-97bb-7c04973682c5 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.29 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Request not acceptable. The minimal required API version should be 1.30\"}"} {19} ironic.tests.unit.api.controllers.v1.test_driver.TestListDrivers.test_drivers_detail_bad_version_false [0.048700s] ... ok GET: /v1/conductors?detail=true {} GOT:{u'conductors': [{u'links': [{u'href': u'http://localhost/v1/conductors/why care', u'rel': u'self'}, {u'href': u'http://localhost/conductors/why care', u'rel': u'bookmark'}], u'created_at': u'2019-06-06T07:02:14.515990+00:00', u'hostname': u'why care', u'conductor_group': u'', u'updated_at': u'2019-06-06T07:02:14.515387+00:00', u'alive': True, u'drivers': [u'fake-driver', u'null-driver']}, {u'links': [{u'href': u'http://localhost/v1/conductors/why not', u'rel': u'self'}, {u'href': u'http://localhost/conductors/why not', u'rel': u'bookmark'}], u'created_at': u'2019-06-06T07:02:14.521320+00:00', u'hostname': u'why not', u'conductor_group': u'', u'updated_at': u'2019-06-06T07:02:14.520757+00:00', u'alive': True, u'drivers': [u'fake-driver', u'null-driver']}]} {20} ironic.tests.unit.api.controllers.v1.test_conductor.TestListConductors.test_list_with_detail [0.066349s] ... ok {0} ironic.tests.unit.drivers.modules.test_snmp.SNMPClientTestCase.test_get_err_transport [0.026759s] ... ok GET: /v1/drivers/nope {} GOT:Response: 404 Not Found Content-Type: application/json Openstack-Request-Id: req-e00ad74c-46d4-4064-8160-429faa14cd8e X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Could not find the following driver(s) or hardware type(s): nope.\"}"} {22} ironic.tests.unit.api.controllers.v1.test_driver.TestListDrivers.test_drivers_get_one_not_found [0.056186s] ... ok POST: /v1/deploy_templates {'extra': {}, 'steps': [{'priority': 10, 'interface': 'raid', 'step': 'create_configuration', 'args': {'logical_disks': []}}], 'uuid': '454d07be-e285-4842-ba37-66530f0b064f', 'name': u'CUSTOM_DT1'} GOT:Response: 405 Method Not Allowed Content-Type: application/json {"error_message": "{\"code\": 405, \"description\": \"The API version does not allow deploy templates\", \"title\": \"Method Not Allowed\"}"} {14} ironic.tests.unit.api.controllers.v1.test_deploy_template.TestPost.test_create_invalid_api_version [0.033645s] ... ok {0} ironic.tests.unit.drivers.modules.test_snmp.SNMPDeviceDriverTestCase.test_apc_masterswitchplus_power_reset [0.020398s] ... ok POST: /v1/drivers/fake-hardware-type/vendor_passthru {'test_key': 'test_value'} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-8ef175c0-f9b3-44b5-bfef-9ebae1fb43c5 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Missing argument: \\\"method\\\"\"}"} {4} ironic.tests.unit.api.controllers.v1.test_driver.TestListDrivers.test_driver_vendor_passthru_method_not_found [0.051995s] ... ok {0} ironic.tests.unit.drivers.modules.test_snmp.SNMPDeviceDriverTestCase.test_apc_power_on [0.017072s] ... ok GET: /v1/nodes?provision_state=test {} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-1b9baf83-56aa-4bae-b883-2b4f4a8a33f0 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.9 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Provision state \\\"test\\\" is not valid\"}"} {27} ironic.tests.unit.api.controllers.v1.test_node.TestListNodes.test_get_nodes_by_invalid_provision_state [0.055263s] ... ok {0} ironic.tests.unit.drivers.modules.test_snmp.SNMPDeviceDriverTestCase.test_baytech_mrp27_power_off [0.017154s] ... ok {0} ironic.tests.unit.drivers.modules.test_snmp.SNMPDeviceDriverTestCase.test_power_off [0.016932s] ... ok {0} ironic.tests.unit.drivers.modules.test_snmp.SNMPDeviceDriverTestCase.test_power_state_on [0.017031s] ... ok {0} ironic.tests.unit.drivers.modules.test_snmp.SNMPValidateParametersTestCase.test__parse_driver_info_snmp_v3_auth_nokey [0.015017s] ... ok POST: /v1/events {'events': [{'status': 'ACTIVE', 'binding:host_id': ['binding:host_id', 'IS', 'NODE_UUID', 'IN', 'IRONIC'], 'binding:vnic_type': 'baremetal', 'mac_address': 'de:ad:ca:fe:ba:be', 'port_id': '11111111-aaaa-bbbb-cccc-555555555555', 'event': 'network.bind_port', 'device_id': '22222222-aaaa-bbbb-cccc-555555555555'}]} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-e278c4b2-893e-48cb-b39a-78513105de7a X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Invalid input for field/attribute events. Value: '[{'status': 'ACTIVE', 'binding:host_id': ['binding:host_id', 'IS', 'NODE_UUID', 'IN', 'IRONIC'], 'binding:vnic_type': 'baremetal', 'mac_address': 'de:ad:ca:fe:ba:be', 'port_id': '11111111-aaaa-bbbb-cccc-555555555555', 'event': 'network.bind_port', 'device_id': '22222222-aaaa-bbbb-cccc-555555555555'}]'. Wrong type. Expected '', got ''\"}"} GET: /v1/nodes/detail?resource_class=test {} GOT:{u'nodes': []} {7} ironic.tests.unit.api.controllers.v1.test_event.TestPost.test_network_port_event_invalid_binding_host_id [0.047593s] ... ok {27} ironic.tests.unit.api.controllers.v1.test_node.TestListNodes.test_get_nodes_by_invalid_resource_class_detail [0.113632s] ... ok {0} ironic.tests.unit.drivers.modules.xclarity.test_power.XClarityPowerDriverTestCase.test_validate [0.065379s] ... ok GET: /v1/deploy_templates?fields=name&limit=2 {} GOT:{u'deploy_templates': [{u'name': u'CUSTOM_DT0', u'links': [{u'href': u'http://localhost/v1/deploy_templates/4e56a71d-58ad-4c24-a43f-66b5e91b6bfd', u'rel': u'self'}, {u'href': u'http://localhost/deploy_templates/4e56a71d-58ad-4c24-a43f-66b5e91b6bfd', u'rel': u'bookmark'}]}, {u'name': u'CUSTOM_DT1', u'links': [{u'href': u'http://localhost/v1/deploy_templates/12f1109f-0699-45a8-8354-44518a2db078', u'rel': u'self'}, {u'href': u'http://localhost/deploy_templates/12f1109f-0699-45a8-8354-44518a2db078', u'rel': u'bookmark'}]}], u'next': u'http://localhost/v1/deploy_templates?sort_key=id&sort_dir=asc&limit=2&marker=12f1109f-0699-45a8-8354-44518a2db078'} {31} ironic.tests.unit.api.controllers.v1.test_deploy_template.TestListDeployTemplates.test_get_collection_pagination_no_uuid [0.087446s] ... ok {0} ironic.tests.unit.drivers.test_base.CleanStepTestCase.test_get_and_execute_clean_steps [0.012705s] ... ok GET: /v1/deploy_templates {} GOT:{u'deploy_templates': [{u'uuid': u'c0f8334e-a5b1-40d5-92ea-6d25d55337c7', u'links': [{u'href': u'http://localhost/v1/deploy_templates/c0f8334e-a5b1-40d5-92ea-6d25d55337c7', u'rel': u'self'}, {u'href': u'http://localhost/deploy_templates/c0f8334e-a5b1-40d5-92ea-6d25d55337c7', u'rel': u'bookmark'}], u'name': u'CUSTOM_DT1'}]} {16} ironic.tests.unit.api.controllers.v1.test_deploy_template.TestListDeployTemplates.test_one [0.086840s] ... ok GET: /v1/nodes/detail?resource_class=foo {} GOT:{u'nodes': [{u'target_power_state': None, u'links': [{u'href': u'http://localhost/v1/nodes/beada9e4-925a-4730-8065-ca58661566f7', u'rel': u'self'}, {u'href': u'http://localhost/nodes/beada9e4-925a-4730-8065-ca58661566f7', u'rel': u'bookmark'}], u'target_provision_state': None, u'last_error': None, u'updated_at': None, u'maintenance_reason': None, u'states': [{u'href': u'http://localhost/v1/nodes/beada9e4-925a-4730-8065-ca58661566f7/states', u'rel': u'self'}, {u'href': u'http://localhost/nodes/beada9e4-925a-4730-8065-ca58661566f7/states', u'rel': u'bookmark'}], u'provision_state': u'available', u'clean_step': {}, u'uuid': u'beada9e4-925a-4730-8065-ca58661566f7', u'console_enabled': False, u'extra': {}, u'raid_config': {}, u'provision_updated_at': None, u'power_state': None, u'target_raid_config': {}, u'network_interface': None, u'inspection_started_at': None, u'inspection_finished_at': None, u'maintenance': False, u'driver': u'fake-hardware', u'reservation': None, u'properties': {u'memory_mb': u'4096', u'cpu_arch': u'x86_64', u'local_gb': u'10', u'cpus': u'8'}, u'instance_uuid': None, u'name': None, u'driver_info': {u'fake_password': u'******', u'foo': u'bar'}, u'resource_class': u'foo', u'created_at': u'2019-06-06T07:02:14.495448+00:00', u'instance_info': {u'foo': u'bar', u'image_url': u'******', u'configdrive': u'******'}, u'driver_internal_info': {u'private_state': u'secret value'}, u'chassis_uuid': None, u'ports': [{u'href': u'http://localhost/v1/nodes/beada9e4-925a-4730-8065-ca58661566f7/ports', u'rel': u'self'}, {u'href': u'http://localhost/nodes/beada9e4-925a-4730-8065-ca58661566f7/ports', u'rel': u'bookmark'}]}]} GET: /v1/nodes/detail?resource_class=bar {} GOT:{u'nodes': [{u'target_power_state': None, u'links': [{u'href': u'http://localhost/v1/nodes/d1e1c602-419f-4a24-9b4b-56cc7e50b210', u'rel': u'self'}, {u'href': u'http://localhost/nodes/d1e1c602-419f-4a24-9b4b-56cc7e50b210', u'rel': u'bookmark'}], u'target_provision_state': None, u'last_error': None, u'updated_at': None, u'maintenance_reason': None, u'states': [{u'href': u'http://localhost/v1/nodes/d1e1c602-419f-4a24-9b4b-56cc7e50b210/states', u'rel': u'self'}, {u'href': u'http://localhost/nodes/d1e1c602-419f-4a24-9b4b-56cc7e50b210/states', u'rel': u'bookmark'}], u'provision_state': u'available', u'clean_step': {}, u'uuid': u'd1e1c602-419f-4a24-9b4b-56cc7e50b210', u'console_enabled': False, u'extra': {}, u'raid_config': {}, u'provision_updated_at': None, u'power_state': None, u'target_raid_config': {}, u'network_interface': None, u'inspection_started_at': None, u'inspection_finished_at': None, u'maintenance': False, u'driver': u'fake-hardware', u'reservation': None, u'properties': {u'memory_mb': u'4096', u'cpu_arch': u'x86_64', u'local_gb': u'10', u'cpus': u'8'}, u'instance_uuid': None, u'name': None, u'driver_info': {u'fake_password': u'******', u'foo': u'bar'}, u'resource_class': u'bar', u'created_at': u'2019-06-06T07:02:14.506571+00:00', u'instance_info': {u'foo': u'bar', u'image_url': u'******', u'configdrive': u'******'}, u'driver_internal_info': {u'private_state': u'secret value'}, u'chassis_uuid': None, u'ports': [{u'href': u'http://localhost/v1/nodes/d1e1c602-419f-4a24-9b4b-56cc7e50b210/ports', u'rel': u'self'}, {u'href': u'http://localhost/nodes/d1e1c602-419f-4a24-9b4b-56cc7e50b210/ports', u'rel': u'bookmark'}]}]} {2} ironic.tests.unit.api.controllers.v1.test_node.TestListNodes.test_get_nodes_by_resource_class_detail [0.215955s] ... ok {0} ironic.tests.unit.drivers.test_ipmi.IPMIHardwareTestCase.test_override_with_agent_rescue [0.061897s] ... ok {0} ironic.tests.unit.objects.test_allocation.TestAllocationObject.test_get_by_id [0.016736s] ... ok {0} ironic.tests.unit.objects.test_fields.TestStringFieldThatAcceptsCallable.test__repr__includes_default_function_name_and_source_hash [0.010883s] ... ok {0} ironic.tests.unit.objects.test_node.TestConvertToVersion.test_conductor_group_unsupported_set [0.014855s] ... ok {0} ironic.tests.unit.objects.test_node.TestConvertToVersion.test_owner_supported_set [0.019280s] ... ok {0} ironic.tests.unit.objects.test_node.TestConvertToVersion.test_owner_unsupported_missing [0.015008s] ... ok {0} ironic.tests.unit.objects.test_node.TestNodeObject.test_save_with_conductor_group_uppercase [0.020974s] ... ok {0} ironic.tests.unit.objects.test_notification.TestNotificationBase.test_event_type_make_status_invalid [0.009953s] ... ok GET: /v1/nodes?sort_key=resource_class {} GOT:{u'nodes': [{u'instance_uuid': None, u'maintenance': False, u'links': [{u'href': u'http://localhost/v1/nodes/755cbce8-b1fe-44b1-bb89-146275e0c19b', u'rel': u'self'}, {u'href': u'http://localhost/nodes/755cbce8-b1fe-44b1-bb89-146275e0c19b', u'rel': u'bookmark'}], u'name': None, u'power_state': None, u'provision_state': u'available', u'uuid': u'755cbce8-b1fe-44b1-bb89-146275e0c19b'}, {u'instance_uuid': None, u'maintenance': False, u'links': [{u'href': u'http://localhost/v1/nodes/5c0f0c96-9ee3-40ed-8eae-ae5e6261f403', u'rel': u'self'}, {u'href': u'http://localhost/nodes/5c0f0c96-9ee3-40ed-8eae-ae5e6261f403', u'rel': u'bookmark'}], u'name': None, u'power_state': None, u'provision_state': u'available', u'uuid': u'5c0f0c96-9ee3-40ed-8eae-ae5e6261f403'}, {u'instance_uuid': None, u'maintenance': False, u'links': [{u'href': u'http://localhost/v1/nodes/6d71ef57-8e00-4fc5-8653-f426bb6fbd51', u'rel': u'self'}, {u'href': u'http://localhost/nodes/6d71ef57-8e00-4fc5-8653-f426bb6fbd51', u'rel': u'bookmark'}], u'name': None, u'power_state': None, u'provision_state': u'available', u'uuid': u'6d71ef57-8e00-4fc5-8653-f426bb6fbd51'}]} {24} ironic.tests.unit.api.controllers.v1.test_node.TestListNodes.test_sort_key_allowed [0.169433s] ... ok {0} ironic.tests.unit.objects.test_objects.TestObject.test_get_target_version_pinned_bad [0.011666s] ... ok GET: /v1/drivers/fake-hardware-type/raid/logical_disk_properties {} GOT:{u'foo': u'description of foo'} GET: /v1/drivers/fake-hardware-type/raid/logical_disk_properties {} GOT:{u'foo': u'description of foo'} GET: /v1/drivers/fake-hardware-type/raid/logical_disk_properties {} GOT:{u'foo': u'description of foo'} {0} ironic.tests.unit.objects.test_objects.TestObjectSerializer.test__process_object_api [0.011329s] ... ok {22} ironic.tests.unit.api.controllers.v1.test_driver.TestListDrivers.test_raid_logical_disk_properties_cached [0.100933s] ... ok {0} ironic.tests.unit.objects.test_port.TestPortObject.test_supports_physical_network_supported [0.016071s] ... ok GET: /v1/nodes/detail?limit=3&associated=true {} GOT:{u'nodes': [{u'target_power_state': None, u'links': [{u'href': u'http://localhost/v1/nodes/58885e32-a27b-4b3e-97c9-b6d19481dfb0', u'rel': u'self'}, {u'href': u'http://localhost/nodes/58885e32-a27b-4b3e-97c9-b6d19481dfb0', u'rel': u'bookmark'}], u'target_provision_state': None, u'last_error': None, u'updated_at': None, u'maintenance_reason': None, u'provision_state': None, u'uuid': u'58885e32-a27b-4b3e-97c9-b6d19481dfb0', u'console_enabled': False, u'extra': {}, u'provision_updated_at': None, u'maintenance': False, u'power_state': None, u'driver': u'fake-hardware', u'reservation': None, u'properties': {u'memory_mb': u'4096', u'cpu_arch': u'x86_64', u'local_gb': u'10', u'cpus': u'8'}, u'instance_uuid': u'fcf0774e-c8b8-4945-9449-b7b4798412da', u'driver_info': {u'fake_password': u'******', u'foo': u'bar'}, u'created_at': u'2019-06-06T07:02:14.836081+00:00', u'ports': [{u'href': u'http://localhost/v1/nodes/58885e32-a27b-4b3e-97c9-b6d19481dfb0/ports', u'rel': u'self'}, {u'href': u'http://localhost/nodes/58885e32-a27b-4b3e-97c9-b6d19481dfb0/ports', u'rel': u'bookmark'}], u'chassis_uuid': None, u'instance_info': {u'foo': u'bar', u'image_url': u'******', u'configdrive': u'******'}}, {u'target_power_state': None, u'links': [{u'href': u'http://localhost/v1/nodes/3e9a7e72-2da3-4ad1-99e3-be5c80821289', u'rel': u'self'}, {u'href': u'http://localhost/nodes/3e9a7e72-2da3-4ad1-99e3-be5c80821289', u'rel': u'bookmark'}], u'target_provision_state': None, u'last_error': None, u'updated_at': None, u'maintenance_reason': None, u'provision_state': None, u'uuid': u'3e9a7e72-2da3-4ad1-99e3-be5c80821289', u'console_enabled': False, u'extra': {}, u'provision_updated_at': None, u'maintenance': False, u'power_state': None, u'driver': u'fake-hardware', u'reservation': None, u'properties': {u'memory_mb': u'4096', u'cpu_arch': u'x86_64', u'local_gb': u'10', u'cpus': u'8'}, u'instance_uuid': u'a068d054-c2c8-42dd-ac23-b26fdd253196', u'driver_info': {u'fake_password': u'******', u'foo': u'bar'}, u'created_at': u'2019-06-06T07:02:14.846464+00:00', u'ports': [{u'href': u'http://localhost/v1/nodes/3e9a7e72-2da3-4ad1-99e3-be5c80821289/ports', u'rel': u'self'}, {u'href': u'http://localhost/nodes/3e9a7e72-2da3-4ad1-99e3-be5c80821289/ports', u'rel': u'bookmark'}], u'chassis_uuid': None, u'instance_info': {u'foo': u'bar', u'image_url': u'******', u'configdrive': u'******'}}, {u'target_power_state': None, u'links': [{u'href': u'http://localhost/v1/nodes/9a747dfa-b5cf-41c5-af96-bb67b2dc09c9', u'rel': u'self'}, {u'href': u'http://localhost/nodes/9a747dfa-b5cf-41c5-af96-bb67b2dc09c9', u'rel': u'bookmark'}], u'target_provision_state': None, u'last_error': None, u'updated_at': None, u'maintenance_reason': None, u'provision_state': None, u'uuid': u'9a747dfa-b5cf-41c5-af96-bb67b2dc09c9', u'console_enabled': False, u'extra': {}, u'provision_updated_at': None, u'maintenance': False, u'power_state': None, u'driver': u'fake-hardware', u'reservation': None, u'properties': {u'memory_mb': u'4096', u'cpu_arch': u'x86_64', u'local_gb': u'10', u'cpus': u'8'}, u'instance_uuid': u'b45aee0c-926b-4a59-9cf3-15ebcb24abc5', u'driver_info': {u'fake_password': u'******', u'foo': u'bar'}, u'created_at': u'2019-06-06T07:02:14.857139+00:00', u'ports': [{u'href': u'http://localhost/v1/nodes/9a747dfa-b5cf-41c5-af96-bb67b2dc09c9/ports', u'rel': u'self'}, {u'href': u'http://localhost/nodes/9a747dfa-b5cf-41c5-af96-bb67b2dc09c9/ports', u'rel': u'bookmark'}], u'chassis_uuid': None, u'instance_info': {u'foo': u'bar', u'image_url': u'******', u'configdrive': u'******'}}], u'next': u'http://localhost/v1/nodes/detail?sort_key=id&sort_dir=asc&associated=True&limit=3&marker=9a747dfa-b5cf-41c5-af96-bb67b2dc09c9'} {26} ironic.tests.unit.api.controllers.v1.test_node.TestListNodes.test_next_link_with_association_with_detail [0.208247s] ... ok {0} ironic.tests.unit.objects.test_volume_target.TestVolumeTargetObject.test_list [0.018779s] ... ok GET: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123 {} GOT:{u'target_power_state': None, u'links': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'bookmark'}], u'target_provision_state': None, u'last_error': None, u'updated_at': None, u'maintenance_reason': None, u'provision_state': None, u'uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'console_enabled': False, u'extra': {}, u'provision_updated_at': None, u'maintenance': False, u'power_state': None, u'driver': u'fake-hardware', u'reservation': None, u'properties': {u'memory_mb': u'4096', u'cpu_arch': u'x86_64', u'local_gb': u'10', u'cpus': u'8'}, u'instance_uuid': None, u'driver_info': {u'fake_password': u'******', u'foo': u'bar'}, u'created_at': u'2019-06-06T07:02:14.849087+00:00', u'ports': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'bookmark'}], u'chassis_uuid': None, u'instance_info': {u'foo': u'bar', u'image_url': u'******', u'configdrive': u'******'}} GET: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123 {} GOT:{u'target_power_state': None, u'links': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'bookmark'}], u'target_provision_state': None, u'last_error': None, u'updated_at': None, u'maintenance_reason': None, u'provision_state': u'available', u'uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'console_enabled': False, u'extra': {}, u'provision_updated_at': None, u'maintenance': False, u'power_state': None, u'driver': u'fake-hardware', u'reservation': None, u'properties': {u'memory_mb': u'4096', u'cpu_arch': u'x86_64', u'local_gb': u'10', u'cpus': u'8'}, u'instance_uuid': None, u'driver_info': {u'fake_password': u'******', u'foo': u'bar'}, u'created_at': u'2019-06-06T07:02:14.849087+00:00', u'instance_info': {u'foo': u'bar', u'image_url': u'******', u'configdrive': u'******'}, u'driver_internal_info': {u'foo': u'bar'}, u'chassis_uuid': None, u'ports': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'bookmark'}]} {23} ironic.tests.unit.api.controllers.v1.test_node.TestListNodes.test_hide_fields_in_newer_versions_driver_internal [0.109772s] ... ok GET: /v1/drivers?detail=True {} GOT:{u'drivers': [{u'enabled_rescue_interfaces': [], u'default_inspect_interface': None, u'default_storage_interface': None, u'links': [{u'href': u'http://localhost/v1/drivers/fake-hardware-type', u'rel': u'self'}, {u'href': u'http://localhost/drivers/fake-hardware-type', u'rel': u'bookmark'}], u'default_rescue_interface': None, u'enabled_raid_interfaces': [], u'enabled_management_interfaces': [], u'enabled_bios_interfaces': [], u'enabled_deploy_interfaces': [u'iscsi', u'direct'], u'default_boot_interface': None, u'default_bios_interface': None, u'default_raid_interface': None, u'default_power_interface': None, u'enabled_network_interfaces': [], u'default_management_interface': None, u'hosts': [u'fake-host1', u'fake-host2'], u'enabled_storage_interfaces': [], u'default_vendor_interface': None, u'default_network_interface': None, u'enabled_boot_interfaces': [], u'enabled_inspect_interfaces': [], u'enabled_console_interfaces': [], u'properties': [{u'href': u'http://localhost/v1/drivers/fake-hardware-type/properties', u'rel': u'self'}, {u'href': u'http://localhost/drivers/fake-hardware-type/properties', u'rel': u'bookmark'}], u'name': u'fake-hardware-type', u'default_console_interface': None, u'type': u'dynamic', u'default_deploy_interface': u'direct', u'enabled_vendor_interfaces': [], u'enabled_power_interfaces': []}, {u'enabled_rescue_interfaces': [], u'default_inspect_interface': None, u'default_storage_interface': None, u'links': [{u'href': u'http://localhost/v1/drivers/fake-hardware-type-2', u'rel': u'self'}, {u'href': u'http://localhost/drivers/fake-hardware-type-2', u'rel': u'bookmark'}], u'default_rescue_interface': None, u'enabled_raid_interfaces': [], u'enabled_management_interfaces': [], u'enabled_bios_interfaces': [], u'enabled_deploy_interfaces': [], u'default_boot_interface': None, u'default_bios_interface': None, u'default_raid_interface': None, u'default_power_interface': None, u'enabled_network_interfaces': [], u'default_management_interface': None, u'hosts': [u'fake-host1'], u'enabled_storage_interfaces': [], u'default_vendor_interface': None, u'default_network_interface': None, u'enabled_boot_interfaces': [], u'enabled_inspect_interfaces': [], u'enabled_console_interfaces': [], u'properties': [{u'href': u'http://localhost/v1/drivers/fake-hardware-type-2/properties', u'rel': u'self'}, {u'href': u'http://localhost/drivers/fake-hardware-type-2/properties', u'rel': u'bookmark'}], u'name': u'fake-hardware-type-2', u'default_console_interface': None, u'type': u'dynamic', u'default_deploy_interface': None, u'enabled_vendor_interfaces': [], u'enabled_power_interfaces': []}]} GET: /v1/drivers/fake-hardware-type {} GOT:{u'hosts': [u'fake-host1', u'fake-host2'], u'name': u'fake-hardware-type', u'links': [{u'href': u'http://localhost/v1/drivers/fake-hardware-type', u'rel': u'self'}, {u'href': u'http://localhost/drivers/fake-hardware-type', u'rel': u'bookmark'}]} GET: /drivers/fake-hardware-type {} GOT:{u'hosts': [u'fake-host1', u'fake-host2'], u'name': u'fake-hardware-type', u'links': [{u'href': u'http://localhost/v1/drivers/fake-hardware-type', u'rel': u'self'}, {u'href': u'http://localhost/drivers/fake-hardware-type', u'rel': u'bookmark'}]} GET: /v1/drivers/fake-hardware-type-2 {} GOT:{u'hosts': [u'fake-host1'], u'name': u'fake-hardware-type-2', u'links': [{u'href': u'http://localhost/v1/drivers/fake-hardware-type-2', u'rel': u'self'}, {u'href': u'http://localhost/drivers/fake-hardware-type-2', u'rel': u'bookmark'}]} GET: /drivers/fake-hardware-type-2 {} GOT:{u'hosts': [u'fake-host1'], u'name': u'fake-hardware-type-2', u'links': [{u'href': u'http://localhost/v1/drivers/fake-hardware-type-2', u'rel': u'self'}, {u'href': u'http://localhost/drivers/fake-hardware-type-2', u'rel': u'bookmark'}]} {8} ironic.tests.unit.api.controllers.v1.test_driver.TestListDrivers.test_drivers_with_dynamic_detailed_storage_interface [0.152461s] ... ok GET: /v1/nodes?provision_state=test {} GOT:Response: 406 Not Acceptable Content-Type: application/json Openstack-Request-Id: req-673c96e0-7167-4992-9948-78ed6f5ed949 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.8 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Request not acceptable.\"}"} {27} ironic.tests.unit.api.controllers.v1.test_node.TestListNodes.test_get_nodes_by_provision_state_not_allowed [0.055674s] ... ok GET: /v1/deploy_templates/0f24c718-143b-4a47-925a-306814f61c6a {} GOT:{u'uuid': u'0f24c718-143b-4a47-925a-306814f61c6a', u'links': [{u'href': u'http://localhost/v1/deploy_templates/0f24c718-143b-4a47-925a-306814f61c6a', u'rel': u'self'}, {u'href': u'http://localhost/deploy_templates/0f24c718-143b-4a47-925a-306814f61c6a', u'rel': u'bookmark'}], u'extra': {}, u'created_at': u'2019-06-06T07:02:14.583887+00:00', u'updated_at': None, u'steps': [{u'interface': u'raid', u'priority': 10, u'step': u'create_configuration', u'args': {u'logical_disks': []}}], u'name': u'CUSTOM_DT1'} {20} ironic.tests.unit.api.controllers.v1.test_deploy_template.TestListDeployTemplates.test_get_one_with_suffix [0.073841s] ... ok POST: /v1/chassis {'uuid': 'e74c40e0-d825-11e2-a28f-0800200c9a66', 'description': u'\u0430\u043c\u043e', 'extra': {}} GOT:Response: 201 Created Content-Type: application/json Location: http://localhost/v1/chassis/e74c40e0-d825-11e2-a28f-0800200c9a66 Openstack-Request-Id: req-0cf4f378-8042-407a-b2ae-2cf4f7fd528e X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"uuid": "e74c40e0-d825-11e2-a28f-0800200c9a66", "links": [{"href": "http://localhost/v1/chassis/e74c40e0-d825-11e2-a28f-0800200c9a66", "rel": "self"}, {"href": "http://localhost/chassis/e74c40e0-d825-11e2-a28f-0800200c9a66", "rel": "bookmark"}], "extra": {}, "created_at": "2019-06-06T07:02:14.534114+00:00", "updated_at": null, "nodes": [{"href": "http://localhost/v1/chassis/e74c40e0-d825-11e2-a28f-0800200c9a66/nodes", "rel": "self"}, {"href": "http://localhost/chassis/e74c40e0-d825-11e2-a28f-0800200c9a66/nodes", "rel": "bookmark"}], "description": "\u0430\u043c\u043e"} GET: /v1/chassis/e74c40e0-d825-11e2-a28f-0800200c9a66 {} GOT:{u'uuid': u'e74c40e0-d825-11e2-a28f-0800200c9a66', u'links': [{u'href': u'http://localhost/v1/chassis/e74c40e0-d825-11e2-a28f-0800200c9a66', u'rel': u'self'}, {u'href': u'http://localhost/chassis/e74c40e0-d825-11e2-a28f-0800200c9a66', u'rel': u'bookmark'}], u'extra': {}, u'created_at': u'2019-06-06T07:02:14.534114+00:00', u'updated_at': None, u'nodes': [{u'href': u'http://localhost/v1/chassis/e74c40e0-d825-11e2-a28f-0800200c9a66/nodes', u'rel': u'self'}, {u'href': u'http://localhost/chassis/e74c40e0-d825-11e2-a28f-0800200c9a66/nodes', u'rel': u'bookmark'}], u'description': u'\u0430\u043c\u043e'} {25} ironic.tests.unit.api.controllers.v1.test_chassis.TestPost.test_create_chassis_unicode_description [0.066072s] ... ok GET: /v1/nodes/detail?sort_key=resource_class {} GOT:{u'nodes': [{u'target_power_state': None, u'links': [{u'href': u'http://localhost/v1/nodes/c40700a6-1c6e-488a-b8a1-d1fb36f5b5bb', u'rel': u'self'}, {u'href': u'http://localhost/nodes/c40700a6-1c6e-488a-b8a1-d1fb36f5b5bb', u'rel': u'bookmark'}], u'target_provision_state': None, u'last_error': None, u'updated_at': None, u'maintenance_reason': None, u'states': [{u'href': u'http://localhost/v1/nodes/c40700a6-1c6e-488a-b8a1-d1fb36f5b5bb/states', u'rel': u'self'}, {u'href': u'http://localhost/nodes/c40700a6-1c6e-488a-b8a1-d1fb36f5b5bb/states', u'rel': u'bookmark'}], u'provision_state': u'available', u'clean_step': {}, u'uuid': u'c40700a6-1c6e-488a-b8a1-d1fb36f5b5bb', u'console_enabled': False, u'extra': {}, u'raid_config': {}, u'provision_updated_at': None, u'power_state': None, u'target_raid_config': {}, u'network_interface': None, u'inspection_started_at': None, u'inspection_finished_at': None, u'maintenance': False, u'driver': u'fake-hardware', u'reservation': None, u'properties': {u'memory_mb': u'4096', u'cpu_arch': u'x86_64', u'local_gb': u'10', u'cpus': u'8'}, u'instance_uuid': None, u'name': None, u'driver_info': {u'fake_password': u'******', u'foo': u'bar'}, u'resource_class': u'rc_1', u'created_at': u'2019-06-06T07:02:14.165328+00:00', u'instance_info': {u'foo': u'bar', u'image_url': u'******', u'configdrive': u'******'}, u'driver_internal_info': {u'private_state': u'secret value'}, u'chassis_uuid': None, u'ports': [{u'href': u'http://localhost/v1/nodes/c40700a6-1c6e-488a-b8a1-d1fb36f5b5bb/ports', u'rel': u'self'}, {u'href': u'http://localhost/nodes/c40700a6-1c6e-488a-b8a1-d1fb36f5b5bb/ports', u'rel': u'bookmark'}]}, {u'target_power_state': None, u'links': [{u'href': u'http://localhost/v1/nodes/fedd8101-1f3a-4f3d-afb4-a49789f8c749', u'rel': u'self'}, {u'href': u'http://localhost/nodes/fedd8101-1f3a-4f3d-afb4-a49789f8c749', u'rel': u'bookmark'}], u'target_provision_state': None, u'last_error': None, u'updated_at': None, u'maintenance_reason': None, u'states': [{u'href': u'http://localhost/v1/nodes/fedd8101-1f3a-4f3d-afb4-a49789f8c749/states', u'rel': u'self'}, {u'href': u'http://localhost/nodes/fedd8101-1f3a-4f3d-afb4-a49789f8c749/states', u'rel': u'bookmark'}], u'provision_state': u'available', u'clean_step': {}, u'uuid': u'fedd8101-1f3a-4f3d-afb4-a49789f8c749', u'console_enabled': False, u'extra': {}, u'raid_config': {}, u'provision_updated_at': None, u'power_state': None, u'target_raid_config': {}, u'network_interface': None, u'inspection_started_at': None, u'inspection_finished_at': None, u'maintenance': False, u'driver': u'fake-hardware', u'reservation': None, u'properties': {u'memory_mb': u'4096', u'cpu_arch': u'x86_64', u'local_gb': u'10', u'cpus': u'8'}, u'instance_uuid': None, u'name': None, u'driver_info': {u'fake_password': u'******', u'foo': u'bar'}, u'resource_class': u'rc_2', u'created_at': u'2019-06-06T07:02:14.155141+00:00', u'instance_info': {u'foo': u'bar', u'image_url': u'******', u'configdrive': u'******'}, u'driver_internal_info': {u'private_state': u'secret value'}, u'chassis_uuid': None, u'ports': [{u'href': u'http://localhost/v1/nodes/fedd8101-1f3a-4f3d-afb4-a49789f8c749/ports', u'rel': u'self'}, {u'href': u'http://localhost/nodes/fedd8101-1f3a-4f3d-afb4-a49789f8c749/ports', u'rel': u'bookmark'}]}, {u'target_power_state': None, u'links': [{u'href': u'http://localhost/v1/nodes/a059e4ac-7922-4014-a9c6-8937f3f50dac', u'rel': u'self'}, {u'href': u'http://localhost/nodes/a059e4ac-7922-4014-a9c6-8937f3f50dac', u'rel': u'bookmark'}], u'target_provision_state': None, u'last_error': None, u'updated_at': None, u'maintenance_reason': None, u'states': [{u'href': u'http://localhost/v1/nodes/a059e4ac-7922-4014-a9c6-8937f3f50dac/states', u'rel': u'self'}, {u'href': u'http://localhost/nodes/a059e4ac-7922-4014-a9c6-8937f3f50dac/states', u'rel': u'bookmark'}], u'provision_state': u'available', u'clean_step': {}, u'uuid': u'a059e4ac-7922-4014-a9c6-8937f3f50dac', u'console_enabled': False, u'extra': {}, u'raid_config': {}, u'provision_updated_at': None, u'power_state': None, u'target_raid_config': {}, u'network_interface': None, u'inspection_started_at': None, u'inspection_finished_at': None, u'maintenance': False, u'driver': u'fake-hardware', u'reservation': None, u'properties': {u'memory_mb': u'4096', u'cpu_arch': u'x86_64', u'local_gb': u'10', u'cpus': u'8'}, u'instance_uuid': None, u'name': None, u'driver_info': {u'fake_password': u'******', u'foo': u'bar'}, u'resource_class': u'rc_3', u'created_at': u'2019-06-06T07:02:14.130392+00:00', u'instance_info': {u'foo': u'bar', u'image_url': u'******', u'configdrive': u'******'}, u'driver_internal_info': {u'private_state': u'secret value'}, u'chassis_uuid': None, u'ports': [{u'href': u'http://localhost/v1/nodes/a059e4ac-7922-4014-a9c6-8937f3f50dac/ports', u'rel': u'self'}, {u'href': u'http://localhost/nodes/a059e4ac-7922-4014-a9c6-8937f3f50dac/ports', u'rel': u'bookmark'}]}]} {6} ironic.tests.unit.api.controllers.v1.test_node.TestListNodes.test_detail_sort_key_allowed [0.203045s] ... ok GET: /v1/deploy_templates/d30bfcac-c5a1-4f17-b659-956074b1003c {} GOT:{u'uuid': u'd30bfcac-c5a1-4f17-b659-956074b1003c', u'links': [{u'href': u'http://localhost/v1/deploy_templates/d30bfcac-c5a1-4f17-b659-956074b1003c', u'rel': u'self'}, {u'href': u'http://localhost/deploy_templates/d30bfcac-c5a1-4f17-b659-956074b1003c', u'rel': u'bookmark'}], u'extra': {}, u'created_at': u'2019-06-06T07:02:14.817211+00:00', u'updated_at': None, u'steps': [{u'interface': u'raid', u'priority': 10, u'step': u'create_configuration', u'args': {u'logical_disks': []}}], u'name': u'CUSTOM_DT1'} {31} ironic.tests.unit.api.controllers.v1.test_deploy_template.TestListDeployTemplates.test_get_one [0.062159s] ... ok PATCH: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123 [{'path': '/provision_updated_at', 'value': '2000-01-01 00:00:00', 'op': 'replace'}] GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-15f3cc36-c334-4343-86dc-28d455fe0053 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"'/provision_updated_at' is an internal attribute and can not be updated\"}"} {2} ironic.tests.unit.api.controllers.v1.test_node.TestPatch.test_replace_provision_updated_at [0.074622s] ... ok GET: /v1/nodes/volume/connectors {} GOT:Response: 404 Not Found Content-Type: application/json Openstack-Request-Id: req-5ea4ecd8-81cb-42d5-bbe9-6304d2c369c5 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Node volume could not be found.\"}"} {23} ironic.tests.unit.api.controllers.v1.test_node.TestListNodes.test_volume_connectors_subresource_noid [0.087104s] ... ok {23} ironic.tests.unit.api.controllers.v1.test_node.TestNodeObject.test_node_init [0.016713s] ... ok POST: /v1/events {'events': [{'status': 'ACTIVE', 'binding:host_id': '22222222-aaaa-bbbb-cccc-555555555555', 'binding:vnic_type': 'baremetal', 'mac_address': 'de:ad:ca:fe:ba:be', 'port_id': 'PORT_ID_SHOULD_BE_UUID', 'event': 'network.bind_port', 'device_id': '22222222-aaaa-bbbb-cccc-555555555555'}]} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-205b71f3-ffd2-431c-a17f-4970dc5627bf X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Event validation failure for port_id. Expected a UUID but received PORT_ID_SHOULD_BE_UUID.\"}"} {7} ironic.tests.unit.api.controllers.v1.test_event.TestPost.test_network_port_event_invalid_port_id [0.048196s] ... ok {7} ironic.tests.unit.api.controllers.v1.test_node.TestCheckCleanSteps.test__check_clean_steps_step_min_length_step_value [0.029967s] ... ok {7} ironic.tests.unit.api.controllers.v1.test_node.TestCheckCleanSteps.test__check_clean_steps_step_not_dict [0.027656s] ... ok GET: /v1/drivers/fake-hardware-type {} GOT:{u'hosts': [u'fake-host1', u'fake-host2'], u'name': u'fake-hardware-type', u'links': [{u'href': u'http://localhost/v1/drivers/fake-hardware-type', u'rel': u'self'}, {u'href': u'http://localhost/drivers/fake-hardware-type', u'rel': u'bookmark'}]} GET: /v1/drivers/fake-hardware-type {} GOT:{u'hosts': [u'fake-host1', u'fake-host2'], u'name': u'fake-hardware-type', u'links': [{u'href': u'http://localhost/v1/drivers/fake-hardware-type', u'rel': u'self'}, {u'href': u'http://localhost/drivers/fake-hardware-type', u'rel': u'bookmark'}]} GET: /drivers/fake-hardware-type {} GOT:{u'hosts': [u'fake-host1', u'fake-host2'], u'name': u'fake-hardware-type', u'links': [{u'href': u'http://localhost/v1/drivers/fake-hardware-type', u'rel': u'self'}, {u'href': u'http://localhost/drivers/fake-hardware-type', u'rel': u'bookmark'}]} {19} ironic.tests.unit.api.controllers.v1.test_driver.TestListDrivers.test_links [0.109982s] ... ok POST: /v1/events {'events': [{'UNKNOWN': 'EVENT_PROPERTY', 'event': 'network.unbind_port'}]} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-7790022d-4c78-4399-9005-9b515ec5c90e X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"UNKNOWN are invalid keys\"}"} GET: /v1/nodes {} GOT:{u'nodes': [{u'instance_uuid': None, u'maintenance': False, u'links': [{u'href': u'http://localhost/v1/nodes/bdc6708a-15e7-4554-8a94-c297baf7890f', u'rel': u'self'}, {u'href': u'http://localhost/nodes/bdc6708a-15e7-4554-8a94-c297baf7890f', u'rel': u'bookmark'}], u'name': u'node-0', u'power_state': None, u'provision_state': u'available', u'uuid': u'bdc6708a-15e7-4554-8a94-c297baf7890f'}, {u'instance_uuid': None, u'maintenance': False, u'links': [{u'href': u'http://localhost/v1/nodes/4e148dfe-1f33-4376-91db-52d5c603189b', u'rel': u'self'}, {u'href': u'http://localhost/nodes/4e148dfe-1f33-4376-91db-52d5c603189b', u'rel': u'bookmark'}], u'name': u'node-1', u'power_state': None, u'provision_state': u'available', u'uuid': u'4e148dfe-1f33-4376-91db-52d5c603189b'}, {u'instance_uuid': None, u'maintenance': False, u'links': [{u'href': u'http://localhost/v1/nodes/c6951d75-e615-4584-83fd-a25ec8f16b25', u'rel': u'self'}, {u'href': u'http://localhost/nodes/c6951d75-e615-4584-83fd-a25ec8f16b25', u'rel': u'bookmark'}], u'name': u'node-2', u'power_state': None, u'provision_state': u'available', u'uuid': u'c6951d75-e615-4584-83fd-a25ec8f16b25'}, {u'instance_uuid': None, u'maintenance': False, u'links': [{u'href': u'http://localhost/v1/nodes/a03d4015-7541-4703-90ee-b091c84190e8', u'rel': u'self'}, {u'href': u'http://localhost/nodes/a03d4015-7541-4703-90ee-b091c84190e8', u'rel': u'bookmark'}], u'name': u'node-3', u'power_state': None, u'provision_state': u'available', u'uuid': u'a03d4015-7541-4703-90ee-b091c84190e8'}, {u'instance_uuid': None, u'maintenance': False, u'links': [{u'href': u'http://localhost/v1/nodes/9c36e2e9-4426-4444-a0f7-8fc3f3afa54d', u'rel': u'self'}, {u'href': u'http://localhost/nodes/9c36e2e9-4426-4444-a0f7-8fc3f3afa54d', u'rel': u'bookmark'}], u'name': u'node-4', u'power_state': None, u'provision_state': u'available', u'uuid': u'9c36e2e9-4426-4444-a0f7-8fc3f3afa54d'}]} {12} ironic.tests.unit.api.controllers.v1.test_node.TestListNodes.test_many_have_names [0.206550s] ... ok {8} ironic.tests.unit.api.controllers.v1.test_event.TestPost.test_network_unknown_event_property [0.046417s] ... ok GET: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123?fields=allocation_uuid {} GOT:{u'links': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'bookmark'}], u'allocation_uuid': u'597460b1-d002-4adc-9474-f96092d5544a'} {27} ironic.tests.unit.api.controllers.v1.test_node.TestListNodes.test_get_with_allocation [0.108878s] ... ok GET: /v1/drivers/fake-hardware-type {} GOT:{u'hosts': [u'fake-host1', u'fake-host2'], u'name': u'fake-hardware-type', u'links': [{u'href': u'http://foo/v1/drivers/fake-hardware-type', u'rel': u'self'}, {u'href': u'http://foo/drivers/fake-hardware-type', u'rel': u'bookmark'}]} GET: /v1/drivers/fake-hardware-type {} GOT:{u'hosts': [u'fake-host1', u'fake-host2'], u'name': u'fake-hardware-type', u'links': [{u'href': u'http://foo/v1/drivers/fake-hardware-type', u'rel': u'self'}, {u'href': u'http://foo/drivers/fake-hardware-type', u'rel': u'bookmark'}]} GET: /drivers/fake-hardware-type {} GOT:{u'hosts': [u'fake-host1', u'fake-host2'], u'name': u'fake-hardware-type', u'links': [{u'href': u'http://foo/v1/drivers/fake-hardware-type', u'rel': u'self'}, {u'href': u'http://foo/drivers/fake-hardware-type', u'rel': u'bookmark'}]} POST: /v1/events {'events': [{'status': 'ACTIVE', 'binding:host_id': '22222222-aaaa-bbbb-cccc-555555555555', 'binding:vnic_type': 'baremetal', 'mac_address': 'de:ad:ca:fe:ba:be', 'port_id': '11111111-aaaa-bbbb-cccc-555555555555', 'event': 'network.unbind_port', 'device_id': '22222222-aaaa-bbbb-cccc-555555555555'}]} GOT:Response: 204 No Content Openstack-Request-Id: req-cbd419a4-67e4-4f66-9acc-d397b8f6c3c2 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {4} ironic.tests.unit.api.controllers.v1.test_driver.TestListDrivers.test_links_public_url [0.108316s] ... ok {22} ironic.tests.unit.api.controllers.v1.test_event.TestPost.test_network_unbind_port_events [0.048533s] ... ok {22} ironic.tests.unit.api.controllers.v1.test_expose.TestExposedAPIMethodsCheckPolicy.test_conductor_api_policy [0.044903s] ... ok {22} ironic.tests.unit.api.controllers.v1.test_expose.TestExposedAPIMethodsCheckPolicy.test_portgroup_api_policy [0.080126s] ... ok GET: /v1/drivers/fake-hardware-type {} GOT:{u'default_inspect_interface': None, u'links': [{u'href': u'http://localhost/v1/drivers/fake-hardware-type', u'rel': u'self'}, {u'href': u'http://localhost/drivers/fake-hardware-type', u'rel': u'bookmark'}], u'enabled_raid_interfaces': [], u'enabled_management_interfaces': [], u'enabled_deploy_interfaces': [u'iscsi', u'direct'], u'default_boot_interface': None, u'default_raid_interface': None, u'default_power_interface': None, u'enabled_network_interfaces': [], u'default_management_interface': None, u'enabled_power_interfaces': [], u'default_vendor_interface': None, u'default_network_interface': None, u'enabled_boot_interfaces': [], u'enabled_inspect_interfaces': [], u'enabled_console_interfaces': [], u'properties': [{u'href': u'http://localhost/v1/drivers/fake-hardware-type/properties', u'rel': u'self'}, {u'href': u'http://localhost/drivers/fake-hardware-type/properties', u'rel': u'bookmark'}], u'name': u'fake-hardware-type', u'default_console_interface': None, u'type': u'dynamic', u'default_deploy_interface': u'direct', u'enabled_vendor_interfaces': [], u'hosts': [u'fake-host1', u'fake-host2']} GET: /v1/drivers/fake-hardware-type {} GOT:{u'hosts': [u'fake-host1', u'fake-host2'], u'name': u'fake-hardware-type', u'links': [{u'href': u'http://localhost/v1/drivers/fake-hardware-type', u'rel': u'self'}, {u'href': u'http://localhost/drivers/fake-hardware-type', u'rel': u'bookmark'}]} GET: /drivers/fake-hardware-type {} GOT:{u'hosts': [u'fake-host1', u'fake-host2'], u'name': u'fake-hardware-type', u'links': [{u'href': u'http://localhost/v1/drivers/fake-hardware-type', u'rel': u'self'}, {u'href': u'http://localhost/drivers/fake-hardware-type', u'rel': u'bookmark'}]} GET: /v1/drivers/fake-hardware-type/properties {} GOT:{} GET: /drivers/fake-hardware-type/properties {} GOT:{} {29} ironic.tests.unit.api.controllers.v1.test_driver.TestListDrivers.test_drivers_get_one_ok_dynamic_base_interfaces [0.146684s] ... ok GET: /v1/nodes/validate?node=1be26c0b-03f2-4d2e-ae87-c02d7f33c123 {} GOT:{} {12} ironic.tests.unit.api.controllers.v1.test_node.TestListNodes.test_validate_by_uuid [0.084234s] ... ok POST: /v1/deploy_templates {'extra': {}, 'steps': [{'priority': 10, 'interface': 'raid', 'step': 'create_configuration', 'args': {'logical_disks': []}}], 'uuid': '0868bcd0-14a5-45d1-ad4f-65c428ab6e8d', 'name': 'HW_CPU_X86_VMX'} GOT:Response: 201 Created Content-Type: application/json Location: http://localhost/v1/deploy_templates/0868bcd0-14a5-45d1-ad4f-65c428ab6e8d Openstack-Request-Id: req-a213c108-5512-4f2f-9ee1-1046de859dc6 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"uuid": "0868bcd0-14a5-45d1-ad4f-65c428ab6e8d", "links": [{"href": "http://localhost/v1/deploy_templates/0868bcd0-14a5-45d1-ad4f-65c428ab6e8d", "rel": "self"}, {"href": "http://localhost/deploy_templates/0868bcd0-14a5-45d1-ad4f-65c428ab6e8d", "rel": "bookmark"}], "extra": {}, "created_at": "2019-06-06T07:02:14.796502+00:00", "updated_at": null, "steps": [{"interface": "raid", "priority": 10, "step": "create_configuration", "args": {"logical_disks": []}}], "name": "HW_CPU_X86_VMX"} {14} ironic.tests.unit.api.controllers.v1.test_deploy_template.TestPost.test_create_standard_trait_name [0.057565s] ... ok GET: /v1/nodes?detail=True {} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-74b65670-b801-4a6d-9c1a-76ba22d4aff6 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Invalid query parameter ?detail=True received.\"}"} {6} ironic.tests.unit.api.controllers.v1.test_node.TestListNodes.test_detail_using_query_old_version [0.065669s] ... ok GET: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/vifs {} GOT:Response: 404 Not Found Content-Type: application/json {"error_message": "{\"code\": 404, \"description\": \"\", \"title\": \"Not Found\"}"} {22} ironic.tests.unit.api.controllers.v1.test_node.TestAttachDetachVif.test_vif_subcontroller_old_version [0.045781s] ... ok PATCH: /v1/nodes/e18e913f-44d1-4938-bdc6-20efb98321d2 [{'path': '/instance_uuid', 'op': 'remove'}] GOT:Response: 200 OK Content-Type: application/json Openstack-Request-Id: req-1a91a3fb-767a-41fe-bfad-d28c475edf0e X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"target_power_state": "power off", "links": [{"href": "http://localhost/v1/nodes/e18e913f-44d1-4938-bdc6-20efb98321d2", "rel": "self"}, {"href": "http://localhost/nodes/e18e913f-44d1-4938-bdc6-20efb98321d2", "rel": "bookmark"}], "target_provision_state": null, "last_error": null, "updated_at": null, "maintenance_reason": null, "provision_state": null, "uuid": "e18e913f-44d1-4938-bdc6-20efb98321d2", "console_enabled": false, "extra": {}, "provision_updated_at": null, "maintenance": true, "power_state": null, "driver": "fake-hardware", "reservation": null, "properties": {"memory_mb": "4096", "cpu_arch": "x86_64", "local_gb": "10", "cpus": "8"}, "instance_uuid": null, "driver_info": {"fake_password": "******", "foo": "bar"}, "created_at": "2019-06-06T07:02:14.959874+00:00", "ports": [{"href": "http://localhost/v1/nodes/e18e913f-44d1-4938-bdc6-20efb98321d2/ports", "rel": "self"}, {"href": "http://localhost/nodes/e18e913f-44d1-4938-bdc6-20efb98321d2/ports", "rel": "bookmark"}], "chassis_uuid": null, "instance_info": {"foo": "bar", "image_url": "******", "configdrive": "******"}} {21} ironic.tests.unit.api.controllers.v1.test_node.TestPatch.test_update_allowed_in_maintenance [0.118301s] ... ok POST: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/vifs {'id': '4cad5058-2de1-416e-9dd9-2ab5c4e9d201'} GOT:Response: 204 No Content Openstack-Request-Id: req-69069a32-fb21-4d0d-8f94-70b7612e43b3 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.28 GET: /v1/deploy_templates?sort_key=name&detail=False {} GOT:{u'deploy_templates': [{u'uuid': u'833bd067-aa26-4b0a-b079-1e1d2183b751', u'links': [{u'href': u'http://localhost/v1/deploy_templates/833bd067-aa26-4b0a-b079-1e1d2183b751', u'rel': u'self'}, {u'href': u'http://localhost/deploy_templates/833bd067-aa26-4b0a-b079-1e1d2183b751', u'rel': u'bookmark'}], u'name': u'CUSTOM_DT1'}, {u'uuid': u'b083ea98-6de6-4d9c-a5d2-dfc555ca92a5', u'links': [{u'href': u'http://localhost/v1/deploy_templates/b083ea98-6de6-4d9c-a5d2-dfc555ca92a5', u'rel': u'self'}, {u'href': u'http://localhost/deploy_templates/b083ea98-6de6-4d9c-a5d2-dfc555ca92a5', u'rel': u'bookmark'}], u'name': u'CUSTOM_DT2'}, {u'uuid': u'e0318b5e-24ad-482a-8b9a-f639187ba260', u'links': [{u'href': u'http://localhost/v1/deploy_templates/e0318b5e-24ad-482a-8b9a-f639187ba260', u'rel': u'self'}, {u'href': u'http://localhost/deploy_templates/e0318b5e-24ad-482a-8b9a-f639187ba260', u'rel': u'bookmark'}], u'name': u'CUSTOM_DT3'}]} {8} ironic.tests.unit.api.controllers.v1.test_node.TestAttachDetachVif.test_vif_attach [0.062744s] ... ok {16} ironic.tests.unit.api.controllers.v1.test_deploy_template.TestListDeployTemplates.test_sort_key_allowed [0.085989s] ... ok {8} ironic.tests.unit.api.controllers.v1.test_node.TestCheckCleanSteps.test__check_clean_steps_step_missing_step_value [0.028514s] ... ok PATCH: /v1/deploy_templates/35ca72e5-c95f-4b3c-8873-f6bfae9c16ac [{'path': '/name', 'value': 'CUSTOM_DT2', 'op': 'replace'}] GOT:Response: 409 Conflict Content-Type: application/json Openstack-Request-Id: req-e86c42ae-1ad0-4dd1-9c25-e26f075a2d4a X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"A deploy template with UUID 35ca72e5-c95f-4b3c-8873-f6bfae9c16ac already exists.\"}"} {20} ironic.tests.unit.api.controllers.v1.test_deploy_template.TestPatch.test_replace_name_already_exist [0.081397s] ... ok PATCH: /v1/deploy_templates/852ccae5-f99d-4a93-8349-0dbcb0eb7d9d [{'path': '/steps', 'op': 'remove'}] GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-87aad4bb-2dae-4945-b26d-6722415582da X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"'/steps' is a mandatory attribute and can not be removed\"}"} {31} ironic.tests.unit.api.controllers.v1.test_deploy_template.TestPatch.test_remove_steps [0.056676s] ... ok GET: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/management/boot_device {} GOT:{u'boot_device': u'pxe', u'persistent': True} {6} ironic.tests.unit.api.controllers.v1.test_node.TestListNodes.test_get_boot_device [0.080641s] ... ok POST: /v1/nodes/node-39/vifs {'id': '03ea4618-4b69-4403-821e-e325c2838a5f'} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-321e31b8-2e54-46a7-8d75-ee7b11fafae7 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.28 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"boom\"}"} {4} ironic.tests.unit.api.controllers.v1.test_node.TestAttachDetachVif.test_vif_attach_conductor_unavailable [0.076614s] ... ok GET: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/bios {} GOT:Response: 404 Not Found Content-Type: application/json {"error_message": "{\"code\": 404, \"description\": \"\", \"title\": \"Not Found\"}"} PATCH: /v1/chassis/34495468-a68e-4fd2-956a-bfd69907aee4 [{'path': '/extra/foo2', 'value': 'new value', 'op': 'replace'}] GOT:Response: 200 OK Content-Type: application/json Openstack-Request-Id: req-7700073f-1b8a-49f9-8a08-f242e9fd09b2 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"uuid": "34495468-a68e-4fd2-956a-bfd69907aee4", "links": [{"href": "http://localhost/v1/chassis/34495468-a68e-4fd2-956a-bfd69907aee4", "rel": "self"}, {"href": "http://localhost/chassis/34495468-a68e-4fd2-956a-bfd69907aee4", "rel": "bookmark"}], "extra": {"foo1": "bar1", "foo2": "new value", "foo3": "bar3"}, "created_at": "2019-06-06T07:02:14.428074+00:00", "updated_at": "2019-06-06T07:02:14.455424+00:00", "nodes": [{"href": "http://localhost/v1/chassis/34495468-a68e-4fd2-956a-bfd69907aee4/nodes", "rel": "self"}, {"href": "http://localhost/chassis/34495468-a68e-4fd2-956a-bfd69907aee4/nodes", "rel": "bookmark"}], "description": "data-center-1-chassis"} GET: /v1/chassis/34495468-a68e-4fd2-956a-bfd69907aee4 {} GOT:{u'uuid': u'34495468-a68e-4fd2-956a-bfd69907aee4', u'links': [{u'href': u'http://localhost/v1/chassis/34495468-a68e-4fd2-956a-bfd69907aee4', u'rel': u'self'}, {u'href': u'http://localhost/chassis/34495468-a68e-4fd2-956a-bfd69907aee4', u'rel': u'bookmark'}], u'extra': {u'foo1': u'bar1', u'foo2': u'new value', u'foo3': u'bar3'}, u'created_at': u'2019-06-06T07:02:14.428074+00:00', u'updated_at': u'2019-06-06T07:02:14.455424+00:00', u'nodes': [{u'href': u'http://localhost/v1/chassis/34495468-a68e-4fd2-956a-bfd69907aee4/nodes', u'rel': u'self'}, {u'href': u'http://localhost/chassis/34495468-a68e-4fd2-956a-bfd69907aee4/nodes', u'rel': u'bookmark'}], u'description': u'data-center-1-chassis'} {22} ironic.tests.unit.api.controllers.v1.test_node.TestBIOS.test_get_all_bios_fails_with_bad_version [0.060813s] ... ok {10} ironic.tests.unit.api.controllers.v1.test_chassis.TestPatch.test_replace_multi [0.080872s] ... ok GET: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/management/boot_device {} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-c61471e2-411a-4ad4-964d-ff1f83efac88 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Driver test-driver does not support management (disabled or not implemented).\"}"} {7} ironic.tests.unit.api.controllers.v1.test_node.TestListNodes.test_get_boot_device_iface_not_supported [0.085212s] ... ok {22} ironic.tests.unit.api.controllers.v1.test_node.TestCheckCleanSteps.test__check_clean_steps_valid [0.042277s] ... ok PATCH: /v1/nodes/deadbeef-0000-1111-2222-333333333333 [{'path': '/name', 'value': '', 'op': 'add'}] GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-956874ec-f959-45e9-80ce-f91b6aa8c414 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.5 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Node deadbeef-0000-1111-2222-333333333333: Cannot change name to invalid name ''\"}"} {23} ironic.tests.unit.api.controllers.v1.test_node.TestPatch.test_patch_add_name_empty_invalid [0.089435s] ... ok GET: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123 {} GOT:{u'target_power_state': None, u'links': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'bookmark'}], u'target_provision_state': None, u'last_error': None, u'updated_at': None, u'maintenance_reason': None, u'states': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states', u'rel': u'bookmark'}], u'provision_state': u'available', u'clean_step': {}, u'uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'console_enabled': False, u'extra': {}, u'raid_config': {}, u'provision_updated_at': None, u'power_state': None, u'target_raid_config': {}, u'network_interface': None, u'inspection_started_at': None, u'inspection_finished_at': None, u'maintenance': False, u'driver': u'fake-hardware', u'reservation': None, u'properties': {u'memory_mb': u'4096', u'cpu_arch': u'x86_64', u'local_gb': u'10', u'cpus': u'8'}, u'instance_uuid': None, u'name': None, u'driver_info': {u'fake_password': u'******', u'foo': u'bar'}, u'resource_class': None, u'created_at': u'2019-06-06T07:02:15.118032+00:00', u'portgroups': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/portgroups', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/portgroups', u'rel': u'bookmark'}], u'instance_info': {u'foo': u'bar', u'image_url': u'******', u'configdrive': u'******'}, u'driver_internal_info': {u'private_state': u'secret value'}, u'chassis_uuid': None, u'ports': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'bookmark'}]} {3} ironic.tests.unit.api.controllers.v1.test_node.TestListNodes.test_node_interface_fields_hidden_in_lower_version [0.086697s] ... ok PATCH: /v1/deploy_templates/c5c05927-2697-41b4-a0d3-f51fe6ae2793 [{'path': '/steps/2', 'value': {'interface': 'bios', 'priority': 42, 'step': 'apply_configuration', 'args': {'foo': 'bar'}}, 'op': 'add'}] GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-e6b3c148-3c86-45f0-bf4f-12c99d806c84 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Couldn't apply patch '{'path': '/steps/2', 'value': {'interface': 'bios', 'priority': 42, 'step': 'apply_configuration', 'args': {'foo': 'bar'}}, 'op': 'add'}'. Reason: can't insert outside of list\"}"} DELETE: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/vifs/b064b1ff-44b0-4410-9d87-cd75a0f7ab51 GOT:Response: 409 Conflict Content-Type: application/json Openstack-Request-Id: req-772fcc46-2224-41a3-acc6-ee9603fdac83 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.28 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Node is locked by host , please retry after the current operation is completed.\"}"} {25} ironic.tests.unit.api.controllers.v1.test_deploy_template.TestPatch.test_add_too_high_index_step_fail [0.080459s] ... ok {19} ironic.tests.unit.api.controllers.v1.test_node.TestAttachDetachVif.test_vif_detach_node_locked [0.064724s] ... ok GET: /v1/nodes/validate?node_uuid=1be26c0b-03f2-4d2e-ae87-c02d7f33c123 {} GOT:{} {3} ironic.tests.unit.api.controllers.v1.test_node.TestListNodes.test_validate_by_uuid_using_deprecated_interface [0.085459s] ... ok GET: /v1/drivers?type=classic {} GOT:Response: 406 Not Acceptable Content-Type: application/json Openstack-Request-Id: req-fbf8d749-6948-4562-b826-7c66d9e8199e X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.29 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Request not acceptable. The minimal required API version should be 1.30\"}"} {29} ironic.tests.unit.api.controllers.v1.test_driver.TestListDrivers.test_drivers_type_filter_bad_version [0.045983s] ... ok GET: /v1/drivers/fake-hardware-type/raid/logical_disk_properties {} GOT:Response: 406 Not Acceptable Content-Type: application/json Openstack-Request-Id: req-f6648d44-7163-42c9-b49d-02026c6c1152 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.4 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Request not acceptable.\"}"} {14} ironic.tests.unit.api.controllers.v1.test_driver.TestListDrivers.test_raid_logical_disk_properties_older_version [0.079348s] ... ok DELETE: /v1/nodes/foo GOT:Response: 404 Not Found Content-Type: application/json Openstack-Request-Id: req-2d91e4e1-7c27-4dd5-95da-f88035555892 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Node foo could not be found.\"}"} {4} ironic.tests.unit.api.controllers.v1.test_node.TestDelete.test_delete_node_by_name_unsupported [0.058996s] ... ok GET: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/bios/virtualization {} GOT:Response: 404 Not Found Content-Type: application/json {"error_message": "{\"code\": 404, \"description\": \"\", \"title\": \"Not Found\"}"} {29} ironic.tests.unit.api.controllers.v1.test_node.TestBIOS.test_get_one_bios_fails_with_bad_version [0.063518s] ... ok DELETE: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123 GOT:Response: 204 No Content Openstack-Request-Id: req-d22a3899-5716-468a-ac6b-5c1835fc5a62 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {22} ironic.tests.unit.api.controllers.v1.test_node.TestDelete.test_delete_node [0.075669s] ... ok {29} ironic.tests.unit.api.controllers.v1.test_node.TestCheckCleanSteps.test__check_clean_steps_step_key_invalid [0.028660s] ... ok POST: /v1/nodes {'instance_uuid': None, 'automated_clean': True, 'uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123', 'driver_info': {'fake_password': 'fakepass', 'foo': 'bar'}, 'extra': {}, 'driver': 'fake-hardware', 'properties': {'memory_mb': '4096', 'cpu_arch': 'x86_64', 'local_gb': '10', 'cpus': '8'}, 'maintenance': False, 'chassis_uuid': 'e74c40e0-d825-11e2-a28f-0800200c9a66', 'instance_info': {'foo': 'bar', 'image_url': 'http://example.com/test_image_url', 'configdrive': 'TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQ='}} GOT:Response: 406 Not Acceptable Content-Type: application/json Openstack-Request-Id: req-10c04750-e497-4894-b866-b8adea9df763 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.32 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Request not acceptable.\"}"} {2} ironic.tests.unit.api.controllers.v1.test_node.TestPost.test_create_node_automated_clean_old_api_version [0.057844s] ... ok PATCH: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123 [{'path': '/driver_info/this', 'value': 'foo', 'op': 'add'}, {'path': '/driver_info/that', 'value': 'bar', 'op': 'add'}] GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-3406dbb8-b44f-412e-9d86-2f6fba7345fc X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Fake Error Message\"}"} {21} ironic.tests.unit.api.controllers.v1.test_node.TestPatch.test_update_fails_bad_driver_info [0.098956s] ... ok GET: /v1/drivers/fake-hardware-type {} GOT:{u'hosts': [u'fake-host1', u'fake-host2'], u'name': u'fake-hardware-type', u'links': [{u'href': u'http://localhost/v1/drivers/fake-hardware-type', u'rel': u'self'}, {u'href': u'http://localhost/drivers/fake-hardware-type', u'rel': u'bookmark'}], u'properties': [{u'href': u'http://localhost/v1/drivers/fake-hardware-type/properties', u'rel': u'self'}, {u'href': u'http://localhost/drivers/fake-hardware-type/properties', u'rel': u'bookmark'}]} {20} ironic.tests.unit.api.controllers.v1.test_driver.TestListDrivers.test_driver_type_hidden_in_lower_version [0.080546s] ... ok POST: /v1/deploy_templates {'extra': {}, 'uuid': 'c5f4622f-43d1-485e-be09-53c48eff9ac0', 'name': u'CUSTOM_DT1'} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-19ed3c26-2591-4e59-9a06-d3331e476f85 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Invalid input for field/attribute steps. Value: 'None'. Mandatory field missing.\"}"} {16} ironic.tests.unit.api.controllers.v1.test_deploy_template.TestPost.test_create_no_mandatory_field_steps [0.047119s] ... ok PATCH: /v1/chassis/e74c40e0-d825-11e2-a28f-0800200c9a66 [{'path': '/description', 'value': 'new', 'op': 'replace'}] GOT:Response: 500 Internal Server Error Content-Type: application/json Openstack-Request-Id: req-28a96854-d35e-4b48-8dd3-330f435ee19c X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Server\", \"faultstring\": \"\"}"} {10} ironic.tests.unit.api.controllers.v1.test_chassis.TestPatch.test_update_error [0.059983s] ... ok GET: /v1/nodes?conductor=like.shadows {} GOT:{u'nodes': []} GET: /v1/nodes?conductor=like.shadows {} GOT:{u'nodes': []} GET: /v1/nodes?conductor=fake.conductor {} GOT:Response: 500 Internal Server Error Content-Type: application/json Openstack-Request-Id: req-afeac9e9-b8f9-4f78-8b54-28b49a81ce94 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.49 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Server\", \"faultstring\": \"Some unexpected thing happened\"}"} {7} ironic.tests.unit.api.controllers.v1.test_node.TestListNodes.test_get_nodes_by_conductor_no_valid_host [0.253844s] ... ok This is badINFO [alembic.runtime.migration] Context impl SQLiteImpl. INFO [alembic.runtime.migration] Will assume non-transactional DDL. PATCH: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123 [{'path': '/name', 'op': 'remove'}] GOT:Response: 200 OK Content-Type: application/json Openstack-Request-Id: req-9fe6b0a3-1437-4610-bfa2-bd979c852430 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.5 {"target_power_state": null, "links": [{"href": "http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "rel": "self"}, {"href": "http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "rel": "bookmark"}], "target_provision_state": null, "last_error": null, "updated_at": null, "maintenance_reason": null, "provision_state": "available", "uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "console_enabled": false, "extra": {}, "provision_updated_at": null, "maintenance": false, "power_state": null, "driver": "fake-hardware", "reservation": null, "properties": {"memory_mb": "4096", "cpu_arch": "x86_64", "local_gb": "10", "cpus": "8"}, "instance_uuid": null, "name": "node-57.1", "driver_info": {"fake_password": "******", "foo": "bar"}, "created_at": "2019-06-06T07:02:15.048310+00:00", "instance_info": {"foo": "bar", "image_url": "******", "configdrive": "******"}, "driver_internal_info": {"private_state": "secret value"}, "chassis_uuid": "e74c40e0-d825-11e2-a28f-0800200c9a66", "ports": [{"href": "http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports", "rel": "self"}, {"href": "http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports", "rel": "bookmark"}]} {24} ironic.tests.unit.api.controllers.v1.test_node.TestPatch.test_patch_name_remove_ok [0.115670s] ... ok GET: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123 {} GOT:{u'target_power_state': None, u'links': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'bookmark'}], u'target_provision_state': None, u'last_error': None, u'updated_at': None, u'maintenance_reason': None, u'provision_state': u'available', u'uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'console_enabled': False, u'extra': {}, u'provision_updated_at': None, u'maintenance': False, u'power_state': None, u'driver': u'fake-hardware', u'reservation': None, u'properties': {u'memory_mb': u'4096', u'cpu_arch': u'x86_64', u'local_gb': u'10', u'cpus': u'8'}, u'instance_uuid': None, u'driver_info': {u'fake_password': u'******', u'foo': u'bar'}, u'created_at': u'2019-06-06T07:02:14.768198+00:00', u'instance_info': {u'foo': u'bar', u'image_url': u'******', u'configdrive': u'******'}, u'driver_internal_info': {u'private_state': u'secret value'}, u'chassis_uuid': None, u'ports': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'bookmark'}]} GET: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123 {} GOT:{u'target_power_state': None, u'links': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'bookmark'}], u'target_provision_state': None, u'last_error': None, u'updated_at': None, u'maintenance_reason': None, u'provision_state': u'available', u'uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'console_enabled': False, u'extra': {}, u'provision_updated_at': None, u'maintenance': False, u'power_state': None, u'driver': u'fake-hardware', u'reservation': None, u'properties': {u'memory_mb': u'4096', u'cpu_arch': u'x86_64', u'local_gb': u'10', u'cpus': u'8'}, u'instance_uuid': None, u'name': u'fish', u'driver_info': {u'fake_password': u'******', u'foo': u'bar'}, u'created_at': u'2019-06-06T07:02:14.768198+00:00', u'ports': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'bookmark'}], u'driver_internal_info': {u'private_state': u'secret value'}, u'chassis_uuid': None, u'instance_info': {u'foo': u'bar', u'image_url': u'******', u'configdrive': u'******'}} {18} ironic.tests.unit.api.controllers.v1.test_node.TestListNodes.test_hide_fields_in_newer_versions_name [0.119318s] ... ok POST: /v1/nodes/node-39/vifs {'id': '3ed26d47-6c2c-4cd9-b76f-1a990a0e952e'} GOT:Response: 204 No Content Openstack-Request-Id: req-8787acbf-9f88-49e7-8363-f7a52fa7a8f6 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.28 {14} ironic.tests.unit.api.controllers.v1.test_node.TestAttachDetachVif.test_vif_attach_by_node_name [0.062203s] ... ok PATCH: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports/9bb50f13-0b8d-4ade-ad2d-d91fefdef9cc [{'path': '/extra/foo', 'value': 'bar', 'op': 'add'}] GOT:Response: 403 Forbidden Content-Type: application/json Openstack-Request-Id: req-b97d044c-ddf3-44a4-85c8-afd4f06bbddd X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Operation not permitted.\"}"} {3} ironic.tests.unit.api.controllers.v1.test_node.TestPatch.test_patch_ports_subresource [0.076519s] ... ok DELETE: /v1/nodes/foo.1 GOT:Response: 204 No Content Openstack-Request-Id: req-7c685ca3-2d69-4751-8a2e-32f6db97148b X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.5 {20} ironic.tests.unit.api.controllers.v1.test_node.TestDelete.test_delete_node_by_name [0.082540s] ... ok PATCH: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123 [{'path': '/name', 'value': 'Windows ME', 'op': 'add'}, {'path': '/name', 'value': 'Guido Van Error', 'op': 'replace'}] GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-80d6f8a1-601a-4681-a3eb-09e5632b2aff X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.5 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Node 1be26c0b-03f2-4d2e-ae87-c02d7f33c123: Cannot change name to invalid name 'Windows ME'\"}"} {23} ironic.tests.unit.api.controllers.v1.test_node.TestPatch.test_patch_update_name_twice_both_invalid [0.090318s] ... ok PUT: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states/provision {'target': 'adopt'} GOT:Response: 202 Accepted Location: http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states Openstack-Request-Id: req-7c7a58ee-f1e7-41f5-ba9d-516737fce2d9 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.17 {2} ironic.tests.unit.api.controllers.v1.test_node.TestPut.test_adopt_from_adoptfail [0.107004s] ... ok DELETE: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4 GOT:Response: 403 Forbidden Content-Type: application/json Openstack-Request-Id: req-8fa1c9cb-44c2-4bdd-9c4e-c9e034ac4402 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.24 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Operation not permitted.\"}"} {4} ironic.tests.unit.api.controllers.v1.test_node.TestDelete.test_delete_portgroup_subresource [0.068363s] ... ok GET: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123 {} GOT:{u'target_power_state': None, u'links': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'bookmark'}], u'target_provision_state': None, u'last_error': None, u'updated_at': None, u'maintenance_reason': None, u'provision_state': None, u'uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'console_enabled': False, u'extra': {}, u'provision_updated_at': None, u'maintenance': False, u'power_state': None, u'driver': u'fake-hardware', u'reservation': None, u'properties': {u'memory_mb': u'4096', u'cpu_arch': u'x86_64', u'local_gb': u'10', u'cpus': u'8'}, u'instance_uuid': None, u'driver_info': {u'fake_password': u'******', u'foo': u'bar'}, u'created_at': u'2019-06-06T07:02:14.955766+00:00', u'ports': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'bookmark'}], u'chassis_uuid': None, u'instance_info': {u'foo': u'bar', u'image_url': u'******', u'configdrive': u'******'}} GET: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123 {} GOT:{u'target_power_state': None, u'links': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'bookmark'}], u'target_provision_state': None, u'last_error': None, u'updated_at': None, u'maintenance_reason': None, u'provision_state': u'available', u'uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'console_enabled': False, u'extra': {}, u'provision_updated_at': None, u'maintenance': False, u'power_state': None, u'driver': u'fake-hardware', u'reservation': None, u'properties': {u'memory_mb': u'4096', u'cpu_arch': u'x86_64', u'local_gb': u'10', u'cpus': u'8'}, u'instance_uuid': None, u'driver_info': {u'fake_password': u'******', u'foo': u'bar'}, u'created_at': u'2019-06-06T07:02:14.955766+00:00', u'ports': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'bookmark'}], u'chassis_uuid': None, u'instance_info': {u'foo': u'bar', u'image_url': u'******', u'configdrive': u'******'}} {1} ironic.tests.unit.api.controllers.v1.test_node.TestListNodes.test_mask_available_state [0.118262s] ... ok GET: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123 {} GOT:{u'target_power_state': None, u'inspect_interface': None, u'links': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'bookmark'}], u'target_provision_state': None, u'last_error': None, u'storage_interface': None, u'updated_at': None, u'maintenance_reason': None, u'states': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states', u'rel': u'bookmark'}], u'traits': [], u'provision_state': u'available', u'clean_step': {}, u'vendor_interface': None, u'uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'console_enabled': False, u'extra': {}, u'raid_config': {}, u'provision_updated_at': None, u'power_state': None, u'target_raid_config': {}, u'network_interface': None, u'inspection_started_at': None, u'inspection_finished_at': None, u'maintenance': False, u'driver': u'fake-hardware', u'power_interface': None, u'volume': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/volume', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/volume', u'rel': u'bookmark'}], u'raid_interface': None, u'rescue_interface': None, u'boot_interface': None, u'reservation': None, u'management_interface': None, u'properties': {u'memory_mb': u'4096', u'cpu_arch': u'x86_64', u'local_gb': u'10', u'cpus': u'8'}, u'instance_uuid': None, u'name': None, u'driver_info': {u'fake_password': u'******', u'foo': u'bar'}, u'resource_class': None, u'created_at': u'2019-06-06T07:02:14.677217+00:00', u'portgroups': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/portgroups', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/portgroups', u'rel': u'bookmark'}], u'deploy_interface': None, u'instance_info': {u'foo': u'bar', u'image_url': u'******', u'configdrive': u'******'}, u'console_interface': None, u'driver_internal_info': {u'private_state': u'secret value'}, u'chassis_uuid': None, u'ports': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'bookmark'}]} GET: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123 {} GOT:{u'target_power_state': None, u'inspect_interface': None, u'links': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'bookmark'}], u'target_provision_state': None, u'last_error': None, u'storage_interface': None, u'updated_at': None, u'maintenance_reason': None, u'states': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states', u'rel': u'bookmark'}], u'traits': [], u'provision_state': u'available', u'clean_step': {}, u'vendor_interface': None, u'uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'console_enabled': False, u'extra': {}, u'raid_config': {}, u'provision_updated_at': None, u'power_state': None, u'target_raid_config': {}, u'network_interface': None, u'inspection_started_at': None, u'inspection_finished_at': None, u'maintenance': False, u'driver': u'fake-hardware', u'power_interface': None, u'volume': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/volume', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/volume', u'rel': u'bookmark'}], u'raid_interface': None, u'rescue_interface': None, u'boot_interface': None, u'reservation': None, u'management_interface': None, u'properties': {u'memory_mb': u'4096', u'cpu_arch': u'x86_64', u'local_gb': u'10', u'cpus': u'8'}, u'bios_interface': None, u'instance_uuid': None, u'name': None, u'driver_info': {u'fake_password': u'******', u'foo': u'bar'}, u'resource_class': None, u'created_at': u'2019-06-06T07:02:14.677217+00:00', u'portgroups': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/portgroups', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/portgroups', u'rel': u'bookmark'}], u'deploy_interface': None, u'instance_info': {u'foo': u'bar', u'image_url': u'******', u'configdrive': u'******'}, u'console_interface': None, u'driver_internal_info': {u'private_state': u'secret value'}, u'chassis_uuid': None, u'ports': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'bookmark'}]} {30} ironic.tests.unit.api.controllers.v1.test_node.TestListNodes.test_node_bios_hidden_in_lower_version [0.116538s] ... ok GET: /v1/nodes/validate?node=spam {} GOT:{} {30} ironic.tests.unit.api.controllers.v1.test_node.TestListNodes.test_validate_by_name [0.084522s] ... ok GET: /v1/deploy_templates?detail=True&fields=name {} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-1629ce87-8e13-43d0-91d8-6279264c876e X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Can not specify ?detail=True and fields in the same request.\"}"} {10} ironic.tests.unit.api.controllers.v1.test_deploy_template.TestListDeployTemplates.test_detail_using_query_and_fields [0.061685s] ... ok GET: /v1/nodes?conductor=rocky.rocks {} GOT:Response: 406 Not Acceptable Content-Type: application/json Openstack-Request-Id: req-0133ad35-a06c-490f-b9d7-0d09d2418bc7 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.48 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Request not acceptable. The minimal required API version should be 1.49\"}"} {7} ironic.tests.unit.api.controllers.v1.test_node.TestListNodes.test_get_nodes_by_conductor_not_allowed [0.054074s] ... ok GET: /v1/nodes?associated=blah {} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-c7522803-6a08-40f3-a321-b48e16d4d02e X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Invalid input for field/attribute associated. Value: 'blah'. unable to convert to boolean. Error: Unrecognized value 'blah', acceptable values are: '0', '1', 'f', 'false', 'n', 'no', 'off', 'on', 't', 'true', 'y', 'yes'\"}"} {29} ironic.tests.unit.api.controllers.v1.test_node.TestListNodes.test_associated_nodes_error [0.127070s] ... ok POST: /v1/deploy_templates {'extra': {}, 'steps': [{'priority': 'not a number', 'interface': 'raid', 'step': 'create_configuration', 'args': {'logical_disks': []}}], 'uuid': 'f0f8e908-a78d-40ca-bde9-d256c7536c60', 'name': u'CUSTOM_DT1'} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-347b6c05-7554-4fad-9573-713fb999ff94 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Invalid input for field/attribute template. Value: '{'steps': [{'priority': 'not a number', 'interface': 'raid', 'step': 'create_configuration', 'args': {'logical_disks': []}}], 'uuid': 'f0f8e908-a78d-40ca-bde9-d256c7536c60', 'name': 'CUSTOM_DT1', 'extra': {}}'. invalid literal for int() with base 10: 'not a number'\"}"} {25} ironic.tests.unit.api.controllers.v1.test_deploy_template.TestPost.test_create_invalid_step_field_priority [0.047980s] ... ok POST: /v1/deploy_templates {'extra': {}, 'steps': [{'priority': 10, 'interface': 'raid', 'step': 'create_configuration'}], 'uuid': '8a15e0ba-7fcd-4d51-9c48-7205c36bc7d2', 'name': u'CUSTOM_DT1'} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-78fd539e-dcde-4a4d-bb64-519b27d29227 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Invalid input for field/attribute args. Value: 'None'. Mandatory field missing.\"}"} {16} ironic.tests.unit.api.controllers.v1.test_deploy_template.TestPost.test_create_no_mandatory_step_field_args [0.048492s] ... ok DELETE: /v1/nodes/foo GOT:Response: 404 Not Found Content-Type: application/json Openstack-Request-Id: req-ae4e981a-f55a-4d23-9bd1-fc5d85eeac9a X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.5 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Node foo could not be found.\"}"} {20} ironic.tests.unit.api.controllers.v1.test_node.TestDelete.test_delete_node_not_found_by_name [0.048140s] ... ok GET: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123?fields=conductor {} GOT:{u'links': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'bookmark'}], u'conductor': u'fake.conductor'} {4} ironic.tests.unit.api.controllers.v1.test_node.TestListNodes.test_get_conductor_field [0.113999s] ... ok GET: /v1/nodes/detail?associated=true {} GOT:{u'nodes': [{u'target_power_state': None, u'links': [{u'href': u'http://localhost/v1/nodes/229e91d2-40d3-4d15-b98c-a3d89da0dfbd', u'rel': u'self'}, {u'href': u'http://localhost/nodes/229e91d2-40d3-4d15-b98c-a3d89da0dfbd', u'rel': u'bookmark'}], u'target_provision_state': None, u'last_error': None, u'updated_at': None, u'maintenance_reason': None, u'provision_state': None, u'uuid': u'229e91d2-40d3-4d15-b98c-a3d89da0dfbd', u'console_enabled': False, u'extra': {}, u'provision_updated_at': None, u'maintenance': False, u'power_state': None, u'driver': u'fake-hardware', u'reservation': None, u'properties': {u'memory_mb': u'4096', u'cpu_arch': u'x86_64', u'local_gb': u'10', u'cpus': u'8'}, u'instance_uuid': u'67938dd2-5b49-4c0b-bbc6-97b057ab8536', u'driver_info': {u'fake_password': u'******', u'foo': u'bar'}, u'created_at': u'2019-06-06T07:02:14.498395+00:00', u'ports': [{u'href': u'http://localhost/v1/nodes/229e91d2-40d3-4d15-b98c-a3d89da0dfbd/ports', u'rel': u'self'}, {u'href': u'http://localhost/nodes/229e91d2-40d3-4d15-b98c-a3d89da0dfbd/ports', u'rel': u'bookmark'}], u'chassis_uuid': None, u'instance_info': {u'foo': u'bar', u'image_url': u'******', u'configdrive': u'******'}}, {u'target_power_state': None, u'links': [{u'href': u'http://localhost/v1/nodes/840cca04-6b2d-4880-94b2-c55afd39bbd3', u'rel': u'self'}, {u'href': u'http://localhost/nodes/840cca04-6b2d-4880-94b2-c55afd39bbd3', u'rel': u'bookmark'}], u'target_provision_state': None, u'last_error': None, u'updated_at': None, u'maintenance_reason': None, u'provision_state': None, u'uuid': u'840cca04-6b2d-4880-94b2-c55afd39bbd3', u'console_enabled': False, u'extra': {}, u'provision_updated_at': None, u'maintenance': False, u'power_state': None, u'driver': u'fake-hardware', u'reservation': None, u'properties': {u'memory_mb': u'4096', u'cpu_arch': u'x86_64', u'local_gb': u'10', u'cpus': u'8'}, u'instance_uuid': u'97d121e3-b7bf-4009-97e9-017dad8d6f89', u'driver_info': {u'fake_password': u'******', u'foo': u'bar'}, u'created_at': u'2019-06-06T07:02:14.509456+00:00', u'ports': [{u'href': u'http://localhost/v1/nodes/840cca04-6b2d-4880-94b2-c55afd39bbd3/ports', u'rel': u'self'}, {u'href': u'http://localhost/nodes/840cca04-6b2d-4880-94b2-c55afd39bbd3/ports', u'rel': u'bookmark'}], u'chassis_uuid': None, u'instance_info': {u'foo': u'bar', u'image_url': u'******', u'configdrive': u'******'}}, {u'target_power_state': None, u'links': [{u'href': u'http://localhost/v1/nodes/f3f91e75-b460-45be-a53b-08cff24258ba', u'rel': u'self'}, {u'href': u'http://localhost/nodes/f3f91e75-b460-45be-a53b-08cff24258ba', u'rel': u'bookmark'}], u'target_provision_state': None, u'last_error': None, u'updated_at': None, u'maintenance_reason': None, u'provision_state': None, u'uuid': u'f3f91e75-b460-45be-a53b-08cff24258ba', u'console_enabled': False, u'extra': {}, u'provision_updated_at': None, u'maintenance': False, u'power_state': None, u'driver': u'fake-hardware', u'reservation': None, u'properties': {u'memory_mb': u'4096', u'cpu_arch': u'x86_64', u'local_gb': u'10', u'cpus': u'8'}, u'instance_uuid': u'5c005333-b26b-43db-bc2d-3a5becf843ee', u'driver_info': {u'fake_password': u'******', u'foo': u'bar'}, u'created_at': u'2019-06-06T07:02:14.520079+00:00', u'ports': [{u'href': u'http://localhost/v1/nodes/f3f91e75-b460-45be-a53b-08cff24258ba/ports', u'rel': u'self'}, {u'href': u'http://localhost/nodes/f3f91e75-b460-45be-a53b-08cff24258ba/ports', u'rel': u'bookmark'}], u'chassis_uuid': None, u'instance_info': {u'foo': u'bar', u'image_url': u'******', u'configdrive': u'******'}}, {u'target_power_state': None, u'links': [{u'href': u'http://localhost/v1/nodes/c6e6b179-bfeb-471e-9a21-4b5a48fb3e7f', u'rel': u'self'}, {u'href': u'http://localhost/nodes/c6e6b179-bfeb-471e-9a21-4b5a48fb3e7f', u'rel': u'bookmark'}], u'target_provision_state': None, u'last_error': None, u'updated_at': None, u'maintenance_reason': None, u'provision_state': None, u'uuid': u'c6e6b179-bfeb-471e-9a21-4b5a48fb3e7f', u'console_enabled': False, u'extra': {}, u'provision_updated_at': None, u'maintenance': False, u'power_state': None, u'driver': u'fake-hardware', u'reservation': None, u'properties': {u'memory_mb': u'4096', u'cpu_arch': u'x86_64', u'local_gb': u'10', u'cpus': u'8'}, u'instance_uuid': u'2d1c174f-816e-4bab-86d7-3ef3e2ae2da2', u'driver_info': {u'fake_password': u'******', u'foo': u'bar'}, u'created_at': u'2019-06-06T07:02:14.530513+00:00', u'ports': [{u'href': u'http://localhost/v1/nodes/c6e6b179-bfeb-471e-9a21-4b5a48fb3e7f/ports', u'rel': u'self'}, {u'href': u'http://localhost/nodes/c6e6b179-bfeb-471e-9a21-4b5a48fb3e7f/ports', u'rel': u'bookmark'}], u'chassis_uuid': None, u'instance_info': {u'foo': u'bar', u'image_url': u'******', u'configdrive': u'******'}}]} {11} ironic.tests.unit.api.controllers.v1.test_node.TestListNodes.test_detail_with_association_filter [0.214851s] ... ok PATCH: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/volume/targets/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 [{'path': '/extra/foo', 'value': 'bar', 'op': 'add'}] GOT:Response: 403 Forbidden Content-Type: application/json Openstack-Request-Id: req-5fd8b19a-2725-4edb-aebb-519c7c008f14 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Operation not permitted.\"}"} {24} ironic.tests.unit.api.controllers.v1.test_node.TestPatch.test_patch_volume_targets_subresource [0.098799s] ... ok DELETE: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 GOT:Response: 403 Forbidden Content-Type: application/json Openstack-Request-Id: req-76ede6fa-e791-44d8-a7e6-8604d063f656 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Operation not permitted.\"}"} {14} ironic.tests.unit.api.controllers.v1.test_node.TestDelete.test_delete_ports_subresource [0.068914s] ... ok GET: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states/console {} GOT:{u'console_enabled': False, u'console_info': None} {29} ironic.tests.unit.api.controllers.v1.test_node.TestListNodes.test_get_console_information_console_disabled [0.088169s] ... ok PUT: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states/power {'target': 'power on'} GOT:Response: 202 Accepted Location: http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states Openstack-Request-Id: req-ec3b1034-7286-4a0f-90d4-3c68f23a1964 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.27 {2} ironic.tests.unit.api.controllers.v1.test_node.TestPut.test_power_state_power_on_no_timeout_valid_soft_ver [0.078152s] ... ok PATCH: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123?reset_interfaces=True [{'path': '/name', 'value': 'new name', 'op': 'replace'}] GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-b3fbb783-4bc7-4584-b22b-d1353d8d69a3 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.45 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"The reset_interfaces parameter can only be used when changing the node's driver.\"}"} {23} ironic.tests.unit.api.controllers.v1.test_node.TestPatch.test_reset_interfaces_without_driver [0.075177s] ... ok POST: /v1/nodes {'instance_uuid': None, 'uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123', 'driver_info': {'fake_password': 'fakepass', 'foo': 'bar'}, 'extra': {}, 'driver': 'fake-hardware', 'properties': {'memory_mb': '4096', 'cpu_arch': 'x86_64', 'local_gb': '10', 'cpus': '8'}, 'maintenance': False, 'chassis_uuid': 'e74c40e0-d825-11e2-a28f-0800200c9a66', 'instance_info': {'foo': 'bar', 'image_url': 'http://example.com/test_image_url', 'configdrive': 'TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQ='}} GOT:Response: 201 Created Content-Type: application/json Location: http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123 Openstack-Request-Id: req-33b2b13c-7296-4682-838d-eb8ac57db96c X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"target_power_state": null, "links": [{"href": "http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "rel": "self"}, {"href": "http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "rel": "bookmark"}], "target_provision_state": null, "last_error": null, "updated_at": null, "maintenance_reason": null, "provision_state": null, "uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "console_enabled": false, "extra": {}, "provision_updated_at": null, "maintenance": false, "power_state": null, "driver": "fake-hardware", "reservation": null, "properties": {"memory_mb": "4096", "cpu_arch": "x86_64", "local_gb": "10", "cpus": "8"}, "instance_uuid": null, "driver_info": {"fake_password": "******", "foo": "bar"}, "created_at": "2019-06-06T07:02:15.204694+00:00", "ports": [{"href": "http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports", "rel": "self"}, {"href": "http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports", "rel": "bookmark"}], "chassis_uuid": "e74c40e0-d825-11e2-a28f-0800200c9a66", "instance_info": {"foo": "bar", "image_url": "******", "configdrive": "******"}} GET: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123 {} GOT:{u'target_power_state': None, u'links': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'bookmark'}], u'target_provision_state': None, u'last_error': None, u'updated_at': None, u'maintenance_reason': None, u'states': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states', u'rel': u'bookmark'}], u'provision_state': u'available', u'clean_step': {}, u'uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'console_enabled': False, u'extra': {}, u'raid_config': {}, u'provision_updated_at': None, u'power_state': None, u'target_raid_config': {}, u'network_interface': u'flat', u'inspection_started_at': None, u'inspection_finished_at': None, u'maintenance': False, u'driver': u'fake-hardware', u'reservation': None, u'properties': {u'memory_mb': u'4096', u'cpu_arch': u'x86_64', u'local_gb': u'10', u'cpus': u'8'}, u'instance_uuid': None, u'name': None, u'driver_info': {u'fake_password': u'******', u'foo': u'bar'}, u'resource_class': None, u'created_at': u'2019-06-06T07:02:15.204694+00:00', u'instance_info': {u'foo': u'bar', u'image_url': u'******', u'configdrive': u'******'}, u'driver_internal_info': {}, u'chassis_uuid': u'e74c40e0-d825-11e2-a28f-0800200c9a66', u'ports': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'bookmark'}]} {17} ironic.tests.unit.api.controllers.v1.test_node.TestPost.test_create_node_no_default_resource_class [0.162036s] ... ok PATCH: /v1/nodes/46d0c3c6-7802-42d1-bec4-7b26e1667b4c [{'path': '/storage_interface', 'op': 'remove'}] GOT:Response: 200 OK Content-Type: application/json Openstack-Request-Id: req-e13663ae-97ea-4e95-a762-a41347f857f0 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"target_power_state": null, "automated_clean": null, "inspect_interface": null, "links": [{"href": "http://localhost/v1/nodes/46d0c3c6-7802-42d1-bec4-7b26e1667b4c", "rel": "self"}, {"href": "http://localhost/nodes/46d0c3c6-7802-42d1-bec4-7b26e1667b4c", "rel": "bookmark"}], "target_provision_state": null, "deploy_step": {}, "storage_interface": null, "conductor_group": "", "protected_reason": null, "maintenance_reason": null, "states": [{"href": "http://localhost/v1/nodes/46d0c3c6-7802-42d1-bec4-7b26e1667b4c/states", "rel": "self"}, {"href": "http://localhost/nodes/46d0c3c6-7802-42d1-bec4-7b26e1667b4c/states", "rel": "bookmark"}], "traits": [], "provision_state": "available", "clean_step": {}, "vendor_interface": null, "description": null, "uuid": "46d0c3c6-7802-42d1-bec4-7b26e1667b4c", "console_enabled": false, "extra": {}, "raid_config": {}, "provision_updated_at": null, "power_state": null, "last_error": null, "target_raid_config": {}, "network_interface": null, "inspection_started_at": null, "inspection_finished_at": null, "maintenance": false, "conductor": null, "power_interface": null, "driver": "fake-hardware", "updated_at": null, "volume": [{"href": "http://localhost/v1/nodes/46d0c3c6-7802-42d1-bec4-7b26e1667b4c/volume", "rel": "self"}, {"href": "http://localhost/nodes/46d0c3c6-7802-42d1-bec4-7b26e1667b4c/volume", "rel": "bookmark"}], "raid_interface": null, "rescue_interface": null, "boot_interface": null, "reservation": null, "management_interface": null, "properties": {"memory_mb": "4096", "cpu_arch": "x86_64", "local_gb": "10", "cpus": "8"}, "bios_interface": null, "instance_uuid": null, "name": null, "driver_info": {"fake_password": "******", "foo": "bar"}, "resource_class": null, "fault": null, "created_at": "2019-06-06T07:02:14.870320+00:00", "portgroups": [{"href": "http://localhost/v1/nodes/46d0c3c6-7802-42d1-bec4-7b26e1667b4c/portgroups", "rel": "self"}, {"href": "http://localhost/nodes/46d0c3c6-7802-42d1-bec4-7b26e1667b4c/portgroups", "rel": "bookmark"}], "deploy_interface": null, "ports": [{"href": "http://localhost/v1/nodes/46d0c3c6-7802-42d1-bec4-7b26e1667b4c/ports", "rel": "self"}, {"href": "http://localhost/nodes/46d0c3c6-7802-42d1-bec4-7b26e1667b4c/ports", "rel": "bookmark"}], "console_interface": null, "protected": false, "driver_internal_info": {"private_state": "secret value"}, "chassis_uuid": null, "owner": null, "instance_info": {"foo": "bar", "image_url": "******", "configdrive": "******"}, "allocation_uuid": null} {5} ironic.tests.unit.api.controllers.v1.test_node.TestPatch.test_reset_storage_interface [0.132712s] ... ok GET: /v1/nodes/detail?instance_uuid=276cb9e1-8329-464b-be3a-a9ec57f6885c {} GOT:{u'nodes': [{u'target_power_state': None, u'links': [{u'href': u'http://localhost/v1/nodes/2e8dc90e-d920-4da6-bf7e-5e71f8dc5fb1', u'rel': u'self'}, {u'href': u'http://localhost/nodes/2e8dc90e-d920-4da6-bf7e-5e71f8dc5fb1', u'rel': u'bookmark'}], u'target_provision_state': None, u'last_error': None, u'updated_at': None, u'maintenance_reason': None, u'provision_state': None, u'uuid': u'2e8dc90e-d920-4da6-bf7e-5e71f8dc5fb1', u'console_enabled': False, u'extra': {}, u'provision_updated_at': None, u'maintenance': False, u'power_state': None, u'driver': u'fake-hardware', u'reservation': None, u'properties': {u'memory_mb': u'4096', u'cpu_arch': u'x86_64', u'local_gb': u'10', u'cpus': u'8'}, u'instance_uuid': u'276cb9e1-8329-464b-be3a-a9ec57f6885c', u'driver_info': {u'fake_password': u'******', u'foo': u'bar'}, u'created_at': u'2019-06-06T07:02:14.908402+00:00', u'ports': [{u'href': u'http://localhost/v1/nodes/2e8dc90e-d920-4da6-bf7e-5e71f8dc5fb1/ports', u'rel': u'self'}, {u'href': u'http://localhost/nodes/2e8dc90e-d920-4da6-bf7e-5e71f8dc5fb1/ports', u'rel': u'bookmark'}], u'chassis_uuid': u'e74c40e0-d825-11e2-a28f-0800200c9a66', u'instance_info': {u'foo': u'bar', u'image_url': u'******', u'configdrive': u'******'}}]} {19} ironic.tests.unit.api.controllers.v1.test_node.TestListNodes.test_detail_with_instance_uuid [0.093969s] ... ok GET: /v1/drivers/fake-hardware-type/raid/logical_disk_properties {} GOT:Response: 404 Not Found Content-Type: application/json Openstack-Request-Id: req-19e2696f-cd85-4adc-a729-88c6cfa0d473 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.12 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Driver fake-hardware does not support raid (disabled or not implemented).\"}"} {16} ironic.tests.unit.api.controllers.v1.test_driver.TestListDrivers.test_raid_logical_disk_properties_iface_not_supported [0.085698s] ... ok GET: /v1/drivers/bad_driver/properties {} GOT:Response: 404 Not Found Content-Type: application/json Openstack-Request-Id: req-ff4ba038-341a-462b-a572-1b505f9a128b X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Could not find the following driver(s) or hardware type(s): bad_driver.\"}"} {25} ironic.tests.unit.api.controllers.v1.test_driver.TestDriverProperties.test_driver_properties_invalid_driver_name [0.048060s] ... ok PATCH: /v1/deploy_templates/2a223d1a-9629-4ed2-a46a-dfed1e993ed1 [{'path': '/steps/0', 'op': 'remove'}] GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-e7433745-2406-4667-ad10-4b57f6a52d6f X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Deploy template invalid: No deploy steps specified. A deploy template must have at least one deploy step..\"}"} {10} ironic.tests.unit.api.controllers.v1.test_deploy_template.TestPatch.test_remove_only_step_fail [0.074926s] ... ok PATCH: /v1/nodes/85153899-143e-4aab-985a-e7e6ede98704 [{'path': '/allocation_uuid', 'value': '510745d4-9b92-4b23-bd5a-9101d6315e7f', 'op': 'replace'}] GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-591eba18-1c64-46ec-9711-f07b098408d0 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.52 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"'/allocation_uuid' is an internal attribute and can not be updated\"}"} {30} ironic.tests.unit.api.controllers.v1.test_node.TestPatch.test_patch_allocation_uuid_forbidden [0.085159s] ... ok GET: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123?fields=uuid,spongebob {} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-ae9a10bf-6513-4c22-b866-2e967dea3867 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Field(s) \\\"spongebob\\\" are not valid\"}"} {11} ironic.tests.unit.api.controllers.v1.test_node.TestListNodes.test_get_custom_fields_invalid_fields [0.088876s] ... ok GET: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/detail {} GOT:Response: 404 Not Found Content-Type: application/json Openstack-Request-Id: req-ebbc098c-9243-4db9-b6e1-cbb85987d1d4 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Resource could not be found.\"}"} {14} ironic.tests.unit.api.controllers.v1.test_node.TestListNodes.test_detail_against_single [0.066701s] ... ok POST: /v1/deploy_templates {'extra': {}, 'steps': [{'priority': 10, 'interface': 'raid', 'step': 'create_configuration', 'args': {'logical_disks': []}}], 'uuid': 'e8a5affc-a500-48e6-ba45-913c9cfa2431', 'name': u'CUSTOM_DT1'} GOT:Response: 201 Created Content-Type: application/json Location: http://localhost/v1/deploy_templates/e8a5affc-a500-48e6-ba45-913c9cfa2431 Openstack-Request-Id: req-d2f336ff-c7ab-4a43-8b33-97662728377c X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"uuid": "e8a5affc-a500-48e6-ba45-913c9cfa2431", "links": [{"href": "http://localhost/v1/deploy_templates/e8a5affc-a500-48e6-ba45-913c9cfa2431", "rel": "self"}, {"href": "http://localhost/deploy_templates/e8a5affc-a500-48e6-ba45-913c9cfa2431", "rel": "bookmark"}], "extra": {}, "created_at": "2019-06-06T07:02:14.956772+00:00", "updated_at": null, "steps": [{"interface": "raid", "priority": 10, "step": "create_configuration", "args": {"logical_disks": []}}], "name": "CUSTOM_DT1"} GET: /v1/deploy_templates/e8a5affc-a500-48e6-ba45-913c9cfa2431 {} GOT:{u'uuid': u'e8a5affc-a500-48e6-ba45-913c9cfa2431', u'links': [{u'href': u'http://localhost/v1/deploy_templates/e8a5affc-a500-48e6-ba45-913c9cfa2431', u'rel': u'self'}, {u'href': u'http://localhost/deploy_templates/e8a5affc-a500-48e6-ba45-913c9cfa2431', u'rel': u'bookmark'}], u'extra': {}, u'created_at': u'2019-06-06T07:02:14.956772+00:00', u'updated_at': None, u'steps': [{u'interface': u'raid', u'priority': 10, u'step': u'create_configuration', u'args': {u'logical_disks': []}}], u'name': u'CUSTOM_DT1'} {31} ironic.tests.unit.api.controllers.v1.test_deploy_template.TestPost.test_create_doesnt_contain_id [0.075549s] ... ok GET: /v1/nodes/detail {} GOT:{u'nodes': [{u'target_power_state': None, u'inspect_interface': None, u'links': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'bookmark'}], u'target_provision_state': None, u'last_error': None, u'updated_at': None, u'maintenance_reason': None, u'states': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states', u'rel': u'bookmark'}], u'provision_state': u'available', u'clean_step': {}, u'vendor_interface': None, u'uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'console_enabled': False, u'extra': {}, u'raid_config': {}, u'provision_updated_at': None, u'power_state': None, u'target_raid_config': {}, u'network_interface': None, u'inspection_started_at': None, u'inspection_finished_at': None, u'maintenance': False, u'driver': u'fake-hardware', u'power_interface': None, u'volume': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/volume', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/volume', u'rel': u'bookmark'}], u'raid_interface': None, u'boot_interface': None, u'reservation': None, u'management_interface': None, u'properties': {u'memory_mb': u'4096', u'cpu_arch': u'x86_64', u'local_gb': u'10', u'cpus': u'8'}, u'instance_uuid': None, u'name': None, u'driver_info': {u'fake_password': u'******', u'foo': u'bar'}, u'resource_class': None, u'created_at': u'2019-06-06T07:02:14.984764+00:00', u'portgroups': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/portgroups', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/portgroups', u'rel': u'bookmark'}], u'deploy_interface': None, u'instance_info': {u'foo': u'bar', u'image_url': u'******', u'configdrive': u'******'}, u'console_interface': None, u'driver_internal_info': {u'private_state': u'secret value'}, u'chassis_uuid': None, u'ports': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'bookmark'}]}]} GET: /v1/nodes/detail {} GOT:{u'nodes': [{u'target_power_state': None, u'inspect_interface': None, u'links': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'bookmark'}], u'target_provision_state': None, u'last_error': None, u'storage_interface': u'cinder', u'updated_at': None, u'maintenance_reason': None, u'states': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states', u'rel': u'bookmark'}], u'provision_state': u'available', u'clean_step': {}, u'vendor_interface': None, u'uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'console_enabled': False, u'extra': {}, u'raid_config': {}, u'provision_updated_at': None, u'power_state': None, u'target_raid_config': {}, u'network_interface': None, u'inspection_started_at': None, u'inspection_finished_at': None, u'maintenance': False, u'driver': u'fake-hardware', u'power_interface': None, u'volume': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/volume', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/volume', u'rel': u'bookmark'}], u'raid_interface': None, u'boot_interface': None, u'reservation': None, u'management_interface': None, u'properties': {u'memory_mb': u'4096', u'cpu_arch': u'x86_64', u'local_gb': u'10', u'cpus': u'8'}, u'instance_uuid': None, u'name': None, u'driver_info': {u'fake_password': u'******', u'foo': u'bar'}, u'resource_class': None, u'created_at': u'2019-06-06T07:02:14.984764+00:00', u'portgroups': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/portgroups', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/portgroups', u'rel': u'bookmark'}], u'deploy_interface': None, u'instance_info': {u'foo': u'bar', u'image_url': u'******', u'configdrive': u'******'}, u'console_interface': None, u'driver_internal_info': {u'private_state': u'secret value'}, u'chassis_uuid': None, u'ports': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'bookmark'}]}]} {9} ironic.tests.unit.api.controllers.v1.test_node.TestListNodes.test_hide_fields_in_newer_versions_storage_interface [0.219874s] ... ok PATCH: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123 [{'power_state': 'new state'}] GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-aa0300d7-4ecb-40fc-8457-c4d3b3042533 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Unknown attribute for argument patch: power_state\"}"} {24} ironic.tests.unit.api.controllers.v1.test_node.TestPatch.test_update_state [0.073252s] ... ok GET: /v1/nodes {} GOT:{u'nodes': [{u'instance_uuid': None, u'maintenance': False, u'links': [{u'href': u'http://localhost/v1/nodes/6800ab56-d6db-4d82-af41-1c83fbd44801', u'rel': u'self'}, {u'href': u'http://localhost/nodes/6800ab56-d6db-4d82-af41-1c83fbd44801', u'rel': u'bookmark'}], u'power_state': None, u'provision_state': None, u'uuid': u'6800ab56-d6db-4d82-af41-1c83fbd44801'}, {u'instance_uuid': None, u'maintenance': False, u'links': [{u'href': u'http://localhost/v1/nodes/f9a29ea2-89c4-45c0-9410-51246392e779', u'rel': u'self'}, {u'href': u'http://localhost/nodes/f9a29ea2-89c4-45c0-9410-51246392e779', u'rel': u'bookmark'}], u'power_state': None, u'provision_state': None, u'uuid': u'f9a29ea2-89c4-45c0-9410-51246392e779'}, {u'instance_uuid': None, u'maintenance': False, u'links': [{u'href': u'http://localhost/v1/nodes/75a4a6f4-4686-43fa-9321-5e49b31b986f', u'rel': u'self'}, {u'href': u'http://localhost/nodes/75a4a6f4-4686-43fa-9321-5e49b31b986f', u'rel': u'bookmark'}], u'power_state': None, u'provision_state': None, u'uuid': u'75a4a6f4-4686-43fa-9321-5e49b31b986f'}], u'next': u'http://localhost/v1/nodes?sort_key=id&sort_dir=asc&limit=3&marker=75a4a6f4-4686-43fa-9321-5e49b31b986f'} {22} ironic.tests.unit.api.controllers.v1.test_node.TestListNodes.test_collection_links_default_limit [0.192250s] ... ok GET: /v1/ports {} GOT:{u'ports': [{u'uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c781', u'links': [{u'href': u'http://localhost/v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781', u'rel': u'self'}, {u'href': u'http://localhost/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781', u'rel': u'bookmark'}], u'address': u'52:54:00:cf:2d:31'}]} GET: /v1/ports?detail=False {} GOT:{u'ports': [{u'uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c781', u'links': [{u'href': u'http://localhost/v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781', u'rel': u'self'}, {u'href': u'http://localhost/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781', u'rel': u'bookmark'}], u'address': u'52:54:00:cf:2d:31'}]} {2} ironic.tests.unit.api.controllers.v1.test_port.TestListPorts.test_detail_query_false [0.118119s] ... ok GET: /v1/nodes?driver=ipmi {} GOT:{u'nodes': [{u'instance_uuid': None, u'maintenance': False, u'links': [{u'href': u'http://localhost/v1/nodes/ab3a3d7e-54ba-47cc-a775-c8cd6a2ea8d4', u'rel': u'self'}, {u'href': u'http://localhost/nodes/ab3a3d7e-54ba-47cc-a775-c8cd6a2ea8d4', u'rel': u'bookmark'}], u'name': None, u'power_state': None, u'provision_state': u'available', u'uuid': u'ab3a3d7e-54ba-47cc-a775-c8cd6a2ea8d4'}]} GET: /v1/nodes?driver=fake-hardware {} GOT:{u'nodes': [{u'instance_uuid': None, u'maintenance': False, u'links': [{u'href': u'http://localhost/v1/nodes/965724ae-9bd0-438f-b8c3-fb15031466d3', u'rel': u'self'}, {u'href': u'http://localhost/nodes/965724ae-9bd0-438f-b8c3-fb15031466d3', u'rel': u'bookmark'}], u'name': None, u'power_state': None, u'provision_state': u'available', u'uuid': u'965724ae-9bd0-438f-b8c3-fb15031466d3'}]} {7} ironic.tests.unit.api.controllers.v1.test_node.TestListNodes.test_get_nodes_by_driver [0.225880s] ... ok GET: /v1/nodes/eggs/states {} GOT:{u'target_power_state': u'fake-state', u'target_provision_state': u'fake-state', u'last_error': u'fake-error', u'console_enabled': False, u'provision_updated_at': u'1971-03-09T00:00:00+00:00', u'power_state': u'fake-state', u'provision_state': u'fake-state'} {9} ironic.tests.unit.api.controllers.v1.test_node.TestListNodes.test_node_states_by_name [0.081350s] ... ok PATCH: /v1/nodes/3f4ea475-e67f-45e2-b3b6-04c4940dda26 [{'path': '/automated_clean', 'value': True, 'op': 'replace'}] GOT:Response: 406 Not Acceptable Content-Type: application/json Openstack-Request-Id: req-024843a1-5be5-4842-b9c5-2ee0934be3cc X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.46 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Request not acceptable.\"}"} {5} ironic.tests.unit.api.controllers.v1.test_node.TestPatch.test_update_automated_clean_old_api [0.085014s] ... ok GET: /v1/nodes?instance_uuid=6f790f6c-1b2d-445d-9ebb-ced8197221d5 {} GOT:{u'nodes': [{u'instance_uuid': u'6f790f6c-1b2d-445d-9ebb-ced8197221d5', u'maintenance': False, u'links': [{u'href': u'http://localhost/v1/nodes/16060953-9719-4c5a-80e7-df458a781edd', u'rel': u'self'}, {u'href': u'http://localhost/nodes/16060953-9719-4c5a-80e7-df458a781edd', u'rel': u'bookmark'}], u'power_state': None, u'provision_state': None, u'uuid': u'16060953-9719-4c5a-80e7-df458a781edd'}]} {25} ironic.tests.unit.api.controllers.v1.test_node.TestListNodes.test_collection_links_instance_uuid_param [0.108295s] ... ok GET: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123?fields=uuid,extra {} GOT:Response: 406 Not Acceptable Content-Type: application/json Openstack-Request-Id: req-3f85e1a3-d1ff-4c6b-9600-21cd4e414cc1 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Request not acceptable.\"}"} {14} ironic.tests.unit.api.controllers.v1.test_node.TestListNodes.test_get_custom_fields_invalid_api_version [0.064858s] ... ok GET: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123 {} GOT:{u'target_power_state': None, u'automated_clean': None, u'inspect_interface': None, u'links': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'bookmark'}], u'target_provision_state': None, u'deploy_step': {}, u'storage_interface': None, u'conductor_group': u'', u'protected_reason': None, u'maintenance_reason': None, u'states': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states', u'rel': u'bookmark'}], u'traits': [], u'provision_state': u'available', u'clean_step': {}, u'vendor_interface': None, u'uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'console_enabled': False, u'extra': {}, u'raid_config': {}, u'provision_updated_at': None, u'power_state': None, u'last_error': None, u'target_raid_config': {}, u'network_interface': None, u'inspection_started_at': None, u'inspection_finished_at': None, u'maintenance': False, u'conductor': u'fake.conductor', u'driver': u'fake-hardware', u'power_interface': None, u'updated_at': None, u'volume': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/volume', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/volume', u'rel': u'bookmark'}], u'raid_interface': None, u'rescue_interface': None, u'boot_interface': None, u'reservation': None, u'management_interface': None, u'properties': {u'memory_mb': u'4096', u'cpu_arch': u'x86_64', u'local_gb': u'10', u'cpus': u'8'}, u'bios_interface': None, u'instance_uuid': None, u'name': None, u'driver_info': {u'fake_password': u'******', u'foo': u'bar'}, u'resource_class': None, u'fault': None, u'created_at': u'2019-06-06T07:02:15.013127+00:00', u'portgroups': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/portgroups', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/portgroups', u'rel': u'bookmark'}], u'deploy_interface': None, u'instance_info': {u'foo': u'bar', u'image_url': u'******', u'configdrive': u'******'}, u'console_interface': None, u'protected': False, u'driver_internal_info': {u'private_state': u'secret value'}, u'chassis_uuid': None, u'owner': u'akindofmagic', u'ports': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'bookmark'}]} {26} ironic.tests.unit.api.controllers.v1.test_node.TestListNodes.test_node_owner_present [0.085337s] ... ok GET: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123 {} GOT:{u'target_power_state': None, u'links': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'bookmark'}], u'target_provision_state': None, u'last_error': None, u'updated_at': None, u'maintenance_reason': None, u'provision_state': None, u'uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'console_enabled': False, u'extra': {}, u'provision_updated_at': None, u'maintenance': False, u'power_state': None, u'driver': u'fake-hardware', u'reservation': None, u'properties': {u'memory_mb': u'4096', u'cpu_arch': u'x86_64', u'local_gb': u'10', u'cpus': u'8'}, u'instance_uuid': None, u'driver_info': {u'fake_password': u'******', u'foo': u'bar'}, u'created_at': u'2019-06-06T07:02:15.328627+00:00', u'ports': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'bookmark'}], u'chassis_uuid': None, u'instance_info': {u'foo': u'bar', u'image_url': u'******', u'configdrive': u'******'}} GET: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123 {} GOT:{u'target_power_state': None, u'links': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'bookmark'}], u'extra': {}, u'last_error': None, u'updated_at': None, u'maintenance_reason': None, u'provision_state': u'available', u'uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'console_enabled': False, u'target_provision_state': None, u'provision_updated_at': None, u'power_state': None, u'inspection_started_at': u'2015-03-18T19:20:00+00:00', u'inspection_finished_at': None, u'maintenance': False, u'driver': u'fake-hardware', u'reservation': None, u'properties': {u'memory_mb': u'4096', u'cpu_arch': u'x86_64', u'local_gb': u'10', u'cpus': u'8'}, u'instance_uuid': None, u'name': None, u'driver_info': {u'fake_password': u'******', u'foo': u'bar'}, u'created_at': u'2019-06-06T07:02:15.328627+00:00', u'instance_info': {u'foo': u'bar', u'image_url': u'******', u'configdrive': u'******'}, u'driver_internal_info': {u'private_state': u'secret value'}, u'chassis_uuid': None, u'ports': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'bookmark'}]} {27} ironic.tests.unit.api.controllers.v1.test_node.TestListNodes.test_hide_fields_in_newer_versions_inspection [0.122376s] ... ok POST: /v1/deploy_templates {'extra': {}, 'steps': [{'priority': 10, 'interface': 'foo', 'step': 'create_configuration', 'args': {'logical_disks': []}}], 'uuid': 'd4d8de3f-12bd-48ca-87f6-80c80a73e7d7', 'name': u'CUSTOM_DT1'} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-69686902-4e1c-4f23-b964-b1e3431d5f58 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Invalid input for field/attribute interface. Value: 'foo'. Value should be one of: bios, management, raid, power, deploy\"}"} {31} ironic.tests.unit.api.controllers.v1.test_deploy_template.TestPost.test_create_invalid_step_field_interface2 [0.049602s] ... ok GET: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123?fields=description {} GOT:{u'description': u'useful piece', u'links': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'bookmark'}]} {14} ironic.tests.unit.api.controllers.v1.test_node.TestListNodes.test_get_description_field [0.090731s] ... ok GET: /v1/nodes?conductor=rocky.rocks {} GOT:{u'nodes': []} GET: /v1/nodes?conductor=fake.conductor {} GOT:{u'nodes': [{u'instance_uuid': None, u'maintenance': False, u'links': [{u'href': u'http://localhost/v1/nodes/792b03c5-7b62-42a8-8ec2-985ba346177a', u'rel': u'self'}, {u'href': u'http://localhost/nodes/792b03c5-7b62-42a8-8ec2-985ba346177a', u'rel': u'bookmark'}], u'name': None, u'power_state': None, u'provision_state': u'available', u'uuid': u'792b03c5-7b62-42a8-8ec2-985ba346177a'}, {u'instance_uuid': None, u'maintenance': False, u'links': [{u'href': u'http://localhost/v1/nodes/ebaac344-226b-46d2-9ea5-92d5962a507f', u'rel': u'self'}, {u'href': u'http://localhost/nodes/ebaac344-226b-46d2-9ea5-92d5962a507f', u'rel': u'bookmark'}], u'name': None, u'power_state': None, u'provision_state': u'available', u'uuid': u'ebaac344-226b-46d2-9ea5-92d5962a507f'}]} GET: /v1/nodes?conductor=fake.conductor {} GOT:{u'nodes': [{u'instance_uuid': None, u'maintenance': False, u'links': [{u'href': u'http://localhost/v1/nodes/ebaac344-226b-46d2-9ea5-92d5962a507f', u'rel': u'self'}, {u'href': u'http://localhost/nodes/ebaac344-226b-46d2-9ea5-92d5962a507f', u'rel': u'bookmark'}], u'name': None, u'power_state': None, u'provision_state': u'available', u'uuid': u'ebaac344-226b-46d2-9ea5-92d5962a507f'}]} {4} ironic.tests.unit.api.controllers.v1.test_node.TestListNodes.test_get_nodes_by_conductor [0.298283s] ... ok GET: /v1/nodes/eeeeeeee-cccc-aaaa-bbbb-cccccccccccc/ports {} GOT:Response: 404 Not Found Content-Type: application/json Openstack-Request-Id: req-abe0230b-9002-4aa3-9f9e-45f50bb9dfdf X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Node eeeeeeee-cccc-aaaa-bbbb-cccccccccccc could not be found.\"}"} {9} ironic.tests.unit.api.controllers.v1.test_node.TestListNodes.test_ports_subresource_node_not_found [0.068649s] ... ok POST: /v1/nodes {'instance_uuid': None, 'uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123', 'driver_info': {'fake_password': 'fakepass', 'foo': 'bar'}, 'extra': {}, 'driver': 'fake-hardware', 'properties': {'memory_mb': '4096', 'cpu_arch': 'x86_64', 'local_gb': '10', 'cpus': '8'}, 'protected': True, 'maintenance': False, 'chassis_uuid': 'e74c40e0-d825-11e2-a28f-0800200c9a66', 'instance_info': {'foo': 'bar', 'image_url': 'http://example.com/test_image_url', 'configdrive': 'TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQ='}} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-d2e73e91-44b7-40d1-98ca-a67d0697a02c X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.48 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Cannot specify protected or protected_reason on node creation. These fields can only be set for active nodes\"}"} {17} ironic.tests.unit.api.controllers.v1.test_node.TestPost.test_create_node_protected_not_allowed [0.063539s] ... ok PATCH: /v1/nodes/038db826-c9a8-4b13-b398-2ba3c56ef62a [{'path': '/network_interface', 'value': 'flat', 'op': 'add'}] GOT:Response: 406 Not Acceptable Content-Type: application/json Openstack-Request-Id: req-31310806-a42f-47e1-9311-07d1278ad254 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.15 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Request not acceptable.\"}"} {5} ironic.tests.unit.api.controllers.v1.test_node.TestPatch.test_update_network_interface_old_api [0.085772s] ... ok GET: /v1/drivers/manual-management/properties {} GOT:{u'prop1': u'Property 1. Required.'} GET: /v1/drivers/manual-management/properties {} GOT:{u'prop1': u'Property 1. Required.'} GET: /v1/drivers/manual-management/properties {} GOT:{u'prop1': u'Property 1. Required.'} {31} ironic.tests.unit.api.controllers.v1.test_driver.TestDriverProperties.test_driver_properties_cached [0.064931s] ... ok POST: /v1/deploy_templates {'extra': {}, 'steps': [{'priority': '42', 'interface': 'raid', 'step': 'create_configuration', 'args': {'logical_disks': []}}], 'uuid': 'b80cc0fe-818b-4337-8b2f-11452504b8be', 'name': u'CUSTOM_DT1'} GOT:Response: 201 Created Content-Type: application/json Location: http://localhost/v1/deploy_templates/b80cc0fe-818b-4337-8b2f-11452504b8be Openstack-Request-Id: req-50bdae3c-9a2b-4faa-a415-d33fbc41ee0b X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"uuid": "b80cc0fe-818b-4337-8b2f-11452504b8be", "links": [{"href": "http://localhost/v1/deploy_templates/b80cc0fe-818b-4337-8b2f-11452504b8be", "rel": "self"}, {"href": "http://localhost/deploy_templates/b80cc0fe-818b-4337-8b2f-11452504b8be", "rel": "bookmark"}], "extra": {}, "created_at": "2019-06-06T07:02:14.728993+00:00", "updated_at": null, "steps": [{"interface": "raid", "priority": 42, "step": "create_configuration", "args": {"logical_disks": []}}], "name": "CUSTOM_DT1"} {10} ironic.tests.unit.api.controllers.v1.test_deploy_template.TestPost.test_create_step_string_priority [0.061152s] ... ok GET: /v1/ports/detail?portgroup=fooname {} GOT:{u'ports': [{u'local_link_connection': {u'switch_info': u'switch1', u'port_id': u'Ethernet3/1', u'switch_id': u'0a:1b:2c:3d:4e:5f'}, u'node_uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c781', u'links': [{u'href': u'http://localhost/v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781', u'rel': u'self'}, {u'href': u'http://localhost/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781', u'rel': u'bookmark'}], u'extra': {}, u'pxe_enabled': True, u'portgroup_uuid': u'6eb02b44-18a3-4659-8c0b-8d2802581ae4', u'updated_at': None, u'address': u'52:54:00:cf:2d:31', u'internal_info': {u'bar': u'buzz'}, u'created_at': u'2019-06-06T07:02:15.163001+00:00'}]} {2} ironic.tests.unit.api.controllers.v1.test_port.TestListPorts.test_get_all_by_portgroup_name [0.102170s] ... ok GET: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/vendor_passthru/methods {} GOT:{u'foo': u'bar'} GET: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/vendor_passthru/methods {} GOT:{u'foo': u'bar'} {17} ironic.tests.unit.api.controllers.v1.test_node.TestPost.test_vendor_passthru_methods [0.101821s] ... ok GET: /v1/nodes?traits=CUSTOM_TRAIT_1 {} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-7a0a6fdd-55da-4c63-9da8-f7d3899202a6 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Unknown argument: \\\"traits\\\"\"}"} {4} ironic.tests.unit.api.controllers.v1.test_node.TestListNodes.test_get_nodes_by_traits_not_allowed [0.067470s] ... ok GET: /v1/nodes?owner=fred {} GOT:Response: 406 Not Acceptable Content-Type: application/json Openstack-Request-Id: req-532c1593-8f46-440f-8ac7-fececaa2623c X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.48 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Request not acceptable. The minimal required API version should be 1.50\"}"} GET: /v1/nodes/detail?owner=fred {} GOT:Response: 406 Not Acceptable Content-Type: application/json Openstack-Request-Id: req-a0a8bd33-1079-424d-aea1-ad56f6f293bb X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.48 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Request not acceptable. The minimal required API version should be 1.50\"}"} {7} ironic.tests.unit.api.controllers.v1.test_node.TestListNodes.test_get_nodes_by_owner_not_allowed [0.071424s] ... ok GET: /v1/nodes?driver=fake {} GOT:Response: 406 Not Acceptable Content-Type: application/json Openstack-Request-Id: req-c9f62287-b3ad-4262-b555-ea8dd8acb101 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Request not acceptable. The minimal required API version should be 1.16\"}"} {14} ironic.tests.unit.api.controllers.v1.test_node.TestListNodes.test_get_nodes_by_driver_invalid_api_version [0.059211s] ... ok GET: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123.json {} GOT:{u'target_power_state': None, u'automated_clean': None, u'inspect_interface': None, u'links': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'bookmark'}], u'target_provision_state': None, u'deploy_step': {}, u'storage_interface': None, u'conductor_group': u'', u'protected_reason': None, u'maintenance_reason': None, u'states': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states', u'rel': u'bookmark'}], u'traits': [], u'provision_state': u'available', u'clean_step': {}, u'vendor_interface': None, u'uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'console_enabled': False, u'extra': {}, u'raid_config': {}, u'provision_updated_at': None, u'power_state': None, u'last_error': None, u'target_raid_config': {}, u'maintenance': False, u'network_interface': None, u'inspection_started_at': None, u'inspection_finished_at': None, u'description': None, u'conductor': u'fake.conductor', u'driver': u'fake-hardware', u'power_interface': None, u'updated_at': None, u'volume': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/volume', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/volume', u'rel': u'bookmark'}], u'raid_interface': None, u'rescue_interface': None, u'boot_interface': None, u'reservation': None, u'management_interface': None, u'properties': {u'memory_mb': u'4096', u'cpu_arch': u'x86_64', u'local_gb': u'10', u'cpus': u'8'}, u'bios_interface': None, u'instance_uuid': None, u'name': None, u'driver_info': {u'fake_password': u'******', u'foo': u'bar'}, u'resource_class': None, u'fault': None, u'created_at': u'2019-06-06T07:02:14.697399+00:00', u'portgroups': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/portgroups', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/portgroups', u'rel': u'bookmark'}], u'deploy_interface': None, u'instance_info': {u'foo': u'bar', u'image_url': u'******', u'configdrive': u'******'}, u'console_interface': None, u'protected': False, u'driver_internal_info': {u'private_state': u'secret value'}, u'chassis_uuid': u'e74c40e0-d825-11e2-a28f-0800200c9a66', u'owner': None, u'ports': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'bookmark'}], u'allocation_uuid': None} {8} ironic.tests.unit.api.controllers.v1.test_node.TestListNodes.test_get_one_with_json [0.092980s] ... ok GET: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123 {} GOT:{u'target_power_state': None, u'inspect_interface': None, u'links': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'bookmark'}], u'target_provision_state': None, u'deploy_step': {}, u'storage_interface': None, u'conductor_group': u'', u'updated_at': None, u'maintenance_reason': None, u'states': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states', u'rel': u'bookmark'}], u'traits': [], u'provision_state': u'available', u'clean_step': {}, u'vendor_interface': None, u'uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'console_enabled': False, u'extra': {}, u'raid_config': {}, u'provision_updated_at': None, u'power_state': None, u'last_error': None, u'target_raid_config': {}, u'network_interface': None, u'inspection_started_at': None, u'inspection_finished_at': None, u'maintenance': False, u'driver': u'fake-hardware', u'power_interface': None, u'volume': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/volume', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/volume', u'rel': u'bookmark'}], u'raid_interface': None, u'rescue_interface': None, u'boot_interface': None, u'reservation': None, u'management_interface': None, u'properties': {u'memory_mb': u'4096', u'cpu_arch': u'x86_64', u'local_gb': u'10', u'cpus': u'8'}, u'bios_interface': None, u'instance_uuid': None, u'name': None, u'driver_info': {u'fake_password': u'******', u'foo': u'bar'}, u'resource_class': None, u'fault': None, u'created_at': u'2019-06-06T07:02:15.407987+00:00', u'portgroups': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/portgroups', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/portgroups', u'rel': u'bookmark'}], u'deploy_interface': None, u'instance_info': {u'foo': u'bar', u'image_url': u'******', u'configdrive': u'******'}, u'console_interface': None, u'driver_internal_info': {u'private_state': u'secret value'}, u'chassis_uuid': None, u'ports': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'bookmark'}]} GET: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123 {} GOT:{u'target_power_state': None, u'automated_clean': None, u'inspect_interface': None, u'links': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'bookmark'}], u'target_provision_state': None, u'deploy_step': {}, u'storage_interface': None, u'conductor_group': u'', u'updated_at': None, u'maintenance_reason': None, u'states': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states', u'rel': u'bookmark'}], u'traits': [], u'provision_state': u'available', u'clean_step': {}, u'vendor_interface': None, u'uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'console_enabled': False, u'extra': {}, u'raid_config': {}, u'provision_updated_at': None, u'power_state': None, u'last_error': None, u'target_raid_config': {}, u'network_interface': None, u'inspection_started_at': None, u'inspection_finished_at': None, u'maintenance': False, u'driver': u'fake-hardware', u'power_interface': None, u'volume': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/volume', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/volume', u'rel': u'bookmark'}], u'raid_interface': None, u'rescue_interface': None, u'boot_interface': None, u'reservation': None, u'management_interface': None, u'properties': {u'memory_mb': u'4096', u'cpu_arch': u'x86_64', u'local_gb': u'10', u'cpus': u'8'}, u'bios_interface': None, u'instance_uuid': None, u'name': None, u'driver_info': {u'fake_password': u'******', u'foo': u'bar'}, u'resource_class': None, u'fault': None, u'created_at': u'2019-06-06T07:02:15.407987+00:00', u'portgroups': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/portgroups', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/portgroups', u'rel': u'bookmark'}], u'deploy_interface': None, u'instance_info': {u'foo': u'bar', u'image_url': u'******', u'configdrive': u'******'}, u'console_interface': None, u'driver_internal_info': {u'private_state': u'secret value'}, u'chassis_uuid': None, u'ports': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'bookmark'}]} {15} ironic.tests.unit.api.controllers.v1.test_node.TestListNodes.test_node_automated_clean_hidden_in_lower_version [0.118483s] ... ok GET: /v1/drivers?type=working {} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-0831df03-001f-4629-b6a5-3f2ac34d5b8d X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.30 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"\\\"type\\\" filter must be one of \\\"classic\\\" or \\\"dynamic\\\", if specified.\"}"} {31} ironic.tests.unit.api.controllers.v1.test_driver.TestListDrivers.test_drivers_type_filter_bad_value [0.047362s] ... ok GET: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123?fields=driver_info {} GOT:{u'driver_info': {u'fake_password': u'******'}, u'links': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'bookmark'}]} {4} ironic.tests.unit.api.controllers.v1.test_node.TestListNodes.test_get_one_custom_fields_show_password [0.096485s] ... ok GET: /v1/drivers?type=classic {} GOT:{u'drivers': []} {31} ironic.tests.unit.api.controllers.v1.test_driver.TestListDrivers.test_drivers_type_filter_classic [0.072718s] ... ok GET: /v1/nodes?instance_uuid=51653fa7-f5ad-4860-b18d-967beca8185a {} GOT:{u'nodes': []} {15} ironic.tests.unit.api.controllers.v1.test_node.TestListNodes.test_node_by_instance_uuid_wrong_uuid [0.072088s] ... ok GET: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123 {} GOT:{u'target_power_state': None, u'automated_clean': None, u'inspect_interface': None, u'links': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'bookmark'}], u'target_provision_state': None, u'deploy_step': {}, u'storage_interface': None, u'conductor_group': u'', u'updated_at': None, u'maintenance_reason': None, u'states': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states', u'rel': u'bookmark'}], u'traits': [], u'provision_state': u'available', u'clean_step': {}, u'vendor_interface': None, u'uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'console_enabled': False, u'extra': {}, u'raid_config': {}, u'provision_updated_at': None, u'power_state': None, u'last_error': None, u'target_raid_config': {}, u'network_interface': None, u'inspection_started_at': None, u'inspection_finished_at': None, u'maintenance': False, u'driver': u'fake-hardware', u'power_interface': None, u'volume': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/volume', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/volume', u'rel': u'bookmark'}], u'raid_interface': None, u'rescue_interface': None, u'boot_interface': None, u'reservation': None, u'management_interface': None, u'properties': {u'memory_mb': u'4096', u'cpu_arch': u'x86_64', u'local_gb': u'10', u'cpus': u'8'}, u'bios_interface': None, u'instance_uuid': None, u'name': None, u'driver_info': {u'fake_password': u'******', u'foo': u'bar'}, u'resource_class': None, u'fault': None, u'created_at': u'2019-06-06T07:02:14.532796+00:00', u'portgroups': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/portgroups', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/portgroups', u'rel': u'bookmark'}], u'deploy_interface': None, u'instance_info': {u'foo': u'bar', u'image_url': u'******', u'configdrive': u'******'}, u'console_interface': None, u'driver_internal_info': {u'private_state': u'secret value'}, u'chassis_uuid': None, u'ports': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'bookmark'}]} GET: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123 {} GOT:{u'target_power_state': None, u'automated_clean': None, u'inspect_interface': None, u'links': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'bookmark'}], u'target_provision_state': None, u'deploy_step': {}, u'storage_interface': None, u'conductor_group': u'', u'protected_reason': None, u'maintenance_reason': None, u'states': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states', u'rel': u'bookmark'}], u'traits': [], u'provision_state': u'available', u'clean_step': {}, u'vendor_interface': None, u'uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'console_enabled': False, u'extra': {}, u'raid_config': {}, u'provision_updated_at': None, u'power_state': None, u'last_error': None, u'target_raid_config': {}, u'network_interface': None, u'inspection_started_at': None, u'inspection_finished_at': None, u'maintenance': False, u'driver': u'fake-hardware', u'power_interface': None, u'updated_at': None, u'volume': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/volume', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/volume', u'rel': u'bookmark'}], u'raid_interface': None, u'rescue_interface': None, u'boot_interface': None, u'reservation': None, u'management_interface': None, u'properties': {u'memory_mb': u'4096', u'cpu_arch': u'x86_64', u'local_gb': u'10', u'cpus': u'8'}, u'bios_interface': None, u'instance_uuid': None, u'name': None, u'driver_info': {u'fake_password': u'******', u'foo': u'bar'}, u'resource_class': None, u'fault': None, u'created_at': u'2019-06-06T07:02:14.532796+00:00', u'portgroups': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/portgroups', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/portgroups', u'rel': u'bookmark'}], u'deploy_interface': None, u'instance_info': {u'foo': u'bar', u'image_url': u'******', u'configdrive': u'******'}, u'console_interface': None, u'protected': False, u'driver_internal_info': {u'private_state': u'secret value'}, u'chassis_uuid': None, u'ports': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'bookmark'}]} {13} ironic.tests.unit.api.controllers.v1.test_node.TestListNodes.test_node_protected_reason_hidden_in_lower_version [0.131242s] ... ok POST: /v1/events {'events': [{'event': 'invalid.event'}]} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-471a6507-dba2-4b10-a743-ba29bc224a48 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"invalid.event is not one of valid events: network.bind_port, network.unbind_port, network.delete_port.\"}"} {10} ironic.tests.unit.api.controllers.v1.test_event.TestPost.test_events_invalid_event [0.047330s] ... ok PATCH: /v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 [{'path': '/extra/non-existent', 'op': 'remove'}] GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-b64800bd-b8de-4939-9b7e-39370f850947 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Couldn't apply patch '{'path': '/extra/non-existent', 'op': 'remove'}'. Reason: can't remove non-existent object 'non-existent'\"}"} {2} ironic.tests.unit.api.controllers.v1.test_port.TestPatch.test_remove_non_existent_property_fail [0.072083s] ... ok PATCH: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123?reset_interfaces=True [{'path': '/driver', 'value': 'ipmi', 'op': 'replace'}] GOT:Response: 200 OK Content-Type: application/json Openstack-Request-Id: req-b9699c24-9309-44a3-815f-dab2e0ff4a49 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.45 {"target_power_state": null, "inspect_interface": null, "links": [{"href": "http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "rel": "self"}, {"href": "http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "rel": "bookmark"}], "target_provision_state": null, "deploy_step": {}, "storage_interface": null, "updated_at": "2013-12-03T06:20:41.184720+00:00", "maintenance_reason": null, "states": [{"href": "http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states", "rel": "self"}, {"href": "http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states", "rel": "bookmark"}], "traits": [], "provision_state": "available", "clean_step": {}, "vendor_interface": null, "uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "console_enabled": false, "extra": {}, "raid_config": {}, "provision_updated_at": null, "power_state": null, "last_error": null, "target_raid_config": {}, "network_interface": null, "inspection_started_at": null, "inspection_finished_at": null, "maintenance": false, "power_interface": null, "driver": "fake-hardware", "volume": [{"href": "http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/volume", "rel": "self"}, {"href": "http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/volume", "rel": "bookmark"}], "raid_interface": null, "rescue_interface": null, "boot_interface": null, "reservation": null, "management_interface": null, "properties": {"memory_mb": "4096", "cpu_arch": "x86_64", "local_gb": "10", "cpus": "8"}, "bios_interface": null, "instance_uuid": null, "name": "node-57.1", "driver_info": {"fake_password": "******", "foo": "bar"}, "resource_class": null, "fault": null, "created_at": "2019-06-06T07:02:15.159908+00:00", "portgroups": [{"href": "http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/portgroups", "rel": "self"}, {"href": "http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/portgroups", "rel": "bookmark"}], "deploy_interface": null, "ports": [{"href": "http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports", "rel": "self"}, {"href": "http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports", "rel": "bookmark"}], "console_interface": null, "driver_internal_info": {"private_state": "secret value"}, "chassis_uuid": "e74c40e0-d825-11e2-a28f-0800200c9a66", "instance_info": {"foo": "bar", "image_url": "******", "configdrive": "******"}} {21} ironic.tests.unit.api.controllers.v1.test_node.TestPatch.test_update_with_reset_interfaces [0.117262s] ... ok GET: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123 {} GOT:{u'target_power_state': None, u'inspect_interface': None, u'links': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'bookmark'}], u'target_provision_state': None, u'last_error': None, u'storage_interface': None, u'updated_at': None, u'maintenance_reason': None, u'states': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states', u'rel': u'bookmark'}], u'traits': [], u'provision_state': u'available', u'clean_step': {}, u'vendor_interface': None, u'uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'console_enabled': False, u'extra': {}, u'raid_config': {}, u'provision_updated_at': None, u'power_state': None, u'target_raid_config': {}, u'network_interface': None, u'inspection_started_at': None, u'inspection_finished_at': None, u'maintenance': False, u'driver': u'fake-hardware', u'power_interface': None, u'volume': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/volume', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/volume', u'rel': u'bookmark'}], u'raid_interface': None, u'rescue_interface': None, u'boot_interface': None, u'reservation': None, u'management_interface': None, u'properties': {u'memory_mb': u'4096', u'cpu_arch': u'x86_64', u'local_gb': u'10', u'cpus': u'8'}, u'bios_interface': None, u'instance_uuid': None, u'name': None, u'driver_info': {u'fake_password': u'******', u'foo': u'bar'}, u'resource_class': None, u'fault': None, u'created_at': u'2019-06-06T07:02:14.916541+00:00', u'portgroups': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/portgroups', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/portgroups', u'rel': u'bookmark'}], u'deploy_interface': None, u'instance_info': {u'foo': u'bar', u'image_url': u'******', u'configdrive': u'******'}, u'console_interface': None, u'driver_internal_info': {u'private_state': u'secret value'}, u'chassis_uuid': None, u'ports': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'bookmark'}]} GET: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123 {} GOT:{u'target_power_state': None, u'inspect_interface': None, u'links': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'bookmark'}], u'target_provision_state': None, u'deploy_step': {}, u'storage_interface': None, u'updated_at': None, u'maintenance_reason': None, u'states': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states', u'rel': u'bookmark'}], u'traits': [], u'provision_state': u'available', u'clean_step': {}, u'vendor_interface': None, u'uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'console_enabled': False, u'extra': {}, u'raid_config': {}, u'provision_updated_at': None, u'power_state': None, u'last_error': None, u'target_raid_config': {}, u'network_interface': None, u'inspection_started_at': None, u'inspection_finished_at': None, u'maintenance': False, u'driver': u'fake-hardware', u'power_interface': None, u'volume': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/volume', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/volume', u'rel': u'bookmark'}], u'raid_interface': None, u'rescue_interface': None, u'boot_interface': None, u'reservation': None, u'management_interface': None, u'properties': {u'memory_mb': u'4096', u'cpu_arch': u'x86_64', u'local_gb': u'10', u'cpus': u'8'}, u'bios_interface': None, u'instance_uuid': None, u'name': None, u'driver_info': {u'fake_password': u'******', u'foo': u'bar'}, u'resource_class': None, u'fault': None, u'created_at': u'2019-06-06T07:02:14.916541+00:00', u'portgroups': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/portgroups', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/portgroups', u'rel': u'bookmark'}], u'deploy_interface': None, u'instance_info': {u'foo': u'bar', u'image_url': u'******', u'configdrive': u'******'}, u'console_interface': None, u'driver_internal_info': {u'private_state': u'secret value'}, u'chassis_uuid': None, u'ports': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'bookmark'}]} {28} ironic.tests.unit.api.controllers.v1.test_node.TestListNodes.test_node_deploy_step_hidden_in_lower_version [0.119388s] ... ok GET: /v1/nodes/123~123/ports {} GOT:Response: 400 Bad Request Content-Type: application/json {"error_message": "{\"code\": 400, \"description\": \"Expected a logical name or UUID but received 123~123.\", \"title\": \"Bad Request\"}"} {13} ironic.tests.unit.api.controllers.v1.test_node.TestListNodes.test_ports_subresource_invalid_ident [0.042020s] ... ok PATCH: /v1/nodes/deadbeef-0000-1111-2222-333333333333 [{'path': '/name', 'value': 'maintenance', 'op': 'add'}] GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-4a91ecc4-b392-4ac3-a008-bb5d1d829547 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.10 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"The word \\\"maintenance\\\" is reserved and can not be used as a node name. Reserved words are: maintenance, management, states, vendor_passthru, validate, detail.\"}"} PATCH: /v1/nodes/deadbeef-0000-1111-2222-333333333333 [{'path': '/name', 'value': 'management', 'op': 'add'}] GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-a5e590b8-bbea-4e4c-b3a1-6475e1ae1ac8 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.10 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"The word \\\"management\\\" is reserved and can not be used as a node name. Reserved words are: maintenance, management, states, vendor_passthru, validate, detail.\"}"} PATCH: /v1/nodes/deadbeef-0000-1111-2222-333333333333 [{'path': '/name', 'value': 'states', 'op': 'add'}] GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-575c191e-2d43-4017-93d0-55c2ada21c1a X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.10 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"The word \\\"states\\\" is reserved and can not be used as a node name. Reserved words are: maintenance, management, states, vendor_passthru, validate, detail.\"}"} PATCH: /v1/nodes/deadbeef-0000-1111-2222-333333333333 [{'path': '/name', 'value': 'vendor_passthru', 'op': 'add'}] GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-444188d1-00dc-418d-94c4-fb944b16ecf4 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.10 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"The word \\\"vendor_passthru\\\" is reserved and can not be used as a node name. Reserved words are: maintenance, management, states, vendor_passthru, validate, detail.\"}"} PATCH: /v1/nodes/deadbeef-0000-1111-2222-333333333333 [{'path': '/name', 'value': 'validate', 'op': 'add'}] GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-489d1f70-2647-4c0e-8a9f-ac5be978fe91 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.10 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"The word \\\"validate\\\" is reserved and can not be used as a node name. Reserved words are: maintenance, management, states, vendor_passthru, validate, detail.\"}"} PATCH: /v1/nodes/deadbeef-0000-1111-2222-333333333333 [{'path': '/name', 'value': 'detail', 'op': 'add'}] GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-fd083c07-925a-48d0-bde2-d57d920a259d X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.10 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"The word \\\"detail\\\" is reserved and can not be used as a node name. Reserved words are: maintenance, management, states, vendor_passthru, validate, detail.\"}"} {12} ironic.tests.unit.api.controllers.v1.test_node.TestPatch.test_patch_add_name_reserved [0.214230s] ... ok PATCH: /v1/nodes/74531689-9b17-4707-ad78-e1d4283155ee [{'path': '/instance_uuid', 'op': 'remove'}] GOT:Response: 200 OK Content-Type: application/json Openstack-Request-Id: req-084963f6-bb1f-4ba9-b1da-df3f987b1822 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.38 {"target_power_state": null, "inspect_interface": null, "links": [{"href": "http://localhost/v1/nodes/74531689-9b17-4707-ad78-e1d4283155ee", "rel": "self"}, {"href": "http://localhost/nodes/74531689-9b17-4707-ad78-e1d4283155ee", "rel": "bookmark"}], "target_provision_state": null, "last_error": null, "storage_interface": null, "updated_at": null, "maintenance_reason": null, "states": [{"href": "http://localhost/v1/nodes/74531689-9b17-4707-ad78-e1d4283155ee/states", "rel": "self"}, {"href": "http://localhost/nodes/74531689-9b17-4707-ad78-e1d4283155ee/states", "rel": "bookmark"}], "traits": [], "provision_state": "inspecting", "clean_step": {}, "vendor_interface": null, "uuid": "74531689-9b17-4707-ad78-e1d4283155ee", "console_enabled": false, "extra": {}, "raid_config": {}, "provision_updated_at": null, "power_state": null, "target_raid_config": {}, "network_interface": null, "inspection_started_at": null, "inspection_finished_at": null, "maintenance": false, "power_interface": null, "driver": "fake-hardware", "volume": [{"href": "http://localhost/v1/nodes/74531689-9b17-4707-ad78-e1d4283155ee/volume", "rel": "self"}, {"href": "http://localhost/nodes/74531689-9b17-4707-ad78-e1d4283155ee/volume", "rel": "bookmark"}], "raid_interface": null, "rescue_interface": null, "boot_interface": null, "reservation": null, "management_interface": null, "properties": {"memory_mb": "4096", "cpu_arch": "x86_64", "local_gb": "10", "cpus": "8"}, "instance_uuid": null, "name": null, "driver_info": {"fake_password": "******", "foo": "bar"}, "resource_class": null, "created_at": "2019-06-06T07:02:15.388808+00:00", "portgroups": [{"href": "http://localhost/v1/nodes/74531689-9b17-4707-ad78-e1d4283155ee/portgroups", "rel": "self"}, {"href": "http://localhost/nodes/74531689-9b17-4707-ad78-e1d4283155ee/portgroups", "rel": "bookmark"}], "deploy_interface": null, "ports": [{"href": "http://localhost/v1/nodes/74531689-9b17-4707-ad78-e1d4283155ee/ports", "rel": "self"}, {"href": "http://localhost/nodes/74531689-9b17-4707-ad78-e1d4283155ee/ports", "rel": "bookmark"}], "console_interface": null, "driver_internal_info": {"private_state": "secret value"}, "chassis_uuid": null, "instance_info": {"foo": "bar", "image_url": "******", "configdrive": "******"}} {3} ironic.tests.unit.api.controllers.v1.test_node.TestPatch.test_update_in_inspecting_allowed [0.115746s] ... ok PATCH: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123 [{'path': '/chassis_uuid', 'value': 'e74c40e0-d825-11e2-a28f-0800200c9a66', 'op': 'replace'}] GOT:Response: 200 OK Content-Type: application/json Openstack-Request-Id: req-8a687786-26bc-4dcb-8fbb-36e29e40cf92 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"target_power_state": null, "links": [{"href": "http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "rel": "self"}, {"href": "http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "rel": "bookmark"}], "target_provision_state": null, "last_error": null, "updated_at": null, "maintenance_reason": null, "provision_state": null, "uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "console_enabled": false, "extra": {}, "provision_updated_at": null, "maintenance": false, "power_state": null, "driver": "fake-hardware", "reservation": null, "properties": {"memory_mb": "4096", "cpu_arch": "x86_64", "local_gb": "10", "cpus": "8"}, "instance_uuid": null, "driver_info": {"fake_password": "******", "foo": "bar"}, "created_at": "2019-06-06T07:02:14.961396+00:00", "ports": [{"href": "http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports", "rel": "self"}, {"href": "http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports", "rel": "bookmark"}], "chassis_uuid": "e74c40e0-d825-11e2-a28f-0800200c9a66", "instance_info": {"foo": "bar", "image_url": "******", "configdrive": "******"}} {30} ironic.tests.unit.api.controllers.v1.test_node.TestPatch.test_replace_chassis_uuid [0.113298s] ... ok /usr/lib/python2.7/site-packages/oslo_serialization/jsonutils.py:192: UserWarning: Cannot convert UcsOperationError(u'%(operation)s failed, error: %(error)s',) to primitive, will raise ValueError instead of warning in version 3.0 "instead of warning in version 3.0" % (value,)) PATCH: /v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 [{'path': '/address', 'value': 'invalid-format', 'op': 'replace'}] GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-dcaa690a-abaa-4857-b8a8-0f6d6b549a75 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Expected a MAC address but received invalid-format.\"}"} {2} ironic.tests.unit.api.controllers.v1.test_port.TestPatch.test_update_address_invalid_format [0.091182s] ... ok PATCH: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123 [{'path': '/chassis_id', 'value': '1', 'op': 'add'}] GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-b61decf9-2f2f-4ac6-b954-5f8b89d98437 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Adding a new attribute (/chassis_id) to the root of the resource is not allowed\"}"} {28} ironic.tests.unit.api.controllers.v1.test_node.TestPatch.test_add_chassis_id [0.092123s] ... ok PATCH: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123 [{'path': '/last_error', 'op': 'remove'}] GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-1f6cfe33-7da3-42f0-8aa4-eb4555e3c0a6 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"'/last_error' is an internal attribute and can not be updated\"}"} {13} ironic.tests.unit.api.controllers.v1.test_node.TestPatch.test_remove_internal_field [0.073547s] ... ok PATCH: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123 [{'path': '/extra/foo', 'value': 'bar', 'op': 'add'}] GOT:Response: 200 OK Content-Type: application/json Openstack-Request-Id: req-17b8fbe8-68ee-46c5-8a56-00c37417bad6 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"target_power_state": null, "links": [{"href": "http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "rel": "self"}, {"href": "http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "rel": "bookmark"}], "target_provision_state": null, "last_error": null, "updated_at": null, "maintenance_reason": null, "provision_state": null, "uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "console_enabled": false, "extra": {}, "provision_updated_at": null, "maintenance": false, "power_state": null, "driver": "fake-hardware", "reservation": null, "properties": {"memory_mb": "4096", "cpu_arch": "x86_64", "local_gb": "10", "cpus": "8"}, "instance_uuid": null, "driver_info": {"fake_password": "******", "foo": "bar"}, "created_at": "2019-06-06T07:02:15.357029+00:00", "ports": [{"href": "http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports", "rel": "self"}, {"href": "http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports", "rel": "bookmark"}], "chassis_uuid": "e74c40e0-d825-11e2-a28f-0800200c9a66", "instance_info": {"foo": "bar", "image_url": "******", "configdrive": "******"}} {9} ironic.tests.unit.api.controllers.v1.test_node.TestPatch.test_add_ok [0.118337s] ... ok PATCH: /v1/nodes/b1133c45-224c-4656-a7c0-e22cfe48aca0 [{'path': '/fault', 'value': 'why care', 'op': 'replace'}] GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-45955551-a096-4c45-a9ff-8a889b8af20d X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.42 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"'/fault' is an internal attribute and can not be updated\"}"} {12} ironic.tests.unit.api.controllers.v1.test_node.TestPatch.test_patch_fault_forbidden [0.084686s] ... ok GET: /v1/nodes/detail {} GOT:{u'nodes': [{u'target_power_state': None, u'automated_clean': None, u'inspect_interface': None, u'links': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'bookmark'}], u'target_provision_state': None, u'deploy_step': {}, u'storage_interface': None, u'conductor_group': u'', u'protected_reason': None, u'maintenance_reason': None, u'states': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states', u'rel': u'bookmark'}], u'traits': [], u'provision_state': u'available', u'clean_step': {}, u'vendor_interface': None, u'uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'console_enabled': False, u'extra': {}, u'raid_config': {}, u'provision_updated_at': None, u'power_state': None, u'last_error': None, u'target_raid_config': {}, u'maintenance': False, u'network_interface': None, u'inspection_started_at': None, u'inspection_finished_at': None, u'description': None, u'conductor': u'fake.conductor', u'driver': u'fake-hardware', u'power_interface': None, u'updated_at': None, u'volume': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/volume', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/volume', u'rel': u'bookmark'}], u'raid_interface': None, u'rescue_interface': None, u'boot_interface': None, u'reservation': None, u'management_interface': None, u'properties': {u'memory_mb': u'4096', u'cpu_arch': u'x86_64', u'local_gb': u'10', u'cpus': u'8'}, u'bios_interface': None, u'instance_uuid': None, u'name': None, u'driver_info': {u'fake_password': u'******', u'foo': u'bar'}, u'resource_class': None, u'fault': None, u'created_at': u'2019-06-06T07:02:14.960144+00:00', u'portgroups': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/portgroups', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/portgroups', u'rel': u'bookmark'}], u'deploy_interface': None, u'instance_info': {u'foo': u'bar', u'image_url': u'******', u'configdrive': u'******'}, u'console_interface': None, u'protected': False, u'driver_internal_info': {u'private_state': u'secret value'}, u'chassis_uuid': u'e74c40e0-d825-11e2-a28f-0800200c9a66', u'owner': None, u'ports': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'bookmark'}], u'allocation_uuid': None}]} {20} ironic.tests.unit.api.controllers.v1.test_node.TestListNodes.test_detail [0.135177s] ... ok POST: /v1/events {'events': [{'status': 'ACTIVE', 'binding:host_id': '22222222-aaaa-bbbb-cccc-555555555555', 'binding:vnic_type': 'baremetal', 'mac_address': 'INVALID_MAC_ADDRESS', 'port_id': '11111111-aaaa-bbbb-cccc-555555555555', 'event': 'network.bind_port', 'device_id': '22222222-aaaa-bbbb-cccc-555555555555'}]} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-2bf27cb0-d645-482b-b6d1-951ec73c3bfa X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Event validation failure for mac_address. Expected a MAC address but received INVALID_MAC_ADDRESS.\"}"} {10} ironic.tests.unit.api.controllers.v1.test_event.TestPost.test_network_port_event_invalid_mac_address [0.046868s] ... ok GET: /v1/nodes/test.1 {} GOT:{u'target_power_state': None, u'automated_clean': None, u'inspect_interface': None, u'links': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'bookmark'}], u'target_provision_state': None, u'deploy_step': {}, u'storage_interface': None, u'conductor_group': u'', u'protected_reason': None, u'maintenance_reason': None, u'states': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states', u'rel': u'bookmark'}], u'traits': [], u'provision_state': u'available', u'clean_step': {}, u'vendor_interface': None, u'uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'console_enabled': False, u'extra': {}, u'raid_config': {}, u'provision_updated_at': None, u'power_state': None, u'last_error': None, u'target_raid_config': {}, u'maintenance': False, u'network_interface': None, u'inspection_started_at': None, u'inspection_finished_at': None, u'description': None, u'conductor': u'fake.conductor', u'driver': u'fake-hardware', u'power_interface': None, u'updated_at': None, u'volume': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/volume', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/volume', u'rel': u'bookmark'}], u'raid_interface': None, u'rescue_interface': None, u'boot_interface': None, u'reservation': None, u'management_interface': None, u'properties': {u'memory_mb': u'4096', u'cpu_arch': u'x86_64', u'local_gb': u'10', u'cpus': u'8'}, u'bios_interface': None, u'instance_uuid': None, u'name': u'test.1', u'driver_info': {u'fake_password': u'******', u'foo': u'bar'}, u'resource_class': None, u'fault': None, u'created_at': u'2019-06-06T07:02:15.229626+00:00', u'portgroups': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/portgroups', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/portgroups', u'rel': u'bookmark'}], u'deploy_interface': None, u'instance_info': {u'foo': u'bar', u'image_url': u'******', u'configdrive': u'******'}, u'console_interface': None, u'protected': False, u'driver_internal_info': {u'private_state': u'secret value'}, u'chassis_uuid': u'e74c40e0-d825-11e2-a28f-0800200c9a66', u'owner': None, u'ports': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'bookmark'}], u'allocation_uuid': None} {29} ironic.tests.unit.api.controllers.v1.test_node.TestListNodes.test_get_one_with_suffix [0.095557s] ... ok PATCH: /v1/nodes/4149b714-1a28-45f5-8faf-4a1cf54c8e9e [{'path': '/protected_reason', 'value': 'reason!', 'op': 'replace'}] GOT:Response: 200 OK Content-Type: application/json Openstack-Request-Id: req-d010e6c8-0e9c-4c9e-86d7-9fc9a59028cf X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.48 {"target_power_state": null, "automated_clean": null, "inspect_interface": null, "links": [{"href": "http://localhost/v1/nodes/4149b714-1a28-45f5-8faf-4a1cf54c8e9e", "rel": "self"}, {"href": "http://localhost/nodes/4149b714-1a28-45f5-8faf-4a1cf54c8e9e", "rel": "bookmark"}], "target_provision_state": null, "deploy_step": {}, "storage_interface": null, "conductor_group": "", "protected_reason": null, "maintenance_reason": null, "states": [{"href": "http://localhost/v1/nodes/4149b714-1a28-45f5-8faf-4a1cf54c8e9e/states", "rel": "self"}, {"href": "http://localhost/nodes/4149b714-1a28-45f5-8faf-4a1cf54c8e9e/states", "rel": "bookmark"}], "traits": [], "provision_state": "active", "clean_step": {}, "vendor_interface": null, "uuid": "4149b714-1a28-45f5-8faf-4a1cf54c8e9e", "console_enabled": false, "extra": {}, "raid_config": {}, "provision_updated_at": null, "power_state": null, "last_error": null, "target_raid_config": {}, "network_interface": null, "inspection_started_at": null, "inspection_finished_at": null, "maintenance": false, "power_interface": null, "driver": "fake-hardware", "updated_at": null, "volume": [{"href": "http://localhost/v1/nodes/4149b714-1a28-45f5-8faf-4a1cf54c8e9e/volume", "rel": "self"}, {"href": "http://localhost/nodes/4149b714-1a28-45f5-8faf-4a1cf54c8e9e/volume", "rel": "bookmark"}], "raid_interface": null, "rescue_interface": null, "boot_interface": null, "reservation": null, "management_interface": null, "properties": {"memory_mb": "4096", "cpu_arch": "x86_64", "local_gb": "10", "cpus": "8"}, "bios_interface": null, "instance_uuid": null, "name": null, "driver_info": {"fake_password": "******", "foo": "bar"}, "resource_class": null, "fault": null, "created_at": "2019-06-06T07:02:15.346159+00:00", "portgroups": [{"href": "http://localhost/v1/nodes/4149b714-1a28-45f5-8faf-4a1cf54c8e9e/portgroups", "rel": "self"}, {"href": "http://localhost/nodes/4149b714-1a28-45f5-8faf-4a1cf54c8e9e/portgroups", "rel": "bookmark"}], "deploy_interface": null, "ports": [{"href": "http://localhost/v1/nodes/4149b714-1a28-45f5-8faf-4a1cf54c8e9e/ports", "rel": "self"}, {"href": "http://localhost/nodes/4149b714-1a28-45f5-8faf-4a1cf54c8e9e/ports", "rel": "bookmark"}], "console_interface": null, "protected": true, "driver_internal_info": {"private_state": "secret value"}, "chassis_uuid": null, "instance_info": {"foo": "bar", "image_url": "******", "configdrive": "******"}} {23} ironic.tests.unit.api.controllers.v1.test_node.TestPatch.test_update_protected_reason [0.121217s] ... ok GET: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123 {} GOT:{u'target_power_state': None, u'automated_clean': None, u'inspect_interface': None, u'links': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'bookmark'}], u'target_provision_state': None, u'deploy_step': {}, u'storage_interface': None, u'conductor_group': u'', u'protected_reason': None, u'maintenance_reason': None, u'states': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states', u'rel': u'bookmark'}], u'traits': [], u'provision_state': u'available', u'clean_step': {}, u'vendor_interface': None, u'uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'console_enabled': False, u'extra': {}, u'raid_config': {}, u'provision_updated_at': None, u'power_state': None, u'last_error': None, u'target_raid_config': {}, u'maintenance': False, u'network_interface': None, u'inspection_started_at': None, u'inspection_finished_at': None, u'description': None, u'conductor': u'fake.conductor', u'driver': u'fake-hardware', u'power_interface': None, u'updated_at': None, u'volume': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/volume', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/volume', u'rel': u'bookmark'}], u'raid_interface': None, u'rescue_interface': None, u'boot_interface': None, u'reservation': None, u'management_interface': None, u'properties': {u'memory_mb': u'4096', u'cpu_arch': u'x86_64', u'local_gb': u'10', u'cpus': u'8'}, u'bios_interface': None, u'instance_uuid': None, u'name': None, u'driver_info': {u'fake_password': u'******', u'foo': u'bar'}, u'resource_class': None, u'fault': None, u'created_at': u'2019-06-06T07:02:15.003194+00:00', u'portgroups': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/portgroups', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/portgroups', u'rel': u'bookmark'}], u'deploy_interface': None, u'instance_info': {u'foo': u'bar', u'image_url': u'******', u'configdrive': u'******'}, u'console_interface': None, u'protected': False, u'driver_internal_info': {u'private_state': u'secret value'}, u'chassis_uuid': u'e74c40e0-d825-11e2-a28f-0800200c9a66', u'owner': None, u'ports': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'bookmark'}], u'allocation_uuid': None} {19} ironic.tests.unit.api.controllers.v1.test_node.TestListNodes.test_get_one [0.091423s] ... ok GET: /v1/nodes?detail=False&fields=name {} GOT:{u'nodes': [{u'name': None, u'links': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'bookmark'}]}]} {10} ironic.tests.unit.api.controllers.v1.test_node.TestListNodes.test_detail_using_query_false_and_fields [0.132730s] ... ok GET: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123?fields=storage_interface {} GOT:Response: 406 Not Acceptable Content-Type: application/json Openstack-Request-Id: req-3a7318ea-cd5b-4722-9c5e-0d1677d5083f X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.32 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Request not acceptable.\"}"} {20} ironic.tests.unit.api.controllers.v1.test_node.TestListNodes.test_get_storage_interface_fields_invalid_api_version [0.066878s] ... ok POST: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/portgroups {'node_uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123', 'uuid': '6eb02b44-18a3-4659-8c0b-8d2802581ae4', 'extra': {}, 'standalone_ports_supported': True, 'address': '52:54:00:cf:2d:31', 'name': 'fooname'} GOT:Response: 403 Forbidden Content-Type: application/json Openstack-Request-Id: req-ed968a95-8f26-43aa-a334-57e524d2012c X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.24 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Operation not permitted.\"}"} {28} ironic.tests.unit.api.controllers.v1.test_node.TestPost.test_post_portgroups_subresource [0.080150s] ... ok PATCH: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123 [{'path': '/chassis_id', 'value': '1', 'op': 'replace'}] GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-73141d9d-d3a5-421e-b333-db08f214b213 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Couldn't apply patch '{'path': '/chassis_id', 'value': u'1', 'op': 'replace'}'. Reason: can't replace non-existent object 'chassis_id'\"}"} {9} ironic.tests.unit.api.controllers.v1.test_node.TestPatch.test_replace_chassis_id [0.120073s] ... ok GET: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123?fields=owner {} GOT:{u'owner': u'fred', u'links': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'bookmark'}]} {19} ironic.tests.unit.api.controllers.v1.test_node.TestListNodes.test_get_owner_fields [0.086768s] ... ok GET: /v1/nodes?detail=True {} GOT:{u'nodes': [{u'target_power_state': None, u'automated_clean': None, u'inspect_interface': None, u'links': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'bookmark'}], u'target_provision_state': None, u'deploy_step': {}, u'storage_interface': None, u'conductor_group': u'', u'protected_reason': None, u'maintenance_reason': None, u'states': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states', u'rel': u'bookmark'}], u'traits': [], u'provision_state': u'available', u'clean_step': {}, u'vendor_interface': None, u'uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'console_enabled': False, u'extra': {}, u'raid_config': {}, u'provision_updated_at': None, u'power_state': None, u'last_error': None, u'target_raid_config': {}, u'maintenance': False, u'network_interface': None, u'inspection_started_at': None, u'inspection_finished_at': None, u'description': None, u'conductor': u'fake.conductor', u'driver': u'fake-hardware', u'power_interface': None, u'updated_at': None, u'volume': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/volume', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/volume', u'rel': u'bookmark'}], u'raid_interface': None, u'rescue_interface': None, u'boot_interface': None, u'reservation': None, u'management_interface': None, u'properties': {u'memory_mb': u'4096', u'cpu_arch': u'x86_64', u'local_gb': u'10', u'cpus': u'8'}, u'bios_interface': None, u'instance_uuid': None, u'name': None, u'driver_info': {u'fake_password': u'******', u'foo': u'bar'}, u'resource_class': None, u'fault': None, u'created_at': u'2019-06-06T07:02:15.503536+00:00', u'portgroups': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/portgroups', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/portgroups', u'rel': u'bookmark'}], u'deploy_interface': None, u'instance_info': {u'foo': u'bar', u'image_url': u'******', u'configdrive': u'******'}, u'console_interface': None, u'protected': False, u'driver_internal_info': {u'private_state': u'secret value'}, u'chassis_uuid': u'e74c40e0-d825-11e2-a28f-0800200c9a66', u'owner': None, u'ports': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'bookmark'}], u'allocation_uuid': None}]} {22} ironic.tests.unit.api.controllers.v1.test_node.TestListNodes.test_detail_using_query [0.155311s] ... ok PUT: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states/provision {'target': 'active'} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-82f70f1b-16a9-4c96-80a5-02e351677672 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"The requested action \\\"active\\\" can not be performed on node \\\"1be26c0b-03f2-4d2e-ae87-c02d7f33c123\\\" while it is in state \\\"manageable\\\".\"}"} PUT: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states/provision {'target': 'active'} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-adbeb9bc-9cb5-440d-9021-43ba3b365c29 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"The requested action \\\"active\\\" can not be performed on node \\\"1be26c0b-03f2-4d2e-ae87-c02d7f33c123\\\" while it is in state \\\"manageable\\\".\"}"} PUT: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states/provision {'target': 'active'} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-57521d50-b920-4944-b966-6f871e505bf8 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"The requested action \\\"active\\\" can not be performed on node \\\"1be26c0b-03f2-4d2e-ae87-c02d7f33c123\\\" while it is in state \\\"manageable\\\".\"}"} {17} ironic.tests.unit.api.controllers.v1.test_node.TestPut.test_bad_requests_in_managed_state [0.138553s] ... ok GET: /v1/nodes/detail {} GOT:{u'nodes': [{u'target_power_state': None, u'links': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'bookmark'}], u'target_provision_state': None, u'last_error': None, u'updated_at': None, u'maintenance_reason': None, u'states': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states', u'rel': u'bookmark'}], u'provision_state': u'available', u'clean_step': {}, u'uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'console_enabled': False, u'extra': {}, u'raid_config': {}, u'provision_updated_at': None, u'power_state': None, u'target_raid_config': {}, u'inspection_started_at': None, u'inspection_finished_at': None, u'maintenance': False, u'driver': u'fake-hardware', u'reservation': None, u'properties': {u'memory_mb': u'4096', u'cpu_arch': u'x86_64', u'local_gb': u'10', u'cpus': u'8'}, u'instance_uuid': None, u'name': None, u'driver_info': {u'fake_password': u'******', u'foo': u'bar'}, u'created_at': u'2019-06-06T07:02:14.773430+00:00', u'instance_info': {u'foo': u'bar', u'image_url': u'******', u'configdrive': u'******'}, u'driver_internal_info': {u'private_state': u'secret value'}, u'chassis_uuid': None, u'ports': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'bookmark'}]}]} GET: /v1/nodes/detail {} GOT:{u'nodes': [{u'target_power_state': None, u'links': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'bookmark'}], u'target_provision_state': None, u'last_error': None, u'updated_at': None, u'maintenance_reason': None, u'states': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states', u'rel': u'bookmark'}], u'provision_state': u'available', u'clean_step': {}, u'uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'console_enabled': False, u'extra': {}, u'raid_config': {}, u'provision_updated_at': None, u'power_state': None, u'target_raid_config': {}, u'network_interface': u'flat', u'inspection_started_at': None, u'inspection_finished_at': None, u'maintenance': False, u'driver': u'fake-hardware', u'reservation': None, u'properties': {u'memory_mb': u'4096', u'cpu_arch': u'x86_64', u'local_gb': u'10', u'cpus': u'8'}, u'instance_uuid': None, u'name': None, u'driver_info': {u'fake_password': u'******', u'foo': u'bar'}, u'created_at': u'2019-06-06T07:02:14.773430+00:00', u'instance_info': {u'foo': u'bar', u'image_url': u'******', u'configdrive': u'******'}, u'driver_internal_info': {u'private_state': u'secret value'}, u'chassis_uuid': None, u'ports': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'bookmark'}]}]} {11} ironic.tests.unit.api.controllers.v1.test_node.TestListNodes.test_hide_fields_in_newer_versions_network_interface [0.195652s] ... ok GET: /v1/nodes?associated=true {} GOT:{u'nodes': [{u'instance_uuid': u'4d5670d0-9e2b-4cfa-8411-36f1a480ecd2', u'maintenance': False, u'links': [{u'href': u'http://localhost/v1/nodes/91dddbad-0000-4331-a305-2304bcb67314', u'rel': u'self'}, {u'href': u'http://localhost/nodes/91dddbad-0000-4331-a305-2304bcb67314', u'rel': u'bookmark'}], u'power_state': None, u'provision_state': None, u'uuid': u'91dddbad-0000-4331-a305-2304bcb67314'}, {u'instance_uuid': u'727b8466-b00d-4879-a0c9-c9275f19f48f', u'maintenance': False, u'links': [{u'href': u'http://localhost/v1/nodes/5ea71fa3-e0d8-4c9d-a849-a40ca57fdfa4', u'rel': u'self'}, {u'href': u'http://localhost/nodes/5ea71fa3-e0d8-4c9d-a849-a40ca57fdfa4', u'rel': u'bookmark'}], u'power_state': None, u'provision_state': None, u'uuid': u'5ea71fa3-e0d8-4c9d-a849-a40ca57fdfa4'}, {u'instance_uuid': u'72ea7cab-a6e3-4a2f-917f-0d35e0411ddc', u'maintenance': False, u'links': [{u'href': u'http://localhost/v1/nodes/e487b747-5d2f-45a9-bd8b-7385901f640f', u'rel': u'self'}, {u'href': u'http://localhost/nodes/e487b747-5d2f-45a9-bd8b-7385901f640f', u'rel': u'bookmark'}], u'power_state': None, u'provision_state': None, u'uuid': u'e487b747-5d2f-45a9-bd8b-7385901f640f'}, {u'instance_uuid': u'2403f6bf-596b-4245-9b71-ce2bd5c24ce2', u'maintenance': False, u'links': [{u'href': u'http://localhost/v1/nodes/c3f90358-840b-4a96-8871-865a59cf7f62', u'rel': u'self'}, {u'href': u'http://localhost/nodes/c3f90358-840b-4a96-8871-865a59cf7f62', u'rel': u'bookmark'}], u'power_state': None, u'provision_state': None, u'uuid': u'c3f90358-840b-4a96-8871-865a59cf7f62'}]} GET: /v1/nodes?associated=True {} GOT:{u'nodes': [{u'instance_uuid': u'4d5670d0-9e2b-4cfa-8411-36f1a480ecd2', u'maintenance': False, u'links': [{u'href': u'http://localhost/v1/nodes/91dddbad-0000-4331-a305-2304bcb67314', u'rel': u'self'}, {u'href': u'http://localhost/nodes/91dddbad-0000-4331-a305-2304bcb67314', u'rel': u'bookmark'}], u'power_state': None, u'provision_state': None, u'uuid': u'91dddbad-0000-4331-a305-2304bcb67314'}, {u'instance_uuid': u'727b8466-b00d-4879-a0c9-c9275f19f48f', u'maintenance': False, u'links': [{u'href': u'http://localhost/v1/nodes/5ea71fa3-e0d8-4c9d-a849-a40ca57fdfa4', u'rel': u'self'}, {u'href': u'http://localhost/nodes/5ea71fa3-e0d8-4c9d-a849-a40ca57fdfa4', u'rel': u'bookmark'}], u'power_state': None, u'provision_state': None, u'uuid': u'5ea71fa3-e0d8-4c9d-a849-a40ca57fdfa4'}, {u'instance_uuid': u'72ea7cab-a6e3-4a2f-917f-0d35e0411ddc', u'maintenance': False, u'links': [{u'href': u'http://localhost/v1/nodes/e487b747-5d2f-45a9-bd8b-7385901f640f', u'rel': u'self'}, {u'href': u'http://localhost/nodes/e487b747-5d2f-45a9-bd8b-7385901f640f', u'rel': u'bookmark'}], u'power_state': None, u'provision_state': None, u'uuid': u'e487b747-5d2f-45a9-bd8b-7385901f640f'}, {u'instance_uuid': u'2403f6bf-596b-4245-9b71-ce2bd5c24ce2', u'maintenance': False, u'links': [{u'href': u'http://localhost/v1/nodes/c3f90358-840b-4a96-8871-865a59cf7f62', u'rel': u'self'}, {u'href': u'http://localhost/nodes/c3f90358-840b-4a96-8871-865a59cf7f62', u'rel': u'bookmark'}], u'power_state': None, u'provision_state': None, u'uuid': u'c3f90358-840b-4a96-8871-865a59cf7f62'}]} {16} ironic.tests.unit.api.controllers.v1.test_node.TestListNodes.test_associated_nodes_insensitive [0.321631s] ... ok PUT: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states/provision {'target': 'inspect'} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-211bb555-4fa7-4652-8803-6db8c4414c49 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.6 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Failed to validate inspection or power info.\"}"} {28} ironic.tests.unit.api.controllers.v1.test_node.TestPut.test_inspect_validation_failed_missing_parameter_value [0.103528s] ... ok PATCH: /v1/nodes/node-57.1 [{'path': '/instance_uuid', 'value': 'aaaaaaaa-1111-bbbb-2222-cccccccccccc', 'op': 'replace'}] GOT:Response: 404 Not Found Content-Type: application/json Openstack-Request-Id: req-647b2749-c3b3-4047-b49e-8eeb5e929552 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Node node-57.1 could not be found.\"}"} {9} ironic.tests.unit.api.controllers.v1.test_node.TestPatch.test_update_by_name_unsupported [0.078905s] ... ok GET: /v1/nodes?instance_uuid=626649a1-7293-44f1-9ad1-9e2d4a8511d5 {} GOT:{u'nodes': [{u'instance_uuid': u'626649a1-7293-44f1-9ad1-9e2d4a8511d5', u'maintenance': False, u'links': [{u'href': u'http://localhost/v1/nodes/b79bb803-ad2b-4c08-840c-b2e3f92aeaeb', u'rel': u'self'}, {u'href': u'http://localhost/nodes/b79bb803-ad2b-4c08-840c-b2e3f92aeaeb', u'rel': u'bookmark'}], u'name': None, u'power_state': None, u'provision_state': u'available', u'uuid': u'b79bb803-ad2b-4c08-840c-b2e3f92aeaeb'}]} {20} ironic.tests.unit.api.controllers.v1.test_node.TestListNodes.test_node_by_instance_uuid [0.098422s] ... ok POST: /v1/ports {'local_link_connection': {'switch_info': 'switch1', 'port_id': 'Ethernet3/1', 'switch_id': '0a:1b:2c:3d:4e:5f'}, 'node_uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123', 'uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c781', 'extra': {}, 'pxe_enabled': True, 'portgroup_uuid': None, 'physical_network': None, 'address': '52:54:00:cf:2d:31', 'is_smartnic': False} GOT:Response: 201 Created Content-Type: application/json Location: http://localhost/v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 Openstack-Request-Id: req-b8e931ef-7fd0-4ed7-9bb4-b05e33cda956 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"local_link_connection": {"switch_info": "switch1", "port_id": "Ethernet3/1", "switch_id": "0a:1b:2c:3d:4e:5f"}, "node_uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "links": [{"href": "http://localhost/v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "rel": "self"}, {"href": "http://localhost/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "rel": "bookmark"}], "extra": {}, "pxe_enabled": true, "portgroup_uuid": null, "updated_at": null, "physical_network": null, "address": "52:54:00:cf:2d:31", "internal_info": {}, "created_at": "2019-06-06T07:02:15.490565+00:00", "is_smartnic": false} {2} ironic.tests.unit.api.controllers.v1.test_port.TestPost.test_create_port_cannot_send_create_port [0.134613s] ... ok PATCH: /v1/nodes/node-57.1 [{'path': '/maintenance', 'value': 'true', 'op': 'replace'}] GOT:Response: 200 OK Content-Type: application/json Openstack-Request-Id: req-2a3f636b-c0ef-4bc3-a60f-d45160146fe3 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.5 {"target_power_state": null, "links": [{"href": "http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "rel": "self"}, {"href": "http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "rel": "bookmark"}], "target_provision_state": null, "last_error": null, "updated_at": null, "maintenance_reason": null, "provision_state": "available", "uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "console_enabled": false, "extra": {}, "provision_updated_at": null, "maintenance": false, "power_state": null, "driver": "fake-hardware", "reservation": null, "properties": {"memory_mb": "4096", "cpu_arch": "x86_64", "local_gb": "10", "cpus": "8"}, "instance_uuid": null, "name": "node-57.1", "driver_info": {"fake_password": "******", "foo": "bar"}, "created_at": "2019-06-06T07:02:15.075158+00:00", "instance_info": {"foo": "bar", "image_url": "******", "configdrive": "******"}, "driver_internal_info": {"private_state": "secret value"}, "chassis_uuid": "e74c40e0-d825-11e2-a28f-0800200c9a66", "ports": [{"href": "http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports", "rel": "self"}, {"href": "http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports", "rel": "bookmark"}]} {30} ironic.tests.unit.api.controllers.v1.test_node.TestPatch.test_replace_maintenance_by_name [0.109983s] ... ok PUT: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states/provision {'target': 'abort'} GOT:Response: 202 Accepted Location: http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states Openstack-Request-Id: req-24865806-6abd-4181-8cf7-df3e6af6b3b6 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.41 {17} ironic.tests.unit.api.controllers.v1.test_node.TestPut.test_inspect_abort_accepted_after_1_41 [0.105918s] ... ok GET: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123?fields=automated_clean {} GOT:{u'automated_clean': True, u'links': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'bookmark'}]} {16} ironic.tests.unit.api.controllers.v1.test_node.TestListNodes.test_get_automated_clean_fields [0.086955s] ... ok POST: /v1/nodes {'instance_uuid': None, 'uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123', 'driver_info': {'fake_password': 'fakepass', 'foo': 'bar'}, 'extra': {}, 'driver': 'fake-hardware', 'properties': {'memory_mb': '4096', 'cpu_arch': 'x86_64', 'local_gb': '10', 'cpus': '8'}, 'maintenance': False, 'chassis_uuid': 'e74c40e0-d825-11e2-a28f-0800200c9a66', 'instance_info': {'foo': 'bar', 'image_url': 'http://example.com/test_image_url', 'configdrive': 'TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQ='}} GOT:Response: 201 Created Content-Type: application/json Location: http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123 Openstack-Request-Id: req-478c8b82-b919-4fc0-8d09-75b79f91a94b X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"target_power_state": null, "links": [{"href": "http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "rel": "self"}, {"href": "http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "rel": "bookmark"}], "target_provision_state": null, "last_error": null, "updated_at": null, "maintenance_reason": null, "provision_state": null, "uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "console_enabled": false, "extra": {}, "provision_updated_at": null, "maintenance": false, "power_state": null, "driver": "fake-hardware", "reservation": null, "properties": {"memory_mb": "4096", "cpu_arch": "x86_64", "local_gb": "10", "cpus": "8"}, "instance_uuid": null, "driver_info": {"fake_password": "******", "foo": "bar"}, "created_at": "2000-01-01T00:00:00+00:00", "ports": [{"href": "http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports", "rel": "self"}, {"href": "http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports", "rel": "bookmark"}], "chassis_uuid": "e74c40e0-d825-11e2-a28f-0800200c9a66", "instance_info": {"foo": "bar", "image_url": "******", "configdrive": "******"}} GET: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123 {} GOT:{u'target_power_state': None, u'links': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'bookmark'}], u'target_provision_state': None, u'last_error': None, u'updated_at': None, u'maintenance_reason': None, u'provision_state': None, u'uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'console_enabled': False, u'extra': {}, u'provision_updated_at': None, u'maintenance': False, u'power_state': None, u'driver': u'fake-hardware', u'reservation': None, u'properties': {u'memory_mb': u'4096', u'cpu_arch': u'x86_64', u'local_gb': u'10', u'cpus': u'8'}, u'instance_uuid': None, u'driver_info': {u'fake_password': u'******', u'foo': u'bar'}, u'created_at': u'2000-01-01T00:00:00+00:00', u'ports': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'bookmark'}], u'chassis_uuid': u'e74c40e0-d825-11e2-a28f-0800200c9a66', u'instance_info': {u'foo': u'bar', u'image_url': u'******', u'configdrive': u'******'}} {24} ironic.tests.unit.api.controllers.v1.test_node.TestPost.test_create_node [0.166904s] ... ok PUT: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states/power {'target': 'power on', 'timeout': 0} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-6f1f5bed-f767-4201-b35e-0f34c6eb9861 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.26 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"timeout has to be positive integer\"}"} {28} ironic.tests.unit.api.controllers.v1.test_node.TestPut.test_power_state_power_on_invalid_timeout_invalid_soft_ver [0.086854s] ... ok PUT: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states/power {'target': 'power on', 'timeout': 2} GOT:Response: 406 Not Acceptable Content-Type: application/json Openstack-Request-Id: req-caa631e4-d5db-48d1-a9d9-3dd6556f48e6 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.26 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Request not acceptable.\"}"} {17} ironic.tests.unit.api.controllers.v1.test_node.TestPut.test_power_state_power_on_valid_timeout_invalid_soft_ver [0.075812s] ... ok /usr/lib/python2.7/site-packages/oslo_serialization/jsonutils.py:192: UserWarning: Cannot convert UcsOperationError(u'%(operation)s failed, error: %(error)s',) to primitive, will raise ValueError instead of warning in version 3.0 "instead of warning in version 3.0" % (value,)) GET: /v1/nodes/node.json.json {} GOT:{u'target_power_state': None, u'automated_clean': None, u'inspect_interface': None, u'links': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'bookmark'}], u'target_provision_state': None, u'deploy_step': {}, u'storage_interface': None, u'conductor_group': u'', u'protected_reason': None, u'maintenance_reason': None, u'states': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states', u'rel': u'bookmark'}], u'traits': [], u'provision_state': u'available', u'clean_step': {}, u'vendor_interface': None, u'uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'console_enabled': False, u'extra': {}, u'raid_config': {}, u'provision_updated_at': None, u'power_state': None, u'last_error': None, u'target_raid_config': {}, u'maintenance': False, u'network_interface': None, u'inspection_started_at': None, u'inspection_finished_at': None, u'description': None, u'conductor': u'fake.conductor', u'driver': u'fake-hardware', u'power_interface': None, u'updated_at': None, u'volume': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/volume', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/volume', u'rel': u'bookmark'}], u'raid_interface': None, u'rescue_interface': None, u'boot_interface': None, u'reservation': None, u'management_interface': None, u'properties': {u'memory_mb': u'4096', u'cpu_arch': u'x86_64', u'local_gb': u'10', u'cpus': u'8'}, u'bios_interface': None, u'instance_uuid': None, u'name': u'node.json', u'driver_info': {u'fake_password': u'******', u'foo': u'bar'}, u'resource_class': None, u'fault': None, u'created_at': u'2019-06-06T07:02:15.473904+00:00', u'portgroups': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/portgroups', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/portgroups', u'rel': u'bookmark'}], u'deploy_interface': None, u'instance_info': {u'foo': u'bar', u'image_url': u'******', u'configdrive': u'******'}, u'console_interface': None, u'protected': False, u'driver_internal_info': {u'private_state': u'secret value'}, u'chassis_uuid': u'e74c40e0-d825-11e2-a28f-0800200c9a66', u'owner': None, u'ports': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'bookmark'}], u'allocation_uuid': None} {7} ironic.tests.unit.api.controllers.v1.test_node.TestListNodes.test_get_one_with_double_json [0.127396s] ... ok GET: /v1/nodes/node.json {} GOT:{u'target_power_state': None, u'automated_clean': None, u'inspect_interface': None, u'links': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'bookmark'}], u'target_provision_state': None, u'deploy_step': {}, u'storage_interface': None, u'conductor_group': u'', u'protected_reason': None, u'maintenance_reason': None, u'states': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states', u'rel': u'bookmark'}], u'traits': [], u'provision_state': u'available', u'clean_step': {}, u'vendor_interface': None, u'uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'console_enabled': False, u'extra': {}, u'raid_config': {}, u'provision_updated_at': None, u'power_state': None, u'last_error': None, u'target_raid_config': {}, u'maintenance': False, u'network_interface': None, u'inspection_started_at': None, u'inspection_finished_at': None, u'description': None, u'conductor': u'fake.conductor', u'driver': u'fake-hardware', u'power_interface': None, u'updated_at': None, u'volume': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/volume', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/volume', u'rel': u'bookmark'}], u'raid_interface': None, u'rescue_interface': None, u'boot_interface': None, u'reservation': None, u'management_interface': None, u'properties': {u'memory_mb': u'4096', u'cpu_arch': u'x86_64', u'local_gb': u'10', u'cpus': u'8'}, u'bios_interface': None, u'instance_uuid': None, u'name': u'node.json', u'driver_info': {u'fake_password': u'******', u'foo': u'bar'}, u'resource_class': None, u'fault': None, u'created_at': u'2019-06-06T07:02:14.790931+00:00', u'portgroups': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/portgroups', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/portgroups', u'rel': u'bookmark'}], u'deploy_interface': None, u'instance_info': {u'foo': u'bar', u'image_url': u'******', u'configdrive': u'******'}, u'console_interface': None, u'protected': False, u'driver_internal_info': {u'private_state': u'secret value'}, u'chassis_uuid': u'e74c40e0-d825-11e2-a28f-0800200c9a66', u'owner': None, u'ports': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'bookmark'}], u'allocation_uuid': None} {8} ironic.tests.unit.api.controllers.v1.test_node.TestListNodes.test_get_one_with_json_in_name [0.101590s] ... ok GET: /v1/nodes/?limit=3&associated=True {} GOT:{u'nodes': [{u'instance_uuid': u'ff55768c-986a-4e18-956e-66845a144f94', u'maintenance': False, u'links': [{u'href': u'http://localhost/v1/nodes/fe1f2905-8c02-4f67-b862-4abef8657be5', u'rel': u'self'}, {u'href': u'http://localhost/nodes/fe1f2905-8c02-4f67-b862-4abef8657be5', u'rel': u'bookmark'}], u'power_state': None, u'provision_state': None, u'uuid': u'fe1f2905-8c02-4f67-b862-4abef8657be5'}, {u'instance_uuid': u'e1bbac9b-763e-43fa-acc4-769ea8a99f2f', u'maintenance': False, u'links': [{u'href': u'http://localhost/v1/nodes/51ac785b-e062-4a1b-8327-53d5b2842f72', u'rel': u'self'}, {u'href': u'http://localhost/nodes/51ac785b-e062-4a1b-8327-53d5b2842f72', u'rel': u'bookmark'}], u'power_state': None, u'provision_state': None, u'uuid': u'51ac785b-e062-4a1b-8327-53d5b2842f72'}, {u'instance_uuid': u'56fd85e6-73ea-4a7a-b929-45d71bd0fdbe', u'maintenance': False, u'links': [{u'href': u'http://localhost/v1/nodes/76fc9e06-af18-40a0-83ee-b2369609909d', u'rel': u'self'}, {u'href': u'http://localhost/nodes/76fc9e06-af18-40a0-83ee-b2369609909d', u'rel': u'bookmark'}], u'power_state': None, u'provision_state': None, u'uuid': u'76fc9e06-af18-40a0-83ee-b2369609909d'}], u'next': u'http://localhost/v1/nodes?sort_key=id&sort_dir=asc&associated=True&limit=3&marker=76fc9e06-af18-40a0-83ee-b2369609909d'} {10} ironic.tests.unit.api.controllers.v1.test_node.TestListNodes.test_next_link_with_association [0.214331s] ... ok GET: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123 {} GOT:{u'target_power_state': None, u'automated_clean': None, u'inspect_interface': None, u'links': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'bookmark'}], u'target_provision_state': None, u'deploy_step': {}, u'storage_interface': None, u'conductor_group': u'', u'updated_at': None, u'maintenance_reason': None, u'states': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states', u'rel': u'bookmark'}], u'traits': [], u'provision_state': u'available', u'clean_step': {}, u'vendor_interface': None, u'uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'console_enabled': False, u'extra': {}, u'raid_config': {}, u'provision_updated_at': None, u'power_state': None, u'last_error': None, u'target_raid_config': {}, u'network_interface': None, u'inspection_started_at': None, u'inspection_finished_at': None, u'maintenance': False, u'driver': u'fake-hardware', u'power_interface': None, u'volume': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/volume', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/volume', u'rel': u'bookmark'}], u'raid_interface': None, u'rescue_interface': None, u'boot_interface': None, u'reservation': None, u'management_interface': None, u'properties': {u'memory_mb': u'4096', u'cpu_arch': u'x86_64', u'local_gb': u'10', u'cpus': u'8'}, u'bios_interface': None, u'instance_uuid': None, u'name': None, u'driver_info': {u'fake_password': u'******', u'foo': u'bar'}, u'resource_class': None, u'fault': None, u'created_at': u'2019-06-06T07:02:15.460059+00:00', u'portgroups': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/portgroups', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/portgroups', u'rel': u'bookmark'}], u'deploy_interface': None, u'instance_info': {u'foo': u'bar', u'image_url': u'******', u'configdrive': u'******'}, u'console_interface': None, u'driver_internal_info': {u'private_state': u'secret value'}, u'chassis_uuid': None, u'ports': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'bookmark'}]} {4} ironic.tests.unit.api.controllers.v1.test_node.TestListNodes.test_node_automated_clean_null_field [0.087168s] ... ok PATCH: /v1/nodes/1c676efd-31e0-480c-adb8-abd9361196b9 [{'path': '/resource_class', 'value': 'ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff', 'op': 'add'}] GOT:Response: 200 OK Content-Type: application/json Openstack-Request-Id: req-ec52cc6c-1fa7-4301-b5c2-4b21f31335c1 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.21 {"target_power_state": null, "links": [{"href": "http://localhost/v1/nodes/1c676efd-31e0-480c-adb8-abd9361196b9", "rel": "self"}, {"href": "http://localhost/nodes/1c676efd-31e0-480c-adb8-abd9361196b9", "rel": "bookmark"}], "target_provision_state": null, "last_error": null, "updated_at": null, "maintenance_reason": null, "states": [{"href": "http://localhost/v1/nodes/1c676efd-31e0-480c-adb8-abd9361196b9/states", "rel": "self"}, {"href": "http://localhost/nodes/1c676efd-31e0-480c-adb8-abd9361196b9/states", "rel": "bookmark"}], "provision_state": "available", "clean_step": {}, "uuid": "1c676efd-31e0-480c-adb8-abd9361196b9", "console_enabled": false, "extra": {}, "raid_config": {}, "provision_updated_at": null, "power_state": null, "target_raid_config": {}, "network_interface": null, "inspection_started_at": null, "inspection_finished_at": null, "maintenance": false, "driver": "fake-hardware", "reservation": null, "properties": {"memory_mb": "4096", "cpu_arch": "x86_64", "local_gb": "10", "cpus": "8"}, "instance_uuid": null, "name": null, "driver_info": {"fake_password": "******", "foo": "bar"}, "resource_class": null, "created_at": "2019-06-06T07:02:15.358702+00:00", "ports": [{"href": "http://localhost/v1/nodes/1c676efd-31e0-480c-adb8-abd9361196b9/ports", "rel": "self"}, {"href": "http://localhost/nodes/1c676efd-31e0-480c-adb8-abd9361196b9/ports", "rel": "bookmark"}], "driver_internal_info": {"private_state": "secret value"}, "chassis_uuid": null, "instance_info": {"foo": "bar", "image_url": "******", "configdrive": "******"}} {12} ironic.tests.unit.api.controllers.v1.test_node.TestPatch.test_update_resource_class_max_length [0.117104s] ... ok POST: /v1/nodes {'instance_uuid': None, 'uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123', 'driver_info': {'fake_password': 'fakepass', 'foo': 'bar'}, 'resource_class': 'foo', 'extra': {}, 'driver': 'fake-hardware', 'properties': {'memory_mb': '4096', 'cpu_arch': 'x86_64', 'local_gb': '10', 'cpus': '8'}, 'maintenance': False, 'chassis_uuid': 'e74c40e0-d825-11e2-a28f-0800200c9a66', 'instance_info': {'foo': 'bar', 'image_url': 'http://example.com/test_image_url', 'configdrive': 'TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQ='}} GOT:Response: 406 Not Acceptable Content-Type: application/json Openstack-Request-Id: req-070b5a20-efa2-411e-98ac-6c0caf64b5f6 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Request not acceptable.\"}"} {9} ironic.tests.unit.api.controllers.v1.test_node.TestPost.test_create_node_resource_class_old_api_version [0.067155s] ... ok GET: /v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 {} GOT:{u'node_uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c781', u'links': [{u'href': u'http://localhost/v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781', u'rel': u'self'}, {u'href': u'http://localhost/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781', u'rel': u'bookmark'}], u'extra': {}, u'created_at': u'2019-06-06T07:02:15.409459+00:00', u'updated_at': None, u'address': u'52:54:00:cf:2d:31'} {28} ironic.tests.unit.api.controllers.v1.test_port.TestListPorts.test_get_one [0.089687s] ... ok GET: /v1/nodes/187c4d60-7b95-48d2-8e7a-2eec0660e84b {} GOT:{u'target_power_state': None, u'automated_clean': None, u'inspect_interface': None, u'links': [{u'href': u'http://localhost/v1/nodes/187c4d60-7b95-48d2-8e7a-2eec0660e84b', u'rel': u'self'}, {u'href': u'http://localhost/nodes/187c4d60-7b95-48d2-8e7a-2eec0660e84b', u'rel': u'bookmark'}], u'target_provision_state': None, u'deploy_step': {}, u'storage_interface': None, u'conductor_group': u'', u'protected_reason': None, u'maintenance_reason': None, u'states': [{u'href': u'http://localhost/v1/nodes/187c4d60-7b95-48d2-8e7a-2eec0660e84b/states', u'rel': u'self'}, {u'href': u'http://localhost/nodes/187c4d60-7b95-48d2-8e7a-2eec0660e84b/states', u'rel': u'bookmark'}], u'traits': [], u'provision_state': u'active', u'clean_step': {}, u'vendor_interface': None, u'uuid': u'187c4d60-7b95-48d2-8e7a-2eec0660e84b', u'console_enabled': False, u'extra': {}, u'raid_config': {}, u'provision_updated_at': None, u'power_state': None, u'last_error': None, u'target_raid_config': {}, u'network_interface': None, u'inspection_started_at': None, u'inspection_finished_at': None, u'maintenance': False, u'driver': u'fake-hardware', u'power_interface': None, u'updated_at': None, u'volume': [{u'href': u'http://localhost/v1/nodes/187c4d60-7b95-48d2-8e7a-2eec0660e84b/volume', u'rel': u'self'}, {u'href': u'http://localhost/nodes/187c4d60-7b95-48d2-8e7a-2eec0660e84b/volume', u'rel': u'bookmark'}], u'raid_interface': None, u'rescue_interface': None, u'boot_interface': None, u'reservation': None, u'management_interface': None, u'properties': {u'memory_mb': u'4096', u'cpu_arch': u'x86_64', u'local_gb': u'10', u'cpus': u'8'}, u'bios_interface': None, u'instance_uuid': None, u'name': None, u'driver_info': {u'fake_password': u'******', u'foo': u'bar'}, u'resource_class': None, u'fault': None, u'created_at': u'2019-06-06T07:02:14.888547+00:00', u'portgroups': [{u'href': u'http://localhost/v1/nodes/187c4d60-7b95-48d2-8e7a-2eec0660e84b/portgroups', u'rel': u'self'}, {u'href': u'http://localhost/nodes/187c4d60-7b95-48d2-8e7a-2eec0660e84b/portgroups', u'rel': u'bookmark'}], u'deploy_interface': None, u'instance_info': {u'foo': u'bar', u'image_url': u'******', u'configdrive': u'******'}, u'console_interface': None, u'protected': True, u'driver_internal_info': {u'private_state': u'secret value'}, u'chassis_uuid': None, u'ports': [{u'href': u'http://localhost/v1/nodes/187c4d60-7b95-48d2-8e7a-2eec0660e84b/ports', u'rel': u'self'}, {u'href': u'http://localhost/nodes/187c4d60-7b95-48d2-8e7a-2eec0660e84b/ports', u'rel': u'bookmark'}]} GET: /v1/nodes/3d11caaf-586b-4493-b287-73faa8945daf {} GOT:{u'target_power_state': None, u'automated_clean': None, u'inspect_interface': None, u'links': [{u'href': u'http://localhost/v1/nodes/3d11caaf-586b-4493-b287-73faa8945daf', u'rel': u'self'}, {u'href': u'http://localhost/nodes/3d11caaf-586b-4493-b287-73faa8945daf', u'rel': u'bookmark'}], u'target_provision_state': None, u'deploy_step': {}, u'storage_interface': None, u'conductor_group': u'', u'protected_reason': None, u'maintenance_reason': None, u'states': [{u'href': u'http://localhost/v1/nodes/3d11caaf-586b-4493-b287-73faa8945daf/states', u'rel': u'self'}, {u'href': u'http://localhost/nodes/3d11caaf-586b-4493-b287-73faa8945daf/states', u'rel': u'bookmark'}], u'traits': [], u'provision_state': u'active', u'clean_step': {}, u'vendor_interface': None, u'uuid': u'3d11caaf-586b-4493-b287-73faa8945daf', u'console_enabled': False, u'extra': {}, u'raid_config': {}, u'provision_updated_at': None, u'power_state': None, u'last_error': None, u'target_raid_config': {}, u'network_interface': None, u'inspection_started_at': None, u'inspection_finished_at': None, u'maintenance': False, u'driver': u'fake-hardware', u'power_interface': None, u'updated_at': None, u'volume': [{u'href': u'http://localhost/v1/nodes/3d11caaf-586b-4493-b287-73faa8945daf/volume', u'rel': u'self'}, {u'href': u'http://localhost/nodes/3d11caaf-586b-4493-b287-73faa8945daf/volume', u'rel': u'bookmark'}], u'raid_interface': None, u'rescue_interface': None, u'boot_interface': None, u'reservation': None, u'management_interface': None, u'properties': {u'memory_mb': u'4096', u'cpu_arch': u'x86_64', u'local_gb': u'10', u'cpus': u'8'}, u'bios_interface': None, u'instance_uuid': None, u'name': None, u'driver_info': {u'fake_password': u'******', u'foo': u'bar'}, u'resource_class': None, u'fault': None, u'created_at': u'2019-06-06T07:02:14.939844+00:00', u'portgroups': [{u'href': u'http://localhost/v1/nodes/3d11caaf-586b-4493-b287-73faa8945daf/portgroups', u'rel': u'self'}, {u'href': u'http://localhost/nodes/3d11caaf-586b-4493-b287-73faa8945daf/portgroups', u'rel': u'bookmark'}], u'deploy_interface': None, u'instance_info': {u'foo': u'bar', u'image_url': u'******', u'configdrive': u'******'}, u'console_interface': None, u'protected': False, u'driver_internal_info': {u'private_state': u'secret value'}, u'chassis_uuid': None, u'ports': [{u'href': u'http://localhost/v1/nodes/3d11caaf-586b-4493-b287-73faa8945daf/ports', u'rel': u'self'}, {u'href': u'http://localhost/nodes/3d11caaf-586b-4493-b287-73faa8945daf/ports', u'rel': u'bookmark'}]} {18} ironic.tests.unit.api.controllers.v1.test_node.TestListNodes.test_node_protected [0.125807s] ... ok GET: /v1/nodes?description_contains=cat {} GOT:{u'nodes': [{u'instance_uuid': None, u'maintenance': False, u'links': [{u'href': u'http://localhost/v1/nodes/bb0e23ca-578c-48ac-a6cc-5227b0225b78', u'rel': u'self'}, {u'href': u'http://localhost/nodes/bb0e23ca-578c-48ac-a6cc-5227b0225b78', u'rel': u'bookmark'}], u'name': None, u'power_state': None, u'provision_state': u'available', u'uuid': u'bb0e23ca-578c-48ac-a6cc-5227b0225b78'}]} GET: /v1/nodes?description_contains=dog {} GOT:{u'nodes': [{u'instance_uuid': None, u'maintenance': False, u'links': [{u'href': u'http://localhost/v1/nodes/fbb6bcc5-1b1c-49eb-9b56-a7a95256ad6c', u'rel': u'self'}, {u'href': u'http://localhost/nodes/fbb6bcc5-1b1c-49eb-9b56-a7a95256ad6c', u'rel': u'bookmark'}], u'name': None, u'power_state': None, u'provision_state': u'available', u'uuid': u'fbb6bcc5-1b1c-49eb-9b56-a7a95256ad6c'}]} {16} ironic.tests.unit.api.controllers.v1.test_node.TestListNodes.test_get_nodes_by_description [0.233206s] ... ok POST: /v1/ports {'local_link_connection': {'switch_info': 'switch', 'hostname': 'host', 'switch_id': 'aa:bb:cc:dd:ee:ff'}, 'node_uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123', 'uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c781', 'extra': {}, 'pxe_enabled': True, 'portgroup_uuid': '6eb02b44-18a3-4659-8c0b-8d2802581ae4', 'physical_network': None, 'address': '52:54:00:cf:2d:31', 'is_smartnic': True} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-d9a652ba-fe77-488f-84db-b043bd1ceec0 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Missing mandatory keys. Required keys are set(['port_id', 'switch_id']). Or in case of Smart NIC set(['hostname', 'port_id']). Submitted keys are set(['switch_info', 'hostname', 'switch_id']) .\"}"} {2} ironic.tests.unit.api.controllers.v1.test_port.TestPost.test_create_port_with_is_smartnic_missing_port_id [0.111572s] ... ok GET: /v1/nodes?conductor_group=group1 {} GOT:{u'nodes': [{u'instance_uuid': None, u'maintenance': False, u'links': [{u'href': u'http://localhost/v1/nodes/f6c39072-d70a-4b06-9a40-ee0247f478cf', u'rel': u'self'}, {u'href': u'http://localhost/nodes/f6c39072-d70a-4b06-9a40-ee0247f478cf', u'rel': u'bookmark'}], u'name': None, u'power_state': None, u'provision_state': u'available', u'uuid': u'f6c39072-d70a-4b06-9a40-ee0247f478cf'}]} GET: /v1/nodes?conductor_group=group2 {} GOT:{u'nodes': [{u'instance_uuid': None, u'maintenance': False, u'links': [{u'href': u'http://localhost/v1/nodes/9b8fce7c-0593-4c87-b7f8-ee9bdafcd647', u'rel': u'self'}, {u'href': u'http://localhost/nodes/9b8fce7c-0593-4c87-b7f8-ee9bdafcd647', u'rel': u'bookmark'}], u'name': None, u'power_state': None, u'provision_state': u'available', u'uuid': u'9b8fce7c-0593-4c87-b7f8-ee9bdafcd647'}]} GET: /v1/nodes/detail?conductor_group=group1 {} GOT:{u'nodes': [{u'target_power_state': None, u'inspect_interface': None, u'links': [{u'href': u'http://localhost/v1/nodes/f6c39072-d70a-4b06-9a40-ee0247f478cf', u'rel': u'self'}, {u'href': u'http://localhost/nodes/f6c39072-d70a-4b06-9a40-ee0247f478cf', u'rel': u'bookmark'}], u'target_provision_state': None, u'deploy_step': {}, u'storage_interface': None, u'conductor_group': u'group1', u'updated_at': None, u'maintenance_reason': None, u'states': [{u'href': u'http://localhost/v1/nodes/f6c39072-d70a-4b06-9a40-ee0247f478cf/states', u'rel': u'self'}, {u'href': u'http://localhost/nodes/f6c39072-d70a-4b06-9a40-ee0247f478cf/states', u'rel': u'bookmark'}], u'traits': [], u'provision_state': u'available', u'clean_step': {}, u'vendor_interface': None, u'uuid': u'f6c39072-d70a-4b06-9a40-ee0247f478cf', u'console_enabled': False, u'extra': {}, u'raid_config': {}, u'provision_updated_at': None, u'power_state': None, u'last_error': None, u'target_raid_config': {}, u'network_interface': None, u'inspection_started_at': None, u'inspection_finished_at': None, u'maintenance': False, u'driver': u'fake-hardware', u'power_interface': None, u'volume': [{u'href': u'http://localhost/v1/nodes/f6c39072-d70a-4b06-9a40-ee0247f478cf/volume', u'rel': u'self'}, {u'href': u'http://localhost/nodes/f6c39072-d70a-4b06-9a40-ee0247f478cf/volume', u'rel': u'bookmark'}], u'raid_interface': None, u'rescue_interface': None, u'boot_interface': None, u'reservation': None, u'management_interface': None, u'properties': {u'memory_mb': u'4096', u'cpu_arch': u'x86_64', u'local_gb': u'10', u'cpus': u'8'}, u'bios_interface': None, u'instance_uuid': None, u'name': None, u'driver_info': {u'fake_password': u'******', u'foo': u'bar'}, u'resource_class': None, u'fault': None, u'created_at': u'2019-06-06T07:02:14.477897+00:00', u'portgroups': [{u'href': u'http://localhost/v1/nodes/f6c39072-d70a-4b06-9a40-ee0247f478cf/portgroups', u'rel': u'self'}, {u'href': u'http://localhost/nodes/f6c39072-d70a-4b06-9a40-ee0247f478cf/portgroups', u'rel': u'bookmark'}], u'deploy_interface': None, u'instance_info': {u'foo': u'bar', u'image_url': u'******', u'configdrive': u'******'}, u'console_interface': None, u'driver_internal_info': {u'private_state': u'secret value'}, u'chassis_uuid': None, u'ports': [{u'href': u'http://localhost/v1/nodes/f6c39072-d70a-4b06-9a40-ee0247f478cf/ports', u'rel': u'self'}, {u'href': u'http://localhost/nodes/f6c39072-d70a-4b06-9a40-ee0247f478cf/ports', u'rel': u'bookmark'}]}]} GET: /v1/nodes/detail?conductor_group=group2 {} GOT:{u'nodes': [{u'target_power_state': None, u'inspect_interface': None, u'links': [{u'href': u'http://localhost/v1/nodes/9b8fce7c-0593-4c87-b7f8-ee9bdafcd647', u'rel': u'self'}, {u'href': u'http://localhost/nodes/9b8fce7c-0593-4c87-b7f8-ee9bdafcd647', u'rel': u'bookmark'}], u'target_provision_state': None, u'deploy_step': {}, u'storage_interface': None, u'conductor_group': u'group2', u'updated_at': None, u'maintenance_reason': None, u'states': [{u'href': u'http://localhost/v1/nodes/9b8fce7c-0593-4c87-b7f8-ee9bdafcd647/states', u'rel': u'self'}, {u'href': u'http://localhost/nodes/9b8fce7c-0593-4c87-b7f8-ee9bdafcd647/states', u'rel': u'bookmark'}], u'traits': [], u'provision_state': u'available', u'clean_step': {}, u'vendor_interface': None, u'uuid': u'9b8fce7c-0593-4c87-b7f8-ee9bdafcd647', u'console_enabled': False, u'extra': {}, u'raid_config': {}, u'provision_updated_at': None, u'power_state': None, u'last_error': None, u'target_raid_config': {}, u'network_interface': None, u'inspection_started_at': None, u'inspection_finished_at': None, u'maintenance': False, u'driver': u'fake-hardware', u'power_interface': None, u'volume': [{u'href': u'http://localhost/v1/nodes/9b8fce7c-0593-4c87-b7f8-ee9bdafcd647/volume', u'rel': u'self'}, {u'href': u'http://localhost/nodes/9b8fce7c-0593-4c87-b7f8-ee9bdafcd647/volume', u'rel': u'bookmark'}], u'raid_interface': None, u'rescue_interface': None, u'boot_interface': None, u'reservation': None, u'management_interface': None, u'properties': {u'memory_mb': u'4096', u'cpu_arch': u'x86_64', u'local_gb': u'10', u'cpus': u'8'}, u'bios_interface': None, u'instance_uuid': None, u'name': None, u'driver_info': {u'fake_password': u'******', u'foo': u'bar'}, u'resource_class': None, u'fault': None, u'created_at': u'2019-06-06T07:02:14.488712+00:00', u'portgroups': [{u'href': u'http://localhost/v1/nodes/9b8fce7c-0593-4c87-b7f8-ee9bdafcd647/portgroups', u'rel': u'self'}, {u'href': u'http://localhost/nodes/9b8fce7c-0593-4c87-b7f8-ee9bdafcd647/portgroups', u'rel': u'bookmark'}], u'deploy_interface': None, u'instance_info': {u'foo': u'bar', u'image_url': u'******', u'configdrive': u'******'}, u'console_interface': None, u'driver_internal_info': {u'private_state': u'secret value'}, u'chassis_uuid': None, u'ports': [{u'href': u'http://localhost/v1/nodes/9b8fce7c-0593-4c87-b7f8-ee9bdafcd647/ports', u'rel': u'self'}, {u'href': u'http://localhost/nodes/9b8fce7c-0593-4c87-b7f8-ee9bdafcd647/ports', u'rel': u'bookmark'}]}]} {6} ironic.tests.unit.api.controllers.v1.test_node.TestListNodes.test_get_nodes_by_conductor_group [0.356136s] ... ok POST: /v1/nodes/node-109/vendor_passthru/test {'foo': 'bar'} GOT:Response: 202 Accepted Content-Type: application/json Openstack-Request-Id: req-31158886-aba0-4098-a60f-e0b8d4c496d0 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.5 null {9} ironic.tests.unit.api.controllers.v1.test_node.TestPost.test_vendor_passthru_by_name [0.080342s] ... ok GET: /v1/nodes?instance_uuid=fake {} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-5f6f89b7-b9f8-454e-8c9b-6d94399e5301 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Invalid input for field/attribute instance_uuid. Value: 'fake'. unable to convert to uuid. Error: Expected a UUID but received fake.\"}"} {10} ironic.tests.unit.api.controllers.v1.test_node.TestListNodes.test_node_by_instance_uuid_invalid_uuid [0.052201s] ... ok POST: /v1/nodes {'instance_uuid': None, 'uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123', 'driver_info': {'fake_password': 'fakepass', 'foo': 'bar'}, 'extra': {}, 'driver': 'fake-hardware', 'properties': {'memory_mb': '4096', 'cpu_arch': 'x86_64', 'local_gb': '10', 'cpus': '8'}, 'maintenance': False, 'chassis_uuid': 'e74c40e0-d825-11e2-a28f-0800200c9a66', 'instance_info': {'foo': 'bar', 'image_url': 'http://example.com/test_image_url', 'configdrive': 'TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQ='}, 'network_interface': 'flat'} GOT:Response: 406 Not Acceptable Content-Type: application/json Openstack-Request-Id: req-61ec7d8b-bd16-4b0b-acf0-6bae1e27f422 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Request not acceptable.\"}"} {24} ironic.tests.unit.api.controllers.v1.test_node.TestPost.test_create_node_network_interface_old_api_version [0.089283s] ... ok GET: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123 {} GOT:{u'target_power_state': None, u'links': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'bookmark'}], u'target_provision_state': None, u'last_error': None, u'updated_at': None, u'maintenance_reason': None, u'states': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states', u'rel': u'bookmark'}], u'provision_state': u'available', u'clean_step': {}, u'uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'console_enabled': False, u'extra': {}, u'raid_config': {}, u'provision_updated_at': None, u'power_state': None, u'target_raid_config': {}, u'network_interface': None, u'inspection_started_at': None, u'inspection_finished_at': None, u'maintenance': False, u'driver': u'fake-hardware', u'reservation': None, u'properties': {u'memory_mb': u'4096', u'cpu_arch': u'x86_64', u'local_gb': u'10', u'cpus': u'8'}, u'instance_uuid': None, u'name': None, u'driver_info': {u'fake_password': u'******', u'foo': u'bar'}, u'created_at': u'2019-06-06T07:02:15.184100+00:00', u'instance_info': {u'foo': u'bar', u'image_url': u'******', u'configdrive': u'******'}, u'driver_internal_info': {u'private_state': u'secret value'}, u'chassis_uuid': None, u'ports': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'bookmark'}]} {19} ironic.tests.unit.api.controllers.v1.test_node.TestListNodes.test_portgroups_subresource_link_hidden_for_older_versions [0.089863s] ... ok GET: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states {} GOT:{u'target_power_state': u'fake-state', u'target_provision_state': u'fake-state', u'last_error': u'fake-error', u'console_enabled': False, u'provision_updated_at': u'2000-01-01T00:00:00+00:00', u'power_state': u'fake-state', u'provision_state': u'fake-state'} {18} ironic.tests.unit.api.controllers.v1.test_node.TestListNodes.test_node_states [0.079895s] ... ok PUT: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states/provision {'target': 'abort'} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-0616cd90-1490-459b-97be-9e7f1a42a7a1 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.13 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"The requested action \\\"abort\\\" can not be performed on node \\\"1be26c0b-03f2-4d2e-ae87-c02d7f33c123\\\" while it is in state \\\"cleaning\\\".\"}"} {12} ironic.tests.unit.api.controllers.v1.test_node.TestPut.test_abort_invalid_state [0.138829s] ... ok GET: /v1/portgroups?detail=False&fields=internal_info {} GOT:{u'portgroups': [{u'internal_info': {u'bar': u'buzz'}, u'links': [{u'href': u'http://localhost/v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4', u'rel': u'self'}, {u'href': u'http://localhost/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4', u'rel': u'bookmark'}]}]} {2} ironic.tests.unit.api.controllers.v1.test_portgroup.TestListPortgroups.test_detail_using_query_false_and_fields [0.085748s] ... ok GET: /v1/ports?address=invalid-mac-format {} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-ac119369-1ce8-4fb7-b30d-46f294c21b67 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Invalid input for field/attribute address. Value: 'invalid-mac-format'. unable to convert to macaddress. Error: Expected a MAC address but received invalid-mac-format.\"}"} {28} ironic.tests.unit.api.controllers.v1.test_port.TestListPorts.test_port_by_address_invalid_address_format [0.061798s] ... ok GET: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/volume {} GOT:{u'connectors': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/volume/connectors', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/volume/connectors', u'rel': u'bookmark'}], u'targets': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/volume/targets', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/volume/targets', u'rel': u'bookmark'}], u'links': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/volume/', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/volume/', u'rel': u'bookmark'}]} {4} ironic.tests.unit.api.controllers.v1.test_node.TestListNodes.test_volume_subresource [0.056934s] ... ok GET: /v1/nodes {} GOT:{u'nodes': [{u'instance_uuid': None, u'maintenance': False, u'links': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'bookmark'}], u'name': None, u'power_state': None, u'provision_state': u'available', u'uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123'}]} {10} ironic.tests.unit.api.controllers.v1.test_node.TestListNodes.test_one [0.148510s] ... ok GET: /v1/drivers?detail=True {} GOT:{u'drivers': [{u'default_inspect_interface': None, u'links': [{u'href': u'http://localhost/v1/drivers/fake-hardware-type', u'rel': u'self'}, {u'href': u'http://localhost/drivers/fake-hardware-type', u'rel': u'bookmark'}], u'enabled_raid_interfaces': [], u'enabled_management_interfaces': [], u'enabled_deploy_interfaces': [u'iscsi', u'direct'], u'default_boot_interface': None, u'default_raid_interface': None, u'default_power_interface': None, u'enabled_network_interfaces': [], u'default_management_interface': None, u'enabled_power_interfaces': [], u'default_vendor_interface': None, u'default_network_interface': None, u'enabled_boot_interfaces': [], u'enabled_inspect_interfaces': [], u'enabled_console_interfaces': [], u'properties': [{u'href': u'http://localhost/v1/drivers/fake-hardware-type/properties', u'rel': u'self'}, {u'href': u'http://localhost/drivers/fake-hardware-type/properties', u'rel': u'bookmark'}], u'name': u'fake-hardware-type', u'default_console_interface': None, u'type': u'dynamic', u'default_deploy_interface': u'direct', u'enabled_vendor_interfaces': [], u'hosts': [u'fake-host1', u'fake-host2']}, {u'default_inspect_interface': None, u'links': [{u'href': u'http://localhost/v1/drivers/fake-hardware-type-2', u'rel': u'self'}, {u'href': u'http://localhost/drivers/fake-hardware-type-2', u'rel': u'bookmark'}], u'enabled_raid_interfaces': [], u'enabled_management_interfaces': [], u'enabled_deploy_interfaces': [], u'default_boot_interface': None, u'default_raid_interface': None, u'default_power_interface': None, u'enabled_network_interfaces': [], u'default_management_interface': None, u'enabled_power_interfaces': [], u'default_vendor_interface': None, u'default_network_interface': None, u'enabled_boot_interfaces': [], u'enabled_inspect_interfaces': [], u'enabled_console_interfaces': [], u'properties': [{u'href': u'http://localhost/v1/drivers/fake-hardware-type-2/properties', u'rel': u'self'}, {u'href': u'http://localhost/drivers/fake-hardware-type-2/properties', u'rel': u'bookmark'}], u'name': u'fake-hardware-type-2', u'default_console_interface': None, u'type': u'dynamic', u'default_deploy_interface': None, u'enabled_vendor_interfaces': [], u'hosts': [u'fake-host1']}]} GET: /v1/drivers/fake-hardware-type {} GOT:{u'hosts': [u'fake-host1', u'fake-host2'], u'name': u'fake-hardware-type', u'links': [{u'href': u'http://localhost/v1/drivers/fake-hardware-type', u'rel': u'self'}, {u'href': u'http://localhost/drivers/fake-hardware-type', u'rel': u'bookmark'}]} GET: /drivers/fake-hardware-type {} GOT:{u'hosts': [u'fake-host1', u'fake-host2'], u'name': u'fake-hardware-type', u'links': [{u'href': u'http://localhost/v1/drivers/fake-hardware-type', u'rel': u'self'}, {u'href': u'http://localhost/drivers/fake-hardware-type', u'rel': u'bookmark'}]} GET: /v1/drivers/fake-hardware-type-2 {} GOT:{u'hosts': [u'fake-host1'], u'name': u'fake-hardware-type-2', u'links': [{u'href': u'http://localhost/v1/drivers/fake-hardware-type-2', u'rel': u'self'}, {u'href': u'http://localhost/drivers/fake-hardware-type-2', u'rel': u'bookmark'}]} GET: /drivers/fake-hardware-type-2 {} GOT:{u'hosts': [u'fake-host1'], u'name': u'fake-hardware-type-2', u'links': [{u'href': u'http://localhost/v1/drivers/fake-hardware-type-2', u'rel': u'self'}, {u'href': u'http://localhost/drivers/fake-hardware-type-2', u'rel': u'bookmark'}]} {31} ironic.tests.unit.api.controllers.v1.test_driver.TestListDrivers.test_drivers_with_dynamic_detailed [0.145621s] ... ok {31} ironic.tests.unit.api.controllers.v1.test_expose.TestExposedAPIMethodsCheckPolicy.test_chasis_api_policy [0.070494s] ... ok GET: /v1/ports?address=aa:bb:cc:dd:ee:ff {} GOT:{u'ports': []} {28} ironic.tests.unit.api.controllers.v1.test_port.TestListPorts.test_port_by_address_non_existent_address [0.087877s] ... ok PUT: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/vendor_passthru/do_test {'test_key': 'test_value'} GOT:Response: 202 Accepted Content-Type: application/json Openstack-Request-Id: req-0c571168-96aa-493c-8651-e8c1e92e2108 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 null {9} ironic.tests.unit.api.controllers.v1.test_node.TestPost.test_vendor_passthru_put [0.078795s] ... ok POST: /v1/nodes {'instance_uuid': None, 'uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123', 'driver_info': {'fake_password': 'fakepass', 'foo': 'bar'}, 'extra': {}, 'driver': 'fake-hardware', 'properties': {'memory_mb': '4096', 'cpu_arch': 'x86_64', 'local_gb': '10', 'cpus': '8'}, 'maintenance': False, 'chassis_uuid': 'e74c40e0-d825-11e2-a28f-0800200c9a66', 'instance_info': {'foo': 'bar', 'image_url': 'http://example.com/test_image_url', 'configdrive': 'TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQ='}} GOT:Response: 201 Created Content-Type: application/json Location: http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123 Openstack-Request-Id: req-33dfebd9-4247-4bff-9d14-17bbbdb836d5 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.11 {"target_power_state": null, "links": [{"href": "http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "rel": "self"}, {"href": "http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "rel": "bookmark"}], "extra": {}, "last_error": null, "updated_at": null, "maintenance_reason": null, "provision_state": "enroll", "clean_step": {}, "uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "console_enabled": false, "target_provision_state": null, "provision_updated_at": null, "power_state": null, "inspection_started_at": null, "inspection_finished_at": null, "maintenance": false, "driver": "fake-hardware", "reservation": null, "properties": {"memory_mb": "4096", "cpu_arch": "x86_64", "local_gb": "10", "cpus": "8"}, "instance_uuid": null, "name": null, "driver_info": {"fake_password": "******", "foo": "bar"}, "created_at": "2019-06-06T07:02:15.546322+00:00", "ports": [{"href": "http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports", "rel": "self"}, {"href": "http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports", "rel": "bookmark"}], "driver_internal_info": {}, "chassis_uuid": "e74c40e0-d825-11e2-a28f-0800200c9a66", "instance_info": {"foo": "bar", "image_url": "******", "configdrive": "******"}} GET: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123 {} GOT:{u'target_power_state': None, u'links': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'bookmark'}], u'target_provision_state': None, u'last_error': None, u'updated_at': None, u'maintenance_reason': None, u'provision_state': u'enroll', u'uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'console_enabled': False, u'extra': {}, u'provision_updated_at': None, u'maintenance': False, u'power_state': None, u'driver': u'fake-hardware', u'reservation': None, u'properties': {u'memory_mb': u'4096', u'cpu_arch': u'x86_64', u'local_gb': u'10', u'cpus': u'8'}, u'instance_uuid': None, u'driver_info': {u'fake_password': u'******', u'foo': u'bar'}, u'created_at': u'2019-06-06T07:02:15.546322+00:00', u'ports': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'bookmark'}], u'chassis_uuid': u'e74c40e0-d825-11e2-a28f-0800200c9a66', u'instance_info': {u'foo': u'bar', u'image_url': u'******', u'configdrive': u'******'}} {3} ironic.tests.unit.api.controllers.v1.test_node.TestPost.test_create_node_default_state_enroll [0.162443s] ... ok GET: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123 {} GOT:{u'target_power_state': None, u'inspect_interface': None, u'links': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'bookmark'}], u'target_provision_state': None, u'last_error': None, u'storage_interface': None, u'updated_at': None, u'maintenance_reason': None, u'states': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states', u'rel': u'bookmark'}], u'traits': [], u'provision_state': u'inspecting', u'clean_step': {}, u'vendor_interface': None, u'uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'console_enabled': False, u'extra': {}, u'raid_config': {}, u'provision_updated_at': None, u'power_state': None, u'target_raid_config': {}, u'network_interface': None, u'inspection_started_at': None, u'inspection_finished_at': None, u'maintenance': False, u'driver': u'fake-hardware', u'power_interface': None, u'volume': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/volume', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/volume', u'rel': u'bookmark'}], u'raid_interface': None, u'rescue_interface': None, u'boot_interface': None, u'reservation': None, u'management_interface': None, u'properties': {u'memory_mb': u'4096', u'cpu_arch': u'x86_64', u'local_gb': u'10', u'cpus': u'8'}, u'instance_uuid': None, u'name': None, u'driver_info': {u'fake_password': u'******', u'foo': u'bar'}, u'resource_class': None, u'created_at': u'2019-06-06T07:02:15.072856+00:00', u'portgroups': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/portgroups', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/portgroups', u'rel': u'bookmark'}], u'deploy_interface': None, u'instance_info': {u'foo': u'bar', u'image_url': u'******', u'configdrive': u'******'}, u'console_interface': None, u'driver_internal_info': {u'private_state': u'secret value'}, u'chassis_uuid': None, u'ports': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'bookmark'}]} GET: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123 {} GOT:{u'target_power_state': None, u'inspect_interface': None, u'links': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'bookmark'}], u'target_provision_state': None, u'last_error': None, u'storage_interface': None, u'updated_at': None, u'maintenance_reason': None, u'states': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states', u'rel': u'bookmark'}], u'traits': [], u'provision_state': u'inspect wait', u'clean_step': {}, u'vendor_interface': None, u'uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'console_enabled': False, u'extra': {}, u'raid_config': {}, u'provision_updated_at': None, u'power_state': None, u'target_raid_config': {}, u'network_interface': None, u'inspection_started_at': None, u'inspection_finished_at': None, u'maintenance': False, u'driver': u'fake-hardware', u'power_interface': None, u'volume': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/volume', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/volume', u'rel': u'bookmark'}], u'raid_interface': None, u'rescue_interface': None, u'boot_interface': None, u'reservation': None, u'management_interface': None, u'properties': {u'memory_mb': u'4096', u'cpu_arch': u'x86_64', u'local_gb': u'10', u'cpus': u'8'}, u'instance_uuid': None, u'name': None, u'driver_info': {u'fake_password': u'******', u'foo': u'bar'}, u'resource_class': None, u'created_at': u'2019-06-06T07:02:15.072856+00:00', u'portgroups': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/portgroups', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/portgroups', u'rel': u'bookmark'}], u'deploy_interface': None, u'instance_info': {u'foo': u'bar', u'image_url': u'******', u'configdrive': u'******'}, u'console_interface': None, u'driver_internal_info': {u'private_state': u'secret value'}, u'chassis_uuid': None, u'ports': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'bookmark'}]} {1} ironic.tests.unit.api.controllers.v1.test_node.TestListNodes.test_node_inspect_wait_state_between_api_versions [0.123381s] ... ok PUT: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states/provision {'target': 'unrescue'} GOT:Response: 202 Accepted Location: http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states Openstack-Request-Id: req-64c44704-a254-48a8-83ad-d01426b97afe X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.38 PUT: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states/provision {'target': 'unrescue'} GOT:Response: 202 Accepted Location: http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states Openstack-Request-Id: req-b16306b1-95fe-4e65-b652-2c0cad5079d1 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.38 PUT: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states/provision {'target': 'unrescue'} GOT:Response: 202 Accepted Location: http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states Openstack-Request-Id: req-2d0baa60-a8c3-499e-bc39-10e7ba17c522 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.38 {17} ironic.tests.unit.api.controllers.v1.test_node.TestPut.test_provision_unrescue_in_allowed_states [0.199579s] ... ok GET: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4/ports {} GOT:Response: 403 Forbidden Content-Type: application/json Openstack-Request-Id: req-ec0905c9-6a73-4c56-bc98-6d5e616a08e7 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.24 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Operation not permitted.\"}"} {19} ironic.tests.unit.api.controllers.v1.test_node.TestListNodes.test_ports_subresource_via_portgroups_subres_not_allowed [0.075566s] ... ok PUT: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states/power {'target': 'soft power off', 'timeout': 0} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-1fa58531-d3ac-4686-abe8-efd82fff89de X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.27 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"timeout has to be positive integer\"}"} {12} ironic.tests.unit.api.controllers.v1.test_node.TestPut.test_power_state_soft_power_off_invalid_timeout_valid_soft_ver [0.090901s] ... ok PATCH: /v1/nodes/efdabd6b-d7b6-47a7-9da9-0790c1f0a5b1 [{'path': '/storage_interface', 'value': 'cinder', 'op': 'add'}] GOT:Response: 200 OK Content-Type: application/json Openstack-Request-Id: req-e7ce7a5e-d5f3-4779-85db-95d17e39f4f7 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"target_power_state": null, "automated_clean": null, "inspect_interface": null, "links": [{"href": "http://localhost/v1/nodes/efdabd6b-d7b6-47a7-9da9-0790c1f0a5b1", "rel": "self"}, {"href": "http://localhost/nodes/efdabd6b-d7b6-47a7-9da9-0790c1f0a5b1", "rel": "bookmark"}], "target_provision_state": null, "deploy_step": {}, "storage_interface": null, "conductor_group": "", "protected_reason": null, "maintenance_reason": null, "states": [{"href": "http://localhost/v1/nodes/efdabd6b-d7b6-47a7-9da9-0790c1f0a5b1/states", "rel": "self"}, {"href": "http://localhost/nodes/efdabd6b-d7b6-47a7-9da9-0790c1f0a5b1/states", "rel": "bookmark"}], "traits": [], "provision_state": "available", "clean_step": {}, "vendor_interface": null, "description": null, "uuid": "efdabd6b-d7b6-47a7-9da9-0790c1f0a5b1", "console_enabled": false, "extra": {}, "raid_config": {}, "provision_updated_at": null, "power_state": null, "last_error": null, "target_raid_config": {}, "network_interface": null, "inspection_started_at": null, "inspection_finished_at": null, "maintenance": false, "conductor": null, "power_interface": null, "driver": "fake-hardware", "updated_at": null, "volume": [{"href": "http://localhost/v1/nodes/efdabd6b-d7b6-47a7-9da9-0790c1f0a5b1/volume", "rel": "self"}, {"href": "http://localhost/nodes/efdabd6b-d7b6-47a7-9da9-0790c1f0a5b1/volume", "rel": "bookmark"}], "raid_interface": null, "rescue_interface": null, "boot_interface": null, "reservation": null, "management_interface": null, "properties": {"memory_mb": "4096", "cpu_arch": "x86_64", "local_gb": "10", "cpus": "8"}, "bios_interface": null, "instance_uuid": null, "name": null, "driver_info": {"fake_password": "******", "foo": "bar"}, "resource_class": null, "fault": null, "created_at": "2019-06-06T07:02:15.484434+00:00", "portgroups": [{"href": "http://localhost/v1/nodes/efdabd6b-d7b6-47a7-9da9-0790c1f0a5b1/portgroups", "rel": "self"}, {"href": "http://localhost/nodes/efdabd6b-d7b6-47a7-9da9-0790c1f0a5b1/portgroups", "rel": "bookmark"}], "deploy_interface": null, "ports": [{"href": "http://localhost/v1/nodes/efdabd6b-d7b6-47a7-9da9-0790c1f0a5b1/ports", "rel": "self"}, {"href": "http://localhost/nodes/efdabd6b-d7b6-47a7-9da9-0790c1f0a5b1/ports", "rel": "bookmark"}], "console_interface": null, "protected": false, "driver_internal_info": {"private_state": "secret value"}, "chassis_uuid": null, "owner": null, "instance_info": {"foo": "bar", "image_url": "******", "configdrive": "******"}, "allocation_uuid": null} {23} ironic.tests.unit.api.controllers.v1.test_node.TestPatch.test_update_storage_interface [0.150500s] ... ok PUT: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/management/boot_device {'boot_device': 'pxe'} GOT:Response: 204 No Content Openstack-Request-Id: req-d26adb35-ec78-4527-8eab-0345581fd311 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {17} ironic.tests.unit.api.controllers.v1.test_node.TestPut.test_set_boot_device [0.077294s] ... ok POST: /v1/nodes {'instance_uuid': None, 'uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123', 'driver_info': {'fake_password': 'fakepass', 'foo': 'bar'}, 'extra': {}, 'driver': 'fake-hardware', 'properties': {'memory_mb': '4096', 'cpu_arch': 'x86_64', 'local_gb': '10', 'cpus': '8'}, 'maintenance': False, 'chassis_uuid': 'e74c40e0-d825-11e2-a28f-0800200c9a66', 'instance_info': {'foo': 'bar', 'image_url': 'http://example.com/test_image_url', 'configdrive': 'TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQ='}} GOT:Response: 201 Created Content-Type: application/json Location: http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123 Openstack-Request-Id: req-5df6bb66-ac36-49ec-98ce-10a371791e35 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"target_power_state": null, "links": [{"href": "http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "rel": "self"}, {"href": "http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "rel": "bookmark"}], "target_provision_state": null, "last_error": null, "updated_at": null, "maintenance_reason": null, "provision_state": null, "uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "console_enabled": false, "extra": {}, "provision_updated_at": null, "maintenance": false, "power_state": null, "driver": "fake-hardware", "reservation": null, "properties": {"memory_mb": "4096", "cpu_arch": "x86_64", "local_gb": "10", "cpus": "8"}, "instance_uuid": null, "driver_info": {"fake_password": "******", "foo": "bar"}, "created_at": "2019-06-06T07:02:15.325830+00:00", "ports": [{"href": "http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports", "rel": "self"}, {"href": "http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports", "rel": "bookmark"}], "chassis_uuid": "e74c40e0-d825-11e2-a28f-0800200c9a66", "instance_info": {"foo": "bar", "image_url": "******", "configdrive": "******"}} GET: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123 {} GOT:{u'target_power_state': None, u'links': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'bookmark'}], u'target_provision_state': None, u'last_error': None, u'updated_at': None, u'maintenance_reason': None, u'states': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states', u'rel': u'bookmark'}], u'provision_state': u'available', u'clean_step': {}, u'uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'console_enabled': False, u'extra': {}, u'raid_config': {}, u'provision_updated_at': None, u'power_state': None, u'target_raid_config': {}, u'network_interface': u'flat', u'inspection_started_at': None, u'inspection_finished_at': None, u'maintenance': False, u'driver': u'fake-hardware', u'reservation': None, u'properties': {u'memory_mb': u'4096', u'cpu_arch': u'x86_64', u'local_gb': u'10', u'cpus': u'8'}, u'instance_uuid': None, u'name': None, u'driver_info': {u'fake_password': u'******', u'foo': u'bar'}, u'resource_class': u'class1', u'created_at': u'2019-06-06T07:02:15.325830+00:00', u'instance_info': {u'foo': u'bar', u'image_url': u'******', u'configdrive': u'******'}, u'driver_internal_info': {}, u'chassis_uuid': u'e74c40e0-d825-11e2-a28f-0800200c9a66', u'ports': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'bookmark'}]} {21} ironic.tests.unit.api.controllers.v1.test_node.TestPost.test_create_node_with_default_resource_class [0.142323s] ... ok PATCH: /v1/nodes/deadbeef-0000-1111-2222-333333333333 [{'path': '/name', 'value': 'i am invalid', 'op': 'add'}] GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-3a91267c-7cc7-449a-afbd-45f24c2dce99 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.10 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Node deadbeef-0000-1111-2222-333333333333: Cannot change name to invalid name 'i am invalid'\"}"} PUT: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states/provision {'rescue_password': ' ', 'target': 'rescue'} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-0ed61085-0a27-4491-904d-a76ca95c7a9d X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.38 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"A non-empty \\\"rescue_password\\\" is required when setting target provision state to rescue\"}"} {9} ironic.tests.unit.api.controllers.v1.test_node.TestPut.test_provision_rescue_empty_password [0.107130s] ... ok {4} ironic.tests.unit.api.controllers.v1.test_node.TestPatch.test_patch_add_name_invalid [0.096926s] ... ok GET: /v1/portgroups?fields=address&limit=2 {} GOT:{u'portgroups': [{u'links': [{u'href': u'http://localhost/v1/portgroups/b1f720b3-3be6-449c-8c57-9137411d4e75', u'rel': u'self'}, {u'href': u'http://localhost/portgroups/b1f720b3-3be6-449c-8c57-9137411d4e75', u'rel': u'bookmark'}], u'address': u'52:54:00:cf:2d:30'}, {u'links': [{u'href': u'http://localhost/v1/portgroups/8de4e7bf-b05d-46e1-8e97-298d899937b4', u'rel': u'self'}, {u'href': u'http://localhost/portgroups/8de4e7bf-b05d-46e1-8e97-298d899937b4', u'rel': u'bookmark'}], u'address': u'52:54:00:cf:2d:31'}], u'next': u'http://localhost/v1/portgroups?sort_dir=asc&sort_key=id&limit=2&marker=8de4e7bf-b05d-46e1-8e97-298d899937b4'} {2} ironic.tests.unit.api.controllers.v1.test_portgroup.TestListPortgroups.test_get_collection_pagination_no_uuid [0.111406s] ... ok POST: /v1/nodes {'instance_uuid': None, 'uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123', 'driver_info': {'fake_password': 'fakepass', 'foo': 'bar'}, 'extra': {}, 'driver': 'fake-hardware', 'properties': {'memory_mb': '4096', 'cpu_arch': 'x86_64', 'local_gb': '10', 'cpus': '8'}, 'traits': ['CUSTOM_4'], 'maintenance': False, 'chassis_uuid': 'e74c40e0-d825-11e2-a28f-0800200c9a66', 'instance_info': {'foo': 'bar', 'image_url': 'http://example.com/test_image_url', 'configdrive': 'TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQ='}} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-3ca20427-7e45-46ca-a9d7-188f187e4f83 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Cannot specify node traits on node creation. Traits must be set via the node traits API.\"}"} {24} ironic.tests.unit.api.controllers.v1.test_node.TestPost.test_create_node_specify_traits [0.061568s] ... ok POST: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/vifs {'id': 'e854e7a8-38cc-49ad-b20a-f924c72bc58a'} GOT:Response: 409 Conflict Content-Type: application/json Openstack-Request-Id: req-4a175639-a11c-4f49-b9b3-fdf42d958177 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.28 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Node is locked by host , please retry after the current operation is completed.\"}"} {31} ironic.tests.unit.api.controllers.v1.test_node.TestAttachDetachVif.test_vif_attach_node_locked [0.063038s] ... ok GET: /v1/nodes/eeeeeeee-cccc-aaaa-bbbb-cccccccccccc/volume/connectors {} GOT:Response: 404 Not Found Content-Type: application/json Openstack-Request-Id: req-d6e9e12f-3a2a-488c-93e5-51a6ad09bad8 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Node eeeeeeee-cccc-aaaa-bbbb-cccccccccccc could not be found.\"}"} {19} ironic.tests.unit.api.controllers.v1.test_node.TestListNodes.test_volume_connectors_subresource_node_not_found [0.087811s] ... ok GET: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123 {} GOT:{u'target_power_state': None, u'automated_clean': None, u'inspect_interface': None, u'links': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'bookmark'}], u'target_provision_state': None, u'deploy_step': {}, u'storage_interface': None, u'conductor_group': u'', u'updated_at': None, u'maintenance_reason': None, u'states': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states', u'rel': u'bookmark'}], u'traits': [], u'provision_state': u'available', u'clean_step': {}, u'vendor_interface': None, u'uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'console_enabled': False, u'extra': {}, u'raid_config': {}, u'provision_updated_at': None, u'power_state': None, u'last_error': None, u'target_raid_config': {}, u'network_interface': None, u'inspection_started_at': None, u'inspection_finished_at': None, u'maintenance': False, u'driver': u'fake-hardware', u'power_interface': None, u'volume': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/volume', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/volume', u'rel': u'bookmark'}], u'raid_interface': None, u'rescue_interface': None, u'boot_interface': None, u'reservation': None, u'management_interface': None, u'properties': {u'memory_mb': u'4096', u'cpu_arch': u'x86_64', u'local_gb': u'10', u'cpus': u'8'}, u'bios_interface': None, u'instance_uuid': None, u'name': None, u'driver_info': {u'fake_password': u'******', u'foo': u'bar'}, u'resource_class': None, u'fault': None, u'created_at': u'2019-06-06T07:02:15.099285+00:00', u'portgroups': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/portgroups', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/portgroups', u'rel': u'bookmark'}], u'deploy_interface': None, u'instance_info': {u'foo': u'bar', u'image_url': u'******', u'configdrive': u'******'}, u'console_interface': None, u'driver_internal_info': {u'private_state': u'secret value'}, u'chassis_uuid': None, u'ports': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'bookmark'}]} GET: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123 {} GOT:{u'target_power_state': None, u'automated_clean': None, u'inspect_interface': None, u'links': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'bookmark'}], u'target_provision_state': None, u'deploy_step': {}, u'storage_interface': None, u'conductor_group': u'', u'protected_reason': None, u'maintenance_reason': None, u'states': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states', u'rel': u'bookmark'}], u'traits': [], u'provision_state': u'available', u'clean_step': {}, u'vendor_interface': None, u'uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'console_enabled': False, u'extra': {}, u'raid_config': {}, u'provision_updated_at': None, u'power_state': None, u'last_error': None, u'target_raid_config': {}, u'network_interface': None, u'inspection_started_at': None, u'inspection_finished_at': None, u'maintenance': False, u'driver': u'fake-hardware', u'power_interface': None, u'updated_at': None, u'volume': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/volume', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/volume', u'rel': u'bookmark'}], u'raid_interface': None, u'rescue_interface': None, u'boot_interface': None, u'reservation': None, u'management_interface': None, u'properties': {u'memory_mb': u'4096', u'cpu_arch': u'x86_64', u'local_gb': u'10', u'cpus': u'8'}, u'bios_interface': None, u'instance_uuid': None, u'name': None, u'driver_info': {u'fake_password': u'******', u'foo': u'bar'}, u'resource_class': None, u'fault': None, u'created_at': u'2019-06-06T07:02:15.099285+00:00', u'portgroups': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/portgroups', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/portgroups', u'rel': u'bookmark'}], u'deploy_interface': None, u'instance_info': {u'foo': u'bar', u'image_url': u'******', u'configdrive': u'******'}, u'console_interface': None, u'protected': False, u'driver_internal_info': {u'private_state': u'secret value'}, u'chassis_uuid': None, u'ports': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'bookmark'}]} {26} ironic.tests.unit.api.controllers.v1.test_node.TestListNodes.test_node_protected_hidden_in_lower_version [0.114536s] ... ok PUT: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/management/boot_device?persistent=True {'boot_device': 'pxe'} GOT:Response: 204 No Content Openstack-Request-Id: req-8b1a374a-1107-4c2a-b3e5-e3f06191fc60 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {17} ironic.tests.unit.api.controllers.v1.test_node.TestPut.test_set_boot_device_persistent [0.076952s] ... ok GET: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123 {} GOT:{u'target_power_state': None, u'automated_clean': True, u'inspect_interface': None, u'links': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'bookmark'}], u'target_provision_state': None, u'deploy_step': {}, u'storage_interface': None, u'conductor_group': u'', u'updated_at': None, u'maintenance_reason': None, u'states': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states', u'rel': u'bookmark'}], u'traits': [], u'provision_state': u'available', u'clean_step': {}, u'vendor_interface': None, u'uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'console_enabled': False, u'extra': {}, u'raid_config': {}, u'provision_updated_at': None, u'power_state': None, u'last_error': None, u'target_raid_config': {}, u'network_interface': None, u'inspection_started_at': None, u'inspection_finished_at': None, u'maintenance': False, u'driver': u'fake-hardware', u'power_interface': None, u'volume': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/volume', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/volume', u'rel': u'bookmark'}], u'raid_interface': None, u'rescue_interface': None, u'boot_interface': None, u'reservation': None, u'management_interface': None, u'properties': {u'memory_mb': u'4096', u'cpu_arch': u'x86_64', u'local_gb': u'10', u'cpus': u'8'}, u'bios_interface': None, u'instance_uuid': None, u'name': None, u'driver_info': {u'fake_password': u'******', u'foo': u'bar'}, u'resource_class': None, u'fault': None, u'created_at': u'2019-06-06T07:02:14.968732+00:00', u'portgroups': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/portgroups', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/portgroups', u'rel': u'bookmark'}], u'deploy_interface': None, u'instance_info': {u'foo': u'bar', u'image_url': u'******', u'configdrive': u'******'}, u'console_interface': None, u'driver_internal_info': {u'private_state': u'secret value'}, u'chassis_uuid': None, u'ports': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'bookmark'}]} {11} ironic.tests.unit.api.controllers.v1.test_node.TestListNodes.test_node_automated_clean_true_field [0.086050s] ... ok GET: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123 {} GOT:{u'target_power_state': None, u'inspect_interface': None, u'links': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'bookmark'}], u'target_provision_state': None, u'last_error': None, u'updated_at': None, u'maintenance_reason': None, u'states': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states', u'rel': u'bookmark'}], u'provision_state': u'available', u'clean_step': {}, u'vendor_interface': None, u'uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'console_enabled': False, u'extra': {}, u'raid_config': {}, u'provision_updated_at': None, u'power_state': None, u'target_raid_config': {}, u'network_interface': None, u'inspection_started_at': None, u'inspection_finished_at': None, u'maintenance': False, u'driver': u'fake-hardware', u'power_interface': None, u'raid_interface': None, u'boot_interface': None, u'reservation': None, u'management_interface': None, u'properties': {u'memory_mb': u'4096', u'cpu_arch': u'x86_64', u'local_gb': u'10', u'cpus': u'8'}, u'instance_uuid': None, u'name': None, u'driver_info': {u'fake_password': u'******', u'foo': u'bar'}, u'resource_class': None, u'created_at': u'2019-06-06T07:02:15.457994+00:00', u'portgroups': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/portgroups', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/portgroups', u'rel': u'bookmark'}], u'deploy_interface': None, u'instance_info': {u'foo': u'bar', u'image_url': u'******', u'configdrive': u'******'}, u'console_interface': None, u'driver_internal_info': {u'private_state': u'secret value'}, u'chassis_uuid': None, u'ports': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'bookmark'}]} GET: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123 {} GOT:{u'target_power_state': None, u'inspect_interface': None, u'links': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'bookmark'}], u'target_provision_state': None, u'last_error': None, u'updated_at': None, u'maintenance_reason': None, u'states': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states', u'rel': u'bookmark'}], u'provision_state': u'available', u'clean_step': {}, u'vendor_interface': None, u'uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'console_enabled': False, u'extra': {}, u'raid_config': {}, u'provision_updated_at': None, u'power_state': None, u'target_raid_config': {}, u'network_interface': None, u'inspection_started_at': None, u'inspection_finished_at': None, u'maintenance': False, u'driver': u'fake-hardware', u'power_interface': None, u'volume': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/volume', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/volume', u'rel': u'bookmark'}], u'raid_interface': None, u'boot_interface': None, u'reservation': None, u'management_interface': None, u'properties': {u'memory_mb': u'4096', u'cpu_arch': u'x86_64', u'local_gb': u'10', u'cpus': u'8'}, u'instance_uuid': None, u'name': None, u'driver_info': {u'fake_password': u'******', u'foo': u'bar'}, u'resource_class': None, u'created_at': u'2019-06-06T07:02:15.457994+00:00', u'portgroups': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/portgroups', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/portgroups', u'rel': u'bookmark'}], u'deploy_interface': None, u'instance_info': {u'foo': u'bar', u'image_url': u'******', u'configdrive': u'******'}, u'console_interface': None, u'driver_internal_info': {u'private_state': u'secret value'}, u'chassis_uuid': None, u'ports': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'bookmark'}]} {27} ironic.tests.unit.api.controllers.v1.test_node.TestListNodes.test_hide_fields_in_newer_versions_volume [0.143076s] ... ok GET: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123 {} GOT:{u'target_power_state': None, u'links': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'bookmark'}], u'target_provision_state': None, u'last_error': None, u'updated_at': None, u'maintenance_reason': None, u'provision_state': None, u'uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'console_enabled': False, u'extra': {}, u'provision_updated_at': None, u'maintenance': False, u'power_state': None, u'driver': u'fake-hardware', u'reservation': None, u'properties': {u'memory_mb': u'4096', u'cpu_arch': u'x86_64', u'local_gb': u'10', u'cpus': u'8'}, u'instance_uuid': None, u'driver_info': {u'fake_password': u'******', u'foo': u'bar'}, u'created_at': u'2019-06-06T07:02:15.095846+00:00', u'ports': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'bookmark'}], u'chassis_uuid': None, u'instance_info': {u'foo': u'bar', u'image_url': u'******', u'configdrive': u'******'}} {18} ironic.tests.unit.api.controllers.v1.test_node.TestListNodes.test_ports_subresource_link [0.085373s] ... ok GET: /v1/nodes?associated=False&limit=2 {} GOT:{u'nodes': [{u'instance_uuid': None, u'maintenance': False, u'links': [{u'href': u'http://localhost/v1/nodes/7a4894f8-4552-421f-b790-6ec36ebf83c0', u'rel': u'self'}, {u'href': u'http://localhost/nodes/7a4894f8-4552-421f-b790-6ec36ebf83c0', u'rel': u'bookmark'}], u'power_state': None, u'provision_state': None, u'uuid': u'7a4894f8-4552-421f-b790-6ec36ebf83c0'}, {u'instance_uuid': None, u'maintenance': False, u'links': [{u'href': u'http://localhost/v1/nodes/392c518a-d7e9-4bfe-b705-66d39c23defc', u'rel': u'self'}, {u'href': u'http://localhost/nodes/392c518a-d7e9-4bfe-b705-66d39c23defc', u'rel': u'bookmark'}], u'power_state': None, u'provision_state': None, u'uuid': u'392c518a-d7e9-4bfe-b705-66d39c23defc'}], u'next': u'http://localhost/v1/nodes?sort_key=id&sort_dir=asc&limit=2&marker=392c518a-d7e9-4bfe-b705-66d39c23defc'} {1} ironic.tests.unit.api.controllers.v1.test_node.TestListNodes.test_unassociated_nodes_with_limit [0.217253s] ... ok PATCH: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123 [{'path': '/chassis_uuid', 'value': 'e74c40e0-d825-11e2-a28f-0800200c9a66', 'op': 'add'}] GOT:Response: 200 OK Content-Type: application/json Openstack-Request-Id: req-c24fe66a-6a1c-4f7d-8ff7-c5cdc69ad07e X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"target_power_state": null, "links": [{"href": "http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "rel": "self"}, {"href": "http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "rel": "bookmark"}], "target_provision_state": null, "last_error": null, "updated_at": null, "maintenance_reason": null, "provision_state": null, "uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "console_enabled": false, "extra": {}, "provision_updated_at": null, "maintenance": false, "power_state": null, "driver": "fake-hardware", "reservation": null, "properties": {"memory_mb": "4096", "cpu_arch": "x86_64", "local_gb": "10", "cpus": "8"}, "instance_uuid": null, "driver_info": {"fake_password": "******", "foo": "bar"}, "created_at": "2019-06-06T07:02:14.829753+00:00", "ports": [{"href": "http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports", "rel": "self"}, {"href": "http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports", "rel": "bookmark"}], "chassis_uuid": "e74c40e0-d825-11e2-a28f-0800200c9a66", "instance_info": {"foo": "bar", "image_url": "******", "configdrive": "******"}} GET: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123 {} GOT:{u'target_power_state': None, u'automated_clean': None, u'inspect_interface': None, u'links': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'bookmark'}], u'target_provision_state': None, u'deploy_step': {}, u'storage_interface': None, u'conductor_group': u'', u'protected_reason': None, u'maintenance_reason': None, u'states': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states', u'rel': u'bookmark'}], u'traits': [], u'provision_state': u'available', u'clean_step': {}, u'vendor_interface': None, u'uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'console_enabled': False, u'extra': {}, u'raid_config': {}, u'provision_updated_at': None, u'power_state': None, u'last_error': None, u'target_raid_config': {}, u'network_interface': None, u'inspection_started_at': None, u'inspection_finished_at': None, u'maintenance': False, u'conductor': u'fake.conductor', u'driver': u'fake-hardware', u'power_interface': None, u'updated_at': None, u'volume': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/volume', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/volume', u'rel': u'bookmark'}], u'raid_interface': None, u'rescue_interface': None, u'boot_interface': None, u'reservation': None, u'management_interface': None, u'properties': {u'memory_mb': u'4096', u'cpu_arch': u'x86_64', u'local_gb': u'10', u'cpus': u'8'}, u'bios_interface': None, u'instance_uuid': None, u'name': None, u'driver_info': {u'fake_password': u'******', u'foo': u'bar'}, u'resource_class': None, u'fault': None, u'created_at': u'2019-06-06T07:02:15.657632+00:00', u'portgroups': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/portgroups', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/portgroups', u'rel': u'bookmark'}], u'deploy_interface': None, u'instance_info': {u'foo': u'bar', u'image_url': u'******', u'configdrive': u'******'}, u'console_interface': None, u'protected': False, u'driver_internal_info': {u'private_state': u'secret value'}, u'chassis_uuid': None, u'owner': None, u'ports': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'bookmark'}]} {6} ironic.tests.unit.api.controllers.v1.test_node.TestPatch.test_add_chassis_uuid [0.114010s] ... ok {22} ironic.tests.unit.api.controllers.v1.test_node.TestListNodes.test_node_owner_null_field [0.093763s] ... ok PATCH: /v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 [{'path': '/physical_network', 'op': 'remove'}] GOT:Response: 200 OK Content-Type: application/json Openstack-Request-Id: req-52ce2b07-5054-4cf1-8d4a-91bba2955a3a X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.34 {"local_link_connection": {"switch_info": "switch1", "port_id": "Ethernet3/1", "switch_id": "0a:1b:2c:3d:4e:5f"}, "node_uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "links": [{"href": "http://localhost/v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "rel": "self"}, {"href": "http://localhost/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "rel": "bookmark"}], "extra": {}, "pxe_enabled": true, "portgroup_uuid": null, "updated_at": "2019-06-06T07:02:15.733536+00:00", "physical_network": null, "address": "52:54:00:cf:2d:31", "internal_info": {"bar": "buzz"}, "created_at": "2019-06-06T07:02:15.647959+00:00"} {28} ironic.tests.unit.api.controllers.v1.test_port.TestPatch.test_remove_physical_network [0.153547s] ... ok PUT: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/management/boot_device {'boot_device': 'pxe'} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-01c7c7e2-c5a2-4917-8096-cdda33fc587f X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Driver test-driver does not support management (disabled or not implemented).\"}"} {9} ironic.tests.unit.api.controllers.v1.test_node.TestPut.test_set_boot_device_not_supported [0.077892s] ... ok PUT: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states/provision {'target': 'adopt'} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-75af3b11-1256-4f90-b1c5-8e6af3c2dc06 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.17 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"The requested action \\\"adopt\\\" can not be performed on node \\\"1be26c0b-03f2-4d2e-ae87-c02d7f33c123\\\" while it is in state \\\"active\\\".\"}"} {24} ironic.tests.unit.api.controllers.v1.test_node.TestPut.test_adopt_from_active_fails [0.109183s] ... ok PUT: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states/console {'enabled': 'false'} GOT:Response: 202 Accepted Location: http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states/console Openstack-Request-Id: req-7932cae6-48c0-411c-a795-a0f382147bf1 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {17} ironic.tests.unit.api.controllers.v1.test_node.TestPut.test_set_console_mode_disabled [0.081920s] ... ok GET: /v1/nodes/detail {} GOT:{u'nodes': [{u'target_power_state': None, u'inspect_interface': None, u'links': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'bookmark'}], u'target_provision_state': None, u'last_error': None, u'storage_interface': None, u'updated_at': None, u'maintenance_reason': None, u'states': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states', u'rel': u'bookmark'}], u'provision_state': u'available', u'clean_step': {}, u'vendor_interface': None, u'uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'console_enabled': False, u'extra': {}, u'raid_config': {}, u'provision_updated_at': None, u'power_state': None, u'target_raid_config': {}, u'network_interface': None, u'inspection_started_at': None, u'inspection_finished_at': None, u'maintenance': False, u'driver': u'fake-hardware', u'power_interface': None, u'volume': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/volume', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/volume', u'rel': u'bookmark'}], u'raid_interface': None, u'boot_interface': None, u'reservation': None, u'management_interface': None, u'properties': {u'memory_mb': u'4096', u'cpu_arch': u'x86_64', u'local_gb': u'10', u'cpus': u'8'}, u'instance_uuid': None, u'name': None, u'driver_info': {u'fake_password': u'******', u'foo': u'bar'}, u'resource_class': None, u'created_at': u'2019-06-06T07:02:15.347308+00:00', u'portgroups': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/portgroups', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/portgroups', u'rel': u'bookmark'}], u'deploy_interface': None, u'instance_info': {u'foo': u'bar', u'image_url': u'******', u'configdrive': u'******'}, u'console_interface': None, u'driver_internal_info': {u'private_state': u'secret value'}, u'chassis_uuid': None, u'ports': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'bookmark'}]}]} GET: /v1/nodes/detail {} GOT:{u'nodes': [{u'target_power_state': None, u'inspect_interface': None, u'links': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'bookmark'}], u'target_provision_state': None, u'last_error': None, u'storage_interface': None, u'updated_at': None, u'maintenance_reason': None, u'states': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states', u'rel': u'bookmark'}], u'traits': [u'CUSTOM_1'], u'provision_state': u'available', u'clean_step': {}, u'vendor_interface': None, u'uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'console_enabled': False, u'extra': {}, u'raid_config': {}, u'provision_updated_at': None, u'power_state': None, u'target_raid_config': {}, u'network_interface': None, u'inspection_started_at': None, u'inspection_finished_at': None, u'maintenance': False, u'driver': u'fake-hardware', u'power_interface': None, u'volume': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/volume', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/volume', u'rel': u'bookmark'}], u'raid_interface': None, u'boot_interface': None, u'reservation': None, u'management_interface': None, u'properties': {u'memory_mb': u'4096', u'cpu_arch': u'x86_64', u'local_gb': u'10', u'cpus': u'8'}, u'instance_uuid': None, u'name': None, u'driver_info': {u'fake_password': u'******', u'foo': u'bar'}, u'resource_class': None, u'created_at': u'2019-06-06T07:02:15.347308+00:00', u'portgroups': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/portgroups', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/portgroups', u'rel': u'bookmark'}], u'deploy_interface': None, u'instance_info': {u'foo': u'bar', u'image_url': u'******', u'configdrive': u'******'}, u'console_interface': None, u'driver_internal_info': {u'private_state': u'secret value'}, u'chassis_uuid': None, u'ports': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'bookmark'}]}]} {14} ironic.tests.unit.api.controllers.v1.test_node.TestListNodes.test_hide_fields_in_newer_versions_traits [0.255563s] ... ok POST: /v1/nodes {'instance_uuid': None, 'uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123', 'driver_info': {'fake_password': 'fakepass', 'foo': 'bar'}, 'extra': {}, 'driver': 'fake-hardware', 'properties': {'memory_mb': '4096', 'cpu_arch': 'x86_64', 'local_gb': '10', 'cpus': '8'}, 'maintenance': False, 'chassis_uuid': 'e74c40e0-d825-11e2-a28f-0800200c9a66', 'instance_info': {'foo': 'bar', 'image_url': 'http://example.com/test_image_url', 'configdrive': 'TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQ='}, 'network_interface': 'foo'} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-654581aa-a827-458a-bd5b-2962d679bc56 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Could not find the following interface in the 'ironic.hardware.interfaces.network' entrypoint: foo. Valid interfaces are ['flat', 'noop', 'neutron'].\"}"} {23} ironic.tests.unit.api.controllers.v1.test_node.TestPost.test_create_node_invalid_network_interface [0.069609s] ... ok PUT: /v1/nodes/node-39/traits/CUSTOM_3 {} GOT:Response: 204 No Content Location: http://localhost/v1/nodes/node-39/traits/CUSTOM_3 Openstack-Request-Id: req-a2fb0e8d-e7bf-48c8-b598-41cc244b6bec X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.37 DELETE: /v1/nodes/node-39/traits/CUSTOM_1 GOT:Response: 204 No Content Openstack-Request-Id: req-0872a6dc-ec60-417e-ba06-2a1f7e2e12a2 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.37 {9} ironic.tests.unit.api.controllers.v1.test_node.TestTraits.test_add_single_trait [0.092616s] ... ok {17} ironic.tests.unit.api.controllers.v1.test_node.TestTraits.test_delete_trait [0.089411s] ... ok PATCH: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123 [{'path': '/foo', 'value': 'bar', 'op': 'add'}] GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-f6b77a45-3768-4727-ab57-1e4bf836009e X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Adding a new attribute (/foo) to the root of the resource is not allowed\"}"} {18} ironic.tests.unit.api.controllers.v1.test_node.TestPatch.test_add_root_non_existent [0.095891s] ... ok PATCH: /v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 [{'path': '/physical_network', 'op': 'remove'}] GOT:Response: 406 Not Acceptable Content-Type: application/json Openstack-Request-Id: req-566cf766-f85a-41a2-a56f-bd247005cbcb X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.33 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Request not acceptable.\"}"} ERROR [ironic.drivers.modules.drac.bios] DRAC driver failed to get the BIOS settings for node 1be26c0b-03f2-4d2e-ae87-c02d7f33c123. Reason: An unknown exception occurred. {28} ironic.tests.unit.api.controllers.v1.test_port.TestPatch.test_remove_physical_network_old_api_version [0.086544s] ... ok PATCH: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123 [{'path': '/driver', 'op': 'remove'}] GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-c1772a26-7384-41c3-9049-5c311cfa525d X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"'/driver' is a mandatory attribute and can not be removed\"}"} {6} ironic.tests.unit.api.controllers.v1.test_node.TestPatch.test_remove_mandatory_field [0.073025s] ... ok GET: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/volume {} GOT:Response: 404 Not Found Content-Type: application/json Openstack-Request-Id: req-676f5018-9be1-4e63-9d42-f61497224323 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.31 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Resource could not be found.\"}"} {22} ironic.tests.unit.api.controllers.v1.test_node.TestListNodes.test_volume_subresource_invalid_api_version [0.065770s] ... ok PATCH: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/volume/connectors/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 [{'path': '/extra/foo', 'value': 'bar', 'op': 'add'}] GOT:Response: 403 Forbidden Content-Type: application/json Openstack-Request-Id: req-df619034-f910-4822-ad7c-e67982782d88 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Operation not permitted.\"}"} {1} ironic.tests.unit.api.controllers.v1.test_node.TestPatch.test_patch_volume_connectors_subresource [0.092699s] ... ok PUT: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states/power {'target': 'power on'} GOT:Response: 202 Accepted Location: http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states Openstack-Request-Id: req-6da87bc7-6dd4-4142-b34e-c64d435e9d47 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.26 {24} ironic.tests.unit.api.controllers.v1.test_node.TestPut.test_power_state_power_on_no_timeout_invalid_soft_ver [0.086750s] ... ok PATCH: /v1/nodes/00c0ca7b-5261-4af5-acf5-cf1c5f5ff70d [{'path': '/description', 'value': 'meow', 'op': 'replace'}] GOT:Response: 200 OK Content-Type: application/json Openstack-Request-Id: req-98e1d493-4eb4-42bd-a99b-f60c621fadd1 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.51 {"target_power_state": null, "automated_clean": null, "inspect_interface": null, "links": [{"href": "http://localhost/v1/nodes/00c0ca7b-5261-4af5-acf5-cf1c5f5ff70d", "rel": "self"}, {"href": "http://localhost/nodes/00c0ca7b-5261-4af5-acf5-cf1c5f5ff70d", "rel": "bookmark"}], "target_provision_state": null, "deploy_step": {}, "storage_interface": null, "conductor_group": "", "protected_reason": null, "maintenance_reason": null, "states": [{"href": "http://localhost/v1/nodes/00c0ca7b-5261-4af5-acf5-cf1c5f5ff70d/states", "rel": "self"}, {"href": "http://localhost/nodes/00c0ca7b-5261-4af5-acf5-cf1c5f5ff70d/states", "rel": "bookmark"}], "traits": [], "provision_state": "available", "clean_step": {}, "vendor_interface": null, "description": null, "uuid": "00c0ca7b-5261-4af5-acf5-cf1c5f5ff70d", "console_enabled": false, "extra": {}, "raid_config": {}, "provision_updated_at": null, "power_state": null, "last_error": null, "target_raid_config": {}, "network_interface": null, "inspection_started_at": null, "inspection_finished_at": null, "maintenance": false, "conductor": null, "power_interface": null, "driver": "fake-hardware", "updated_at": null, "volume": [{"href": "http://localhost/v1/nodes/00c0ca7b-5261-4af5-acf5-cf1c5f5ff70d/volume", "rel": "self"}, {"href": "http://localhost/nodes/00c0ca7b-5261-4af5-acf5-cf1c5f5ff70d/volume", "rel": "bookmark"}], "raid_interface": null, "rescue_interface": null, "boot_interface": null, "reservation": null, "management_interface": null, "properties": {"memory_mb": "4096", "cpu_arch": "x86_64", "local_gb": "10", "cpus": "8"}, "bios_interface": null, "instance_uuid": null, "name": null, "driver_info": {"fake_password": "******", "foo": "bar"}, "resource_class": null, "fault": null, "created_at": "2019-06-06T07:02:15.208656+00:00", "portgroups": [{"href": "http://localhost/v1/nodes/00c0ca7b-5261-4af5-acf5-cf1c5f5ff70d/portgroups", "rel": "self"}, {"href": "http://localhost/nodes/00c0ca7b-5261-4af5-acf5-cf1c5f5ff70d/portgroups", "rel": "bookmark"}], "deploy_interface": null, "ports": [{"href": "http://localhost/v1/nodes/00c0ca7b-5261-4af5-acf5-cf1c5f5ff70d/ports", "rel": "self"}, {"href": "http://localhost/nodes/00c0ca7b-5261-4af5-acf5-cf1c5f5ff70d/ports", "rel": "bookmark"}], "console_interface": null, "protected": false, "driver_internal_info": {"private_state": "secret value"}, "chassis_uuid": null, "owner": null, "instance_info": {"foo": "bar", "image_url": "******", "configdrive": "******"}} {30} ironic.tests.unit.api.controllers.v1.test_node.TestPatch.test_update_description [0.132275s] ... ok GET: /v1/nodes?associated=true&maintenance=false {} GOT:{u'nodes': [{u'instance_uuid': u'18a49348-c6ee-4d86-9c60-07832b9ac930', u'maintenance': False, u'links': [{u'href': u'http://localhost/v1/nodes/b0659228-98c7-4aec-9936-396adc9a8c4a', u'rel': u'self'}, {u'href': u'http://localhost/nodes/b0659228-98c7-4aec-9936-396adc9a8c4a', u'rel': u'bookmark'}], u'power_state': None, u'provision_state': None, u'uuid': u'b0659228-98c7-4aec-9936-396adc9a8c4a'}, {u'instance_uuid': u'12592247-0e3f-418f-92ed-c00545b8b904', u'maintenance': False, u'links': [{u'href': u'http://localhost/v1/nodes/b952e389-87aa-4f15-9dbc-fe8a9179b14d', u'rel': u'self'}, {u'href': u'http://localhost/nodes/b952e389-87aa-4f15-9dbc-fe8a9179b14d', u'rel': u'bookmark'}], u'power_state': None, u'provision_state': None, u'uuid': u'b952e389-87aa-4f15-9dbc-fe8a9179b14d'}, {u'instance_uuid': u'c9ff7fbd-2d66-4c65-b43f-add2ba38dd72', u'maintenance': False, u'links': [{u'href': u'http://localhost/v1/nodes/322eb6cf-5eb3-4a88-8a3f-dc47967a4433', u'rel': u'self'}, {u'href': u'http://localhost/nodes/322eb6cf-5eb3-4a88-8a3f-dc47967a4433', u'rel': u'bookmark'}], u'power_state': None, u'provision_state': None, u'uuid': u'322eb6cf-5eb3-4a88-8a3f-dc47967a4433'}, {u'instance_uuid': u'2bd2e4d0-0378-4a11-9829-f1b58a1df466', u'maintenance': False, u'links': [{u'href': u'http://localhost/v1/nodes/688f8a83-bd8e-4c31-b09f-50c97e5bd8ad', u'rel': u'self'}, {u'href': u'http://localhost/nodes/688f8a83-bd8e-4c31-b09f-50c97e5bd8ad', u'rel': u'bookmark'}], u'power_state': None, u'provision_state': None, u'uuid': u'688f8a83-bd8e-4c31-b09f-50c97e5bd8ad'}]} GET: /v1/nodes?associated=true&maintenance=true {} GOT:{u'nodes': [{u'instance_uuid': u'8476602b-0c8a-4fab-a73b-d707777e1fe0', u'maintenance': True, u'links': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'bookmark'}], u'power_state': None, u'provision_state': None, u'uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123'}]} GET: /v1/nodes?associated=true&maintenance=TruE {} GOT:{u'nodes': [{u'instance_uuid': u'8476602b-0c8a-4fab-a73b-d707777e1fe0', u'maintenance': True, u'links': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'bookmark'}], u'power_state': None, u'provision_state': None, u'uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123'}]} {7} ironic.tests.unit.api.controllers.v1.test_node.TestListNodes.test_maintenance_nodes_associated [0.392508s] ... ok PATCH: /v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4 [{'path': '/extra/vif_port_id', 'op': 'remove'}] GOT:Response: 200 OK Content-Type: application/json Openstack-Request-Id: req-3a0fcbe1-64a5-476f-8b2e-fd9d0a85bc6c X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.28 {"node_uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "uuid": "6eb02b44-18a3-4659-8c0b-8d2802581ae4", "links": [{"href": "http://localhost/v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4", "rel": "self"}, {"href": "http://localhost/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4", "rel": "bookmark"}], "extra": {}, "created_at": "2019-06-06T07:02:15.871822+00:00", "updated_at": "2019-06-06T07:02:15.942547+00:00", "ports": [{"href": "http://localhost/v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4/ports", "rel": "self"}, {"href": "http://localhost/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4/ports", "rel": "bookmark"}], "standalone_ports_supported": true, "mode": "active-backup", "address": "52:54:00:cf:2d:31", "internal_info": {"bar": "buzz"}, "properties": {}, "name": "fooname"} {2} ironic.tests.unit.api.controllers.v1.test_portgroup.TestPatchExtraVifPortId.test_remove_extra_vif_port_id_not_internal [0.133068s] ... ok GET: /v1/ports/detail?node=test-node {} GOT:{u'ports': [{u'node_uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c781', u'links': [{u'href': u'http://localhost/v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781', u'rel': u'self'}, {u'href': u'http://localhost/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781', u'rel': u'bookmark'}], u'extra': {}, u'created_at': u'2019-06-06T07:02:16.328321+00:00', u'updated_at': None, u'address': u'52:54:00:cf:2d:31'}]} {17} ironic.tests.unit.api.controllers.v1.test_port.TestListPorts.test_detail_by_node_name_ok [0.093737s] ... ok GET: /v1/ports/detail?portgroup=6eb02b44-18a3-4659-8c0b-8d2802581ae4&node=1be26c0b-03f2-4d2e-ae87-c02d7f33c123 {} GOT:Response: 403 Forbidden Content-Type: application/json Openstack-Request-Id: req-7e5e4493-75ee-4ec8-b388-6c13cfa91e95 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.24 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Operation not permitted.\"}"} {9} ironic.tests.unit.api.controllers.v1.test_port.TestListPorts.test_get_all_by_portgroup_uuid_and_node_uuid [0.066603s] ... ok GET: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123 {} GOT:{u'target_power_state': None, u'automated_clean': None, u'inspect_interface': None, u'links': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'bookmark'}], u'target_provision_state': None, u'deploy_step': {}, u'storage_interface': None, u'conductor_group': u'', u'protected_reason': None, u'maintenance_reason': None, u'states': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states', u'rel': u'bookmark'}], u'traits': [], u'provision_state': u'available', u'clean_step': {}, u'vendor_interface': None, u'uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'console_enabled': False, u'extra': {}, u'raid_config': {}, u'provision_updated_at': None, u'power_state': None, u'last_error': None, u'target_raid_config': {}, u'network_interface': None, u'inspection_started_at': None, u'inspection_finished_at': None, u'maintenance': False, u'conductor': u'fake.conductor', u'driver': u'fake-hardware', u'power_interface': None, u'updated_at': None, u'volume': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/volume', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/volume', u'rel': u'bookmark'}], u'raid_interface': None, u'rescue_interface': None, u'boot_interface': None, u'reservation': None, u'management_interface': None, u'properties': {u'memory_mb': u'4096', u'cpu_arch': u'x86_64', u'local_gb': u'10', u'cpus': u'8'}, u'bios_interface': None, u'instance_uuid': None, u'name': None, u'driver_info': {u'fake_password': u'******', u'foo': u'bar'}, u'resource_class': None, u'fault': None, u'created_at': u'2019-06-06T07:02:15.612120+00:00', u'portgroups': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/portgroups', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/portgroups', u'rel': u'bookmark'}], u'deploy_interface': None, u'instance_info': {u'foo': u'bar', u'image_url': u'******', u'configdrive': u'******'}, u'console_interface': None, u'protected': False, u'driver_internal_info': {u'private_state': u'secret value'}, u'chassis_uuid': None, u'ports': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'bookmark'}]} GET: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123 {} GOT:{u'target_power_state': None, u'automated_clean': None, u'inspect_interface': None, u'links': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'bookmark'}], u'target_provision_state': None, u'deploy_step': {}, u'storage_interface': None, u'conductor_group': u'', u'protected_reason': None, u'maintenance_reason': None, u'states': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states', u'rel': u'bookmark'}], u'traits': [], u'provision_state': u'available', u'clean_step': {}, u'vendor_interface': None, u'uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'console_enabled': False, u'extra': {}, u'raid_config': {}, u'provision_updated_at': None, u'power_state': None, u'last_error': None, u'target_raid_config': {}, u'network_interface': None, u'inspection_started_at': None, u'inspection_finished_at': None, u'maintenance': False, u'conductor': u'fake.conductor', u'driver': u'fake-hardware', u'power_interface': None, u'updated_at': None, u'volume': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/volume', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/volume', u'rel': u'bookmark'}], u'raid_interface': None, u'rescue_interface': None, u'boot_interface': None, u'reservation': None, u'management_interface': None, u'properties': {u'memory_mb': u'4096', u'cpu_arch': u'x86_64', u'local_gb': u'10', u'cpus': u'8'}, u'bios_interface': None, u'instance_uuid': None, u'name': None, u'driver_info': {u'fake_password': u'******', u'foo': u'bar'}, u'resource_class': None, u'fault': None, u'created_at': u'2019-06-06T07:02:15.612120+00:00', u'portgroups': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/portgroups', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/portgroups', u'rel': u'bookmark'}], u'deploy_interface': None, u'instance_info': {u'foo': u'bar', u'image_url': u'******', u'configdrive': u'******'}, u'console_interface': None, u'protected': False, u'driver_internal_info': {u'private_state': u'secret value'}, u'chassis_uuid': None, u'owner': None, u'ports': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'bookmark'}]} {15} ironic.tests.unit.api.controllers.v1.test_node.TestListNodes.test_node_owner_hidden_in_lower_version [0.136872s] ... ok POST: /v1/nodes {'instance_uuid': None, 'name': 'maintenance', 'driver_info': {'fake_password': 'fakepass', 'foo': 'bar'}, 'extra': {}, 'driver': 'fake-hardware', 'properties': {'memory_mb': '4096', 'cpu_arch': 'x86_64', 'local_gb': '10', 'cpus': '8'}, 'maintenance': False, 'chassis_uuid': 'e74c40e0-d825-11e2-a28f-0800200c9a66', 'instance_info': {'foo': 'bar', 'image_url': 'http://example.com/test_image_url', 'configdrive': 'TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQ='}, 'uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123'} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-a85213cc-42e2-4b8e-bf19-a652788300c0 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.10 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"The word \\\"maintenance\\\" is reserved and can not be used as a node name. Reserved words are: maintenance, management, states, vendor_passthru, validate, detail.\"}"} POST: /v1/nodes {'instance_uuid': None, 'name': 'management', 'driver_info': {'fake_password': 'fakepass', 'foo': 'bar'}, 'extra': {}, 'driver': 'fake-hardware', 'properties': {'memory_mb': '4096', 'cpu_arch': 'x86_64', 'local_gb': '10', 'cpus': '8'}, 'maintenance': False, 'chassis_uuid': 'e74c40e0-d825-11e2-a28f-0800200c9a66', 'instance_info': {'foo': 'bar', 'image_url': 'http://example.com/test_image_url', 'configdrive': 'TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQ='}, 'uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123'} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-d52a4890-3852-4756-923b-3694a65e888f X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.10 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"The word \\\"management\\\" is reserved and can not be used as a node name. Reserved words are: maintenance, management, states, vendor_passthru, validate, detail.\"}"} POST: /v1/nodes {'instance_uuid': None, 'name': 'states', 'driver_info': {'fake_password': 'fakepass', 'foo': 'bar'}, 'extra': {}, 'driver': 'fake-hardware', 'properties': {'memory_mb': '4096', 'cpu_arch': 'x86_64', 'local_gb': '10', 'cpus': '8'}, 'maintenance': False, 'chassis_uuid': 'e74c40e0-d825-11e2-a28f-0800200c9a66', 'instance_info': {'foo': 'bar', 'image_url': 'http://example.com/test_image_url', 'configdrive': 'TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQ='}, 'uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123'} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-a8c21fe9-ebcc-4ae4-8a2d-56aa5aa652bd X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.10 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"The word \\\"states\\\" is reserved and can not be used as a node name. Reserved words are: maintenance, management, states, vendor_passthru, validate, detail.\"}"} POST: /v1/nodes {'instance_uuid': None, 'name': 'vendor_passthru', 'driver_info': {'fake_password': 'fakepass', 'foo': 'bar'}, 'extra': {}, 'driver': 'fake-hardware', 'properties': {'memory_mb': '4096', 'cpu_arch': 'x86_64', 'local_gb': '10', 'cpus': '8'}, 'maintenance': False, 'chassis_uuid': 'e74c40e0-d825-11e2-a28f-0800200c9a66', 'instance_info': {'foo': 'bar', 'image_url': 'http://example.com/test_image_url', 'configdrive': 'TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQ='}, 'uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123'} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-1bec64ee-1750-4154-8d8d-e4faab475376 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.10 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"The word \\\"vendor_passthru\\\" is reserved and can not be used as a node name. Reserved words are: maintenance, management, states, vendor_passthru, validate, detail.\"}"} POST: /v1/nodes {'instance_uuid': None, 'name': 'validate', 'driver_info': {'fake_password': 'fakepass', 'foo': 'bar'}, 'extra': {}, 'driver': 'fake-hardware', 'properties': {'memory_mb': '4096', 'cpu_arch': 'x86_64', 'local_gb': '10', 'cpus': '8'}, 'maintenance': False, 'chassis_uuid': 'e74c40e0-d825-11e2-a28f-0800200c9a66', 'instance_info': {'foo': 'bar', 'image_url': 'http://example.com/test_image_url', 'configdrive': 'TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQ='}, 'uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123'} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-89f78c6b-8817-4c63-825b-0a744d9f1f16 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.10 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"The word \\\"validate\\\" is reserved and can not be used as a node name. Reserved words are: maintenance, management, states, vendor_passthru, validate, detail.\"}"} POST: /v1/nodes {'instance_uuid': None, 'name': 'detail', 'driver_info': {'fake_password': 'fakepass', 'foo': 'bar'}, 'extra': {}, 'driver': 'fake-hardware', 'properties': {'memory_mb': '4096', 'cpu_arch': 'x86_64', 'local_gb': '10', 'cpus': '8'}, 'maintenance': False, 'chassis_uuid': 'e74c40e0-d825-11e2-a28f-0800200c9a66', 'instance_info': {'foo': 'bar', 'image_url': 'http://example.com/test_image_url', 'configdrive': 'TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQ='}, 'uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123'} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-3474b8bb-4b01-46a9-9640-8c7d76670674 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.10 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"The word \\\"detail\\\" is reserved and can not be used as a node name. Reserved words are: maintenance, management, states, vendor_passthru, validate, detail.\"}"} {5} ironic.tests.unit.api.controllers.v1.test_node.TestPost.test_create_node_reserved_name [0.139519s] ... ok PUT: /v1/nodes/node-39/states/console {'enabled': 'true'} GOT:Response: 202 Accepted Location: http://localhost/v1/nodes/node-39/states/console Openstack-Request-Id: req-b25d5d3d-f082-4189-910c-ecf56a42d324 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.5 {24} ironic.tests.unit.api.controllers.v1.test_node.TestPut.test_set_console_by_name [0.083711s] ... ok GET: /v1/ports {} GOT:{u'ports': []} {24} ironic.tests.unit.api.controllers.v1.test_port.TestListPorts.test_empty [0.066498s] ... ok GET: /v1/nodes?owner=fred {} GOT:{u'nodes': [{u'instance_uuid': None, u'maintenance': False, u'links': [{u'href': u'http://localhost/v1/nodes/094e3b81-7f81-456f-8b2f-83324fa576ba', u'rel': u'self'}, {u'href': u'http://localhost/nodes/094e3b81-7f81-456f-8b2f-83324fa576ba', u'rel': u'bookmark'}], u'name': None, u'power_state': None, u'provision_state': u'available', u'uuid': u'094e3b81-7f81-456f-8b2f-83324fa576ba'}]} GET: /v1/nodes?owner=bob {} GOT:{u'nodes': [{u'instance_uuid': None, u'maintenance': False, u'links': [{u'href': u'http://localhost/v1/nodes/c64e1f58-750d-4b23-88d5-62cd346801d2', u'rel': u'self'}, {u'href': u'http://localhost/nodes/c64e1f58-750d-4b23-88d5-62cd346801d2', u'rel': u'bookmark'}], u'name': None, u'power_state': None, u'provision_state': u'available', u'uuid': u'c64e1f58-750d-4b23-88d5-62cd346801d2'}]} GET: /v1/nodes/detail?owner=fred {} GOT:{u'nodes': [{u'target_power_state': None, u'automated_clean': None, u'inspect_interface': None, u'links': [{u'href': u'http://localhost/v1/nodes/094e3b81-7f81-456f-8b2f-83324fa576ba', u'rel': u'self'}, {u'href': u'http://localhost/nodes/094e3b81-7f81-456f-8b2f-83324fa576ba', u'rel': u'bookmark'}], u'target_provision_state': None, u'deploy_step': {}, u'storage_interface': None, u'conductor_group': u'', u'protected_reason': None, u'maintenance_reason': None, u'states': [{u'href': u'http://localhost/v1/nodes/094e3b81-7f81-456f-8b2f-83324fa576ba/states', u'rel': u'self'}, {u'href': u'http://localhost/nodes/094e3b81-7f81-456f-8b2f-83324fa576ba/states', u'rel': u'bookmark'}], u'traits': [], u'provision_state': u'available', u'clean_step': {}, u'vendor_interface': None, u'uuid': u'094e3b81-7f81-456f-8b2f-83324fa576ba', u'console_enabled': False, u'extra': {}, u'raid_config': {}, u'provision_updated_at': None, u'power_state': None, u'last_error': None, u'target_raid_config': {}, u'network_interface': None, u'inspection_started_at': None, u'inspection_finished_at': None, u'maintenance': False, u'conductor': u'fake.conductor', u'driver': u'fake-hardware', u'power_interface': None, u'updated_at': None, u'volume': [{u'href': u'http://localhost/v1/nodes/094e3b81-7f81-456f-8b2f-83324fa576ba/volume', u'rel': u'self'}, {u'href': u'http://localhost/nodes/094e3b81-7f81-456f-8b2f-83324fa576ba/volume', u'rel': u'bookmark'}], u'raid_interface': None, u'rescue_interface': None, u'boot_interface': None, u'reservation': None, u'management_interface': None, u'properties': {u'memory_mb': u'4096', u'cpu_arch': u'x86_64', u'local_gb': u'10', u'cpus': u'8'}, u'bios_interface': None, u'instance_uuid': None, u'name': None, u'driver_info': {u'fake_password': u'******', u'foo': u'bar'}, u'resource_class': None, u'fault': None, u'created_at': u'2019-06-06T07:02:14.882107+00:00', u'portgroups': [{u'href': u'http://localhost/v1/nodes/094e3b81-7f81-456f-8b2f-83324fa576ba/portgroups', u'rel': u'self'}, {u'href': u'http://localhost/nodes/094e3b81-7f81-456f-8b2f-83324fa576ba/portgroups', u'rel': u'bookmark'}], u'deploy_interface': None, u'instance_info': {u'foo': u'bar', u'image_url': u'******', u'configdrive': u'******'}, u'console_interface': None, u'protected': False, u'driver_internal_info': {u'private_state': u'secret value'}, u'chassis_uuid': None, u'owner': u'fred', u'ports': [{u'href': u'http://localhost/v1/nodes/094e3b81-7f81-456f-8b2f-83324fa576ba/ports', u'rel': u'self'}, {u'href': u'http://localhost/nodes/094e3b81-7f81-456f-8b2f-83324fa576ba/ports', u'rel': u'bookmark'}]}]} GET: /v1/nodes/detail?owner=bob {} GOT:{u'nodes': [{u'target_power_state': None, u'automated_clean': None, u'inspect_interface': None, u'links': [{u'href': u'http://localhost/v1/nodes/c64e1f58-750d-4b23-88d5-62cd346801d2', u'rel': u'self'}, {u'href': u'http://localhost/nodes/c64e1f58-750d-4b23-88d5-62cd346801d2', u'rel': u'bookmark'}], u'target_provision_state': None, u'deploy_step': {}, u'storage_interface': None, u'conductor_group': u'', u'protected_reason': None, u'maintenance_reason': None, u'states': [{u'href': u'http://localhost/v1/nodes/c64e1f58-750d-4b23-88d5-62cd346801d2/states', u'rel': u'self'}, {u'href': u'http://localhost/nodes/c64e1f58-750d-4b23-88d5-62cd346801d2/states', u'rel': u'bookmark'}], u'traits': [], u'provision_state': u'available', u'clean_step': {}, u'vendor_interface': None, u'uuid': u'c64e1f58-750d-4b23-88d5-62cd346801d2', u'console_enabled': False, u'extra': {}, u'raid_config': {}, u'provision_updated_at': None, u'power_state': None, u'last_error': None, u'target_raid_config': {}, u'network_interface': None, u'inspection_started_at': None, u'inspection_finished_at': None, u'maintenance': False, u'conductor': u'fake.conductor', u'driver': u'fake-hardware', u'power_interface': None, u'updated_at': None, u'volume': [{u'href': u'http://localhost/v1/nodes/c64e1f58-750d-4b23-88d5-62cd346801d2/volume', u'rel': u'self'}, {u'href': u'http://localhost/nodes/c64e1f58-750d-4b23-88d5-62cd346801d2/volume', u'rel': u'bookmark'}], u'raid_interface': None, u'rescue_interface': None, u'boot_interface': None, u'reservation': None, u'management_interface': None, u'properties': {u'memory_mb': u'4096', u'cpu_arch': u'x86_64', u'local_gb': u'10', u'cpus': u'8'}, u'bios_interface': None, u'instance_uuid': None, u'name': None, u'driver_info': {u'fake_password': u'******', u'foo': u'bar'}, u'resource_class': None, u'fault': None, u'created_at': u'2019-06-06T07:02:14.892655+00:00', u'portgroups': [{u'href': u'http://localhost/v1/nodes/c64e1f58-750d-4b23-88d5-62cd346801d2/portgroups', u'rel': u'self'}, {u'href': u'http://localhost/nodes/c64e1f58-750d-4b23-88d5-62cd346801d2/portgroups', u'rel': u'bookmark'}], u'deploy_interface': None, u'instance_info': {u'foo': u'bar', u'image_url': u'******', u'configdrive': u'******'}, u'console_interface': None, u'protected': False, u'driver_internal_info': {u'private_state': u'secret value'}, u'chassis_uuid': None, u'owner': u'bob', u'ports': [{u'href': u'http://localhost/v1/nodes/c64e1f58-750d-4b23-88d5-62cd346801d2/ports', u'rel': u'self'}, {u'href': u'http://localhost/nodes/c64e1f58-750d-4b23-88d5-62cd346801d2/ports', u'rel': u'bookmark'}]}]} {25} ironic.tests.unit.api.controllers.v1.test_node.TestListNodes.test_get_nodes_by_owner [0.358138s] ... ok PATCH: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123 [{'path': '/chassis_uuid', 'value': 'eeeeeeee-dddd-cccc-bbbb-aaaaaaaaaaaa', 'op': 'replace'}] GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-a2eed536-a69c-4610-a95d-395436b2e3d9 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Chassis eeeeeeee-dddd-cccc-bbbb-aaaaaaaaaaaa could not be found.\"}"} {18} ironic.tests.unit.api.controllers.v1.test_node.TestPatch.test_replace_non_existent_chassis_uuid [0.097178s] ... ok PATCH: /v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 [{'path': '/node_uuid', 'value': '12506333-a81c-4d59-9987-889ed5f8687b', 'op': 'replace'}] GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-8cf8628b-1761-4fed-adbc-fb688b6708b9 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Node 12506333-a81c-4d59-9987-889ed5f8687b could not be found.\"}"} {28} ironic.tests.unit.api.controllers.v1.test_port.TestPatch.test_replace_non_existent_node_uuid [0.084883s] ... ok POST: /v1/nodes {'instance_uuid': None, 'uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123', 'driver_info': {'fake_password': 'fakepass', 'foo': 'bar'}, 'extra': {}, 'properties': {'memory_mb': '4096', 'cpu_arch': 'x86_64', 'local_gb': '10', 'cpus': '8'}, 'maintenance': False, 'chassis_uuid': 'e74c40e0-d825-11e2-a28f-0800200c9a66', 'instance_info': {'foo': 'bar', 'image_url': 'http://example.com/test_image_url', 'configdrive': 'TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQ='}} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-c78cd6b6-0418-4953-912f-6a89294ea02a X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Invalid input for field/attribute driver. Value: 'None'. Mandatory field missing.\"}"} {23} ironic.tests.unit.api.controllers.v1.test_node.TestPost.test_create_node_no_mandatory_field_driver [0.052768s] ... ok GET: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123 {} GOT:{u'target_power_state': None, u'links': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'bookmark'}], u'extra': {}, u'last_error': None, u'updated_at': None, u'maintenance_reason': None, u'provision_state': u'available', u'clean_step': {}, u'uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'console_enabled': False, u'target_provision_state': None, u'provision_updated_at': None, u'power_state': None, u'inspection_started_at': None, u'inspection_finished_at': None, u'maintenance': False, u'driver': u'fake-hardware', u'reservation': None, u'properties': {u'memory_mb': u'4096', u'cpu_arch': u'x86_64', u'local_gb': u'10', u'cpus': u'8'}, u'instance_uuid': None, u'name': None, u'driver_info': {u'fake_password': u'******', u'foo': u'bar'}, u'created_at': u'2019-06-06T07:02:14.893648+00:00', u'instance_info': {u'foo': u'bar', u'image_url': u'******', u'configdrive': u'******'}, u'driver_internal_info': {u'private_state': u'secret value'}, u'chassis_uuid': None, u'ports': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'bookmark'}]} GET: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123 {} GOT:{u'target_power_state': None, u'links': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'bookmark'}], u'target_provision_state': None, u'last_error': None, u'updated_at': None, u'maintenance_reason': None, u'states': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states', u'rel': u'bookmark'}], u'provision_state': u'available', u'clean_step': {}, u'uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'console_enabled': False, u'extra': {}, u'raid_config': {}, u'provision_updated_at': None, u'power_state': None, u'target_raid_config': {}, u'inspection_started_at': None, u'inspection_finished_at': None, u'maintenance': False, u'driver': u'fake-hardware', u'reservation': None, u'properties': {u'memory_mb': u'4096', u'cpu_arch': u'x86_64', u'local_gb': u'10', u'cpus': u'8'}, u'instance_uuid': None, u'name': None, u'driver_info': {u'fake_password': u'******', u'foo': u'bar'}, u'created_at': u'2019-06-06T07:02:14.893648+00:00', u'instance_info': {u'foo': u'bar', u'image_url': u'******', u'configdrive': u'******'}, u'driver_internal_info': {u'private_state': u'secret value'}, u'chassis_uuid': None, u'ports': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'bookmark'}]} {8} ironic.tests.unit.api.controllers.v1.test_node.TestListNodes.test_node_states_field_hidden_in_lower_version [0.112709s] ... ok PATCH: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123 [{'path': '/power_state', 'value': 'fake-state', 'op': 'replace'}] GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-5071fce9-4d42-4477-bd6d-0f663b10d744 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"'/power_state' is an internal attribute and can not be updated\"}"} {7} ironic.tests.unit.api.controllers.v1.test_node.TestPatch.test_replace_internal_field [0.081630s] ... ok PUT: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states/raid {'logical_disks': [{'size_gb': 100, 'raid_level': 1}]} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-09783079-5f20-4dfa-9c01-22160a1888f5 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.12 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"foo\"}"} {5} ironic.tests.unit.api.controllers.v1.test_node.TestPut.test_put_raid_invalid_parameter_value [0.099727s] ... ok PUT: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states/provision {'rescue_password': 'password', 'target': 'rescue'} GOT:Response: 202 Accepted Location: http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states Openstack-Request-Id: req-c934df03-f72f-4a2f-a6a9-a9fdd0e9d37f X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.38 PUT: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states/provision {'rescue_password': 'password', 'target': 'rescue'} GOT:Response: 202 Accepted Location: http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states Openstack-Request-Id: req-48367d8f-e126-4eaa-b2e3-ec55908f12b6 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.38 PUT: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states/provision {'rescue_password': 'password', 'target': 'rescue'} GOT:Response: 202 Accepted Location: http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states Openstack-Request-Id: req-285f55d6-9364-4959-8df6-9c26cfe8934b X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.38 PUT: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states/provision {'rescue_password': 'password', 'target': 'rescue'} GOT:Response: 202 Accepted Location: http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states Openstack-Request-Id: req-8b90b95c-6b7c-4309-9850-3d0d657bcba5 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.38 {21} ironic.tests.unit.api.controllers.v1.test_node.TestPut.test_provision_rescue_in_allowed_states [0.260697s] ... ok {21} ironic.tests.unit.api.controllers.v1.test_notification_utils.APINotifyTestCase.test_portgroup_notification [0.021376s] ... ok GET: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/volume/connectors {} GOT:{u'connectors': [{u'node_uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'type': u'iqn', u'uuid': u'16439507-1f48-475b-9834-6773514101dd', u'links': [{u'href': u'http://localhost/v1/volume/connectors/16439507-1f48-475b-9834-6773514101dd', u'rel': u'self'}, {u'href': u'http://localhost/volume/connectors/16439507-1f48-475b-9834-6773514101dd', u'rel': u'bookmark'}], u'connector_id': u'test-connector_id-0'}, {u'node_uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'type': u'iqn', u'uuid': u'a25012c8-160f-4f19-a525-bc529a6708d3', u'links': [{u'href': u'http://localhost/v1/volume/connectors/a25012c8-160f-4f19-a525-bc529a6708d3', u'rel': u'self'}, {u'href': u'http://localhost/volume/connectors/a25012c8-160f-4f19-a525-bc529a6708d3', u'rel': u'bookmark'}], u'connector_id': u'test-connector_id-1'}]} GET: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/volume/connectors?limit=1 {} GOT:{u'connectors': [{u'node_uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'type': u'iqn', u'uuid': u'16439507-1f48-475b-9834-6773514101dd', u'links': [{u'href': u'http://localhost/v1/volume/connectors/16439507-1f48-475b-9834-6773514101dd', u'rel': u'self'}, {u'href': u'http://localhost/volume/connectors/16439507-1f48-475b-9834-6773514101dd', u'rel': u'bookmark'}], u'connector_id': u'test-connector_id-0'}], u'next': u'http://localhost/v1/volume/connectors?sort_key=id&sort_dir=asc&limit=1&marker=16439507-1f48-475b-9834-6773514101dd'} {26} ironic.tests.unit.api.controllers.v1.test_node.TestListNodes.test_volume_connectors_subresource [0.176555s] ... ok GET: /v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781?fields=uuid,spongebob {} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-d29ea2eb-b275-454e-8e5d-3e01bea95777 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Field(s) \\\"spongebob\\\" are not valid\"}"} {9} ironic.tests.unit.api.controllers.v1.test_port.TestListPorts.test_get_custom_fields_invalid_fields [0.091753s] ... ok PUT: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states/provision {'rescue_password': 'password', 'target': 'rescue'} GOT:Response: 409 Conflict Content-Type: application/json Openstack-Request-Id: req-cbf15fe1-c0ab-4b24-b519-5a8152554987 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.38 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Node 1be26c0b-03f2-4d2e-ae87-c02d7f33c123 is locked by host fake-host, please retry after the current operation is completed.\"}"} PUT: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states/provision {'rescue_password': 'password', 'target': 'rescue'} GOT:Response: 409 Conflict Content-Type: application/json Openstack-Request-Id: req-a0985a7b-90e5-4c46-8aa6-dee901ea559f X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.38 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Node 1be26c0b-03f2-4d2e-ae87-c02d7f33c123 is locked by host fake-host, please retry after the current operation is completed.\"}"} PUT: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states/provision {'rescue_password': 'password', 'target': 'rescue'} GOT:Response: 409 Conflict Content-Type: application/json Openstack-Request-Id: req-ffe2bd05-a010-41e4-b85c-1906f8711d82 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.38 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Node 1be26c0b-03f2-4d2e-ae87-c02d7f33c123 is locked by host fake-host, please retry after the current operation is completed.\"}"} PUT: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states/provision {'rescue_password': 'password', 'target': 'rescue'} GOT:Response: 409 Conflict Content-Type: application/json Openstack-Request-Id: req-7028db27-df23-44d1-a708-1122bbcffe15 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.38 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Node 1be26c0b-03f2-4d2e-ae87-c02d7f33c123 is locked by host fake-host, please retry after the current operation is completed.\"}"} {12} ironic.tests.unit.api.controllers.v1.test_node.TestPut.test_provision_rescue_in_disallowed_states [0.255365s] ... ok {12} ironic.tests.unit.api.controllers.v1.test_notification_utils.APINotifyTestCase.test_chassis_notification [0.018070s] ... ok {12} ironic.tests.unit.api.controllers.v1.test_notification_utils.APINotifyTestCase.test_node_notification_mask_secrets [0.016879s] ... ok POST: /v1/nodes/ports {'local_link_connection': {'switch_info': 'switch1', 'port_id': 'Ethernet3/1', 'switch_id': '0a:1b:2c:3d:4e:5f'}, 'node_uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123', 'uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c781', 'extra': {}, 'pxe_enabled': True, 'physical_network': None, 'address': '52:54:00:cf:2d:31', 'is_smartnic': False} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-938f9843-e2ae-4d1e-824e-d3bedb4a73e3 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Invalid input for field/attribute node. Value: 'ports'. unable to convert to Node. Error: __init__() takes exactly 1 argument (2 given)\"}"} {30} ironic.tests.unit.api.controllers.v1.test_node.TestPost.test_post_ports_subresource_no_node_id [0.065983s] ... ok GET: /v1/nodes?resource_class=fake {} GOT:Response: 406 Not Acceptable Content-Type: application/json Openstack-Request-Id: req-c371e43d-30a4-4c89-952d-9fcb4e73d174 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Request not acceptable. The minimal required API version should be 1.21\"}"} {25} ironic.tests.unit.api.controllers.v1.test_node.TestListNodes.test_get_nodes_by_resource_class_invalid_api_version [0.054533s] ... ok PUT: /v1/nodes/node-39/traits/CUSTOM_3 {} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-58ed5c80-88ba-4604-aefc-66a90886e6e4 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.37 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"too many traits\"}"} {5} ironic.tests.unit.api.controllers.v1.test_node.TestTraits.test_add_single_trait_fails_max_trait_limit [0.096731s] ... ok GET: /v1/nodes/validate?node=spam {} GOT:Response: 406 Not Acceptable Content-Type: application/json Openstack-Request-Id: req-940dc6a3-1435-44c4-9fd6-dc96ff30f571 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Request not acceptable.\"}"} {8} ironic.tests.unit.api.controllers.v1.test_node.TestListNodes.test_validate_by_name_unsupported [0.064870s] ... ok GET: /v1/ports/detail {} GOT:{u'ports': [{u'local_link_connection': {u'switch_info': u'switch1', u'port_id': u'Ethernet3/1', u'switch_id': u'0a:1b:2c:3d:4e:5f'}, u'node_uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c781', u'links': [{u'href': u'http://localhost/v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781', u'rel': u'self'}, {u'href': u'http://localhost/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781', u'rel': u'bookmark'}], u'extra': {}, u'pxe_enabled': True, u'portgroup_uuid': None, u'updated_at': None, u'physical_network': None, u'address': u'52:54:00:cf:2d:31', u'internal_info': {u'bar': u'buzz'}, u'created_at': u'2019-06-06T07:02:16.021759+00:00', u'is_smartnic': False}]} {24} ironic.tests.unit.api.controllers.v1.test_port.TestListPorts.test_list_with_deleted_port_group [0.110741s] ... ok GET: /v1/ports?address=aa:bb:cc:dd:ee:f1 {} GOT:{u'ports': [{u'uuid': u'47567f01-415e-4408-8b87-b013607490a0', u'links': [{u'href': u'http://localhost/v1/ports/47567f01-415e-4408-8b87-b013607490a0', u'rel': u'self'}, {u'href': u'http://localhost/ports/47567f01-415e-4408-8b87-b013607490a0', u'rel': u'bookmark'}], u'address': u'aa:bb:cc:dd:ee:f1'}]} {21} ironic.tests.unit.api.controllers.v1.test_port.TestListPorts.test_port_by_address [0.098689s] ... ok GET: /v1/ports?sort_key=pxe_enabled {} GOT:Response: 406 Not Acceptable Content-Type: application/json Openstack-Request-Id: req-795cd360-19d7-4c1d-8f1c-589e3a775732 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.18 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Request not acceptable.\"}"} {12} ironic.tests.unit.api.controllers.v1.test_port.TestListPorts.test_sort_key_not_allowed [0.059401s] ... ok GET: /v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 {} GOT:{u'node_uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c781', u'links': [{u'href': u'http://localhost/v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781', u'rel': u'self'}, {u'href': u'http://localhost/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781', u'rel': u'bookmark'}], u'extra': {}, u'created_at': u'2019-06-06T07:02:16.420294+00:00', u'updated_at': None, u'address': u'52:54:00:cf:2d:31'} GET: /v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 {} GOT:{u'node_uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c781', u'links': [{u'href': u'http://localhost/v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781', u'rel': u'self'}, {u'href': u'http://localhost/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781', u'rel': u'bookmark'}], u'extra': {}, u'created_at': u'2019-06-06T07:02:16.420294+00:00', u'updated_at': None, u'address': u'52:54:00:cf:2d:31', u'internal_info': {u'foo': u'bar'}} {17} ironic.tests.unit.api.controllers.v1.test_port.TestListPorts.test_hide_fields_in_newer_versions_internal_info [0.112172s] ... ok GET: /v1/nodes/eeeeeeee-cccc-aaaa-bbbb-cccccccccccc/volume/targets {} GOT:Response: 404 Not Found Content-Type: application/json Openstack-Request-Id: req-7577a131-cf13-488d-8a9c-a4e31c2752c8 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Node eeeeeeee-cccc-aaaa-bbbb-cccccccccccc could not be found.\"}"} {26} ironic.tests.unit.api.controllers.v1.test_node.TestListNodes.test_volume_targets_subresource_node_not_found [0.083479s] ... ok {26} ironic.tests.unit.api.controllers.v1.test_node.TestPatch.test__update_changed_fields_lowers_conductor_group [0.070853s] ... ok PATCH: /v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 [{'path': '/physical_network', 'value': 'physnet2', 'op': 'replace'}] GOT:Response: 406 Not Acceptable Content-Type: application/json Openstack-Request-Id: req-d5bf18b9-5426-4f3f-b720-22352345c223 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.33 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Request not acceptable.\"}"} {9} ironic.tests.unit.api.controllers.v1.test_port.TestPatch.test_replace_physical_network_old_api_version [0.079454s] ... ok DELETE: /v1/nodes/node-39/traits GOT:Response: 204 No Content Openstack-Request-Id: req-87ddd91a-329b-46cd-a441-e74509ec4c42 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.37 {5} ironic.tests.unit.api.controllers.v1.test_node.TestTraits.test_delete_all_traits [0.101142s] ... ok PUT: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states/provision {'clean_steps': [{'interface': 'deploy', 'step': 'upgrade_firmware'}], 'target': 'clean'} GOT:Response: 202 Accepted Location: http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states Openstack-Request-Id: req-075f67f2-1580-49a0-b67e-99a7e79f41f0 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.15 {30} ironic.tests.unit.api.controllers.v1.test_node.TestPut.test_clean [0.106413s] ... ok GET: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123 {} GOT:{u'target_power_state': None, u'automated_clean': None, u'inspect_interface': None, u'links': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'bookmark'}], u'target_provision_state': None, u'deploy_step': {}, u'storage_interface': None, u'conductor_group': u'', u'protected_reason': None, u'maintenance_reason': None, u'states': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states', u'rel': u'bookmark'}], u'traits': [], u'provision_state': u'available', u'clean_step': {}, u'vendor_interface': None, u'uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'console_enabled': False, u'extra': {}, u'raid_config': {}, u'provision_updated_at': None, u'power_state': None, u'last_error': None, u'target_raid_config': {}, u'network_interface': None, u'inspection_started_at': None, u'inspection_finished_at': None, u'maintenance': False, u'driver': u'fake-hardware', u'power_interface': None, u'updated_at': None, u'volume': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/volume', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/volume', u'rel': u'bookmark'}], u'raid_interface': None, u'rescue_interface': None, u'boot_interface': None, u'reservation': None, u'management_interface': None, u'properties': {u'memory_mb': u'4096', u'cpu_arch': u'x86_64', u'local_gb': u'10', u'cpus': u'8'}, u'bios_interface': None, u'instance_uuid': None, u'name': None, u'driver_info': {u'fake_password': u'******', u'foo': u'bar'}, u'resource_class': None, u'fault': None, u'created_at': u'2019-06-06T07:02:15.325922+00:00', u'portgroups': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/portgroups', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/portgroups', u'rel': u'bookmark'}], u'deploy_interface': None, u'instance_info': {u'foo': u'bar', u'image_url': u'******', u'configdrive': u'******'}, u'console_interface': None, u'protected': False, u'driver_internal_info': {u'private_state': u'secret value'}, u'chassis_uuid': None, u'ports': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'bookmark'}]} GET: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123 {} GOT:{u'target_power_state': None, u'automated_clean': None, u'inspect_interface': None, u'links': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'bookmark'}], u'target_provision_state': None, u'deploy_step': {}, u'storage_interface': None, u'conductor_group': u'', u'protected_reason': None, u'maintenance_reason': None, u'states': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states', u'rel': u'bookmark'}], u'traits': [], u'provision_state': u'available', u'clean_step': {}, u'vendor_interface': None, u'uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'console_enabled': False, u'extra': {}, u'raid_config': {}, u'provision_updated_at': None, u'power_state': None, u'last_error': None, u'target_raid_config': {}, u'network_interface': None, u'inspection_started_at': None, u'inspection_finished_at': None, u'maintenance': False, u'conductor': u'fake.conductor', u'driver': u'fake-hardware', u'power_interface': None, u'updated_at': None, u'volume': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/volume', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/volume', u'rel': u'bookmark'}], u'raid_interface': None, u'rescue_interface': None, u'boot_interface': None, u'reservation': None, u'management_interface': None, u'properties': {u'memory_mb': u'4096', u'cpu_arch': u'x86_64', u'local_gb': u'10', u'cpus': u'8'}, u'bios_interface': None, u'instance_uuid': None, u'name': None, u'driver_info': {u'fake_password': u'******', u'foo': u'bar'}, u'resource_class': None, u'fault': None, u'created_at': u'2019-06-06T07:02:15.325922+00:00', u'portgroups': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/portgroups', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/portgroups', u'rel': u'bookmark'}], u'deploy_interface': None, u'instance_info': {u'foo': u'bar', u'image_url': u'******', u'configdrive': u'******'}, u'console_interface': None, u'protected': False, u'driver_internal_info': {u'private_state': u'secret value'}, u'chassis_uuid': None, u'ports': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'bookmark'}]} {29} ironic.tests.unit.api.controllers.v1.test_node.TestListNodes.test_node_conductor_hidden_in_lower_version [0.122742s] ... ok GET: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123 {} GOT:{u'target_power_state': None, u'inspect_interface': None, u'links': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'bookmark'}], u'target_provision_state': None, u'last_error': None, u'updated_at': None, u'maintenance_reason': None, u'states': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states', u'rel': u'bookmark'}], u'provision_state': u'available', u'clean_step': {}, u'vendor_interface': None, u'uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'console_enabled': False, u'extra': {}, u'raid_config': {}, u'provision_updated_at': None, u'power_state': None, u'target_raid_config': {}, u'network_interface': None, u'inspection_started_at': None, u'inspection_finished_at': None, u'maintenance': False, u'driver': u'fake-hardware', u'power_interface': None, u'volume': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/volume', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/volume', u'rel': u'bookmark'}], u'raid_interface': None, u'boot_interface': None, u'reservation': None, u'management_interface': None, u'properties': {u'memory_mb': u'4096', u'cpu_arch': u'x86_64', u'local_gb': u'10', u'cpus': u'8'}, u'instance_uuid': None, u'name': None, u'driver_info': {u'fake_password': u'******', u'foo': u'bar'}, u'resource_class': None, u'created_at': u'2019-06-06T07:02:15.440974+00:00', u'portgroups': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/portgroups', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/portgroups', u'rel': u'bookmark'}], u'deploy_interface': None, u'instance_info': {u'foo': u'bar', u'image_url': u'******', u'configdrive': u'******'}, u'console_interface': None, u'driver_internal_info': {u'private_state': u'secret value'}, u'chassis_uuid': None, u'ports': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'bookmark'}]} {19} ironic.tests.unit.api.controllers.v1.test_node.TestListNodes.test_volume_subresource_link [0.090339s] ... ok GET: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123?fields=extra,instance_info {} GOT:{u'instance_info': {u'foo': u'bar', u'image_url': u'******', u'configdrive': u'******'}, u'links': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'bookmark'}], u'extra': {}} {25} ironic.tests.unit.api.controllers.v1.test_node.TestListNodes.test_get_one_custom_fields [0.092179s] ... ok GET: /v1/nodes?associated=false {} GOT:{u'nodes': [{u'instance_uuid': None, u'maintenance': False, u'links': [{u'href': u'http://localhost/v1/nodes/1d82483c-e850-46f7-aebd-562c57130b61', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1d82483c-e850-46f7-aebd-562c57130b61', u'rel': u'bookmark'}], u'power_state': None, u'provision_state': None, u'uuid': u'1d82483c-e850-46f7-aebd-562c57130b61'}, {u'instance_uuid': None, u'maintenance': False, u'links': [{u'href': u'http://localhost/v1/nodes/656b588a-10d1-4fdf-9ad3-41de181e9966', u'rel': u'self'}, {u'href': u'http://localhost/nodes/656b588a-10d1-4fdf-9ad3-41de181e9966', u'rel': u'bookmark'}], u'power_state': None, u'provision_state': None, u'uuid': u'656b588a-10d1-4fdf-9ad3-41de181e9966'}, {u'instance_uuid': None, u'maintenance': False, u'links': [{u'href': u'http://localhost/v1/nodes/483bcc1a-be53-4b6a-9c2a-ce4b9c3b124e', u'rel': u'self'}, {u'href': u'http://localhost/nodes/483bcc1a-be53-4b6a-9c2a-ce4b9c3b124e', u'rel': u'bookmark'}], u'power_state': None, u'provision_state': None, u'uuid': u'483bcc1a-be53-4b6a-9c2a-ce4b9c3b124e'}]} GET: /v1/nodes?associated=FALSE {} GOT:{u'nodes': [{u'instance_uuid': None, u'maintenance': False, u'links': [{u'href': u'http://localhost/v1/nodes/1d82483c-e850-46f7-aebd-562c57130b61', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1d82483c-e850-46f7-aebd-562c57130b61', u'rel': u'bookmark'}], u'power_state': None, u'provision_state': None, u'uuid': u'1d82483c-e850-46f7-aebd-562c57130b61'}, {u'instance_uuid': None, u'maintenance': False, u'links': [{u'href': u'http://localhost/v1/nodes/656b588a-10d1-4fdf-9ad3-41de181e9966', u'rel': u'self'}, {u'href': u'http://localhost/nodes/656b588a-10d1-4fdf-9ad3-41de181e9966', u'rel': u'bookmark'}], u'power_state': None, u'provision_state': None, u'uuid': u'656b588a-10d1-4fdf-9ad3-41de181e9966'}, {u'instance_uuid': None, u'maintenance': False, u'links': [{u'href': u'http://localhost/v1/nodes/483bcc1a-be53-4b6a-9c2a-ce4b9c3b124e', u'rel': u'self'}, {u'href': u'http://localhost/nodes/483bcc1a-be53-4b6a-9c2a-ce4b9c3b124e', u'rel': u'bookmark'}], u'power_state': None, u'provision_state': None, u'uuid': u'483bcc1a-be53-4b6a-9c2a-ce4b9c3b124e'}]} {11} ironic.tests.unit.api.controllers.v1.test_node.TestListNodes.test_unassociated_nodes_insensitive [0.297231s] ... ok PATCH: /v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 [{'path': '/portgroup_uuid', 'value': 'cceae6d2-7925-4010-a686-c5e6031aa56d', 'op': 'replace'}] GOT:Response: 200 OK Content-Type: application/json Openstack-Request-Id: req-d6a1e8bc-319e-4de7-b09b-6ed2788e4aef X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.24 {"local_link_connection": {"switch_info": "switch1", "port_id": "Ethernet3/1", "switch_id": "0a:1b:2c:3d:4e:5f"}, "node_uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "links": [{"href": "http://localhost/v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "rel": "self"}, {"href": "http://localhost/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "rel": "bookmark"}], "extra": {}, "pxe_enabled": true, "portgroup_uuid": "cceae6d2-7925-4010-a686-c5e6031aa56d", "updated_at": "2019-06-06T07:02:16.051952+00:00", "address": "52:54:00:cf:2d:31", "internal_info": {"bar": "buzz"}, "created_at": "2019-06-06T07:02:15.974155+00:00"} {28} ironic.tests.unit.api.controllers.v1.test_port.TestPatch.test_replace_portgroup_uuid [0.144302s] ... ok PUT: /v1/nodes/node-39/traits {'traits': []} GOT:Response: 204 No Content Openstack-Request-Id: req-6f00124b-c2bc-4f18-932b-5215d15d1952 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.37 {5} ironic.tests.unit.api.controllers.v1.test_node.TestTraits.test_set_all_traits_empty [0.098987s] ... ok PATCH: /v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 [{'path': '/node_id', 'value': '1', 'op': 'add'}] GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-673297d4-e9f6-4631-9744-840004889057 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Adding a new attribute (/node_id) to the root of the resource is not allowed\"}"} {24} ironic.tests.unit.api.controllers.v1.test_port.TestPatch.test_add_node_id [0.071326s] ... ok GET: /v1/nodes/volume/targets {} GOT:Response: 404 Not Found Content-Type: application/json Openstack-Request-Id: req-629908be-e15f-41ae-8ff0-3529b9f2f334 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Node volume could not be found.\"}"} {8} ironic.tests.unit.api.controllers.v1.test_node.TestListNodes.test_volume_targets_subresource_noid [0.087151s] ... ok PATCH: /v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 [{'path': '/physical_network', 'value': 'physnet1', 'op': 'add'}] GOT:Response: 406 Not Acceptable Content-Type: application/json Openstack-Request-Id: req-c81adc65-527c-4918-ad0b-99bb0e664796 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.34 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Request not acceptable.\"}"} {12} ironic.tests.unit.api.controllers.v1.test_port.TestPatch.test_add_physical_network_upgrade [0.077979s] ... ok PUT: /v1/nodes/node-39/states/provision {'target': 'active'} GOT:Response: 404 Not Found Content-Type: application/json Openstack-Request-Id: req-ecc1aeef-2245-4956-a505-bf6cda353366 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Node node-39 could not be found.\"}"} {30} ironic.tests.unit.api.controllers.v1.test_node.TestPut.test_provision_by_name_unsupported [0.099719s] ... ok GET: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states {} GOT:{u'target_power_state': u'fake-state', u'target_provision_state': u'fake-state', u'last_error': u'fake-error', u'console_enabled': False, u'raid_config': {u'foo': u'bar'}, u'provision_updated_at': u'2000-01-01T00:00:00+00:00', u'power_state': u'fake-state', u'provision_state': u'fake-state', u'target_raid_config': {u'foo': u'bar'}} {29} ironic.tests.unit.api.controllers.v1.test_node.TestListNodes.test_node_states_raid [0.101789s] ... ok GET: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123 {} GOT:{u'target_power_state': None, u'inspect_interface': None, u'links': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'bookmark'}], u'target_provision_state': None, u'last_error': None, u'storage_interface': None, u'updated_at': None, u'maintenance_reason': None, u'states': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states', u'rel': u'bookmark'}], u'traits': [], u'provision_state': u'available', u'clean_step': {}, u'vendor_interface': None, u'uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'console_enabled': False, u'extra': {}, u'raid_config': {}, u'provision_updated_at': None, u'power_state': None, u'target_raid_config': {}, u'network_interface': None, u'inspection_started_at': None, u'inspection_finished_at': None, u'maintenance': False, u'driver': u'fake-hardware', u'power_interface': None, u'volume': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/volume', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/volume', u'rel': u'bookmark'}], u'raid_interface': None, u'rescue_interface': None, u'boot_interface': None, u'reservation': None, u'management_interface': None, u'properties': {u'memory_mb': u'4096', u'cpu_arch': u'x86_64', u'local_gb': u'10', u'cpus': u'8'}, u'bios_interface': None, u'instance_uuid': None, u'name': None, u'driver_info': {u'fake_password': u'******', u'foo': u'bar'}, u'resource_class': None, u'created_at': u'2019-06-06T07:02:15.275273+00:00', u'portgroups': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/portgroups', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/portgroups', u'rel': u'bookmark'}], u'deploy_interface': None, u'instance_info': {u'foo': u'bar', u'image_url': u'******', u'configdrive': u'******'}, u'console_interface': None, u'driver_internal_info': {u'private_state': u'secret value'}, u'chassis_uuid': None, u'ports': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'bookmark'}]} GET: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123 {} GOT:{u'target_power_state': None, u'inspect_interface': None, u'links': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'bookmark'}], u'target_provision_state': None, u'last_error': None, u'storage_interface': None, u'updated_at': None, u'maintenance_reason': None, u'states': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states', u'rel': u'bookmark'}], u'traits': [], u'provision_state': u'available', u'clean_step': {}, u'vendor_interface': None, u'uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'console_enabled': False, u'extra': {}, u'raid_config': {}, u'provision_updated_at': None, u'power_state': None, u'target_raid_config': {}, u'network_interface': None, u'inspection_started_at': None, u'inspection_finished_at': None, u'maintenance': False, u'driver': u'fake-hardware', u'power_interface': None, u'volume': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/volume', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/volume', u'rel': u'bookmark'}], u'raid_interface': None, u'rescue_interface': None, u'boot_interface': None, u'reservation': None, u'management_interface': None, u'properties': {u'memory_mb': u'4096', u'cpu_arch': u'x86_64', u'local_gb': u'10', u'cpus': u'8'}, u'bios_interface': None, u'instance_uuid': None, u'name': None, u'driver_info': {u'fake_password': u'******', u'foo': u'bar'}, u'resource_class': None, u'fault': None, u'created_at': u'2019-06-06T07:02:15.275273+00:00', u'portgroups': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/portgroups', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/portgroups', u'rel': u'bookmark'}], u'deploy_interface': None, u'instance_info': {u'foo': u'bar', u'image_url': u'******', u'configdrive': u'******'}, u'console_interface': None, u'driver_internal_info': {u'private_state': u'secret value'}, u'chassis_uuid': None, u'ports': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'bookmark'}]} {20} ironic.tests.unit.api.controllers.v1.test_node.TestListNodes.test_node_fault_hidden_in_lower_version [0.137548s] ... ok {20} ironic.tests.unit.api.controllers.v1.test_node.TestPatch.test__update_changed_fields_remove_chassis_uuid [0.060824s] ... ok PATCH: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123 [{'path': '/name', 'value': 'Guido Van Error', 'op': 'replace'}] GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-166ee0f0-4ddf-450d-b201-fbc261b3912d X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.5 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Node 1be26c0b-03f2-4d2e-ae87-c02d7f33c123: Cannot change name to invalid name 'Guido Van Error'\"}"} {26} ironic.tests.unit.api.controllers.v1.test_node.TestPatch.test_patch_add_replace_invalid [0.091668s] ... ok GET: /v1/nodes?sort_key=foo {} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-a2e1d7f3-0fea-4ef7-ac8b-d45f90bd2acc X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"The sort_key value \\\"foo\\\" is an invalid field for sorting\"}"} GET: /v1/nodes?sort_key=properties {} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-cd705b11-2e0e-424f-a00f-12a437af7ec5 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"The sort_key value properties is an invalid field for sorting\"}"} GET: /v1/nodes?sort_key=driver_info {} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-af0b729f-12ed-4255-b783-cd1893bba78e X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"The sort_key value driver_info is an invalid field for sorting\"}"} GET: /v1/nodes?sort_key=extra {} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-bdd03846-a7f0-43f5-9dd7-12cc8cb75b29 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"The sort_key value extra is an invalid field for sorting\"}"} GET: /v1/nodes?sort_key=instance_info {} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-73b7ef8a-adb6-4897-876b-5da2216513a4 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"The sort_key value instance_info is an invalid field for sorting\"}"} GET: /v1/nodes?sort_key=driver_internal_info {} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-e9e57666-1cdb-45ca-8634-42a274a9c912 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"The sort_key value driver_internal_info is an invalid field for sorting\"}"} GET: /v1/nodes?sort_key=clean_step {} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-7dee78df-a001-4dbd-9db1-839c63be7efe X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"The sort_key value clean_step is an invalid field for sorting\"}"} GET: /v1/nodes?sort_key=traits {} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-bc302009-282d-4543-8798-6e5babb1b2fb X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"The sort_key value traits is an invalid field for sorting\"}"} {10} ironic.tests.unit.api.controllers.v1.test_node.TestListNodes.test_sort_key_invalid [0.121370s] ... ok GET: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123 {} GOT:{u'target_power_state': None, u'automated_clean': False, u'inspect_interface': None, u'links': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'bookmark'}], u'target_provision_state': None, u'deploy_step': {}, u'storage_interface': None, u'conductor_group': u'', u'updated_at': None, u'maintenance_reason': None, u'states': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states', u'rel': u'bookmark'}], u'traits': [], u'provision_state': u'available', u'clean_step': {}, u'vendor_interface': None, u'uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'console_enabled': False, u'extra': {}, u'raid_config': {}, u'provision_updated_at': None, u'power_state': None, u'last_error': None, u'target_raid_config': {}, u'network_interface': None, u'inspection_started_at': None, u'inspection_finished_at': None, u'maintenance': False, u'driver': u'fake-hardware', u'power_interface': None, u'volume': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/volume', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/volume', u'rel': u'bookmark'}], u'raid_interface': None, u'rescue_interface': None, u'boot_interface': None, u'reservation': None, u'management_interface': None, u'properties': {u'memory_mb': u'4096', u'cpu_arch': u'x86_64', u'local_gb': u'10', u'cpus': u'8'}, u'bios_interface': None, u'instance_uuid': None, u'name': None, u'driver_info': {u'fake_password': u'******', u'foo': u'bar'}, u'resource_class': None, u'fault': None, u'created_at': u'2019-06-06T07:02:15.598946+00:00', u'portgroups': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/portgroups', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/portgroups', u'rel': u'bookmark'}], u'deploy_interface': None, u'instance_info': {u'foo': u'bar', u'image_url': u'******', u'configdrive': u'******'}, u'console_interface': None, u'driver_internal_info': {u'private_state': u'secret value'}, u'chassis_uuid': None, u'ports': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'bookmark'}]} {27} ironic.tests.unit.api.controllers.v1.test_node.TestListNodes.test_node_automated_clean_false_field [0.098191s] ... ok PATCH: /v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 [{'path': '/extra/foo1', 'value': 'bar1', 'op': 'add'}, {'path': '/extra/foo2', 'value': 'bar2', 'op': 'add'}, {'path': '/extra/foo3', 'value': 'bar3', 'op': 'add'}] GOT:Response: 200 OK Content-Type: application/json Openstack-Request-Id: req-c1ed73e1-cd51-417b-9626-b7acd78fb2a2 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"node_uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "links": [{"href": "http://localhost/v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "rel": "self"}, {"href": "http://localhost/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "rel": "bookmark"}], "extra": {"foo1": "bar1", "foo2": "bar2", "foo3": "bar3"}, "created_at": "2019-06-06T07:02:16.532134+00:00", "updated_at": "2019-06-06T07:02:16.601733+00:00", "address": "52:54:00:cf:2d:31"} {17} ironic.tests.unit.api.controllers.v1.test_port.TestPatch.test_add_multi [0.130057s] ... ok PATCH: /v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 [{'path': '/node_id', 'value': '1', 'op': 'replace'}] GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-f7d257be-1e6c-4663-817c-8a16bc228e4a X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Couldn't apply patch '{'path': '/node_id', 'value': u'1', 'op': 'replace'}'. Reason: can't replace non-existent object 'node_id'\"}"} {5} ironic.tests.unit.api.controllers.v1.test_port.TestPatch.test_replace_node_id [0.078461s] ... ok POST: /v1/ports {'local_link_connection': {'switch_info': 'switch1', 'port_id': 'Ethernet3/1', 'switch_id': '0a:1b:2c:3d:4e:5f'}, 'node_uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123', 'uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c781', 'extra': {}, 'pxe_enabled': True, 'portgroup_uuid': '6eb02b44-18a3-4659-8c0b-8d2802581ae4', 'physical_network': 1234, 'address': '52:54:00:cf:2d:31', 'is_smartnic': False} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-f4a7b2fb-4840-4f0a-a05c-436063a3e773 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Invalid input for field/attribute physical_network. Value: '1234'. Value should be string\"}"} {9} ironic.tests.unit.api.controllers.v1.test_port.TestPost.test_create_port_invalid_physnet_non_text [0.086688s] ... ok GET: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123 {} GOT:{u'target_power_state': None, u'links': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'bookmark'}], u'target_provision_state': None, u'last_error': None, u'updated_at': None, u'maintenance_reason': None, u'provision_state': None, u'uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'console_enabled': False, u'extra': {}, u'provision_updated_at': None, u'maintenance': False, u'power_state': None, u'driver': u'fake-hardware', u'reservation': None, u'properties': {u'memory_mb': u'4096', u'cpu_arch': u'x86_64', u'local_gb': u'10', u'cpus': u'8'}, u'instance_uuid': None, u'driver_info': {u'fake_password': u'******', u'foo': u'bar'}, u'created_at': u'2019-06-06T07:02:15.538344+00:00', u'ports': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'bookmark'}], u'chassis_uuid': None, u'instance_info': {u'foo': u'bar', u'image_url': u'******', u'configdrive': u'******'}} GET: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123 {} GOT:{u'target_power_state': None, u'links': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'bookmark'}], u'extra': {}, u'last_error': None, u'updated_at': None, u'maintenance_reason': None, u'provision_state': u'available', u'clean_step': {u'foo': u'bar'}, u'uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'console_enabled': False, u'target_provision_state': None, u'provision_updated_at': None, u'power_state': None, u'inspection_started_at': None, u'inspection_finished_at': None, u'maintenance': False, u'driver': u'fake-hardware', u'reservation': None, u'properties': {u'memory_mb': u'4096', u'cpu_arch': u'x86_64', u'local_gb': u'10', u'cpus': u'8'}, u'instance_uuid': None, u'name': None, u'driver_info': {u'fake_password': u'******', u'foo': u'bar'}, u'created_at': u'2019-06-06T07:02:15.538344+00:00', u'instance_info': {u'foo': u'bar', u'image_url': u'******', u'configdrive': u'******'}, u'driver_internal_info': {u'private_state': u'secret value'}, u'chassis_uuid': None, u'ports': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'bookmark'}]} {31} ironic.tests.unit.api.controllers.v1.test_node.TestListNodes.test_hide_fields_in_newer_versions_clean_step [0.112174s] ... ok POST: /v1/portgroups {'node_uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123', 'uuid': '6eb02b44-18a3-4659-8c0b-8d2802581ae4', 'extra': {}, 'standalone_ports_supported': True, 'name': 'fooname'} GOT:Response: 201 Created Content-Type: application/json Location: http://localhost/v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4 Openstack-Request-Id: req-6024cb95-fa77-4ba4-adac-864d72b07be0 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"node_uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "uuid": "6eb02b44-18a3-4659-8c0b-8d2802581ae4", "links": [{"href": "http://localhost/v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4", "rel": "self"}, {"href": "http://localhost/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4", "rel": "bookmark"}], "extra": {}, "created_at": "2019-06-06T07:02:16.038167+00:00", "updated_at": null, "ports": [{"href": "http://localhost/v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4/ports", "rel": "self"}, {"href": "http://localhost/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4/ports", "rel": "bookmark"}], "standalone_ports_supported": true, "mode": "active-backup", "address": null, "internal_info": {}, "properties": {}, "name": "fooname"} GET: /v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4 {} GOT:{u'node_uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'uuid': u'6eb02b44-18a3-4659-8c0b-8d2802581ae4', u'links': [{u'href': u'http://localhost/v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4', u'rel': u'self'}, {u'href': u'http://localhost/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4', u'rel': u'bookmark'}], u'extra': {}, u'created_at': u'2019-06-06T07:02:16.038167+00:00', u'updated_at': None, u'properties': {}, u'standalone_ports_supported': True, u'mode': u'active-backup', u'address': None, u'internal_info': {}, u'ports': [{u'href': u'http://localhost/v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4/ports', u'rel': u'self'}, {u'href': u'http://localhost/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4/ports', u'rel': u'bookmark'}], u'name': u'fooname'} {2} ironic.tests.unit.api.controllers.v1.test_portgroup.TestPost.test_create_portgroup_no_address [0.121952s] ... ok PATCH: /v1/ports/7c5caa51-6f6b-45a2-b884-73bc0d99ed00 [{'path': '/extra/vif_port_id', 'value': 'foo', 'op': 'add'}, {'path': '/extra/vif_port_id', 'value': 'bar', 'op': 'add'}] GOT:Response: 200 OK Content-Type: application/json Openstack-Request-Id: req-37fa985e-2866-4d28-b021-79f7085c8d8c X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.27 {"local_link_connection": {"switch_info": "switch1", "port_id": "Ethernet3/1", "switch_id": "0a:1b:2c:3d:4e:5f"}, "node_uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "uuid": "7c5caa51-6f6b-45a2-b884-73bc0d99ed00", "links": [{"href": "http://localhost/v1/ports/7c5caa51-6f6b-45a2-b884-73bc0d99ed00", "rel": "self"}, {"href": "http://localhost/ports/7c5caa51-6f6b-45a2-b884-73bc0d99ed00", "rel": "bookmark"}], "extra": {"vif_port_id": "bar"}, "pxe_enabled": true, "portgroup_uuid": null, "updated_at": "2019-06-06T07:02:15.876686+00:00", "address": "52:55:00:cf:2d:31", "internal_info": {"tenant_vif_port_id": "bar", "bar": "buzz"}, "created_at": "2019-06-06T07:02:15.816107+00:00"} {21} ironic.tests.unit.api.controllers.v1.test_port.TestPatch.test_add_extra_vif_port_id [0.131398s] ... ok PATCH: /v1/nodes/99046f01-f846-4c78-91ea-7cb11bec6fbe [{'path': '/extra/foo', 'value': 'bar', 'op': 'add'}] GOT:Response: 200 OK Content-Type: application/json Openstack-Request-Id: req-3b538dcd-1beb-4496-a8c1-4bb208c51ab2 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"target_power_state": "power off", "links": [{"href": "http://localhost/v1/nodes/99046f01-f846-4c78-91ea-7cb11bec6fbe", "rel": "self"}, {"href": "http://localhost/nodes/99046f01-f846-4c78-91ea-7cb11bec6fbe", "rel": "bookmark"}], "target_provision_state": null, "last_error": null, "updated_at": null, "maintenance_reason": null, "provision_state": null, "uuid": "99046f01-f846-4c78-91ea-7cb11bec6fbe", "console_enabled": false, "extra": {}, "provision_updated_at": null, "maintenance": false, "power_state": null, "driver": "fake-hardware", "reservation": null, "properties": {"memory_mb": "4096", "cpu_arch": "x86_64", "local_gb": "10", "cpus": "8"}, "instance_uuid": null, "driver_info": {"fake_password": "******", "foo": "bar"}, "created_at": "2019-06-06T07:02:16.097876+00:00", "ports": [{"href": "http://localhost/v1/nodes/99046f01-f846-4c78-91ea-7cb11bec6fbe/ports", "rel": "self"}, {"href": "http://localhost/nodes/99046f01-f846-4c78-91ea-7cb11bec6fbe/ports", "rel": "bookmark"}], "chassis_uuid": null, "instance_info": {"foo": "bar", "image_url": "******", "configdrive": "******"}} {7} ironic.tests.unit.api.controllers.v1.test_node.TestPatch.test_update_allowed_in_power_transition [0.127667s] ... ok PATCH: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123 [{'path': '/chassis_uuid', 'op': 'remove'}] GOT:Response: 406 Not Acceptable Content-Type: application/json Openstack-Request-Id: req-d84603a3-c909-4ce9-bf68-1ef466af298b X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.24 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Request not acceptable.\"}"} {26} ironic.tests.unit.api.controllers.v1.test_node.TestPatch.test_remove_chassis_uuid_invalid_api_version [0.091680s] ... ok PUT: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states/provision {'target': 'active'} GOT:Response: 409 Conflict Content-Type: application/json Openstack-Request-Id: req-9a18bf52-10ba-474e-bdd9-46ae975628cd X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Node is locked by host , please retry after the current operation is completed.\"}"} {30} ironic.tests.unit.api.controllers.v1.test_node.TestPut.test_provision_locked_with_correct_state [0.111602s] ... ok PATCH: /v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 [{'path': '/extra/foo', 'value': 'bar', 'op': 'add'}] GOT:Response: 200 OK Content-Type: application/json Openstack-Request-Id: req-979e8029-e6a4-4c98-aabe-5595a555a150 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"node_uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "links": [{"href": "http://localhost/v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "rel": "self"}, {"href": "http://localhost/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "rel": "bookmark"}], "extra": {"foo": "bar"}, "created_at": "2019-06-06T07:02:16.194201+00:00", "updated_at": "2019-06-06T07:02:16.257515+00:00", "address": "52:54:00:cf:2d:31"} {24} ironic.tests.unit.api.controllers.v1.test_port.TestPatch.test_update_byid [0.124102s] ... ok PATCH: /v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 [{'path': '/portgroup_uuid', 'value': '62b036a9-f2f0-4e16-98ad-80fb92f9f9d0', 'op': 'remove'}] GOT:Response: 200 OK Content-Type: application/json Openstack-Request-Id: req-08634082-25c7-4bd3-8c3c-b771a9a14fd3 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.24 {"local_link_connection": {"switch_info": "switch1", "port_id": "Ethernet3/1", "switch_id": "0a:1b:2c:3d:4e:5f"}, "node_uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "links": [{"href": "http://localhost/v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "rel": "self"}, {"href": "http://localhost/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "rel": "bookmark"}], "extra": {}, "pxe_enabled": true, "portgroup_uuid": null, "updated_at": null, "address": "52:54:00:cf:2d:31", "internal_info": {"bar": "buzz"}, "created_at": "2019-06-06T07:02:16.118799+00:00"} {28} ironic.tests.unit.api.controllers.v1.test_port.TestPatch.test_replace_portgroup_uuid_remove [0.128469s] ... ok PATCH: /v1/nodes/e57cbb8b-0b1c-425e-8acc-51ea23182366 [{'path': '/network_interface', 'op': 'remove'}] GOT:Response: 200 OK Content-Type: application/json Openstack-Request-Id: req-e1b277af-2b5c-4c8a-9e0e-15943c65d794 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"target_power_state": null, "automated_clean": null, "inspect_interface": null, "links": [{"href": "http://localhost/v1/nodes/e57cbb8b-0b1c-425e-8acc-51ea23182366", "rel": "self"}, {"href": "http://localhost/nodes/e57cbb8b-0b1c-425e-8acc-51ea23182366", "rel": "bookmark"}], "target_provision_state": null, "deploy_step": {}, "storage_interface": null, "conductor_group": "", "protected_reason": null, "maintenance_reason": null, "states": [{"href": "http://localhost/v1/nodes/e57cbb8b-0b1c-425e-8acc-51ea23182366/states", "rel": "self"}, {"href": "http://localhost/nodes/e57cbb8b-0b1c-425e-8acc-51ea23182366/states", "rel": "bookmark"}], "traits": [], "provision_state": "available", "clean_step": {}, "vendor_interface": null, "description": null, "uuid": "e57cbb8b-0b1c-425e-8acc-51ea23182366", "console_enabled": false, "extra": {}, "raid_config": {}, "provision_updated_at": null, "power_state": null, "last_error": null, "target_raid_config": {}, "network_interface": null, "inspection_started_at": null, "inspection_finished_at": null, "maintenance": false, "conductor": null, "power_interface": null, "driver": "fake-hardware", "updated_at": null, "volume": [{"href": "http://localhost/v1/nodes/e57cbb8b-0b1c-425e-8acc-51ea23182366/volume", "rel": "self"}, {"href": "http://localhost/nodes/e57cbb8b-0b1c-425e-8acc-51ea23182366/volume", "rel": "bookmark"}], "raid_interface": null, "rescue_interface": null, "boot_interface": null, "reservation": null, "management_interface": null, "properties": {"memory_mb": "4096", "cpu_arch": "x86_64", "local_gb": "10", "cpus": "8"}, "bios_interface": null, "instance_uuid": null, "name": null, "driver_info": {"fake_password": "******", "foo": "bar"}, "resource_class": null, "fault": null, "created_at": "2019-06-06T07:02:15.039782+00:00", "portgroups": [{"href": "http://localhost/v1/nodes/e57cbb8b-0b1c-425e-8acc-51ea23182366/portgroups", "rel": "self"}, {"href": "http://localhost/nodes/e57cbb8b-0b1c-425e-8acc-51ea23182366/portgroups", "rel": "bookmark"}], "deploy_interface": null, "ports": [{"href": "http://localhost/v1/nodes/e57cbb8b-0b1c-425e-8acc-51ea23182366/ports", "rel": "self"}, {"href": "http://localhost/nodes/e57cbb8b-0b1c-425e-8acc-51ea23182366/ports", "rel": "bookmark"}], "console_interface": null, "protected": false, "driver_internal_info": {"private_state": "secret value"}, "chassis_uuid": null, "owner": null, "instance_info": {"foo": "bar", "image_url": "******", "configdrive": "******"}, "allocation_uuid": null} {6} ironic.tests.unit.api.controllers.v1.test_node.TestPatch.test_reset_network_interface [0.123699s] ... ok PATCH: /v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 [{'path': '/physical_network', 'value': 'physnet2', 'op': 'replace'}] GOT:Response: 406 Not Acceptable Content-Type: application/json Openstack-Request-Id: req-b167178a-8097-407d-b631-93b0144c87bf X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.34 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Request not acceptable.\"}"} {21} ironic.tests.unit.api.controllers.v1.test_port.TestPatch.test_replace_physical_network_upgrade [0.080041s] ... ok POST: /v1/portgroups {'uuid': '6eb02b44-18a3-4659-8c0b-8d2802581ae4', 'extra': {}, 'standalone_ports_supported': True, 'address': '52:54:00:cf:2d:31', 'name': 'fooname'} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-8aa6ab25-1a36-40e3-8c29-e5a03ebc3a45 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Invalid input for field/attribute node_uuid. Value: 'None'. Mandatory field missing.\"}"} {2} ironic.tests.unit.api.controllers.v1.test_portgroup.TestPost.test_create_portgroup_no_mandatory_field_node_uuid [0.058697s] ... ok {2} ironic.tests.unit.api.controllers.v1.test_root.TestCheckVersions.test_check_version_ok [0.018959s] ... ok {2} ironic.tests.unit.api.controllers.v1.test_types.TestLocalLinkConnectionType.test_local_link_connection_type_smart_nic_keys_mandatory [0.015909s] ... ok PUT: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/maintenance {'reason': 'fake_reason'} GOT:Response: 202 Accepted Openstack-Request-Id: req-9d2039ce-4f64-4b26-a6c9-4f7df10cc3c2 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {30} ironic.tests.unit.api.controllers.v1.test_node.TestPut.test_set_node_maintenance_mode [0.063677s] ... ok GET: /v1/nodes/e2583be7-d768-4724-9fcf-35d59dd0d274 {} GOT:{u'target_power_state': None, u'links': [{u'href': u'http://foo/v1/nodes/e2583be7-d768-4724-9fcf-35d59dd0d274', u'rel': u'self'}, {u'href': u'http://foo/nodes/e2583be7-d768-4724-9fcf-35d59dd0d274', u'rel': u'bookmark'}], u'target_provision_state': None, u'last_error': None, u'updated_at': None, u'maintenance_reason': None, u'provision_state': None, u'uuid': u'e2583be7-d768-4724-9fcf-35d59dd0d274', u'console_enabled': False, u'extra': {}, u'provision_updated_at': None, u'maintenance': False, u'power_state': None, u'driver': u'fake-hardware', u'reservation': None, u'properties': {u'memory_mb': u'4096', u'cpu_arch': u'x86_64', u'local_gb': u'10', u'cpus': u'8'}, u'instance_uuid': None, u'driver_info': {u'fake_password': u'******', u'foo': u'bar'}, u'created_at': u'2019-06-06T07:02:15.599181+00:00', u'ports': [{u'href': u'http://foo/v1/nodes/e2583be7-d768-4724-9fcf-35d59dd0d274/ports', u'rel': u'self'}, {u'href': u'http://foo/nodes/e2583be7-d768-4724-9fcf-35d59dd0d274/ports', u'rel': u'bookmark'}], u'chassis_uuid': None, u'instance_info': {u'foo': u'bar', u'image_url': u'******', u'configdrive': u'******'}} GET: /v1/nodes/e2583be7-d768-4724-9fcf-35d59dd0d274 {} GOT:{u'target_power_state': None, u'links': [{u'href': u'http://foo/v1/nodes/e2583be7-d768-4724-9fcf-35d59dd0d274', u'rel': u'self'}, {u'href': u'http://foo/nodes/e2583be7-d768-4724-9fcf-35d59dd0d274', u'rel': u'bookmark'}], u'target_provision_state': None, u'last_error': None, u'updated_at': None, u'maintenance_reason': None, u'provision_state': None, u'uuid': u'e2583be7-d768-4724-9fcf-35d59dd0d274', u'console_enabled': False, u'extra': {}, u'provision_updated_at': None, u'maintenance': False, u'power_state': None, u'driver': u'fake-hardware', u'reservation': None, u'properties': {u'memory_mb': u'4096', u'cpu_arch': u'x86_64', u'local_gb': u'10', u'cpus': u'8'}, u'instance_uuid': None, u'driver_info': {u'fake_password': u'******', u'foo': u'bar'}, u'created_at': u'2019-06-06T07:02:15.599181+00:00', u'ports': [{u'href': u'http://foo/v1/nodes/e2583be7-d768-4724-9fcf-35d59dd0d274/ports', u'rel': u'self'}, {u'href': u'http://foo/nodes/e2583be7-d768-4724-9fcf-35d59dd0d274/ports', u'rel': u'bookmark'}], u'chassis_uuid': None, u'instance_info': {u'foo': u'bar', u'image_url': u'******', u'configdrive': u'******'}} GET: /nodes/e2583be7-d768-4724-9fcf-35d59dd0d274 {} GOT:{u'target_power_state': None, u'links': [{u'href': u'http://foo/v1/nodes/e2583be7-d768-4724-9fcf-35d59dd0d274', u'rel': u'self'}, {u'href': u'http://foo/nodes/e2583be7-d768-4724-9fcf-35d59dd0d274', u'rel': u'bookmark'}], u'target_provision_state': None, u'last_error': None, u'updated_at': None, u'maintenance_reason': None, u'provision_state': None, u'uuid': u'e2583be7-d768-4724-9fcf-35d59dd0d274', u'console_enabled': False, u'extra': {}, u'provision_updated_at': None, u'maintenance': False, u'power_state': None, u'driver': u'fake-hardware', u'reservation': None, u'properties': {u'memory_mb': u'4096', u'cpu_arch': u'x86_64', u'local_gb': u'10', u'cpus': u'8'}, u'instance_uuid': None, u'driver_info': {u'fake_password': u'******', u'foo': u'bar'}, u'created_at': u'2019-06-06T07:02:15.599181+00:00', u'ports': [{u'href': u'http://foo/v1/nodes/e2583be7-d768-4724-9fcf-35d59dd0d274/ports', u'rel': u'self'}, {u'href': u'http://foo/nodes/e2583be7-d768-4724-9fcf-35d59dd0d274/ports', u'rel': u'bookmark'}], u'chassis_uuid': None, u'instance_info': {u'foo': u'bar', u'image_url': u'******', u'configdrive': u'******'}} {14} ironic.tests.unit.api.controllers.v1.test_node.TestListNodes.test_links_public_url [0.149496s] ... ok POST: /v1/ports {'local_link_connection': {'switch_info': 'switch1', 'port_id': 'Ethernet3/1', 'switch_id': '0a:1b:2c:3d:4e:5f'}, 'node_uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123', 'uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c781', 'extra': {}, 'pxe_enabled': False, 'portgroup_uuid': '6eb02b44-18a3-4659-8c0b-8d2802581ae4', 'physical_network': None, 'address': '52:54:00:cf:2d:31', 'is_smartnic': False} GOT:Response: 201 Created Content-Type: application/json Location: http://localhost/v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 Openstack-Request-Id: req-42157074-9e3b-4712-8986-5c81271eb78f X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"local_link_connection": {"switch_info": "switch1", "port_id": "Ethernet3/1", "switch_id": "0a:1b:2c:3d:4e:5f"}, "node_uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "links": [{"href": "http://localhost/v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "rel": "self"}, {"href": "http://localhost/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "rel": "bookmark"}], "extra": {}, "pxe_enabled": false, "portgroup_uuid": "6eb02b44-18a3-4659-8c0b-8d2802581ae4", "updated_at": null, "physical_network": null, "address": "52:54:00:cf:2d:31", "internal_info": {}, "created_at": "2019-06-06T07:02:16.194437+00:00", "is_smartnic": false} {12} ironic.tests.unit.api.controllers.v1.test_port.TestPost.test_create_port_novif_nopxe_portgroup_standalone_ports [0.140349s] ... ok GET: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/volume/targets {} GOT:{u'targets': [{u'boot_index': 0, u'uuid': u'ef88ef1f-0484-41f3-aec9-ea6ab4a819d5', u'links': [{u'href': u'http://localhost/v1/volume/targets/ef88ef1f-0484-41f3-aec9-ea6ab4a819d5', u'rel': u'self'}, {u'href': u'http://localhost/volume/targets/ef88ef1f-0484-41f3-aec9-ea6ab4a819d5', u'rel': u'bookmark'}], u'volume_type': u'iscsi', u'node_uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'volume_id': u'12345678'}, {u'boot_index': 1, u'uuid': u'539bbf8d-4618-4202-9dd4-9fafc7c658de', u'links': [{u'href': u'http://localhost/v1/volume/targets/539bbf8d-4618-4202-9dd4-9fafc7c658de', u'rel': u'self'}, {u'href': u'http://localhost/volume/targets/539bbf8d-4618-4202-9dd4-9fafc7c658de', u'rel': u'bookmark'}], u'volume_type': u'iscsi', u'node_uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'volume_id': u'12345678'}]} GET: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/volume/targets?limit=1 {} GOT:{u'targets': [{u'boot_index': 0, u'uuid': u'ef88ef1f-0484-41f3-aec9-ea6ab4a819d5', u'links': [{u'href': u'http://localhost/v1/volume/targets/ef88ef1f-0484-41f3-aec9-ea6ab4a819d5', u'rel': u'self'}, {u'href': u'http://localhost/volume/targets/ef88ef1f-0484-41f3-aec9-ea6ab4a819d5', u'rel': u'bookmark'}], u'volume_type': u'iscsi', u'node_uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'volume_id': u'12345678'}], u'next': u'http://localhost/v1/volume/targets?sort_key=id&sort_dir=asc&limit=1&marker=ef88ef1f-0484-41f3-aec9-ea6ab4a819d5'} {11} ironic.tests.unit.api.controllers.v1.test_node.TestListNodes.test_volume_targets_subresource [0.178383s] ... ok PATCH: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123 [{'path': '/name', 'value': 'guido-van-rossum', 'op': 'replace'}] GOT:Response: 200 OK Content-Type: application/json Openstack-Request-Id: req-58240697-6abe-49ad-9498-030e7a6bb4bf X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.5 {"target_power_state": null, "links": [{"href": "http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "rel": "self"}, {"href": "http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "rel": "bookmark"}], "target_provision_state": null, "last_error": null, "updated_at": null, "maintenance_reason": null, "provision_state": "available", "uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "console_enabled": false, "extra": {}, "provision_updated_at": null, "maintenance": false, "power_state": null, "driver": "fake-hardware", "reservation": null, "properties": {"memory_mb": "4096", "cpu_arch": "x86_64", "local_gb": "10", "cpus": "8"}, "instance_uuid": null, "name": "node-57.1", "driver_info": {"fake_password": "******", "foo": "bar"}, "created_at": "2019-06-06T07:02:15.526594+00:00", "instance_info": {"foo": "bar", "image_url": "******", "configdrive": "******"}, "driver_internal_info": {"private_state": "secret value"}, "chassis_uuid": "e74c40e0-d825-11e2-a28f-0800200c9a66", "ports": [{"href": "http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports", "rel": "self"}, {"href": "http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports", "rel": "bookmark"}]} PATCH: /v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 [{'path': '/local_link_connection/switch_id', 'value': 'aa:bb:cc:dd:ee:ff', 'op': 'replace'}] GOT:Response: 200 OK Content-Type: application/json Openstack-Request-Id: req-130ed8d4-556d-4945-af73-f99fa31b23a3 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.19 {"local_link_connection": {"switch_info": "switch1", "port_id": "Ethernet3/1", "switch_id": "aa:bb:cc:dd:ee:ff"}, "node_uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "links": [{"href": "http://localhost/v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "rel": "self"}, {"href": "http://localhost/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "rel": "bookmark"}], "extra": {}, "pxe_enabled": true, "created_at": "2019-06-06T07:02:16.663177+00:00", "updated_at": "2019-06-06T07:02:16.725603+00:00", "address": "52:54:00:cf:2d:31", "internal_info": {"bar": "buzz"}} {19} ironic.tests.unit.api.controllers.v1.test_node.TestPatch.test_patch_name_replace_ok [0.100000s] ... ok {17} ironic.tests.unit.api.controllers.v1.test_port.TestPatch.test_replace_local_link_connection [0.124341s] ... ok POST: /v1/ports {'local_link_connection': {'switch_info': 'switch1', 'port_id': 'Ethernet3/1', 'switch_id': '0a:1b:2c:3d:4e:5f'}, 'node_uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123', 'uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c781', 'extra': {}, 'pxe_enabled': True, 'portgroup_uuid': '6eb02b44-18a3-4659-8c0b-8d2802581ae4', 'physical_network': 'ppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppp', 'address': '52:54:00:cf:2d:31', 'is_smartnic': False} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-f1d81569-23be-4467-9025-6740f305304e X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Invalid input for field/attribute physical_network. Value: 'ppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppp'. Value should have a maximum character requirement of 64\"}"} {5} ironic.tests.unit.api.controllers.v1.test_port.TestPost.test_create_port_invalid_physnet_too_long [0.094667s] ... ok GET: /v1/volume/connectors/1be26c0b-03f2-4d2e-ae87-c02d7f33c781?detail=True {} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-d3682338-f747-40b5-8a44-a4a45be1c51f X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Unknown argument: \\\"detail\\\"\"}"} {2} ironic.tests.unit.api.controllers.v1.test_volume_connector.TestListVolumeConnectors.test_detail_against_single [0.065580s] ... ok DELETE: /v1/portgroups/52:54:00:cf:2d:31 GOT:Response: 400 Bad Request Content-Type: application/json {"error_message": "{\"code\": 400, \"description\": \"Expected a logical name or UUID but received 52:54:00:cf:2d:31.\", \"title\": \"Bad Request\"}"} {12} ironic.tests.unit.api.controllers.v1.test_portgroup.TestDelete.test_delete_portgroup_byaddress [0.054898s] ... ok PATCH: /v1/nodes/8ef7ef3b-0f84-4d7c-a3b7-581756799ceb [{'path': '/extra/foo', 'value': 'bar', 'op': 'add'}] GOT:Response: 200 OK Content-Type: application/json Openstack-Request-Id: req-5a963a9b-bd20-4948-b6e8-f2d429acd7e9 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"target_power_state": null, "links": [{"href": "http://localhost/v1/nodes/8ef7ef3b-0f84-4d7c-a3b7-581756799ceb", "rel": "self"}, {"href": "http://localhost/nodes/8ef7ef3b-0f84-4d7c-a3b7-581756799ceb", "rel": "bookmark"}], "target_provision_state": "active", "last_error": null, "updated_at": null, "maintenance_reason": null, "provision_state": "deploy failed", "uuid": "8ef7ef3b-0f84-4d7c-a3b7-581756799ceb", "console_enabled": false, "extra": {}, "provision_updated_at": null, "maintenance": false, "power_state": null, "driver": "fake-hardware", "reservation": null, "properties": {"memory_mb": "4096", "cpu_arch": "x86_64", "local_gb": "10", "cpus": "8"}, "instance_uuid": null, "driver_info": {"fake_password": "******", "foo": "bar"}, "created_at": "2019-06-06T07:02:15.179007+00:00", "ports": [{"href": "http://localhost/v1/nodes/8ef7ef3b-0f84-4d7c-a3b7-581756799ceb/ports", "rel": "self"}, {"href": "http://localhost/nodes/8ef7ef3b-0f84-4d7c-a3b7-581756799ceb/ports", "rel": "bookmark"}], "chassis_uuid": null, "instance_info": {"foo": "bar", "image_url": "******", "configdrive": "******"}} {8} ironic.tests.unit.api.controllers.v1.test_node.TestPatch.test_add_state_in_deployfail [0.120787s] ... ok PUT: /v1/nodes/node-39/traits {'trait': 'CUSTOM_3'} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-f6c83f69-678d-4a2b-baf3-e0f3d8ca14d5 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.37 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"No body should be provided when adding a trait\"}"} {30} ironic.tests.unit.api.controllers.v1.test_node.TestTraits.test_no_add_single_trait_via_body [0.089302s] ... ok PATCH: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123 [{'path': '/instance_uuid', 'value': 'aaaaaaaa-1111-bbbb-2222-cccccccccccc', 'op': 'add'}] GOT:Response: 200 OK Content-Type: application/json Openstack-Request-Id: req-a9f7168e-a307-4ffe-baa4-bc700b10451b X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"target_power_state": null, "links": [{"href": "http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "rel": "self"}, {"href": "http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "rel": "bookmark"}], "target_provision_state": null, "last_error": null, "updated_at": null, "maintenance_reason": null, "provision_state": null, "uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "console_enabled": false, "extra": {}, "provision_updated_at": null, "maintenance": false, "power_state": null, "driver": "fake-hardware", "reservation": null, "properties": {"memory_mb": "4096", "cpu_arch": "x86_64", "local_gb": "10", "cpus": "8"}, "instance_uuid": null, "driver_info": {"fake_password": "******", "foo": "bar"}, "created_at": "2019-06-06T07:02:15.460672+00:00", "ports": [{"href": "http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports", "rel": "self"}, {"href": "http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports", "rel": "bookmark"}], "chassis_uuid": "e74c40e0-d825-11e2-a28f-0800200c9a66", "instance_info": {"foo": "bar", "image_url": "******", "configdrive": "******"}} {20} ironic.tests.unit.api.controllers.v1.test_node.TestPatch.test_add_root [0.131724s] ... ok PATCH: /v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 [{'path': '/address', 'value': 'aa:bb:cc:dd:ee:ff', 'op': 'replace'}] GOT:Response: 200 OK Content-Type: application/json Openstack-Request-Id: req-6d3f3306-4fce-4f34-afa1-b17e71a14237 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"node_uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "links": [{"href": "http://localhost/v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "rel": "self"}, {"href": "http://localhost/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "rel": "bookmark"}], "extra": {}, "created_at": "2019-06-06T07:02:16.252031+00:00", "updated_at": "2019-06-06T07:02:16.315091+00:00", "address": "aa:bb:cc:dd:ee:ff"} {28} ironic.tests.unit.api.controllers.v1.test_port.TestPatch.test_replace_singular [0.128868s] ... ok PATCH: /v1/nodes/deadbeef-0000-1111-2222-333333333333 [{'path': '/name', 'value': 'guido-van-rossum', 'op': 'add'}] GOT:Response: 200 OK Content-Type: application/json Openstack-Request-Id: req-10a5e484-f011-430d-8330-ba70c8d150aa X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.5 {"target_power_state": null, "links": [{"href": "http://localhost/v1/nodes/deadbeef-0000-1111-2222-333333333333", "rel": "self"}, {"href": "http://localhost/nodes/deadbeef-0000-1111-2222-333333333333", "rel": "bookmark"}], "target_provision_state": null, "last_error": null, "updated_at": null, "maintenance_reason": null, "provision_state": "available", "uuid": "deadbeef-0000-1111-2222-333333333333", "console_enabled": false, "extra": {}, "provision_updated_at": null, "maintenance": false, "power_state": null, "driver": "fake-hardware", "reservation": null, "properties": {"memory_mb": "4096", "cpu_arch": "x86_64", "local_gb": "10", "cpus": "8"}, "instance_uuid": null, "name": null, "driver_info": {"fake_password": "******", "foo": "bar"}, "created_at": "2019-06-06T07:02:15.547268+00:00", "instance_info": {"foo": "bar", "image_url": "******", "configdrive": "******"}, "driver_internal_info": {"private_state": "secret value"}, "chassis_uuid": "e74c40e0-d825-11e2-a28f-0800200c9a66", "ports": [{"href": "http://localhost/v1/nodes/deadbeef-0000-1111-2222-333333333333/ports", "rel": "self"}, {"href": "http://localhost/nodes/deadbeef-0000-1111-2222-333333333333/ports", "rel": "bookmark"}]} {10} ironic.tests.unit.api.controllers.v1.test_node.TestPatch.test_patch_add_name_ok [0.119773s] ... ok GET: /v1/nodes?fault=power failure {} GOT:{u'nodes': [{u'instance_uuid': None, u'maintenance': False, u'links': [{u'href': u'http://localhost/v1/nodes/945e601c-aad9-47b3-a065-d60f62aaeb61', u'rel': u'self'}, {u'href': u'http://localhost/nodes/945e601c-aad9-47b3-a065-d60f62aaeb61', u'rel': u'bookmark'}], u'name': None, u'power_state': None, u'provision_state': u'available', u'uuid': u'945e601c-aad9-47b3-a065-d60f62aaeb61'}]} GET: /v1/nodes?fault=clean failure {} GOT:{u'nodes': [{u'instance_uuid': None, u'maintenance': False, u'links': [{u'href': u'http://localhost/v1/nodes/bc15592f-68cd-4402-8951-5289ae553808', u'rel': u'self'}, {u'href': u'http://localhost/nodes/bc15592f-68cd-4402-8951-5289ae553808', u'rel': u'bookmark'}], u'name': None, u'power_state': None, u'provision_state': u'available', u'uuid': u'bc15592f-68cd-4402-8951-5289ae553808'}]} GET: /v1/nodes/detail?fault=power failure {} GOT:{u'nodes': [{u'target_power_state': None, u'inspect_interface': None, u'links': [{u'href': u'http://localhost/v1/nodes/945e601c-aad9-47b3-a065-d60f62aaeb61', u'rel': u'self'}, {u'href': u'http://localhost/nodes/945e601c-aad9-47b3-a065-d60f62aaeb61', u'rel': u'bookmark'}], u'target_provision_state': None, u'last_error': None, u'storage_interface': None, u'updated_at': None, u'maintenance_reason': None, u'states': [{u'href': u'http://localhost/v1/nodes/945e601c-aad9-47b3-a065-d60f62aaeb61/states', u'rel': u'self'}, {u'href': u'http://localhost/nodes/945e601c-aad9-47b3-a065-d60f62aaeb61/states', u'rel': u'bookmark'}], u'traits': [], u'provision_state': u'available', u'clean_step': {}, u'vendor_interface': None, u'uuid': u'945e601c-aad9-47b3-a065-d60f62aaeb61', u'console_enabled': False, u'extra': {}, u'raid_config': {}, u'provision_updated_at': None, u'power_state': None, u'target_raid_config': {}, u'network_interface': None, u'inspection_started_at': None, u'inspection_finished_at': None, u'maintenance': False, u'driver': u'fake-hardware', u'power_interface': None, u'volume': [{u'href': u'http://localhost/v1/nodes/945e601c-aad9-47b3-a065-d60f62aaeb61/volume', u'rel': u'self'}, {u'href': u'http://localhost/nodes/945e601c-aad9-47b3-a065-d60f62aaeb61/volume', u'rel': u'bookmark'}], u'raid_interface': None, u'rescue_interface': None, u'boot_interface': None, u'reservation': None, u'management_interface': None, u'properties': {u'memory_mb': u'4096', u'cpu_arch': u'x86_64', u'local_gb': u'10', u'cpus': u'8'}, u'bios_interface': None, u'instance_uuid': None, u'name': None, u'driver_info': {u'fake_password': u'******', u'foo': u'bar'}, u'resource_class': None, u'fault': u'power failure', u'created_at': u'2019-06-06T07:02:15.665154+00:00', u'portgroups': [{u'href': u'http://localhost/v1/nodes/945e601c-aad9-47b3-a065-d60f62aaeb61/portgroups', u'rel': u'self'}, {u'href': u'http://localhost/nodes/945e601c-aad9-47b3-a065-d60f62aaeb61/portgroups', u'rel': u'bookmark'}], u'deploy_interface': None, u'instance_info': {u'foo': u'bar', u'image_url': u'******', u'configdrive': u'******'}, u'console_interface': None, u'driver_internal_info': {u'private_state': u'secret value'}, u'chassis_uuid': None, u'ports': [{u'href': u'http://localhost/v1/nodes/945e601c-aad9-47b3-a065-d60f62aaeb61/ports', u'rel': u'self'}, {u'href': u'http://localhost/nodes/945e601c-aad9-47b3-a065-d60f62aaeb61/ports', u'rel': u'bookmark'}]}]} GET: /v1/nodes/detail?fault=clean failure {} GOT:{u'nodes': [{u'target_power_state': None, u'inspect_interface': None, u'links': [{u'href': u'http://localhost/v1/nodes/bc15592f-68cd-4402-8951-5289ae553808', u'rel': u'self'}, {u'href': u'http://localhost/nodes/bc15592f-68cd-4402-8951-5289ae553808', u'rel': u'bookmark'}], u'target_provision_state': None, u'last_error': None, u'storage_interface': None, u'updated_at': None, u'maintenance_reason': None, u'states': [{u'href': u'http://localhost/v1/nodes/bc15592f-68cd-4402-8951-5289ae553808/states', u'rel': u'self'}, {u'href': u'http://localhost/nodes/bc15592f-68cd-4402-8951-5289ae553808/states', u'rel': u'bookmark'}], u'traits': [], u'provision_state': u'available', u'clean_step': {}, u'vendor_interface': None, u'uuid': u'bc15592f-68cd-4402-8951-5289ae553808', u'console_enabled': False, u'extra': {}, u'raid_config': {}, u'provision_updated_at': None, u'power_state': None, u'target_raid_config': {}, u'network_interface': None, u'inspection_started_at': None, u'inspection_finished_at': None, u'maintenance': False, u'driver': u'fake-hardware', u'power_interface': None, u'volume': [{u'href': u'http://localhost/v1/nodes/bc15592f-68cd-4402-8951-5289ae553808/volume', u'rel': u'self'}, {u'href': u'http://localhost/nodes/bc15592f-68cd-4402-8951-5289ae553808/volume', u'rel': u'bookmark'}], u'raid_interface': None, u'rescue_interface': None, u'boot_interface': None, u'reservation': None, u'management_interface': None, u'properties': {u'memory_mb': u'4096', u'cpu_arch': u'x86_64', u'local_gb': u'10', u'cpus': u'8'}, u'bios_interface': None, u'instance_uuid': None, u'name': None, u'driver_info': {u'fake_password': u'******', u'foo': u'bar'}, u'resource_class': None, u'fault': u'clean failure', u'created_at': u'2019-06-06T07:02:15.676429+00:00', u'portgroups': [{u'href': u'http://localhost/v1/nodes/bc15592f-68cd-4402-8951-5289ae553808/portgroups', u'rel': u'self'}, {u'href': u'http://localhost/nodes/bc15592f-68cd-4402-8951-5289ae553808/portgroups', u'rel': u'bookmark'}], u'deploy_interface': None, u'instance_info': {u'foo': u'bar', u'image_url': u'******', u'configdrive': u'******'}, u'console_interface': None, u'driver_internal_info': {u'private_state': u'secret value'}, u'chassis_uuid': None, u'ports': [{u'href': u'http://localhost/v1/nodes/bc15592f-68cd-4402-8951-5289ae553808/ports', u'rel': u'self'}, {u'href': u'http://localhost/nodes/bc15592f-68cd-4402-8951-5289ae553808/ports', u'rel': u'bookmark'}]}]} {16} ironic.tests.unit.api.controllers.v1.test_node.TestListNodes.test_get_nodes_by_fault [0.365137s] ... ok POST: /v1/ports {'local_link_connection': {'switch_info': 'switch1', 'port_id': 'Ethernet3/1', 'switch_id': '0a:1b:2c:3d:4e:5f'}, 'node_uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123', 'uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c781', 'extra': {}, 'pxe_enabled': False, 'portgroup_uuid': '6eb02b44-18a3-4659-8c0b-8d2802581ae4', 'physical_network': None, 'address': '52:54:00:cf:2d:31', 'is_smartnic': False} GOT:Response: 201 Created Content-Type: application/json Location: http://localhost/v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 Openstack-Request-Id: req-15c4e6dd-c15c-4810-b09d-1b34734942d2 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"local_link_connection": {"switch_info": "switch1", "port_id": "Ethernet3/1", "switch_id": "0a:1b:2c:3d:4e:5f"}, "node_uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "links": [{"href": "http://localhost/v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "rel": "self"}, {"href": "http://localhost/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "rel": "bookmark"}], "extra": {}, "pxe_enabled": false, "portgroup_uuid": "6eb02b44-18a3-4659-8c0b-8d2802581ae4", "updated_at": null, "physical_network": null, "address": "52:54:00:cf:2d:31", "internal_info": {}, "created_at": "2019-06-06T07:02:16.582093+00:00", "is_smartnic": false} {9} ironic.tests.unit.api.controllers.v1.test_port.TestPost.test_create_port_novif_nopxe_portgroup_nostandalone_ports [0.134739s] ... ok POST: /v1/ports {'local_link_connection': {'switch_info': 'switch1', 'port_id': 'Ethernet3/1', 'switch_id': '0a:1b:2c:3d:4e:5f'}, 'node_uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123', 'uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c781', 'extra': {}, 'pxe_enabled': True, 'portgroup_uuid': '6eb02b44-18a3-4659-8c0b-8d2802581ae4', 'physical_network': None, 'address': '52:54:00:cf:2d:31', 'is_smartnic': False} GOT:Response: 409 Conflict Content-Type: application/json Openstack-Request-Id: req-70771cf8-b52a-46ca-b775-d05e41c68c55 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Port group 6eb02b44-18a3-4659-8c0b-8d2802581ae4 doesn't support standalone ports. This port cannot be created as a member of that port group because either 'extra/vif_port_id' was specified or 'pxe_enabled' was set to True.\"}"} PATCH: /v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 [{'path': '/address', 'value': 'AA:BB:CC:DD:EE:FF', 'op': 'replace'}] GOT:Response: 200 OK Content-Type: application/json Openstack-Request-Id: req-d05cb433-21e8-4fb0-b77e-9b648eb9e406 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"node_uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "links": [{"href": "http://localhost/v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "rel": "self"}, {"href": "http://localhost/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "rel": "bookmark"}], "extra": {}, "created_at": "2019-06-06T07:02:16.020232+00:00", "updated_at": "2019-06-06T07:02:16.086907+00:00", "address": "aa:bb:cc:dd:ee:ff"} POST: /v1/nodes {'instance_uuid': None, 'uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123', 'driver_info': {'fake_password': 'fakepass', 'foo': 'bar'}, 'extra': {}, 'driver': 'fake-hardware', 'properties': {'memory_mb': '4096', 'cpu_arch': 'x86_64', 'local_gb': '10', 'cpus': '8'}, 'maintenance': False, 'owner': 'bob', 'chassis_uuid': 'e74c40e0-d825-11e2-a28f-0800200c9a66', 'instance_info': {'foo': 'bar', 'image_url': 'http://example.com/test_image_url', 'configdrive': 'TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQ='}} GOT:Response: 406 Not Acceptable Content-Type: application/json Openstack-Request-Id: req-befa9e89-a72b-4b84-ade1-1b90748491cc X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.32 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Request not acceptable.\"}"} {21} ironic.tests.unit.api.controllers.v1.test_port.TestPatch.test_update_port_address_normalized [0.128331s] ... ok {24} ironic.tests.unit.api.controllers.v1.test_port.TestPost.test_create_port_novif_pxe_portgroup_nostandalone_ports [0.104753s] ... ok {6} ironic.tests.unit.api.controllers.v1.test_node.TestPost.test_create_node_owner_old_api_version [0.058094s] ... ok PATCH: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123 [{'path': '/name', 'value': 'node-0', 'op': 'add'}, {'path': '/name', 'value': 'Guido Van Error', 'op': 'replace'}] GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-b18169ad-209d-4361-a2e9-886b37a49bcd X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.5 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Node 1be26c0b-03f2-4d2e-ae87-c02d7f33c123: Cannot change name to invalid name 'Guido Van Error'\"}"} {11} ironic.tests.unit.api.controllers.v1.test_node.TestPatch.test_patch_update_name_twice_second_invalid [0.085166s] ... ok PATCH: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123 [{'path': '/extra/non-existent', 'op': 'remove'}] GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-9c9747d2-3f35-4ce6-afc4-98036f99db09 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Couldn't apply patch '{'path': '/extra/non-existent', 'op': 'remove'}'. Reason: can't remove non-existent object 'non-existent'\"}"} {19} ironic.tests.unit.api.controllers.v1.test_node.TestPatch.test_remove_non_existent_property_fail [0.086936s] ... ok GET: /v1/nodes {} GOT:{u'nodes': [{u'instance_uuid': None, u'maintenance': False, u'links': [{u'href': u'http://localhost/v1/nodes/ab9e482e-ca15-4b64-95a2-d1dcb860cfdd', u'rel': u'self'}, {u'href': u'http://localhost/nodes/ab9e482e-ca15-4b64-95a2-d1dcb860cfdd', u'rel': u'bookmark'}], u'power_state': None, u'provision_state': None, u'uuid': u'ab9e482e-ca15-4b64-95a2-d1dcb860cfdd'}, {u'instance_uuid': None, u'maintenance': False, u'links': [{u'href': u'http://localhost/v1/nodes/7fccf8d5-1cfb-4c6e-b9d9-4ff66e32852f', u'rel': u'self'}, {u'href': u'http://localhost/nodes/7fccf8d5-1cfb-4c6e-b9d9-4ff66e32852f', u'rel': u'bookmark'}], u'power_state': None, u'provision_state': None, u'uuid': u'7fccf8d5-1cfb-4c6e-b9d9-4ff66e32852f'}, {u'instance_uuid': None, u'maintenance': False, u'links': [{u'href': u'http://localhost/v1/nodes/2fcd839e-725d-4637-b10a-4a9b6a7345ca', u'rel': u'self'}, {u'href': u'http://localhost/nodes/2fcd839e-725d-4637-b10a-4a9b6a7345ca', u'rel': u'bookmark'}], u'power_state': None, u'provision_state': None, u'uuid': u'2fcd839e-725d-4637-b10a-4a9b6a7345ca'}, {u'instance_uuid': None, u'maintenance': False, u'links': [{u'href': u'http://localhost/v1/nodes/4b209c67-f4d3-413e-84b4-63685881a6b4', u'rel': u'self'}, {u'href': u'http://localhost/nodes/4b209c67-f4d3-413e-84b4-63685881a6b4', u'rel': u'bookmark'}], u'power_state': None, u'provision_state': None, u'uuid': u'4b209c67-f4d3-413e-84b4-63685881a6b4'}, {u'instance_uuid': None, u'maintenance': False, u'links': [{u'href': u'http://localhost/v1/nodes/dd01aecf-e022-40ea-a020-ace4762df730', u'rel': u'self'}, {u'href': u'http://localhost/nodes/dd01aecf-e022-40ea-a020-ace4762df730', u'rel': u'bookmark'}], u'power_state': None, u'provision_state': None, u'uuid': u'dd01aecf-e022-40ea-a020-ace4762df730'}]} {25} ironic.tests.unit.api.controllers.v1.test_node.TestListNodes.test_many [0.214180s] ... ok POST: /v1/ports {'local_link_connection': {'switch_info': 'switch1', 'port_id': 'Ethernet3/1', 'switch_id': '0a:1b:2c:3d:4e:5f'}, 'node_uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123', 'uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c781', 'extra': {}, 'pxe_enabled': True, 'portgroup_uuid': '6eb02b44-18a3-4659-8c0b-8d2802581ae4', 'physical_network': None, 'address': '52:54:00:cf:2d:31', 'is_smartnic': False} GOT:Response: 406 Not Acceptable Content-Type: application/json Openstack-Request-Id: req-743e88d0-9f29-4a5b-bd3b-21541d733183 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Request not acceptable.\"}"} {17} ironic.tests.unit.api.controllers.v1.test_port.TestPost.test_create_port_portgroup_cannot_send_create_port [0.094359s] ... ok PUT: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states/provision {'target': 'unrescue'} GOT:Response: 409 Conflict Content-Type: application/json Openstack-Request-Id: req-e1c3dde7-5a20-479f-9052-15a8a3eaae34 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.38 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Node 1be26c0b-03f2-4d2e-ae87-c02d7f33c123 is locked by host fake-host, please retry after the current operation is completed.\"}"} PUT: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states/provision {'target': 'unrescue'} GOT:Response: 409 Conflict Content-Type: application/json Openstack-Request-Id: req-c4dae396-418e-451f-8407-146ce73373e7 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.38 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Node 1be26c0b-03f2-4d2e-ae87-c02d7f33c123 is locked by host fake-host, please retry after the current operation is completed.\"}"} PUT: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states/provision {'target': 'unrescue'} GOT:Response: 409 Conflict Content-Type: application/json Openstack-Request-Id: req-589ba86d-00b6-4e6e-b9c7-2459e6f1a6e2 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.38 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Node 1be26c0b-03f2-4d2e-ae87-c02d7f33c123 is locked by host fake-host, please retry after the current operation is completed.\"}"} PUT: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states/provision {'target': 'unrescue'} GOT:Response: 409 Conflict Content-Type: application/json Openstack-Request-Id: req-4b487ada-e38b-4b73-ad7e-7932bc1accc2 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.38 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Node 1be26c0b-03f2-4d2e-ae87-c02d7f33c123 is locked by host fake-host, please retry after the current operation is completed.\"}"} PUT: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states/provision {'target': 'unrescue'} GOT:Response: 409 Conflict Content-Type: application/json Openstack-Request-Id: req-37e5c270-9794-490a-8ea3-e9ac1e1c99b4 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.38 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Node 1be26c0b-03f2-4d2e-ae87-c02d7f33c123 is locked by host fake-host, please retry after the current operation is completed.\"}"} {23} ironic.tests.unit.api.controllers.v1.test_node.TestPut.test_provision_unrescue_in_disallowed_states [0.291427s] ... ok GET: /v1/ports/detail?node_uuid=1be26c0b-03f2-4d2e-ae87-c02d7f33c123&node=node-name {} GOT:{u'ports': [{u'node_uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c781', u'links': [{u'href': u'http://localhost/v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781', u'rel': u'self'}, {u'href': u'http://localhost/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781', u'rel': u'bookmark'}], u'extra': {}, u'created_at': u'2019-06-06T07:02:15.867752+00:00', u'updated_at': None, u'address': u'52:54:00:cf:2d:31'}]} {30} ironic.tests.unit.api.controllers.v1.test_port.TestListPorts.test_get_all_by_node_uuid_and_name [0.091475s] ... ok PATCH: /v1/nodes/87b93a75-a611-490e-900e-3b14c5b45679 [{'path': '/allocation_uuid', 'value': 'caf896c1-1d1a-4830-9356-06b9fbf2e52a', 'op': 'replace'}] GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-8ac7f6f0-ecfd-42f9-9981-d3d16feae0de X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"'/allocation_uuid' is an internal attribute and can not be updated\"}"} {8} ironic.tests.unit.api.controllers.v1.test_node.TestPatch.test_patch_allocation_forbidden [0.095229s] ... ok PATCH: /v1/nodes/90acf944-1728-4aa0-a20f-60c550d16a5c [{'path': '/deploy_step', 'value': 'deploy this', 'op': 'replace'}] GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-933ba53a-1629-41df-a298-101d807537a6 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.44 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"'/deploy_step' is an internal attribute and can not be updated\"}"} {20} ironic.tests.unit.api.controllers.v1.test_node.TestPatch.test_patch_deploy_step_forbidden [0.085336s] ... ok PATCH: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123 [{'path': '/chassis_uuid', 'op': 'remove'}] GOT:Response: 200 OK Content-Type: application/json Openstack-Request-Id: req-974793a0-08b2-44da-8b8b-072b55e983a5 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.25 {"target_power_state": null, "links": [{"href": "http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "rel": "self"}, {"href": "http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "rel": "bookmark"}], "target_provision_state": null, "last_error": null, "updated_at": null, "maintenance_reason": null, "states": [{"href": "http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states", "rel": "self"}, {"href": "http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states", "rel": "bookmark"}], "provision_state": "available", "clean_step": {}, "uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "console_enabled": false, "extra": {}, "raid_config": {}, "provision_updated_at": null, "power_state": null, "target_raid_config": {}, "network_interface": null, "inspection_started_at": null, "inspection_finished_at": null, "maintenance": false, "driver": "fake-hardware", "reservation": null, "properties": {"memory_mb": "4096", "cpu_arch": "x86_64", "local_gb": "10", "cpus": "8"}, "instance_uuid": null, "name": "node-57.1", "driver_info": {"fake_password": "******", "foo": "bar"}, "resource_class": null, "created_at": "2019-06-06T07:02:15.693200+00:00", "portgroups": [{"href": "http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/portgroups", "rel": "self"}, {"href": "http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/portgroups", "rel": "bookmark"}], "ports": [{"href": "http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports", "rel": "self"}, {"href": "http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports", "rel": "bookmark"}], "driver_internal_info": {"private_state": "secret value"}, "chassis_uuid": "e74c40e0-d825-11e2-a28f-0800200c9a66", "instance_info": {"foo": "bar", "image_url": "******", "configdrive": "******"}} {27} ironic.tests.unit.api.controllers.v1.test_node.TestPatch.test_remove_chassis_uuid [0.112827s] ... ok PUT: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states/provision {'clean_steps': [{'interface': 'deploy', 'step': 'upgrade_firmware'}], 'target': 'clean'} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-639c14c5-68ef-4287-a4a3-c43c4a043467 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.15 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"bad\"}"} {10} ironic.tests.unit.api.controllers.v1.test_node.TestPut.test_clean_check_steps_fail [0.111853s] ... ok PUT: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/management/inject_nmi {} GOT:Response: 404 Not Found Content-Type: application/json Openstack-Request-Id: req-c767d7b2-e15b-492d-aec3-4f7ef54e1ea9 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.28 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Resource could not be found.\"}"} {6} ironic.tests.unit.api.controllers.v1.test_node.TestPut.test_inject_nmi_not_allowed [0.068187s] ... ok GET: /v1/portgroups {} GOT:{u'portgroups': [{u'address': u'52:54:00:cf:2d:31', u'uuid': u'6eb02b44-18a3-4659-8c0b-8d2802581ae4', u'links': [{u'href': u'http://localhost/v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4', u'rel': u'self'}, {u'href': u'http://localhost/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4', u'rel': u'bookmark'}], u'name': u'fooname'}]} GET: /v1/portgroups?detail=False {} GOT:{u'portgroups': [{u'address': u'52:54:00:cf:2d:31', u'uuid': u'6eb02b44-18a3-4659-8c0b-8d2802581ae4', u'links': [{u'href': u'http://localhost/v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4', u'rel': u'self'}, {u'href': u'http://localhost/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4', u'rel': u'bookmark'}], u'name': u'fooname'}]} {12} ironic.tests.unit.api.controllers.v1.test_portgroup.TestListPortgroups.test_detail_query_false [0.113255s] ... ok PATCH: /v1/volume/connectors/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 [{'path': '/node_uuid', 'value': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123', 'op': 'add'}] GOT:Response: 200 OK Content-Type: application/json Openstack-Request-Id: req-8fa44809-a199-4732-94d9-173d75e21baf X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"node_uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "links": [{"href": "http://localhost/v1/volume/connectors/1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "rel": "self"}, {"href": "http://localhost/volume/connectors/1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "rel": "bookmark"}], "extra": {}, "created_at": "2019-06-06T07:02:16.291456+00:00", "updated_at": null, "connector_id": "iqn.2012-06.com.example:initiator", "type": "iqn"} {2} ironic.tests.unit.api.controllers.v1.test_volume_connector.TestPatch.test_add_node_uuid [0.120197s] ... ok PUT: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states/provision {'target': 'active'} GOT:Response: 202 Accepted Location: http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states Openstack-Request-Id: req-ddc67d55-dabb-472c-b723-40e348ee45bc X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {23} ironic.tests.unit.api.controllers.v1.test_node.TestPut.test_provision_with_deploy_after_deployfail [0.102350s] ... ok PATCH: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123 [{'path': '/chassis_id', 'op': 'remove'}] GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-be9fa7c8-d7b9-4a24-97fd-1de4df78c705 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Couldn't apply patch '{'path': '/chassis_id', 'op': 'remove'}'. Reason: can't remove non-existent object 'chassis_id'\"}"} {11} ironic.tests.unit.api.controllers.v1.test_node.TestPatch.test_remove_chassis_id [0.092394s] ... ok POST: /v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4/ports {'local_link_connection': {'switch_info': 'switch1', 'port_id': 'Ethernet3/1', 'switch_id': '0a:1b:2c:3d:4e:5f'}, 'node_uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123', 'uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c781', 'extra': {}, 'pxe_enabled': True, 'portgroup_uuid': '6eb02b44-18a3-4659-8c0b-8d2802581ae4', 'physical_network': None, 'address': '52:54:00:cf:2d:31', 'is_smartnic': False} GOT:Response: 403 Forbidden Content-Type: application/json Openstack-Request-Id: req-bb1c4dec-da79-44f7-9d26-ccdf78bffac8 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.24 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Operation not permitted.\"}"} {21} ironic.tests.unit.api.controllers.v1.test_port.TestPost.test_portgroups_subresource_post [0.092110s] ... ok PATCH: /v1/nodes/36f5a63b-477d-4161-9815-c5b56d1b7615 [{'path': '/conductor', 'value': 'why care', 'op': 'replace'}] GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-a23dc780-1526-44d1-a72a-0b34f947feb6 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.49 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"'/conductor' is an internal attribute and can not be updated\"}"} {8} ironic.tests.unit.api.controllers.v1.test_node.TestPatch.test_patch_conductor_forbidden [0.090725s] ... ok GET: /v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 {} GOT:{u'local_link_connection': {u'switch_info': u'switch1', u'port_id': u'Ethernet3/1', u'switch_id': u'0a:1b:2c:3d:4e:5f'}, u'node_uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c781', u'links': [{u'href': u'http://localhost/v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781', u'rel': u'self'}, {u'href': u'http://localhost/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781', u'rel': u'bookmark'}], u'extra': {}, u'pxe_enabled': True, u'portgroup_uuid': None, u'updated_at': None, u'address': u'52:54:00:cf:2d:31', u'internal_info': {u'bar': u'buzz'}, u'created_at': u'2019-06-06T07:02:15.961372+00:00'} {30} ironic.tests.unit.api.controllers.v1.test_port.TestListPorts.test_hide_fields_in_newer_versions_physical_network_upgrade [0.086038s] ... ok POST: /v1/ports {'local_link_connection': {'switch_info': 'switch1', 'port_id': 'Ethernet3/1', 'switch_id': '0a:1b:2c:3d:4e:5f'}, 'node_uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123', 'uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c781', 'extra': {'vif_port_id': 'd959d24b-30fc-4433-b870-d53dba5cb9e3'}, 'pxe_enabled': False, 'portgroup_uuid': '6eb02b44-18a3-4659-8c0b-8d2802581ae4', 'physical_network': None, 'address': '52:54:00:cf:2d:31', 'is_smartnic': False} GOT:Response: 201 Created Content-Type: application/json Location: http://localhost/v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 Openstack-Request-Id: req-a71c7478-5c91-4cd8-bc60-423666d3ac67 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"local_link_connection": {"switch_info": "switch1", "port_id": "Ethernet3/1", "switch_id": "0a:1b:2c:3d:4e:5f"}, "node_uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "links": [{"href": "http://localhost/v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "rel": "self"}, {"href": "http://localhost/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "rel": "bookmark"}], "extra": {"vif_port_id": "d959d24b-30fc-4433-b870-d53dba5cb9e3"}, "pxe_enabled": false, "portgroup_uuid": "6eb02b44-18a3-4659-8c0b-8d2802581ae4", "updated_at": null, "physical_network": null, "address": "52:54:00:cf:2d:31", "internal_info": {"tenant_vif_port_id": "d959d24b-30fc-4433-b870-d53dba5cb9e3"}, "created_at": "2019-06-06T07:02:15.945645+00:00", "is_smartnic": false} {5} ironic.tests.unit.api.controllers.v1.test_port.TestPost.test_create_port_vif_nopxe_portgroup_standalone_ports [0.140026s] ... ok PUT: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states/provision {'target': 'clean'} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-784eefca-504d-41b6-86ea-e092dd149397 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.15 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"\\\"clean_steps\\\" is required when setting target provision state to clean\"}"} {10} ironic.tests.unit.api.controllers.v1.test_node.TestPut.test_clean_no_cleansteps [0.102059s] ... ok PUT: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states/provision {'target': 'manageable'} GOT:Response: 409 Conflict Content-Type: application/json Openstack-Request-Id: req-3cc5914c-6072-4e09-a680-b2fcba9f1517 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Node 1be26c0b-03f2-4d2e-ae87-c02d7f33c123 is locked by host fake-host, please retry after the current operation is completed.\"}"} {6} ironic.tests.unit.api.controllers.v1.test_node.TestPut.test_inspect_already_in_progress [0.114078s] ... ok POST: /v1/portgroups {'node_uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123', 'uuid': '6eb02b44-18a3-4659-8c0b-8d2802581ae4', 'extra': {}, 'standalone_ports_supported': True, 'address': '52:54:00:cf:2d:31', 'name': 'fooname'} GOT:Response: 500 Internal Server Error Content-Type: application/json Openstack-Request-Id: req-88c221e5-8122-4596-9354-379531960259 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Server\", \"faultstring\": \"\"}"} {12} ironic.tests.unit.api.controllers.v1.test_portgroup.TestPost.test_create_portgroup_error [0.076981s] ... ok PATCH: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123 [{'path': '/console_enabled', 'value': True, 'op': 'replace'}] GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-c65e94b6-ebd5-47f7-885c-9e7874060652 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"'/console_enabled' is an internal attribute and can not be updated\"}"} {11} ironic.tests.unit.api.controllers.v1.test_node.TestPatch.test_replace_consoled_enabled [0.074280s] ... ok GET: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123 {} GOT:{u'target_power_state': None, u'inspect_interface': None, u'links': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'bookmark'}], u'target_provision_state': None, u'last_error': None, u'storage_interface': None, u'updated_at': None, u'maintenance_reason': None, u'states': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states', u'rel': u'bookmark'}], u'provision_state': u'available', u'clean_step': {}, u'vendor_interface': None, u'uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'console_enabled': False, u'extra': {}, u'raid_config': {}, u'provision_updated_at': None, u'power_state': None, u'target_raid_config': {}, u'network_interface': None, u'inspection_started_at': None, u'inspection_finished_at': None, u'maintenance': False, u'driver': u'fake-hardware', u'power_interface': None, u'volume': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/volume', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/volume', u'rel': u'bookmark'}], u'raid_interface': None, u'boot_interface': None, u'reservation': None, u'management_interface': None, u'properties': {u'memory_mb': u'4096', u'cpu_arch': u'x86_64', u'local_gb': u'10', u'cpus': u'8'}, u'instance_uuid': None, u'name': None, u'driver_info': {u'fake_password': u'******', u'foo': u'bar'}, u'resource_class': None, u'created_at': u'2019-06-06T07:02:15.739204+00:00', u'portgroups': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/portgroups', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/portgroups', u'rel': u'bookmark'}], u'deploy_interface': None, u'instance_info': {u'foo': u'bar', u'image_url': u'******', u'configdrive': u'******'}, u'console_interface': None, u'driver_internal_info': {u'private_state': u'secret value'}, u'chassis_uuid': None, u'ports': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'bookmark'}]} GET: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123 {} GOT:{u'target_power_state': None, u'inspect_interface': None, u'links': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'bookmark'}], u'target_provision_state': None, u'last_error': None, u'storage_interface': None, u'updated_at': None, u'maintenance_reason': None, u'states': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states', u'rel': u'bookmark'}], u'traits': [], u'provision_state': u'available', u'clean_step': {}, u'vendor_interface': None, u'uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'console_enabled': False, u'extra': {}, u'raid_config': {}, u'provision_updated_at': None, u'power_state': None, u'target_raid_config': {}, u'network_interface': None, u'inspection_started_at': None, u'inspection_finished_at': None, u'maintenance': False, u'driver': u'fake-hardware', u'power_interface': None, u'volume': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/volume', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/volume', u'rel': u'bookmark'}], u'raid_interface': None, u'boot_interface': None, u'reservation': None, u'management_interface': None, u'properties': {u'memory_mb': u'4096', u'cpu_arch': u'x86_64', u'local_gb': u'10', u'cpus': u'8'}, u'instance_uuid': None, u'name': None, u'driver_info': {u'fake_password': u'******', u'foo': u'bar'}, u'resource_class': None, u'created_at': u'2019-06-06T07:02:15.739204+00:00', u'portgroups': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/portgroups', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/portgroups', u'rel': u'bookmark'}], u'deploy_interface': None, u'instance_info': {u'foo': u'bar', u'image_url': u'******', u'configdrive': u'******'}, u'console_interface': None, u'driver_internal_info': {u'private_state': u'secret value'}, u'chassis_uuid': None, u'ports': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'bookmark'}]} {15} ironic.tests.unit.api.controllers.v1.test_node.TestListNodes.test_node_traits_hidden_in_lower_version [0.117333s] ... ok GET: /v1/portgroups/?fields=address,properties {} GOT:Response: 406 Not Acceptable Content-Type: application/json Openstack-Request-Id: req-7f1a7755-a797-4b85-8a8f-1285816e6598 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.25 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Request not acceptable.\"}"} {21} ironic.tests.unit.api.controllers.v1.test_portgroup.TestListPortgroups.test_get_collection_properties_field_lower_api_version [0.062334s] ... ok PUT: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states/raid {'logical_disks': [{'size_gb': 100, 'raid_level': 1}]} GOT:Response: 404 Not Found Content-Type: application/json Openstack-Request-Id: req-b2c92ad1-4b3c-4da4-98fc-9c9f7005c6e4 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.12 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Driver fake-hardware does not support raid (disabled or not implemented).\"}"} {23} ironic.tests.unit.api.controllers.v1.test_node.TestPut.test_put_raid_iface_not_supported [0.083670s] ... ok DELETE: /v1/nodes/node-39/traits GOT:Response: 204 No Content Openstack-Request-Id: req-964259d9-a12a-49f0-beba-be35224cac90 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.37 {10} ironic.tests.unit.api.controllers.v1.test_node.TestTraits.test_delete_all_traits_with_chassis [0.127294s] ... ok POST: /v1/nodes {'instance_uuid': None, 'uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123', 'driver_info': {'fake_password': 'fakepass', 'foo': 'bar'}, 'extra': {}, 'driver': 'fake-hardware', 'properties': {'memory_mb': '4096', 'cpu_arch': 'x86_64', 'local_gb': '10', 'cpus': '8'}, 'maintenance': False, 'chassis_uuid': 'e74c40e0-d825-11e2-a28f-0800200c9a66', 'instance_info': {'foo': 'bar', 'image_url': 'http://example.com/test_image_url', 'configdrive': 'TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQ='}} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-104a899c-a772-4a95-b765-41fc4cae3cd5 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Fake Error\"}"} {27} ironic.tests.unit.api.controllers.v1.test_node.TestPost.test_create_node_invalid_driver [0.059519s] ... ok POST: /v1/ports {'local_link_connection': {'switch_info': 'value3', 'port_id': 'Ethernet1/15', 'switch_id': '0a:1b:2c:3d:4e:5f'}, 'node_uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123', 'uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c781', 'extra': {}, 'pxe_enabled': True, 'portgroup_uuid': '6eb02b44-18a3-4659-8c0b-8d2802581ae4', 'physical_network': None, 'address': '52:54:00:cf:2d:31', 'is_smartnic': False} GOT:Response: 201 Created Content-Type: application/json Location: http://localhost/v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 Openstack-Request-Id: req-63e9e0dc-cc90-4e6e-8316-16e10de24f6f X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"local_link_connection": {"switch_info": "value3", "port_id": "Ethernet1/15", "switch_id": "0a:1b:2c:3d:4e:5f"}, "node_uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "links": [{"href": "http://localhost/v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "rel": "self"}, {"href": "http://localhost/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "rel": "bookmark"}], "extra": {}, "pxe_enabled": true, "portgroup_uuid": "6eb02b44-18a3-4659-8c0b-8d2802581ae4", "updated_at": null, "physical_network": null, "address": "52:54:00:cf:2d:31", "internal_info": {}, "created_at": "2019-06-06T07:02:16.443504+00:00", "is_smartnic": false} {28} ironic.tests.unit.api.controllers.v1.test_port.TestPost.test_create_port_local_link_connection_keys [0.133581s] ... ok PATCH: /v1/nodes/1bdeef53-9397-4d4a-8872-b00d2784ad58 [{'path': '/protected', 'value': True, 'op': 'replace'}] GOT:Response: 406 Not Acceptable Content-Type: application/json Openstack-Request-Id: req-4f4433ad-e9fa-4b88-909b-4d987302da13 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.47 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Request not acceptable.\"}"} {8} ironic.tests.unit.api.controllers.v1.test_node.TestPatch.test_update_protected_old_api [0.085359s] ... ok POST: /v1/ports {'local_link_connection': {'switch_info': 'switch1', 'port_id': 'Ethernet3/1', 'switch_id': '0a:1b:2c:3d:4e:5f'}, 'node_uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123', 'uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c781', 'extra': {'vif_port_id': 'foo'}, 'pxe_enabled': False, 'portgroup_uuid': '6eb02b44-18a3-4659-8c0b-8d2802581ae4', 'address': '52:54:00:cf:2d:31'} GOT:Response: 201 Created Content-Type: application/json Location: http://localhost/v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 Openstack-Request-Id: req-4f779040-ac40-4ca6-9d67-1418959c9387 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.27 {"local_link_connection": {"switch_info": "switch1", "port_id": "Ethernet3/1", "switch_id": "0a:1b:2c:3d:4e:5f"}, "node_uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "links": [{"href": "http://localhost/v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "rel": "self"}, {"href": "http://localhost/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "rel": "bookmark"}], "extra": {"vif_port_id": "foo"}, "pxe_enabled": false, "portgroup_uuid": "6eb02b44-18a3-4659-8c0b-8d2802581ae4", "updated_at": null, "address": "52:54:00:cf:2d:31", "internal_info": {"tenant_vif_port_id": "foo"}, "created_at": "2019-06-06T07:02:16.949410+00:00"} {17} ironic.tests.unit.api.controllers.v1.test_port.TestPost.test_create_port_with_extra_vif_port_id [0.138355s] ... ok POST: /v1/ports {'local_link_connection': {'switch_info': 'switch1', 'port_id': 'Ethernet3/1', 'switch_id': '0a:1b:2c:3d:4e:5f'}, 'node_uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123', 'uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c781', 'extra': {}, 'pxe_enabled': True, 'portgroup_uuid': '6eb02b44-18a3-4659-8c0b-8d2802581ae4', 'physical_network': None, 'address': '52:54:00:cf:2d:31', 'is_smartnic': False} GOT:Response: 201 Created Content-Type: application/json Location: http://localhost/v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 Openstack-Request-Id: req-7b4f2d50-a8c5-4939-8f74-417b9d1b588d X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"local_link_connection": {"switch_info": "switch1", "port_id": "Ethernet3/1", "switch_id": "0a:1b:2c:3d:4e:5f"}, "node_uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "links": [{"href": "http://localhost/v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "rel": "self"}, {"href": "http://localhost/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "rel": "bookmark"}], "extra": {}, "pxe_enabled": true, "portgroup_uuid": "6eb02b44-18a3-4659-8c0b-8d2802581ae4", "updated_at": null, "physical_network": null, "address": "52:54:00:cf:2d:31", "internal_info": {}, "created_at": "2019-06-06T07:02:16.719652+00:00", "is_smartnic": false} {9} ironic.tests.unit.api.controllers.v1.test_port.TestPost.test_create_port_with_is_smartnic_default_value [0.141807s] ... ok PUT: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states/provision {'target': 'manage'} GOT:Response: 202 Accepted Location: http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states Openstack-Request-Id: req-e9634d07-6338-4ab7-b5b8-fdfd38133110 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.4 {6} ironic.tests.unit.api.controllers.v1.test_node.TestPut.test_manage_from_available [0.114360s] ... ok GET: /v1/lookup?addresses=11:22:33:44:55:66,66:55:44:33:22:11 {} GOT:Response: 404 Not Found Content-Type: application/json Openstack-Request-Id: req-e51eb026-4d00-4b6d-8dbb-a5f875565222 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Resource could not be found.\"}"} {12} ironic.tests.unit.api.controllers.v1.test_ramdisk.TestLookup.test_not_found [0.124634s] ... ok {12} ironic.tests.unit.api.controllers.v1.test_types.TestJsonPatchType.test_cannot_update_internal_dict_attr [0.039192s] ... ok {12} ironic.tests.unit.api.controllers.v1.test_utils.TestApiUtils.test_allow_inspect_abort [0.017155s] ... ok {12} ironic.tests.unit.api.controllers.v1.test_utils.TestApiUtils.test_check_allow_specify_fields [0.017544s] ... ok {12} ironic.tests.unit.api.controllers.v1.test_utils.TestNodeIdent.test_get_rpc_node_invalid_name [0.026203s] ... ok PATCH: /v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 [{'path': '/physical_network', 'value': 'ppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppp', 'op': 'replace'}] GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-791fe374-53be-45cf-80d0-325f392d5ca3 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Invalid input for field/attribute physical_network. Value: 'ppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppp'. Value should have a maximum character requirement of 64\"}"} {30} ironic.tests.unit.api.controllers.v1.test_port.TestPatch.test_invalid_physnet_too_long [0.072323s] ... ok GET: /v1/nodes/badname/traits {} GOT:Response: 404 Not Found Content-Type: application/json Openstack-Request-Id: req-654ba488-6755-4b73-8ac7-aa655793e2a7 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.37 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Node badname could not be found.\"}"} {10} ironic.tests.unit.api.controllers.v1.test_node.TestTraits.test_get_all_traits_fails_with_node_not_found [0.084530s] ... ok GET: /v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4?fields=address,mode {} GOT:Response: 406 Not Acceptable Content-Type: application/json Openstack-Request-Id: req-2246171f-8010-4a3d-a2ac-429716b868b4 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.25 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Request not acceptable.\"}"} {21} ironic.tests.unit.api.controllers.v1.test_portgroup.TestListPortgroups.test_get_one_mode_field_lower_api_version [0.062285s] ... ok POST: /v1/ports {'local_link_connection': {'switch_info': 'switch1', 'port_id': 'Ethernet3/1', 'switch_id': '0a:1b:2c:3d:4e:5f'}, 'node_uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123', 'uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c781', 'extra': {'vif_port_id': '12ea6bcc-2685-4187-822b-730a050b2375'}, 'pxe_enabled': False, 'physical_network': None, 'address': '52:54:00:cf:2d:31', 'is_smartnic': False} GOT:Response: 201 Created Content-Type: application/json Location: http://localhost/v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 Openstack-Request-Id: req-d8015f05-dac1-44bc-bac3-9cf9e1af8d50 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"local_link_connection": {"switch_info": "switch1", "port_id": "Ethernet3/1", "switch_id": "0a:1b:2c:3d:4e:5f"}, "node_uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "links": [{"href": "http://localhost/v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "rel": "self"}, {"href": "http://localhost/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "rel": "bookmark"}], "extra": {"vif_port_id": "12ea6bcc-2685-4187-822b-730a050b2375"}, "pxe_enabled": false, "portgroup_uuid": null, "updated_at": null, "physical_network": null, "address": "52:54:00:cf:2d:31", "internal_info": {"tenant_vif_port_id": "12ea6bcc-2685-4187-822b-730a050b2375"}, "created_at": "2019-06-06T07:02:16.482950+00:00", "is_smartnic": false} {24} ironic.tests.unit.api.controllers.v1.test_port.TestPost.test_create_port_vif_nopxe_noportgroup [0.122194s] ... ok PATCH: /v1/nodes/d6adeeb9-89ca-455b-9da9-faf5f3ba33ad [{'path': '/conductor_group', 'value': 'foogroup', 'op': 'add'}] GOT:Response: 406 Not Acceptable Content-Type: application/json Openstack-Request-Id: req-e2d399ca-1086-4d3b-8985-05c0373b09c5 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.45 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Request not acceptable.\"}"} {11} ironic.tests.unit.api.controllers.v1.test_node.TestPatch.test_update_conductor_group_old_api [0.084746s] ... ok PATCH: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123 [{'path': '/maintenance', 'value': 'true', 'op': 'replace'}] GOT:Response: 200 OK Content-Type: application/json Openstack-Request-Id: req-5ac6fbd1-a96e-447a-920c-1323bd156f28 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"target_power_state": null, "links": [{"href": "http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "rel": "self"}, {"href": "http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "rel": "bookmark"}], "target_provision_state": null, "last_error": null, "updated_at": null, "maintenance_reason": null, "provision_state": null, "uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "console_enabled": false, "extra": {}, "provision_updated_at": null, "maintenance": false, "power_state": null, "driver": "fake-hardware", "reservation": null, "properties": {"memory_mb": "4096", "cpu_arch": "x86_64", "local_gb": "10", "cpus": "8"}, "instance_uuid": null, "driver_info": {"fake_password": "******", "foo": "bar"}, "created_at": "2019-06-06T07:02:15.703162+00:00", "ports": [{"href": "http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports", "rel": "self"}, {"href": "http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports", "rel": "bookmark"}], "chassis_uuid": "e74c40e0-d825-11e2-a28f-0800200c9a66", "instance_info": {"foo": "bar", "image_url": "******", "configdrive": "******"}} {19} ironic.tests.unit.api.controllers.v1.test_node.TestPatch.test_replace_maintenance [0.076965s] ... ok GET: /v1/portgroups/detail?node=1be26c0b-03f2-4d2e-ae87-c02d7f33c123 {} GOT:{u'portgroups': [{u'node_uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'uuid': u'6eb02b44-18a3-4659-8c0b-8d2802581ae4', u'links': [{u'href': u'http://localhost/v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4', u'rel': u'self'}, {u'href': u'http://localhost/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4', u'rel': u'bookmark'}], u'extra': {}, u'created_at': u'2019-06-06T07:02:16.015294+00:00', u'updated_at': None, u'properties': {}, u'standalone_ports_supported': True, u'mode': u'active-backup', u'address': u'52:54:00:cf:2d:31', u'internal_info': {u'bar': u'buzz'}, u'ports': [{u'href': u'http://localhost/v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4/ports', u'rel': u'self'}, {u'href': u'http://localhost/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4/ports', u'rel': u'bookmark'}], u'name': u'fooname'}]} {5} ironic.tests.unit.api.controllers.v1.test_portgroup.TestListPortgroups.test_get_all_by_node_uuid_ok [0.085510s] ... ok PUT: /v1/nodes/node-39/traits {} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-206ffb17-30c6-463f-af6a-90021d1b383e X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.37 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"A single node trait may be added via PUT /v1/nodes//traits/ with no body, or all node traits may be replaced via PUT /v1/nodes//traits with the list of traits specified in the request body.\"}"} {23} ironic.tests.unit.api.controllers.v1.test_node.TestTraits.test_set_all_traits_rejects_no_body [0.089518s] ... ok DELETE: /v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4 GOT:Response: 409 Conflict Content-Type: application/json Openstack-Request-Id: req-7c00d29e-c105-4138-806c-f13c8f15f6a9 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Node fake-node is locked by host fake-host, please retry after the current operation is completed.\"}"} {17} ironic.tests.unit.api.controllers.v1.test_portgroup.TestDelete.test_delete_portgroup_node_locked [0.100744s] ... ok GET: /v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781?fields=address,extra {} GOT:{u'address': u'52:54:00:cf:2d:31', u'links': [{u'href': u'http://localhost/v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781', u'rel': u'self'}, {u'href': u'http://localhost/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781', u'rel': u'bookmark'}], u'extra': {}} {10} ironic.tests.unit.api.controllers.v1.test_port.TestListPorts.test_get_one_custom_fields [0.088236s] ... ok POST: /v1/nodes {'instance_uuid': None, 'uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123', 'driver_info': {'fake_password': 'fakepass', 'foo': 'bar'}, 'extra': {}, 'driver': 'fake-hardware', 'properties': {'memory_mb': '4096', 'cpu_arch': 'x86_64', 'local_gb': '10', 'cpus': '8'}, 'maintenance': False, 'chassis_uuid': 'e74c40e0-d825-11e2-a28f-0800200c9a66', 'instance_info': {'foo': 'bar', 'image_url': 'http://example.com/test_image_url', 'configdrive': 'TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQ='}, 'network_interface': 'flat'} GOT:Response: 201 Created Content-Type: application/json Location: http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123 Openstack-Request-Id: req-d0b2e510-778a-485c-89f9-ecf5bc6a0263 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"target_power_state": null, "automated_clean": null, "inspect_interface": "fake", "links": [{"href": "http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "rel": "self"}, {"href": "http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "rel": "bookmark"}], "target_provision_state": null, "deploy_step": {}, "storage_interface": "noop", "conductor_group": "", "protected_reason": null, "maintenance_reason": null, "states": [{"href": "http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states", "rel": "self"}, {"href": "http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states", "rel": "bookmark"}], "traits": [], "provision_state": "enroll", "clean_step": {}, "vendor_interface": "fake", "description": null, "uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "console_enabled": false, "extra": {}, "raid_config": {}, "provision_updated_at": null, "power_state": null, "last_error": null, "target_raid_config": {}, "network_interface": "flat", "inspection_started_at": null, "inspection_finished_at": null, "maintenance": false, "conductor": null, "power_interface": "fake", "driver": "fake-hardware", "updated_at": null, "volume": [{"href": "http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/volume", "rel": "self"}, {"href": "http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/volume", "rel": "bookmark"}], "raid_interface": "fake", "rescue_interface": "fake", "boot_interface": "fake", "reservation": null, "management_interface": "fake", "properties": {"memory_mb": "4096", "cpu_arch": "x86_64", "local_gb": "10", "cpus": "8"}, "bios_interface": "fake", "instance_uuid": null, "name": null, "driver_info": {"fake_password": "******", "foo": "bar"}, "resource_class": null, "fault": null, "created_at": "2019-06-06T07:02:15.691914+00:00", "portgroups": [{"href": "http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/portgroups", "rel": "self"}, {"href": "http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/portgroups", "rel": "bookmark"}], "deploy_interface": "fake", "ports": [{"href": "http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports", "rel": "self"}, {"href": "http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports", "rel": "bookmark"}], "console_interface": "fake", "protected": false, "driver_internal_info": {}, "chassis_uuid": "e74c40e0-d825-11e2-a28f-0800200c9a66", "owner": null, "instance_info": {"foo": "bar", "image_url": "******", "configdrive": "******"}, "allocation_uuid": null} GET: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123 {} GOT:{u'target_power_state': None, u'automated_clean': None, u'inspect_interface': u'fake', u'links': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'bookmark'}], u'target_provision_state': None, u'deploy_step': {}, u'storage_interface': u'noop', u'conductor_group': u'', u'protected_reason': None, u'maintenance_reason': None, u'states': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states', u'rel': u'bookmark'}], u'traits': [], u'provision_state': u'enroll', u'clean_step': {}, u'vendor_interface': u'fake', u'uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'console_enabled': False, u'extra': {}, u'raid_config': {}, u'provision_updated_at': None, u'power_state': None, u'last_error': None, u'target_raid_config': {}, u'maintenance': False, u'network_interface': u'flat', u'inspection_started_at': None, u'inspection_finished_at': None, u'description': None, u'conductor': None, u'driver': u'fake-hardware', u'power_interface': u'fake', u'updated_at': None, u'volume': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/volume', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/volume', u'rel': u'bookmark'}], u'raid_interface': u'fake', u'rescue_interface': u'fake', u'boot_interface': u'fake', u'reservation': None, u'management_interface': u'fake', u'properties': {u'memory_mb': u'4096', u'cpu_arch': u'x86_64', u'local_gb': u'10', u'cpus': u'8'}, u'bios_interface': u'fake', u'instance_uuid': None, u'name': None, u'driver_info': {u'fake_password': u'******', u'foo': u'bar'}, u'resource_class': None, u'fault': None, u'created_at': u'2019-06-06T07:02:15.691914+00:00', u'portgroups': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/portgroups', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/portgroups', u'rel': u'bookmark'}], u'deploy_interface': u'fake', u'instance_info': {u'foo': u'bar', u'image_url': u'******', u'configdrive': u'******'}, u'console_interface': u'fake', u'protected': False, u'driver_internal_info': {}, u'chassis_uuid': u'e74c40e0-d825-11e2-a28f-0800200c9a66', u'owner': None, u'ports': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'bookmark'}], u'allocation_uuid': None} {3} ironic.tests.unit.api.controllers.v1.test_node.TestPost.test_create_node_network_interface [0.161119s] ... ok POST: /v1/volume/connectors {'node_uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123', 'extra': {}, 'type': 'iqn', 'connector_id': 'iqn.2012-06.com.example:initiator'} GOT:Response: 201 Created Content-Type: application/json Location: http://localhost/v1/volume/connectors/a8c415b4-0aee-4bcb-921c-8581904a1490 Openstack-Request-Id: req-d5e40748-2d47-4632-9860-2684fa5fdbc4 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"node_uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "uuid": "a8c415b4-0aee-4bcb-921c-8581904a1490", "links": [{"href": "http://localhost/v1/volume/connectors/a8c415b4-0aee-4bcb-921c-8581904a1490", "rel": "self"}, {"href": "http://localhost/volume/connectors/a8c415b4-0aee-4bcb-921c-8581904a1490", "rel": "bookmark"}], "extra": {}, "created_at": "2019-06-06T07:02:16.453111+00:00", "updated_at": null, "connector_id": "iqn.2012-06.com.example:initiator", "type": "iqn"} GET: /v1/volume/connectors/a8c415b4-0aee-4bcb-921c-8581904a1490 {} GOT:{u'node_uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'uuid': u'a8c415b4-0aee-4bcb-921c-8581904a1490', u'links': [{u'href': u'http://localhost/v1/volume/connectors/a8c415b4-0aee-4bcb-921c-8581904a1490', u'rel': u'self'}, {u'href': u'http://localhost/volume/connectors/a8c415b4-0aee-4bcb-921c-8581904a1490', u'rel': u'bookmark'}], u'extra': {}, u'created_at': u'2019-06-06T07:02:16.453111+00:00', u'updated_at': None, u'connector_id': u'iqn.2012-06.com.example:initiator', u'type': u'iqn'} {2} ironic.tests.unit.api.controllers.v1.test_volume_connector.TestPost.test_create_volume_connector_generate_uuid [0.129065s] ... ok POST: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports {'local_link_connection': {'switch_info': 'switch1', 'port_id': 'Ethernet3/1', 'switch_id': '0a:1b:2c:3d:4e:5f'}, 'node_uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123', 'uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c781', 'extra': {}, 'pxe_enabled': True, 'physical_network': None, 'address': '52:54:00:cf:2d:31', 'is_smartnic': False} GOT:Response: 403 Forbidden Content-Type: application/json Openstack-Request-Id: req-23943024-e6b2-4fd1-a973-5ae393d47d38 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Operation not permitted.\"}"} {8} ironic.tests.unit.api.controllers.v1.test_node.TestPost.test_post_ports_subresource [0.110514s] ... ok POST: /v1/nodes {'instance_uuid': None, 'uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123', 'driver_info': {'fake_password': 'fakepass', 'foo': 'bar'}, 'extra': {}, 'storage_interface': 'foo', 'driver': 'fake-hardware', 'properties': {'memory_mb': '4096', 'cpu_arch': 'x86_64', 'local_gb': '10', 'cpus': '8'}, 'maintenance': False, 'chassis_uuid': 'e74c40e0-d825-11e2-a28f-0800200c9a66', 'instance_info': {'foo': 'bar', 'image_url': 'http://example.com/test_image_url', 'configdrive': 'TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQ='}} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-aa04dbf8-d614-4aff-8133-5d8171cf5e92 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Could not find the following interface in the 'ironic.hardware.interfaces.storage' entrypoint: foo. Valid interfaces are ['noop', 'fake'].\"}"} {27} ironic.tests.unit.api.controllers.v1.test_node.TestPost.test_create_node_invalid_storage_interface [0.068422s] ... ok PATCH: /v1/nodes/9be9f276-21bd-49f1-94d0-5571d6737bdf [{'path': '/conductor_group', 'value': 'foogroup', 'op': 'add'}] GOT:Response: 200 OK Content-Type: application/json Openstack-Request-Id: req-43e1c670-32a0-4b71-a9c6-d3db7fb0ed5e X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.46 {"target_power_state": null, "inspect_interface": null, "links": [{"href": "http://localhost/v1/nodes/9be9f276-21bd-49f1-94d0-5571d6737bdf", "rel": "self"}, {"href": "http://localhost/nodes/9be9f276-21bd-49f1-94d0-5571d6737bdf", "rel": "bookmark"}], "target_provision_state": null, "deploy_step": {}, "storage_interface": null, "conductor_group": "", "updated_at": null, "maintenance_reason": null, "states": [{"href": "http://localhost/v1/nodes/9be9f276-21bd-49f1-94d0-5571d6737bdf/states", "rel": "self"}, {"href": "http://localhost/nodes/9be9f276-21bd-49f1-94d0-5571d6737bdf/states", "rel": "bookmark"}], "traits": [], "provision_state": "available", "clean_step": {}, "vendor_interface": null, "uuid": "9be9f276-21bd-49f1-94d0-5571d6737bdf", "console_enabled": false, "extra": {}, "raid_config": {}, "provision_updated_at": null, "power_state": null, "last_error": null, "target_raid_config": {}, "network_interface": null, "inspection_started_at": null, "inspection_finished_at": null, "maintenance": false, "power_interface": null, "driver": "fake-hardware", "volume": [{"href": "http://localhost/v1/nodes/9be9f276-21bd-49f1-94d0-5571d6737bdf/volume", "rel": "self"}, {"href": "http://localhost/nodes/9be9f276-21bd-49f1-94d0-5571d6737bdf/volume", "rel": "bookmark"}], "raid_interface": null, "rescue_interface": null, "boot_interface": null, "reservation": null, "management_interface": null, "properties": {"memory_mb": "4096", "cpu_arch": "x86_64", "local_gb": "10", "cpus": "8"}, "bios_interface": null, "instance_uuid": null, "name": null, "driver_info": {"fake_password": "******", "foo": "bar"}, "resource_class": null, "fault": null, "created_at": "2019-06-06T07:02:16.225972+00:00", "portgroups": [{"href": "http://localhost/v1/nodes/9be9f276-21bd-49f1-94d0-5571d6737bdf/portgroups", "rel": "self"}, {"href": "http://localhost/nodes/9be9f276-21bd-49f1-94d0-5571d6737bdf/portgroups", "rel": "bookmark"}], "deploy_interface": null, "ports": [{"href": "http://localhost/v1/nodes/9be9f276-21bd-49f1-94d0-5571d6737bdf/ports", "rel": "self"}, {"href": "http://localhost/nodes/9be9f276-21bd-49f1-94d0-5571d6737bdf/ports", "rel": "bookmark"}], "console_interface": null, "driver_internal_info": {"private_state": "secret value"}, "chassis_uuid": null, "instance_info": {"foo": "bar", "image_url": "******", "configdrive": "******"}} {7} ironic.tests.unit.api.controllers.v1.test_node.TestPatch.test_update_conductor_group [0.123279s] ... ok GET: /v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4/detail {} GOT:Response: 404 Not Found Content-Type: application/json Openstack-Request-Id: req-9f786ea9-5d17-49cb-b5ce-827e8b138b66 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Resource could not be found.\"}"} {24} ironic.tests.unit.api.controllers.v1.test_portgroup.TestListPortgroups.test_detail_against_single [0.063856s] ... ok GET: /v1/nodes?sort_key=uuid {} GOT:{u'nodes': [{u'instance_uuid': None, u'maintenance': False, u'links': [{u'href': u'http://localhost/v1/nodes/404ded0f-bae5-4862-9609-bb6c0fa69493', u'rel': u'self'}, {u'href': u'http://localhost/nodes/404ded0f-bae5-4862-9609-bb6c0fa69493', u'rel': u'bookmark'}], u'power_state': None, u'provision_state': None, u'uuid': u'404ded0f-bae5-4862-9609-bb6c0fa69493'}, {u'instance_uuid': None, u'maintenance': False, u'links': [{u'href': u'http://localhost/v1/nodes/53681ab9-e223-4c9d-902d-8dd20afea159', u'rel': u'self'}, {u'href': u'http://localhost/nodes/53681ab9-e223-4c9d-902d-8dd20afea159', u'rel': u'bookmark'}], u'power_state': None, u'provision_state': None, u'uuid': u'53681ab9-e223-4c9d-902d-8dd20afea159'}, {u'instance_uuid': None, u'maintenance': False, u'links': [{u'href': u'http://localhost/v1/nodes/f813c4c0-e127-47a0-a588-66a29734e2ed', u'rel': u'self'}, {u'href': u'http://localhost/nodes/f813c4c0-e127-47a0-a588-66a29734e2ed', u'rel': u'bookmark'}], u'power_state': None, u'provision_state': None, u'uuid': u'f813c4c0-e127-47a0-a588-66a29734e2ed'}]} {15} ironic.tests.unit.api.controllers.v1.test_node.TestListNodes.test_sort_key [0.171541s] ... ok POST: /v1/ports {'local_link_connection': {'switch_info': 'fooswitch', 'switch_id': '0a:1b:2c:3d:4e:5f'}, 'node_uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123', 'uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c781', 'extra': {}, 'pxe_enabled': True, 'portgroup_uuid': '6eb02b44-18a3-4659-8c0b-8d2802581ae4', 'physical_network': None, 'address': '52:54:00:cf:2d:31', 'is_smartnic': False} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-bbf17823-340a-4ed6-a07e-e15e27940a99 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Missing mandatory keys. Required keys are set(['port_id', 'switch_id']). Or in case of Smart NIC set(['hostname', 'port_id']). Submitted keys are set(['switch_info', 'switch_id']) .\"}"} {28} ironic.tests.unit.api.controllers.v1.test_port.TestPost.test_create_port_local_link_connection_missing_mandatory [0.085373s] ... ok PATCH: /v1/nodes/03c60168-622f-490d-8fc0-347c1abee90e [{'path': '/resource_class', 'value': 'foo', 'op': 'add'}] GOT:Response: 406 Not Acceptable Content-Type: application/json Openstack-Request-Id: req-a27e615d-1d96-4c10-afe7-39bf9fd7b7a1 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.20 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Request not acceptable.\"}"} {19} ironic.tests.unit.api.controllers.v1.test_node.TestPatch.test_update_resource_class_old_api [0.063835s] ... ok PATCH: /v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4 [{'path': '/foo', 'value': 'bar', 'op': 'add'}] GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-a8a6e606-332c-4ced-b4eb-3e002de0f5ab X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Adding a new attribute (/foo) to the root of the resource is not allowed\"}"} {17} ironic.tests.unit.api.controllers.v1.test_portgroup.TestPatch.test_add_root_non_existent [0.071038s] ... ok GET: /v1/portgroups/detail {} GOT:{u'portgroups': [{u'node_uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'uuid': u'6eb02b44-18a3-4659-8c0b-8d2802581ae4', u'links': [{u'href': u'http://localhost/v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4', u'rel': u'self'}, {u'href': u'http://localhost/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4', u'rel': u'bookmark'}], u'extra': {}, u'created_at': u'2019-06-06T07:02:16.792589+00:00', u'updated_at': None, u'properties': {}, u'standalone_ports_supported': True, u'mode': u'active-backup', u'address': u'52:54:00:cf:2d:31', u'internal_info': {u'bar': u'buzz'}, u'ports': [{u'href': u'http://localhost/v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4/ports', u'rel': u'self'}, {u'href': u'http://localhost/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4/ports', u'rel': u'bookmark'}], u'name': u'fooname'}]} {9} ironic.tests.unit.api.controllers.v1.test_portgroup.TestListPortgroups.test_detail [0.084671s] ... ok PATCH: /v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4/ports/aa6c0c41-2d00-4369-a581-1176a8b07c2a [{'path': '/address', 'value': '00:00:00:00:00:00', 'op': 'replace'}] GOT:Response: 403 Forbidden Content-Type: application/json Openstack-Request-Id: req-1013c283-fc4e-4934-96b4-2c7a09815ac0 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.24 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Operation not permitted.\"}"} {9} ironic.tests.unit.api.controllers.v1.test_types.TestNameType.test_invalid_name [0.019770s] ... ok {10} ironic.tests.unit.api.controllers.v1.test_port.TestPatch.test_portgroups_subresource_patch [0.080015s] ... ok {9} ironic.tests.unit.api.controllers.v1.test_utils.TestApiUtils.test_check_allow_configdrive_fails [0.027409s] ... ok {9} ironic.tests.unit.api.controllers.v1.test_utils.TestApiUtils.test_check_allow_specify_fields_fail [0.018814s] ... ok {9} ironic.tests.unit.api.controllers.v1.test_utils.TestVendorPassthru.test_check_policy_forbidden [0.020191s] ... ok DELETE: /v1/ports/52:54:00:cf:2d:31 GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-f6cb092d-9e6c-46c2-a51a-72bc0c9b710a X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Invalid input for field/attribute port_uuid. Value: '52:54:00:cf:2d:31'. unable to convert to uuid. Error: Expected a UUID but received 52:54:00:cf:2d:31.\"}"} {23} ironic.tests.unit.api.controllers.v1.test_port.TestDelete.test_delete_port_byaddress [0.066311s] ... ok PATCH: /v1/nodes/c94f0c79-31e6-4307-89ef-6f00e38679aa [{'path': '/boot_interface', 'value': 'fake', 'op': 'add'}] GOT:Response: 406 Not Acceptable Content-Type: application/json Openstack-Request-Id: req-cb03a8c9-d303-4a85-98ae-feb68a57c86e X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.30 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Request not acceptable.\"}"} PATCH: /v1/nodes/c94f0c79-31e6-4307-89ef-6f00e38679aa [{'path': '/console_interface', 'value': 'fake', 'op': 'add'}] GOT:Response: 406 Not Acceptable Content-Type: application/json Openstack-Request-Id: req-360c3ea3-085a-4b8e-890e-9a8e2649a55b X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.30 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Request not acceptable.\"}"} PATCH: /v1/nodes/c94f0c79-31e6-4307-89ef-6f00e38679aa [{'path': '/deploy_interface', 'value': 'fake', 'op': 'add'}] GOT:Response: 406 Not Acceptable Content-Type: application/json Openstack-Request-Id: req-7e53c598-cbda-4fb3-957b-0931c51ce541 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.30 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Request not acceptable.\"}"} PATCH: /v1/nodes/c94f0c79-31e6-4307-89ef-6f00e38679aa [{'path': '/inspect_interface', 'value': 'fake', 'op': 'add'}] GOT:Response: 406 Not Acceptable Content-Type: application/json Openstack-Request-Id: req-c5a9ae9b-f304-4b90-90af-3c7af4936fae X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.30 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Request not acceptable.\"}"} PATCH: /v1/nodes/c94f0c79-31e6-4307-89ef-6f00e38679aa [{'path': '/management_interface', 'value': 'fake', 'op': 'add'}] GOT:Response: 406 Not Acceptable Content-Type: application/json Openstack-Request-Id: req-bb2c795b-2aa1-4ccf-bb95-62534ff8fc03 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.30 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Request not acceptable.\"}"} PATCH: /v1/nodes/c94f0c79-31e6-4307-89ef-6f00e38679aa [{'path': '/power_interface', 'value': 'fake', 'op': 'add'}] GOT:Response: 406 Not Acceptable Content-Type: application/json Openstack-Request-Id: req-909805cc-8ad1-4178-b7e2-f5ec3b6978ad X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.30 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Request not acceptable.\"}"} PATCH: /v1/nodes/c94f0c79-31e6-4307-89ef-6f00e38679aa [{'path': '/raid_interface', 'value': 'fake', 'op': 'add'}] GOT:Response: 406 Not Acceptable Content-Type: application/json Openstack-Request-Id: req-8bcbfc1d-83c3-4a4a-b56f-e6498feaf929 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.30 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Request not acceptable.\"}"} PATCH: /v1/nodes/c94f0c79-31e6-4307-89ef-6f00e38679aa [{'path': '/vendor_interface', 'value': 'fake', 'op': 'add'}] GOT:Response: 406 Not Acceptable Content-Type: application/json Openstack-Request-Id: req-59f29dda-0cd5-4d06-a361-96aa0b3d3c18 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.30 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Request not acceptable.\"}"} {26} ironic.tests.unit.api.controllers.v1.test_node.TestPatch.test_update_interface_fields_bad_version [0.103800s] ... ok PATCH: /v1/ports/12ab90e9-0a64-44c7-a577-c40c24faa52d [{'path': '/extra/vif_port_id', 'op': 'remove'}] GOT:Response: 200 OK Content-Type: application/json Openstack-Request-Id: req-4893bd81-ae02-4624-ae6b-8d5d2e3af211 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.28 {"local_link_connection": {"switch_info": "switch1", "port_id": "Ethernet3/1", "switch_id": "0a:1b:2c:3d:4e:5f"}, "node_uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "uuid": "12ab90e9-0a64-44c7-a577-c40c24faa52d", "links": [{"href": "http://localhost/v1/ports/12ab90e9-0a64-44c7-a577-c40c24faa52d", "rel": "self"}, {"href": "http://localhost/ports/12ab90e9-0a64-44c7-a577-c40c24faa52d", "rel": "bookmark"}], "extra": {}, "pxe_enabled": true, "portgroup_uuid": null, "updated_at": "2019-06-06T07:02:16.184948+00:00", "address": "52:55:00:cf:2d:31", "internal_info": {"tenant_vif_port_id": "bar"}, "created_at": "2019-06-06T07:02:16.124731+00:00"} {30} ironic.tests.unit.api.controllers.v1.test_port.TestPatch.test_remove_extra_vif_port_id_not_same [0.129054s] ... ok POST: /v1/nodes {'instance_uuid': None, 'uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123', 'driver_info': {'fake_password': 'fakepass', 'foo': 'bar'}, 'extra': {}, 'driver': 'fake-hardware', 'properties': {'memory_mb': '4096', 'cpu_arch': 'x86_64', 'local_gb': '10', 'cpus': '8'}, 'maintenance': False, 'chassis_uuid': 0, 'instance_info': {'foo': 'bar', 'image_url': 'http://example.com/test_image_url', 'configdrive': 'TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQ='}} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-fa2c1965-602c-401f-8679-0da86abc08a0 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Expected a UUID but received 0.\"}"} {11} ironic.tests.unit.api.controllers.v1.test_node.TestPost.test_create_node_invalid_chassis [0.054032s] ... ok PUT: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states/power {'target': 'power off'} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-b2381588-5074-46c5-8218-bda9ebd7ef0d X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"The requested action \\\"power off\\\" can not be performed on node \\\"1be26c0b-03f2-4d2e-ae87-c02d7f33c123\\\" while it is in state \\\"cleaning\\\".\"}"} PUT: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states/power {'target': 'power off'} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-a49c3f98-6c99-4fb0-aa4c-1b5a0390a595 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"The requested action \\\"power off\\\" can not be performed on node \\\"1be26c0b-03f2-4d2e-ae87-c02d7f33c123\\\" while it is in state \\\"clean wait\\\".\"}"} {6} ironic.tests.unit.api.controllers.v1.test_node.TestPut.test_power_change_when_being_cleaned [0.167967s] ... ok GET: /v1/portgroups?fields=uuid,extra {} GOT:{u'portgroups': [{u'uuid': u'99ffc4de-e426-4beb-b53f-431ada05b8e6', u'links': [{u'href': u'http://localhost/v1/portgroups/99ffc4de-e426-4beb-b53f-431ada05b8e6', u'rel': u'self'}, {u'href': u'http://localhost/portgroups/99ffc4de-e426-4beb-b53f-431ada05b8e6', u'rel': u'bookmark'}], u'extra': {}}, {u'uuid': u'1a84004d-5c8d-4f02-8511-9034ab388984', u'links': [{u'href': u'http://localhost/v1/portgroups/1a84004d-5c8d-4f02-8511-9034ab388984', u'rel': u'self'}, {u'href': u'http://localhost/portgroups/1a84004d-5c8d-4f02-8511-9034ab388984', u'rel': u'bookmark'}], u'extra': {}}, {u'uuid': u'26ccd0ca-6616-4630-ad53-a032311461fc', u'links': [{u'href': u'http://localhost/v1/portgroups/26ccd0ca-6616-4630-ad53-a032311461fc', u'rel': u'self'}, {u'href': u'http://localhost/portgroups/26ccd0ca-6616-4630-ad53-a032311461fc', u'rel': u'bookmark'}], u'extra': {}}]} {5} ironic.tests.unit.api.controllers.v1.test_portgroup.TestListPortgroups.test_get_collection_custom_fields [0.128479s] ... ok GET: /v1/portgroups/detail?sort_key=mode {} GOT:Response: 406 Not Acceptable Content-Type: application/json Openstack-Request-Id: req-41fc36aa-8075-49c6-bad5-c59180326887 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.25 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Request not acceptable.\"}"} {24} ironic.tests.unit.api.controllers.v1.test_portgroup.TestListPortgroups.test_detail_sort_key_not_allowed [0.058829s] ... ok PATCH: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123?reset_interfaces=True [{'path': '/driver', 'value': 'ipmi', 'op': 'replace'}] GOT:Response: 406 Not Acceptable Content-Type: application/json Openstack-Request-Id: req-dbfe8f4c-7a81-4435-8107-4c095174317c X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Request not acceptable.\"}"} {15} ironic.tests.unit.api.controllers.v1.test_node.TestPatch.test_reset_interfaces_not_supported [0.074923s] ... ok GET: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123 {} GOT:{u'target_power_state': None, u'inspect_interface': None, u'links': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'bookmark'}], u'target_provision_state': None, u'last_error': None, u'updated_at': None, u'maintenance_reason': None, u'states': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states', u'rel': u'bookmark'}], u'provision_state': u'available', u'clean_step': {}, u'vendor_interface': None, u'uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'console_enabled': False, u'extra': {}, u'raid_config': {}, u'provision_updated_at': None, u'power_state': None, u'target_raid_config': {}, u'network_interface': None, u'inspection_started_at': None, u'inspection_finished_at': None, u'maintenance': False, u'driver': u'fake-hardware', u'power_interface': None, u'volume': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/volume', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/volume', u'rel': u'bookmark'}], u'raid_interface': None, u'boot_interface': None, u'reservation': None, u'management_interface': None, u'properties': {u'memory_mb': u'4096', u'cpu_arch': u'x86_64', u'local_gb': u'10', u'cpus': u'8'}, u'instance_uuid': None, u'name': None, u'driver_info': {u'fake_password': u'******', u'foo': u'bar'}, u'resource_class': None, u'created_at': u'2019-06-06T07:02:15.580112+00:00', u'portgroups': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/portgroups', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/portgroups', u'rel': u'bookmark'}], u'deploy_interface': None, u'instance_info': {u'foo': u'bar', u'image_url': u'******', u'configdrive': u'******'}, u'console_interface': None, u'driver_internal_info': {u'private_state': u'secret value'}, u'chassis_uuid': None, u'ports': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'bookmark'}]} GET: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123 {} GOT:{u'target_power_state': None, u'inspect_interface': None, u'links': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'bookmark'}], u'target_provision_state': None, u'last_error': None, u'storage_interface': None, u'updated_at': None, u'maintenance_reason': None, u'states': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states', u'rel': u'bookmark'}], u'provision_state': u'available', u'clean_step': {}, u'vendor_interface': None, u'uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'console_enabled': False, u'extra': {}, u'raid_config': {}, u'provision_updated_at': None, u'power_state': None, u'target_raid_config': {}, u'network_interface': None, u'inspection_started_at': None, u'inspection_finished_at': None, u'maintenance': False, u'driver': u'fake-hardware', u'power_interface': None, u'volume': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/volume', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/volume', u'rel': u'bookmark'}], u'raid_interface': None, u'boot_interface': None, u'reservation': None, u'management_interface': None, u'properties': {u'memory_mb': u'4096', u'cpu_arch': u'x86_64', u'local_gb': u'10', u'cpus': u'8'}, u'instance_uuid': None, u'name': None, u'driver_info': {u'fake_password': u'******', u'foo': u'bar'}, u'resource_class': None, u'created_at': u'2019-06-06T07:02:15.580112+00:00', u'portgroups': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/portgroups', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/portgroups', u'rel': u'bookmark'}], u'deploy_interface': None, u'instance_info': {u'foo': u'bar', u'image_url': u'******', u'configdrive': u'******'}, u'console_interface': None, u'driver_internal_info': {u'private_state': u'secret value'}, u'chassis_uuid': None, u'ports': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'bookmark'}]} {29} ironic.tests.unit.api.controllers.v1.test_node.TestListNodes.test_node_storage_interface_hidden_in_lower_version [0.145977s] ... ok PATCH: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123 [{'path': '/driver', 'value': 'bad-driver', 'op': 'replace'}] GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-f427e45a-f4a2-4d63-828d-538f23e62de0 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Fake Error\"}"} {7} ironic.tests.unit.api.controllers.v1.test_node.TestPatch.test_update_fails_bad_driver [0.104760s] ... ok PATCH: /v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4 [{'path': '/extra/vif_port_id', 'value': 'foo', 'op': 'add'}, {'path': '/extra/vif_port_id', 'value': 'bar', 'op': 'add'}] GOT:Response: 200 OK Content-Type: application/json Openstack-Request-Id: req-6f1c8d56-d2aa-4e14-9f14-addbd58e9e95 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.27 {"node_uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "uuid": "6eb02b44-18a3-4659-8c0b-8d2802581ae4", "links": [{"href": "http://localhost/v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4", "rel": "self"}, {"href": "http://localhost/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4", "rel": "bookmark"}], "extra": {"vif_port_id": "bar"}, "created_at": "2019-06-06T07:02:16.368133+00:00", "updated_at": "2019-06-06T07:02:16.440979+00:00", "ports": [{"href": "http://localhost/v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4/ports", "rel": "self"}, {"href": "http://localhost/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4/ports", "rel": "bookmark"}], "standalone_ports_supported": true, "mode": "active-backup", "address": "52:54:00:cf:2d:31", "internal_info": {"tenant_vif_port_id": "bar"}, "properties": {}, "name": "fooname"} {21} ironic.tests.unit.api.controllers.v1.test_portgroup.TestPatchExtraVifPortId.test_replace_extra_vif_port_id [0.133946s] ... ok GET: /v1/volume/connectors/?limit=3 {} GOT:{u'connectors': [{u'node_uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'type': u'iqn', u'uuid': u'11f04cc3-7a24-4085-8c7e-505018c08297', u'links': [{u'href': u'http://localhost/v1/volume/connectors/11f04cc3-7a24-4085-8c7e-505018c08297', u'rel': u'self'}, {u'href': u'http://localhost/volume/connectors/11f04cc3-7a24-4085-8c7e-505018c08297', u'rel': u'bookmark'}], u'connector_id': u'test-connector_id-0'}, {u'node_uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'type': u'iqn', u'uuid': u'60897e1a-a1d5-42f6-a837-837136ed39e1', u'links': [{u'href': u'http://localhost/v1/volume/connectors/60897e1a-a1d5-42f6-a837-837136ed39e1', u'rel': u'self'}, {u'href': u'http://localhost/volume/connectors/60897e1a-a1d5-42f6-a837-837136ed39e1', u'rel': u'bookmark'}], u'connector_id': u'test-connector_id-1'}, {u'node_uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'type': u'iqn', u'uuid': u'c2ed4701-98b9-40de-9191-0d5d9f70e7dc', u'links': [{u'href': u'http://localhost/v1/volume/connectors/c2ed4701-98b9-40de-9191-0d5d9f70e7dc', u'rel': u'self'}, {u'href': u'http://localhost/volume/connectors/c2ed4701-98b9-40de-9191-0d5d9f70e7dc', u'rel': u'bookmark'}], u'connector_id': u'test-connector_id-2'}], u'next': u'http://localhost/v1/volume/connectors?sort_key=id&sort_dir=asc&limit=3&marker=c2ed4701-98b9-40de-9191-0d5d9f70e7dc'} {12} ironic.tests.unit.api.controllers.v1.test_volume_connector.TestListVolumeConnectors.test_collection_links [0.131736s] ... ok GET: /v1/ports/detail?sort_key=pxe_enabled {} GOT:Response: 406 Not Acceptable Content-Type: application/json Openstack-Request-Id: req-81161ab0-6cb9-449a-bb19-3bd897ad17b9 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.18 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Request not acceptable.\"}"} {23} ironic.tests.unit.api.controllers.v1.test_port.TestListPorts.test_detail_sort_key_not_allowed [0.057845s] ... ok PATCH: /v1/volume/targets/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 [{'path': '/boot_index', 'value': 100, 'op': 'replace'}] GOT:Response: 200 OK Content-Type: application/json Openstack-Request-Id: req-fe333176-097f-49a1-86ec-65f4421516be X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"boot_index": 100, "uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "links": [{"href": "http://localhost/v1/volume/targets/1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "rel": "self"}, {"href": "http://localhost/volume/targets/1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "rel": "bookmark"}], "extra": {}, "created_at": "2019-06-06T07:02:16.541356+00:00", "updated_at": null, "volume_type": "iscsi", "node_uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "volume_id": "12345678", "properties": {"target_iqn": "iqn.foo"}} {2} ironic.tests.unit.api.controllers.v1.test_volume_target.TestPatch.test_replace_singular [0.115137s] ... ok {2} ironic.tests.unit.common.test_cinder.TestCinderActions.test_detach_volumes_begin_detaching_failure [0.103225s] ... ok {2} ironic.tests.unit.common.test_cinder.TestCinderActions.test_detach_volumes_term_failure [0.083852s] ... ok {2} ironic.tests.unit.common.test_cinder.TestCinderClient.test_get_client_deprecated_opts [0.022945s] ... ok {2} ironic.tests.unit.common.test_driver_factory.DefaultInterfaceTestCase.test_calculated_with_unsupported [0.023350s] ... ok {2} ironic.tests.unit.common.test_driver_factory.HardwareTypeLoadTestCase.test_get_hardware_type_existing [0.024982s] ... ok PUT: /v1/nodes/node-39/states/power {'target': 'power on'} GOT:Response: 202 Accepted Location: http://localhost/v1/nodes/node-39/states Openstack-Request-Id: req-0020ca4d-c747-4a69-9dd1-f4ad44b50702 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.5 {6} ironic.tests.unit.api.controllers.v1.test_node.TestPut.test_power_state_by_name [0.077042s] ... ok {2} ironic.tests.unit.common.test_glance_service.TestGlanceSerializer.test_serialize [0.000507s] ... ok {2} ironic.tests.unit.common.test_image_service.HttpImageServiceTestCase.test_download_fail_ioerror [0.027546s] ... ok {2} ironic.tests.unit.common.test_image_service.ServiceGetterTestCase.test_out_range_auth_strategy [0.014750s] ... ok {2} ironic.tests.unit.common.test_images.FsImageTestCase.test_create_vfat_image [0.038022s] ... ok GET: /v1/volume/connectors?detail=True {} GOT:{u'connectors': [{u'node_uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c781', u'links': [{u'href': u'http://localhost/v1/volume/connectors/1be26c0b-03f2-4d2e-ae87-c02d7f33c781', u'rel': u'self'}, {u'href': u'http://localhost/volume/connectors/1be26c0b-03f2-4d2e-ae87-c02d7f33c781', u'rel': u'bookmark'}], u'extra': {}, u'created_at': u'2019-06-06T07:02:16.974182+00:00', u'updated_at': None, u'connector_id': u'iqn.2012-06.com.example:initiator', u'type': u'iqn'}]} {2} ironic.tests.unit.common.test_keystone.KeystoneTestCase.test_get_adapter_from_config [0.010818s] ... ok {9} ironic.tests.unit.api.controllers.v1.test_volume_connector.TestListVolumeConnectors.test_detail [0.091379s] ... ok PATCH: /v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 [{'path': '/pxe_enabled', 'value': False, 'op': 'add'}] GOT:Response: 406 Not Acceptable Content-Type: application/json Openstack-Request-Id: req-7dcee308-8a72-4917-aeff-355385f707ef X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Request not acceptable.\"}"} {30} ironic.tests.unit.api.controllers.v1.test_port.TestPatch.test_set_pxe_enabled_false_old_api [0.063950s] ... ok {2} ironic.tests.unit.common.test_network.GetPhysnetsForNodeTestCase.test_get_physnets_for_node_multiple_ports [0.111216s] ... ok PATCH: /v1/portgroups/52:54:00:cf:2d:31 [{'path': '/extra/foo', 'value': 'bar', 'op': 'add'}] GOT:Response: 400 Bad Request Content-Type: application/json {"error_message": "{\"code\": 400, \"description\": \"Expected a logical name or UUID but received 52:54:00:cf:2d:31.\", \"title\": \"Bad Request\"}"} {24} ironic.tests.unit.api.controllers.v1.test_portgroup.TestPatch.test_update_byaddress_not_allowed [0.050617s] ... ok PUT: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states/power {'target': 'power on', 'timeout': 2} GOT:Response: 202 Accepted Location: http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states Openstack-Request-Id: req-a3ddc312-c97c-4f5f-a388-08b42c569150 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.27 {2} ironic.tests.unit.common.test_network.TestNetwork.test_get_node_vif_ids_one_port_int_info [0.105129s] ... ok {11} ironic.tests.unit.api.controllers.v1.test_node.TestPut.test_power_state_power_on_valid_timeout_valid_soft_ver [0.076944s] ... ok {2} ironic.tests.unit.common.test_pxe_utils.PXEInterfacesTestCase.test_build_pxe_config_options_ipxe_ipa_debug [0.129220s] ... ok {2} ironic.tests.unit.common.test_pxe_utils.PXEInterfacesTestCase.test_cache_ramdisk_kernel [0.086961s] ... ok {2} ironic.tests.unit.common.test_pxe_utils.TestPXEUtils.test__get_pxe_ip_address_path [0.032872s] ... ok {2} ironic.tests.unit.common.test_rpc.TestUtils.test_init_globals_notifications_enabled [0.077005s] ... ok {2} ironic.tests.unit.common.test_utils.GetUpdatedCapabilitiesTestCase.test_get_updated_capabilities_invalid_capabilities [0.015437s] ... ok {2} ironic.tests.unit.conductor.test_allocations.AllocationTestCase.test_destroy_allocation_with_active_node [0.154591s] ... ok {2} ironic.tests.unit.conductor.test_manager.CreateNodeTestCase.test_create_node_validation_fails [0.039830s] ... ok {2} ironic.tests.unit.conductor.test_manager.DestroyNodeTestCase.test_destroy_node_associated [0.323683s] ... ok {2} ironic.tests.unit.conductor.test_manager.DoNodeCleanAbortTestCase.test__do_node_clean_abort_tear_down_fail [0.109362s] ... ok {2} ironic.tests.unit.conductor.test_manager.DoNodeCleanTestCase.test__do_next_clean_step_automated_execute_fail [0.392462s] ... ok {2} ironic.tests.unit.conductor.test_manager.DoNodeCleanTestCase.test__do_node_clean_manual_network_validate_fail [0.187304s] ... ok {2} ironic.tests.unit.conductor.test_manager.DoNodeCleanTestCase.test__get_node_next_clean_steps_unset_clean_step [0.106127s] ... ok PATCH: /v1/nodes/c264700b-c3ec-42b9-84e2-a73f6f98d3f4 [{'path': '/owner', 'value': 'meow', 'op': 'replace'}] GOT:Response: 406 Not Acceptable Content-Type: application/json Openstack-Request-Id: req-444720fd-16cc-4579-b35a-4663b7b9bc1d X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.47 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Request not acceptable.\"}"} {2} ironic.tests.unit.conductor.test_manager.DoNodeCleanTestCase.test_continue_node_clean_automated_abort_last_clean_step [0.404037s] ... ok {26} ironic.tests.unit.api.controllers.v1.test_node.TestPatch.test_update_owner_old_api [0.074149s] ... ok {2} ironic.tests.unit.conductor.test_manager.DoNodeCleanTestCase.test_continue_node_clean_manual_abort_last_clean_step [0.399264s] ... ok {2} ironic.tests.unit.conductor.test_manager.DoNodeDeployTestCase.test__old_rest_of_do_node_deploy_no_steps [0.401575s] ... ok {2} ironic.tests.unit.conductor.test_manager.DoNodeRescueTestCase.test__do_node_unrescue_ironic_error [0.322419s] ... ok {2} ironic.tests.unit.conductor.test_manager.DoNodeTearDownTestCase.test_do_node_tear_down_console_raises_error [0.352715s] ... ok {2} ironic.tests.unit.conductor.test_manager.ManagerCheckInspectWaitTimeoutsTestCase.test__check_inspect_timeouts_exit_with_other_exception [0.029955s] ... ok {2} ironic.tests.unit.conductor.test_manager.ManagerCheckInspectWaitTimeoutsTestCase.test__check_inspect_timeouts_worker_limit [0.028900s] ... ok {2} ironic.tests.unit.conductor.test_manager.ManagerDoSyncPowerStateTestCase.test_state_changed_no_sync_notify [0.064103s] ... ok {2} ironic.tests.unit.conductor.test_manager.ManagerSyncPowerStatesTestCase.test_node_disappears_on_acquire [0.026938s] ... ok {2} ironic.tests.unit.conductor.test_manager.NodeInspectHardware.test_inspect_hardware_power_validate_fail [0.120401s] ... ok POST: /v1/nodes {'instance_uuid': None, 'uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123', 'driver_info': {'fake_password': 'fakepass', 'foo': 'bar'}, 'extra': {}, 'driver': 'fake-hardware', 'properties': {'memory_mb': '4096', 'cpu_arch': 'x86_64', 'local_gb': '10', 'cpus': '8'}, 'maintenance': False, 'chassis_uuid': None, 'instance_info': {'foo': 'bar', 'image_url': 'http://example.com/test_image_url', 'configdrive': 'TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQ='}} GOT:Response: 201 Created Content-Type: application/json Location: http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123 Openstack-Request-Id: req-ba5312f7-3e6e-4a9d-9986-b89cbd49d967 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"target_power_state": null, "links": [{"href": "http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "rel": "self"}, {"href": "http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "rel": "bookmark"}], "target_provision_state": null, "last_error": null, "updated_at": null, "maintenance_reason": null, "provision_state": null, "uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "console_enabled": false, "extra": {}, "provision_updated_at": null, "maintenance": false, "power_state": null, "driver": "fake-hardware", "reservation": null, "properties": {"memory_mb": "4096", "cpu_arch": "x86_64", "local_gb": "10", "cpus": "8"}, "instance_uuid": null, "driver_info": {"fake_password": "******", "foo": "bar"}, "created_at": "2000-01-01T00:00:00+00:00", "ports": [{"href": "http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports", "rel": "self"}, {"href": "http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports", "rel": "bookmark"}], "chassis_uuid": null, "instance_info": {"foo": "bar", "image_url": "******", "configdrive": "******"}} GET: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123 {} GOT:{u'target_power_state': None, u'links': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'bookmark'}], u'target_provision_state': None, u'last_error': None, u'updated_at': None, u'maintenance_reason': None, u'provision_state': None, u'uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'console_enabled': False, u'extra': {}, u'provision_updated_at': None, u'maintenance': False, u'power_state': None, u'driver': u'fake-hardware', u'reservation': None, u'properties': {u'memory_mb': u'4096', u'cpu_arch': u'x86_64', u'local_gb': u'10', u'cpus': u'8'}, u'instance_uuid': None, u'driver_info': {u'fake_password': u'******', u'foo': u'bar'}, u'created_at': u'2000-01-01T00:00:00+00:00', u'ports': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'bookmark'}], u'chassis_uuid': None, u'instance_info': {u'foo': u'bar', u'image_url': u'******', u'configdrive': u'******'}} POST: /v1/nodes {'instance_uuid': None, 'uuid': 'e71b345b-71ae-4adb-8043-22052e4e21ac', 'driver_info': {'fake_password': 'fakepass', 'foo': 'bar'}, 'extra': {}, 'driver': 'fake-hardware', 'properties': {'memory_mb': '4096', 'cpu_arch': 'x86_64', 'local_gb': '10', 'cpus': '8'}, 'maintenance': False, 'instance_info': {'foo': 'bar', 'image_url': 'http://example.com/test_image_url', 'configdrive': 'TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQ='}} GOT:Response: 201 Created Content-Type: application/json Location: http://localhost/v1/nodes/e71b345b-71ae-4adb-8043-22052e4e21ac Openstack-Request-Id: req-a52c7852-5a78-4ebf-ae36-a0a3aea1bd9f X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"target_power_state": null, "links": [{"href": "http://localhost/v1/nodes/e71b345b-71ae-4adb-8043-22052e4e21ac", "rel": "self"}, {"href": "http://localhost/nodes/e71b345b-71ae-4adb-8043-22052e4e21ac", "rel": "bookmark"}], "target_provision_state": null, "last_error": null, "updated_at": null, "maintenance_reason": null, "provision_state": null, "uuid": "e71b345b-71ae-4adb-8043-22052e4e21ac", "console_enabled": false, "extra": {}, "provision_updated_at": null, "maintenance": false, "power_state": null, "driver": "fake-hardware", "reservation": null, "properties": {"memory_mb": "4096", "cpu_arch": "x86_64", "local_gb": "10", "cpus": "8"}, "instance_uuid": null, "driver_info": {"fake_password": "******", "foo": "bar"}, "created_at": "2000-01-01T00:00:00+00:00", "ports": [{"href": "http://localhost/v1/nodes/e71b345b-71ae-4adb-8043-22052e4e21ac/ports", "rel": "self"}, {"href": "http://localhost/nodes/e71b345b-71ae-4adb-8043-22052e4e21ac/ports", "rel": "bookmark"}], "chassis_uuid": null, "instance_info": {"foo": "bar", "image_url": "******", "configdrive": "******"}} GET: /v1/nodes/e71b345b-71ae-4adb-8043-22052e4e21ac {} GOT:{u'target_power_state': None, u'links': [{u'href': u'http://localhost/v1/nodes/e71b345b-71ae-4adb-8043-22052e4e21ac', u'rel': u'self'}, {u'href': u'http://localhost/nodes/e71b345b-71ae-4adb-8043-22052e4e21ac', u'rel': u'bookmark'}], u'target_provision_state': None, u'last_error': None, u'updated_at': None, u'maintenance_reason': None, u'provision_state': None, u'uuid': u'e71b345b-71ae-4adb-8043-22052e4e21ac', u'console_enabled': False, u'extra': {}, u'provision_updated_at': None, u'maintenance': False, u'power_state': None, u'driver': u'fake-hardware', u'reservation': None, u'properties': {u'memory_mb': u'4096', u'cpu_arch': u'x86_64', u'local_gb': u'10', u'cpus': u'8'}, u'instance_uuid': None, u'driver_info': {u'fake_password': u'******', u'foo': u'bar'}, u'created_at': u'2000-01-01T00:00:00+00:00', u'ports': [{u'href': u'http://localhost/v1/nodes/e71b345b-71ae-4adb-8043-22052e4e21ac/ports', u'rel': u'self'}, {u'href': u'http://localhost/nodes/e71b345b-71ae-4adb-8043-22052e4e21ac/ports', u'rel': u'bookmark'}], u'chassis_uuid': None, u'instance_info': {u'foo': u'bar', u'image_url': u'******', u'configdrive': u'******'}} {2} ironic.tests.unit.conductor.test_manager.NodeTraitsTestCase.test_remove_node_traits_node_trait_not_found [0.089588s] ... ok {22} ironic.tests.unit.api.controllers.v1.test_node.TestPost.test_create_node_chassis_uuid_always_in_response [0.191280s] ... ok {2} ironic.tests.unit.conductor.test_manager.RaidHardwareTypeTestCases.test_get_raid_logical_disk_properties_iface_not_supported [0.030061s] ... ok {2} ironic.tests.unit.conductor.test_manager.SensorsTestCase.test_send_sensor_task_shutdown [0.242825s] ... ok {2} ironic.tests.unit.conductor.test_manager.StoreConfigDriveTestCase.test_store_configdrive_swift [0.064420s] ... ok {2} ironic.tests.unit.conductor.test_manager.UpdateNodeTestCase.test_update_node_hardware_type [0.125707s] ... ok {2} ironic.tests.unit.conductor.test_manager.UpdatePortTestCase.test_update_port_node_deleting_state [0.107171s] ... ok {2} ironic.tests.unit.conductor.test_manager.UpdatePortgroupTestCase.test_update_portgroup_to_node_in_manageable_state [0.223343s] ... ok {2} ironic.tests.unit.conductor.test_manager.UpdateVolumeTargetTestCase.test_update_volume_target_duplicate [0.082513s] ... ok {2} ironic.tests.unit.conductor.test_rpcapi.RPCAPITestCase.test_can_send_rescue_true [0.014405s] ... ok {2} ironic.tests.unit.conductor.test_steps.GetValidatedStepsFromTemplatesTestCase.test_invalid_parameter_value [0.080831s] ... ok {2} ironic.tests.unit.conductor.test_task_manager.ProvisionNotifyTestCase.test_notify_unstable_to_unstable [0.013135s] ... ok {2} ironic.tests.unit.conductor.test_task_manager.TaskManagerTestCase.test_shared_lock_get_volconn_exception [0.028496s] ... ok {2} ironic.tests.unit.conductor.test_utils.DeployingErrorHandlerTestCase.test_deploying_error_handler_no_cleanup [0.019675s] ... ok {2} ironic.tests.unit.conductor.test_utils.ErrorHandlersTestCase.test_cleaning_error_handler [0.019141s] ... ok {2} ironic.tests.unit.conductor.test_utils.ErrorHandlersTestCase.test_cleaning_error_handler_cleanfail [0.018541s] ... ok {2} ironic.tests.unit.conductor.test_utils.ErrorHandlersTestCase.test_cleanup_rescuewait_timeout_known_exc [0.021752s] ... ok POST: /v1/ports {'local_link_connection': {'switch_info': 'value3', 'port_id': 'Ethernet1/15', 'switch_id': 'zz:zz:zz:zz:zz:zz'}, 'node_uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123', 'uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c781', 'extra': {}, 'pxe_enabled': True, 'portgroup_uuid': '6eb02b44-18a3-4659-8c0b-8d2802581ae4', 'physical_network': None, 'address': '52:54:00:cf:2d:31', 'is_smartnic': False} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-288d9da0-0f96-4acb-a15c-15c8f9cd3bdc X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Expected a MAC address or OpenFlow datapath ID but received zz:zz:zz:zz:zz:zz.\"}"} {28} ironic.tests.unit.api.controllers.v1.test_port.TestPost.test_create_port_local_link_connection_switch_id_bad_mac [0.086873s] ... ok {2} ironic.tests.unit.conductor.test_utils.ErrorHandlersTestCase.test_rescuing_error_handler_ironic_exc [0.015147s] ... ok {2} ironic.tests.unit.conductor.test_utils.MiscTestCase.test_remove_node_rescue_password_save_false [0.033312s] ... ok {2} ironic.tests.unit.conductor.test_utils.NodePowerActionTestCase.test__can_skip_state_change_db_not_in_sync [0.105934s] ... ok {2} ironic.tests.unit.conductor.test_utils.NodePowerActionTestCase.test_node_power_action_power_on_notify [0.115959s] ... ok {2} ironic.tests.unit.db.sqlalchemy.test_migrations.TestMigrationsMySQL.test_upgrade_twice ... SKIPPED: Backend 'mysql+pymysql' is unavailable: Could not connect {2} ironic.tests.unit.db.test_bios_settings.DbBIOSSettingTestCase.test_delete_bios_setting_list [0.063392s] ... ok {2} ironic.tests.unit.db.test_conductor.DbConductorTestCase.test_touch_conductor_not_found [0.018904s] ... ok {2} ironic.tests.unit.db.test_conductor.DbConductorTestCase.test_unregister_conductor [0.028735s] ... ok PATCH: /v1/ports/cd90817c-18ab-42f3-8eda-056fcab2d596 [{'path': '/extra/vif_port_id', 'op': 'remove'}] GOT:Response: 200 OK Content-Type: application/json Openstack-Request-Id: req-3cf2cb51-8cad-43a9-9efa-f9512e104289 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.27 {"local_link_connection": {"switch_info": "switch1", "port_id": "Ethernet3/1", "switch_id": "0a:1b:2c:3d:4e:5f"}, "node_uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "uuid": "cd90817c-18ab-42f3-8eda-056fcab2d596", "links": [{"href": "http://localhost/v1/ports/cd90817c-18ab-42f3-8eda-056fcab2d596", "rel": "self"}, {"href": "http://localhost/ports/cd90817c-18ab-42f3-8eda-056fcab2d596", "rel": "bookmark"}], "extra": {}, "pxe_enabled": true, "portgroup_uuid": null, "updated_at": "2019-06-06T07:02:16.338142+00:00", "address": "52:55:00:cf:2d:31", "internal_info": {}, "created_at": "2019-06-06T07:02:16.277615+00:00"} {2} ironic.tests.unit.db.test_deploy_templates.DbDeployTemplateTestCase.test_update_steps_add [0.031238s] ... ok {10} ironic.tests.unit.api.controllers.v1.test_port.TestPatch.test_remove_extra_vif_port_id [0.131087s] ... ok {2} ironic.tests.unit.db.test_node_tags.DbNodeTagTestCase.test_get_node_tags_empty [0.029849s] ... ok {2} ironic.tests.unit.db.test_node_traits.DbNodeTraitTestCase.test_get_node_traits_by_node_id [0.048446s] ... ok {2} ironic.tests.unit.db.test_node_traits.DbNodeTraitTestCase.test_set_node_traits [0.032022s] ... ok {2} ironic.tests.unit.db.test_node_traits.DbNodeTraitTestCase.test_unset_node_traits [0.052124s] ... ok {2} ironic.tests.unit.db.test_nodes.DbNodeTestCase.test_allocations_get_destroyed_after_destroying_a_node_by_uuid [0.034894s] ... ok {2} ironic.tests.unit.db.test_nodes.DbNodeTestCase.test_check_node_list_impossible [0.020187s] ... ok POST: /v1/nodes {'instance_uuid': None, 'uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123', 'driver_info': {'fake_password': 'fakepass', 'foo': 'bar'}, 'extra': {}, 'driver': 'fake-hardware', 'properties': {'memory_mb': '4096', 'cpu_arch': 'x86_64', 'local_gb': '10', 'cpus': '8'}, 'maintenance': False, 'chassis_uuid': '1a1a1a1a-2b2b-3c3c-4d4d-5e5e5e5e5e5e', 'instance_info': {'foo': 'bar', 'image_url': 'http://example.com/test_image_url', 'configdrive': 'TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQ='}} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-40135a83-3967-4728-b1fd-e5d5f055f4ee X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Chassis 1a1a1a1a-2b2b-3c3c-4d4d-5e5e5e5e5e5e could not be found.\"}"} {19} ironic.tests.unit.api.controllers.v1.test_node.TestPost.test_create_node_chassis_uuid_not_found [0.054333s] ... ok {2} ironic.tests.unit.db.test_nodes.DbNodeTestCase.test_release_non_locked_node [0.030822s] ... ok {2} ironic.tests.unit.db.test_nodes.DbNodeTestCase.test_update_node_inspection_finished_at [0.033398s] ... ok {2} ironic.tests.unit.db.test_portgroups.DbportgroupTestCase.test_get_portgroup_by_uuid_that_does_not_exist [0.022547s] ... ok {2} ironic.tests.unit.db.test_portgroups.DbportgroupTestCase.test_get_portgroup_list [0.036320s] ... ok {2} ironic.tests.unit.db.test_portgroups.DbportgroupTestCase.test_update_portgroup_duplicated_name [0.027686s] ... ok {2} ironic.tests.unit.db.test_volume_connectors.DbVolumeConnectorTestCase.test_destroy_volume_connector [0.027298s] ... ok {2} ironic.tests.unit.db.test_volume_connectors.DbVolumeConnectorTestCase.test_get_volume_connectors_by_node_id_that_does_not_exist [0.032587s] ... ok {2} ironic.tests.unit.db.test_volume_connectors.DbVolumeConnectorTestCase.test_update_volume_connector [0.032668s] ... ok {2} ironic.tests.unit.dhcp.test_neutron.TestNeutron.test__get_port_ip_address_with_exception [0.070483s] ... ok {2} ironic.tests.unit.drivers.modules.ansible.test_deploy.TestAnsibleDeploy.test_tear_down [0.088664s] ... ok PATCH: /v1/nodes/7c677448-053b-4c79-9ea3-e646b2da216d [{'path': '/network_interface', 'value': 'flat', 'op': 'add'}] GOT:Response: 200 OK Content-Type: application/json Openstack-Request-Id: req-d1e2ff52-f23d-4ddd-b695-3dd9171cfe43 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"target_power_state": null, "automated_clean": null, "inspect_interface": null, "links": [{"href": "http://localhost/v1/nodes/7c677448-053b-4c79-9ea3-e646b2da216d", "rel": "self"}, {"href": "http://localhost/nodes/7c677448-053b-4c79-9ea3-e646b2da216d", "rel": "bookmark"}], "target_provision_state": null, "deploy_step": {}, "storage_interface": null, "conductor_group": "", "protected_reason": null, "maintenance_reason": null, "states": [{"href": "http://localhost/v1/nodes/7c677448-053b-4c79-9ea3-e646b2da216d/states", "rel": "self"}, {"href": "http://localhost/nodes/7c677448-053b-4c79-9ea3-e646b2da216d/states", "rel": "bookmark"}], "traits": [], "provision_state": "available", "clean_step": {}, "vendor_interface": null, "description": null, "uuid": "7c677448-053b-4c79-9ea3-e646b2da216d", "console_enabled": false, "extra": {}, "raid_config": {}, "provision_updated_at": null, "power_state": null, "last_error": null, "target_raid_config": {}, "network_interface": null, "inspection_started_at": null, "inspection_finished_at": null, "maintenance": false, "conductor": null, "power_interface": null, "driver": "fake-hardware", "updated_at": null, "volume": [{"href": "http://localhost/v1/nodes/7c677448-053b-4c79-9ea3-e646b2da216d/volume", "rel": "self"}, {"href": "http://localhost/nodes/7c677448-053b-4c79-9ea3-e646b2da216d/volume", "rel": "bookmark"}], "raid_interface": null, "rescue_interface": null, "boot_interface": null, "reservation": null, "management_interface": null, "properties": {"memory_mb": "4096", "cpu_arch": "x86_64", "local_gb": "10", "cpus": "8"}, "bios_interface": null, "instance_uuid": null, "name": null, "driver_info": {"fake_password": "******", "foo": "bar"}, "resource_class": null, "fault": null, "created_at": "2019-06-06T07:02:15.702171+00:00", "portgroups": [{"href": "http://localhost/v1/nodes/7c677448-053b-4c79-9ea3-e646b2da216d/portgroups", "rel": "self"}, {"href": "http://localhost/nodes/7c677448-053b-4c79-9ea3-e646b2da216d/portgroups", "rel": "bookmark"}], "deploy_interface": null, "ports": [{"href": "http://localhost/v1/nodes/7c677448-053b-4c79-9ea3-e646b2da216d/ports", "rel": "self"}, {"href": "http://localhost/nodes/7c677448-053b-4c79-9ea3-e646b2da216d/ports", "rel": "bookmark"}], "console_interface": null, "protected": false, "driver_internal_info": {"private_state": "secret value"}, "chassis_uuid": null, "owner": null, "instance_info": {"foo": "bar", "image_url": "******", "configdrive": "******"}, "allocation_uuid": null} {20} ironic.tests.unit.api.controllers.v1.test_node.TestPatch.test_update_network_interface [0.128475s] ... ok {2} ironic.tests.unit.drivers.modules.ansible.test_deploy.TestAnsibleMethods.test__prepare_variables_root_device_hints [0.085645s] ... ok {2} ironic.tests.unit.drivers.modules.drac.test_common.DracCommonMethodsTestCase.test_parse_driver_info_invalid_port [0.020006s] ... ok {2} ironic.tests.unit.drivers.modules.drac.test_inspect.DracInspectionTestCase.test__guess_root_disk [0.066610s] ... ok {2} ironic.tests.unit.drivers.modules.drac.test_job.DracJobTestCase.test_list_unfinished_jobs_fail [0.046110s] ... ok {2} ironic.tests.unit.drivers.modules.drac.test_power.DracPowerTestCase.test_set_power_state [0.091086s] ... ok {2} ironic.tests.unit.drivers.modules.drac.test_raid.DracManageVirtualDisksTestCase.test_abandon_config [0.022934s] ... ok {2} ironic.tests.unit.drivers.modules.drac.test_raid.DracRaidInterfaceTestCase.test_create_configuration_with_nested_raid_level [0.131930s] ... ok {2} ironic.tests.unit.drivers.modules.ilo.test_common.IloValidateParametersTestCase.test_parse_driver_info_missing_address [0.021927s] ... ok {2} ironic.tests.unit.drivers.modules.ilo.test_console.IloConsoleInterfaceTestCase.test_validate_exc [0.069332s] ... ok GET: /v1/volume/connectors/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 {} GOT:{u'node_uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c781', u'links': [{u'href': u'http://localhost/v1/volume/connectors/1be26c0b-03f2-4d2e-ae87-c02d7f33c781', u'rel': u'self'}, {u'href': u'http://localhost/volume/connectors/1be26c0b-03f2-4d2e-ae87-c02d7f33c781', u'rel': u'bookmark'}], u'extra': {}, u'created_at': u'2019-06-06T07:02:16.857302+00:00', u'updated_at': None, u'connector_id': u'iqn.2012-06.com.example:initiator', u'type': u'iqn'} {12} ironic.tests.unit.api.controllers.v1.test_volume_connector.TestListVolumeConnectors.test_get_one [0.050740s] ... ok {2} ironic.tests.unit.drivers.modules.ilo.test_inspect.IloInspectTestCase.test_get_properties [0.063930s] ... ok {2} ironic.tests.unit.drivers.modules.ilo.test_management.IloManagementTestCase.test_reset_ilo [0.067642s] ... ok {2} ironic.tests.unit.drivers.modules.ilo.test_power.IloPowerTestCase.test_reboot_no_timeout [0.071591s] ... ok PUT: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states/provision {'target': 'provide'} GOT:Response: 202 Accepted Location: http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states Openstack-Request-Id: req-ef0e0adc-e746-4fd4-9482-757b4f08b991 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.4 {2} ironic.tests.unit.drivers.modules.irmc.test_boot.IRMCDeployPrivateMethodsTestCase.test__prepare_floppy_image_exception [0.078261s] ... ok {6} ironic.tests.unit.api.controllers.v1.test_node.TestPut.test_provide_from_manage [0.101049s] ... ok {2} ironic.tests.unit.drivers.modules.irmc.test_boot.IRMCDeployPrivateMethodsTestCase.test_parse_deploy_info_ok [0.074165s] ... ok {2} ironic.tests.unit.drivers.modules.irmc.test_boot.IRMCVirtualMediaBootTestCase.test_prepare_instance_with_secure_boot [0.088444s] ... ok {2} ironic.tests.unit.drivers.modules.irmc.test_boot.IRMCVirtualMediaBootWithVolumeTestCase.test__configure_boot_from_volume_fc [0.114001s] ... ok {2} ironic.tests.unit.drivers.modules.network.test_common.TestCommonFunctions.test_get_free_port_like_object_ignores_empty_portgroup [0.074246s] ... ok {2} ironic.tests.unit.drivers.modules.network.test_common.TestNeutronVifPortIDMixin.test_update_portgroup_address_no_vif [0.099237s] ... ok PATCH: /v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4 [{'path': '/address', 'op': 'remove'}] GOT:Response: 200 OK Content-Type: application/json Openstack-Request-Id: req-135850a6-6b4a-44de-9437-b40b30d1eb1d X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"node_uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "uuid": "6eb02b44-18a3-4659-8c0b-8d2802581ae4", "links": [{"href": "http://localhost/v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4", "rel": "self"}, {"href": "http://localhost/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4", "rel": "bookmark"}], "extra": {}, "created_at": "2019-06-06T07:02:17.196412+00:00", "updated_at": null, "ports": [{"href": "http://localhost/v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4/ports", "rel": "self"}, {"href": "http://localhost/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4/ports", "rel": "bookmark"}], "standalone_ports_supported": true, "mode": "active-backup", "address": null, "internal_info": {"bar": "buzz"}, "properties": {}, "name": "pg.1"} {17} ironic.tests.unit.api.controllers.v1.test_portgroup.TestPatch.test_remove_address [0.115450s] ... ok {2} ironic.tests.unit.drivers.modules.network.test_common.TestNeutronVifPortIDMixin.test_update_portgroup_nostandalone_ports_vif_nopxe_ports [0.102134s] ... ok {2} ironic.tests.unit.drivers.modules.network.test_common.TestVifPortIDMixin.test_vif_list_extra_and_internal_priority [0.097678s] ... ok {2} ironic.tests.unit.drivers.modules.redfish.test_bios.RedfishBiosTestCase.test_loading_error [0.020256s] ... ok {2} ironic.tests.unit.drivers.modules.storage.test_cinder.CinderInterfaceTestCase.test__generate_connector_iscsi [0.063654s] ... ok {2} ironic.tests.unit.drivers.modules.storage.test_cinder.CinderInterfaceTestCase.test__generate_connector_single_path [0.060483s] ... ok {2} ironic.tests.unit.drivers.modules.test_agent.TestAgentDeploy.test_deploy_has_started_multiple_commands [0.066270s] ... ok {2} ironic.tests.unit.drivers.modules.test_agent.TestAgentDeploy.test_reboot_to_instance_localboot [0.132234s] ... ok {2} ironic.tests.unit.drivers.modules.test_agent_base_vendor.AgentDeployMixinTest.test_configure_local_boot_enforce_persistent_boot_device_never [0.085179s] ... ok {2} ironic.tests.unit.drivers.modules.test_agent_base_vendor.AgentDeployMixinTest.test_reboot_and_finish_deploy_power_on_fails [0.156619s] ... ok {2} ironic.tests.unit.drivers.modules.test_console_utils.ConsoleUtilsTestCase.test__stop_console_exception [0.016834s] ... ok {2} ironic.tests.unit.drivers.modules.test_console_utils.ConsoleUtilsTestCase.test__stop_console_nopid [0.016649s] ... ok {2} ironic.tests.unit.drivers.modules.test_console_utils.ConsoleUtilsTestCase.test_start_shellinabox_console_fail_no_pid [0.033465s] ... ok GET: /v1/volume/connectors?detail=False {} GOT:{u'connectors': [{u'node_uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'type': u'iqn', u'uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c781', u'links': [{u'href': u'http://localhost/v1/volume/connectors/1be26c0b-03f2-4d2e-ae87-c02d7f33c781', u'rel': u'self'}, {u'href': u'http://localhost/volume/connectors/1be26c0b-03f2-4d2e-ae87-c02d7f33c781', u'rel': u'bookmark'}], u'connector_id': u'iqn.2012-06.com.example:initiator'}]} {9} ironic.tests.unit.api.controllers.v1.test_volume_connector.TestListVolumeConnectors.test_detail_false [0.083371s] ... ok {2} ironic.tests.unit.drivers.modules.test_deploy_utils.AgentMethodsTestCase.test_get_clean_steps_override_priorities_none [0.059397s] ... ok {2} ironic.tests.unit.drivers.modules.test_deploy_utils.GetPxeBootConfigTestCase.test_get_pxe_boot_file_cpu_in_by_arch [0.013210s] ... ok {2} ironic.tests.unit.drivers.modules.test_deploy_utils.ISCSISetupAndHandleErrorsTestCase.test_no_parent_device [0.010297s] ... ok {2} ironic.tests.unit.drivers.modules.test_deploy_utils.PhysicalWorkTestCase.test_deploy_partition_image_disk_label [0.023522s] ... ok {2} ironic.tests.unit.drivers.modules.test_deploy_utils.PhysicalWorkTestCase.test_login_iscsi_calls_raises_during_cleanup [0.028902s] ... ok {2} ironic.tests.unit.drivers.modules.test_deploy_utils.SwitchPxeConfigTestCase.test_switch_ipxe_config_partition_image [0.024761s] ... ok {2} ironic.tests.unit.drivers.modules.test_deploy_utils.SwitchPxeConfigTestCase.test_switch_uefi_elilo_pxe_config_partition_image [0.017746s] ... ok {2} ironic.tests.unit.drivers.modules.test_deploy_utils.TestBuildInstanceInfoForHttpProvisioning.test_build_instance_info_force_raw [0.117474s] ... ok {2} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolDriverTestCase.test_management_interface_validate_good [0.068927s] ... ok {2} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolPrivateMethodTestCase.test__exec_ipmitool_two_calls_to_diff_address [0.029187s] ... ok {2} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolPrivateMethodTestCase.test__exec_ipmitool_with_port [0.031352s] ... ok {2} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolPrivateMethodTestCase.test__make_password_file_str_password [0.026174s] ... ok {2} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolPrivateMethodTestCase.test__make_password_file_tempfile_unknown_exception [0.024445s] ... ok PUT: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states/provision {'target': 'active', 'configdrive': {'meta_data': {'hostname': 'example.com'}, 'user_data': {'serialize': 'me'}, 'network_data': {'links': []}}} GOT:Response: 202 Accepted Location: http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states Openstack-Request-Id: req-b2b8289d-7f1f-4ff0-9e86-55edbc8f9738 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {11} ironic.tests.unit.api.controllers.v1.test_node.TestPut.test_provision_with_deploy_configdrive_as_dict_all_fields [0.091161s] ... ok {2} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolShellinaboxTestCase.test_console_validate [0.049823s] ... ok {2} ironic.tests.unit.drivers.modules.test_ipxe.iPXEBootTestCase.test_prepare_instance_netboot [0.085219s] ... ok {2} ironic.tests.unit.drivers.modules.test_ipxe.iPXEBootTestCase.test_prepare_ramdisk_cleaning [0.131159s] ... ok {2} ironic.tests.unit.drivers.modules.test_ipxe.iPXEBootTestCase.test_prepare_ramdisk_force_persistent_boot_device_bool_false [0.120886s] ... ok {2} ironic.tests.unit.drivers.modules.test_pxe.PXEBootTestCase.test_prepare_instance_localboot [0.092595s] ... ok {2} ironic.tests.unit.drivers.modules.test_pxe.PXEBootTestCase.test_prepare_ramdisk_ipxe_swift [0.155200s] ... ok {2} ironic.tests.unit.drivers.modules.test_snmp.SNMPDeviceDriverTestCase.test_apc_masterswitch_power_on [0.017381s] ... ok {2} ironic.tests.unit.drivers.modules.test_snmp.SNMPDeviceDriverTestCase.test_aten_power_on [0.027870s] ... ok {2} ironic.tests.unit.drivers.modules.test_snmp.SNMPDeviceDriverTestCase.test_aten_power_state_off [0.027462s] ... ok {2} ironic.tests.unit.drivers.modules.test_snmp.SNMPDriverTestCase.test_reboot_error [0.074173s] ... ok {2} ironic.tests.unit.drivers.modules.test_snmp.SNMPValidateParametersTestCase.test__parse_driver_info_eatonpower [0.019520s] ... ok {2} ironic.tests.unit.drivers.modules.test_snmp.SNMPValidateParametersTestCase.test__parse_driver_info_snmp_v3_auth_badproto [0.020263s] ... ok {2} ironic.tests.unit.drivers.modules.ucs.test_helper.UcsValidateParametersTestCase.test_connect_ucsm [0.161875s] ... ok {2} ironic.tests.unit.drivers.modules.ucs.test_helper.UcsValidateParametersTestCase.test_parse_driver_info [0.057425s] ... ok {2} ironic.tests.unit.drivers.modules.xclarity.test_management.XClarityManagementDriverTestCase.test_validate [0.066569s] ... ok {2} ironic.tests.unit.drivers.test_base.CleanStepDecoratorTestCase.test__validate_argsinfo_not_dict [0.011728s] ... ok {2} ironic.tests.unit.drivers.test_base.RAIDInterfaceTestCase.test_validate_no_target_raid_config [0.013447s] ... ok {2} ironic.tests.unit.drivers.test_ilo.Ilo5HardwareTestCase.test_override_with_no_raid [0.072510s] ... ok {2} ironic.tests.unit.objects.test_allocation.TestAllocationObject.test_refresh [0.019677s] ... ok {2} ironic.tests.unit.objects.test_node.TestConvertToVersion.test_allocation_id_unsupported_missing [0.016116s] ... ok {2} ironic.tests.unit.objects.test_node.TestConvertToVersion.test_allocation_id_unsupported_set_no_remove_non_default [0.016227s] ... ok {2} ironic.tests.unit.objects.test_node.TestConvertToVersion.test_bios_supported_set [0.021261s] ... ok {2} ironic.tests.unit.objects.test_node.TestNodePayloads.test_node_set_provision_state_payload [0.023290s] ... ok {2} ironic.tests.unit.objects.test_notification.TestNotificationBase.test_populate_schema_missing_required_obj_field [0.009405s] ... ok {2} ironic.tests.unit.objects.test_port.TestConvertToVersion.test_is_smartnic_supported_missing [0.018024s] ... ok {2} ironic.tests.unit.objects.test_port.TestConvertToVersion.test_physnet_unsupported_set_no_remove_non_default [0.013318s] ... ok {2} ironic.tests.unit.objects.test_portgroup.TestPortgroupObject.test_get_bad_id_and_uuid_and_address_and_name [0.019572s] ... ok {2} ironic.tests.unit.objects.test_portgroup.TestPortgroupObject.test_save [0.022897s] ... ok {2} ironic.tests.unit.objects.test_volume_connector.TestVolumeConnectorObject.test_get_by_id [0.023848s] ... ok {2} ironic.tests.unit.objects.test_volume_target.TestVolumeTargetObject.test_payload_schemas [0.014222s] ... ok POST: /v1/nodes {'instance_uuid': None, 'uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123', 'driver_info': {'fake_password': 'fakepass', 'foo': 'bar'}, 'extra': {}, 'driver': 'fake-hardware', 'boot_interface': 'fake', 'properties': {'memory_mb': '4096', 'cpu_arch': 'x86_64', 'local_gb': '10', 'cpus': '8'}, 'maintenance': False, 'chassis_uuid': 'e74c40e0-d825-11e2-a28f-0800200c9a66', 'instance_info': {'foo': 'bar', 'image_url': 'http://example.com/test_image_url', 'configdrive': 'TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQ='}} GOT:Response: 406 Not Acceptable Content-Type: application/json Openstack-Request-Id: req-2f8fd2d7-8515-44a4-affe-388929fffbfe X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.30 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Request not acceptable.\"}"} POST: /v1/nodes {'instance_uuid': None, 'uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123', 'driver_info': {'fake_password': 'fakepass', 'foo': 'bar'}, 'extra': {}, 'driver': 'fake-hardware', 'properties': {'memory_mb': '4096', 'cpu_arch': 'x86_64', 'local_gb': '10', 'cpus': '8'}, 'console_interface': 'fake', 'maintenance': False, 'chassis_uuid': 'e74c40e0-d825-11e2-a28f-0800200c9a66', 'instance_info': {'foo': 'bar', 'image_url': 'http://example.com/test_image_url', 'configdrive': 'TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQ='}} GOT:Response: 406 Not Acceptable Content-Type: application/json Openstack-Request-Id: req-366b8aea-7e5a-41d0-91a1-4326876788ac X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.30 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Request not acceptable.\"}"} POST: /v1/nodes {'instance_uuid': None, 'uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123', 'driver_info': {'fake_password': 'fakepass', 'foo': 'bar'}, 'extra': {}, 'driver': 'fake-hardware', 'deploy_interface': 'fake', 'properties': {'memory_mb': '4096', 'cpu_arch': 'x86_64', 'local_gb': '10', 'cpus': '8'}, 'maintenance': False, 'chassis_uuid': 'e74c40e0-d825-11e2-a28f-0800200c9a66', 'instance_info': {'foo': 'bar', 'image_url': 'http://example.com/test_image_url', 'configdrive': 'TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQ='}} GOT:Response: 406 Not Acceptable Content-Type: application/json Openstack-Request-Id: req-068c7a60-8299-4326-ab4a-6a164338ba73 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.30 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Request not acceptable.\"}"} POST: /v1/nodes {'instance_uuid': None, 'uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123', 'driver_info': {'fake_password': 'fakepass', 'foo': 'bar'}, 'extra': {}, 'driver': 'fake-hardware', 'properties': {'memory_mb': '4096', 'cpu_arch': 'x86_64', 'local_gb': '10', 'cpus': '8'}, 'maintenance': False, 'chassis_uuid': 'e74c40e0-d825-11e2-a28f-0800200c9a66', 'instance_info': {'foo': 'bar', 'image_url': 'http://example.com/test_image_url', 'configdrive': 'TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQ='}, 'inspect_interface': 'fake'} GOT:Response: 406 Not Acceptable Content-Type: application/json Openstack-Request-Id: req-3f73d599-1a4a-4980-a0d1-c493fcea863f X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.30 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Request not acceptable.\"}"} POST: /v1/nodes {'instance_uuid': None, 'management_interface': 'fake', 'uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123', 'driver_info': {'fake_password': 'fakepass', 'foo': 'bar'}, 'extra': {}, 'driver': 'fake-hardware', 'properties': {'memory_mb': '4096', 'cpu_arch': 'x86_64', 'local_gb': '10', 'cpus': '8'}, 'maintenance': False, 'chassis_uuid': 'e74c40e0-d825-11e2-a28f-0800200c9a66', 'instance_info': {'foo': 'bar', 'image_url': 'http://example.com/test_image_url', 'configdrive': 'TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQ='}} GOT:Response: 406 Not Acceptable Content-Type: application/json Openstack-Request-Id: req-63de98ae-865e-48d0-986d-aab22b37bee6 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.30 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Request not acceptable.\"}"} POST: /v1/nodes {'instance_uuid': None, 'uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123', 'driver_info': {'fake_password': 'fakepass', 'foo': 'bar'}, 'extra': {}, 'power_interface': 'fake', 'driver': 'fake-hardware', 'properties': {'memory_mb': '4096', 'cpu_arch': 'x86_64', 'local_gb': '10', 'cpus': '8'}, 'maintenance': False, 'chassis_uuid': 'e74c40e0-d825-11e2-a28f-0800200c9a66', 'instance_info': {'foo': 'bar', 'image_url': 'http://example.com/test_image_url', 'configdrive': 'TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQ='}} GOT:Response: 406 Not Acceptable Content-Type: application/json Openstack-Request-Id: req-c7e0595f-9d3b-4daf-99a0-53cdda1a5ca1 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.30 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Request not acceptable.\"}"} POST: /v1/nodes {'instance_uuid': None, 'uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123', 'raid_interface': 'fake', 'extra': {}, 'driver': 'fake-hardware', 'properties': {'memory_mb': '4096', 'cpu_arch': 'x86_64', 'local_gb': '10', 'cpus': '8'}, 'driver_info': {'fake_password': 'fakepass', 'foo': 'bar'}, 'maintenance': False, 'chassis_uuid': 'e74c40e0-d825-11e2-a28f-0800200c9a66', 'instance_info': {'foo': 'bar', 'image_url': 'http://example.com/test_image_url', 'configdrive': 'TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQ='}} GOT:Response: 406 Not Acceptable Content-Type: application/json Openstack-Request-Id: req-08c73b93-c9f2-4479-93e2-dc091c07f0c1 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.30 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Request not acceptable.\"}"} POST: /v1/nodes {'instance_uuid': None, 'uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123', 'driver_info': {'fake_password': 'fakepass', 'foo': 'bar'}, 'extra': {}, 'driver': 'fake-hardware', 'properties': {'memory_mb': '4096', 'cpu_arch': 'x86_64', 'local_gb': '10', 'cpus': '8'}, 'maintenance': False, 'chassis_uuid': 'e74c40e0-d825-11e2-a28f-0800200c9a66', 'instance_info': {'foo': 'bar', 'image_url': 'http://example.com/test_image_url', 'configdrive': 'TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQ='}, 'vendor_interface': 'fake'} GOT:Response: 406 Not Acceptable Content-Type: application/json Openstack-Request-Id: req-bfdba1e8-65b4-4f71-b47c-4d7b225949b0 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.30 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Request not acceptable.\"}"} {1} ironic.tests.unit.api.controllers.v1.test_node.TestPost.test_create_node_specify_interfaces_bad_version [0.169025s] ... ok GET: /v1/nodes/0d73ae51-5e62-4f97-a9ae-26115d941440 {} GOT:{u'target_power_state': None, u'links': [{u'href': u'http://localhost/v1/nodes/0d73ae51-5e62-4f97-a9ae-26115d941440', u'rel': u'self'}, {u'href': u'http://localhost/nodes/0d73ae51-5e62-4f97-a9ae-26115d941440', u'rel': u'bookmark'}], u'target_provision_state': None, u'last_error': None, u'updated_at': None, u'maintenance_reason': None, u'provision_state': None, u'uuid': u'0d73ae51-5e62-4f97-a9ae-26115d941440', u'console_enabled': False, u'extra': {}, u'provision_updated_at': None, u'maintenance': False, u'power_state': None, u'driver': u'fake-hardware', u'reservation': None, u'properties': {u'memory_mb': u'4096', u'cpu_arch': u'x86_64', u'local_gb': u'10', u'cpus': u'8'}, u'instance_uuid': None, u'driver_info': {u'fake_password': u'******', u'foo': u'bar'}, u'created_at': u'2019-06-06T07:02:16.027011+00:00', u'ports': [{u'href': u'http://localhost/v1/nodes/0d73ae51-5e62-4f97-a9ae-26115d941440/ports', u'rel': u'self'}, {u'href': u'http://localhost/nodes/0d73ae51-5e62-4f97-a9ae-26115d941440/ports', u'rel': u'bookmark'}], u'chassis_uuid': None, u'instance_info': {u'foo': u'bar', u'image_url': u'******', u'configdrive': u'******'}} GET: /v1/nodes/0d73ae51-5e62-4f97-a9ae-26115d941440 {} GOT:{u'target_power_state': None, u'links': [{u'href': u'http://localhost/v1/nodes/0d73ae51-5e62-4f97-a9ae-26115d941440', u'rel': u'self'}, {u'href': u'http://localhost/nodes/0d73ae51-5e62-4f97-a9ae-26115d941440', u'rel': u'bookmark'}], u'target_provision_state': None, u'last_error': None, u'updated_at': None, u'maintenance_reason': None, u'provision_state': None, u'uuid': u'0d73ae51-5e62-4f97-a9ae-26115d941440', u'console_enabled': False, u'extra': {}, u'provision_updated_at': None, u'maintenance': False, u'power_state': None, u'driver': u'fake-hardware', u'reservation': None, u'properties': {u'memory_mb': u'4096', u'cpu_arch': u'x86_64', u'local_gb': u'10', u'cpus': u'8'}, u'instance_uuid': None, u'driver_info': {u'fake_password': u'******', u'foo': u'bar'}, u'created_at': u'2019-06-06T07:02:16.027011+00:00', u'ports': [{u'href': u'http://localhost/v1/nodes/0d73ae51-5e62-4f97-a9ae-26115d941440/ports', u'rel': u'self'}, {u'href': u'http://localhost/nodes/0d73ae51-5e62-4f97-a9ae-26115d941440/ports', u'rel': u'bookmark'}], u'chassis_uuid': None, u'instance_info': {u'foo': u'bar', u'image_url': u'******', u'configdrive': u'******'}} GET: /nodes/0d73ae51-5e62-4f97-a9ae-26115d941440 {} GOT:{u'target_power_state': None, u'links': [{u'href': u'http://localhost/v1/nodes/0d73ae51-5e62-4f97-a9ae-26115d941440', u'rel': u'self'}, {u'href': u'http://localhost/nodes/0d73ae51-5e62-4f97-a9ae-26115d941440', u'rel': u'bookmark'}], u'target_provision_state': None, u'last_error': None, u'updated_at': None, u'maintenance_reason': None, u'provision_state': None, u'uuid': u'0d73ae51-5e62-4f97-a9ae-26115d941440', u'console_enabled': False, u'extra': {}, u'provision_updated_at': None, u'maintenance': False, u'power_state': None, u'driver': u'fake-hardware', u'reservation': None, u'properties': {u'memory_mb': u'4096', u'cpu_arch': u'x86_64', u'local_gb': u'10', u'cpus': u'8'}, u'instance_uuid': None, u'driver_info': {u'fake_password': u'******', u'foo': u'bar'}, u'created_at': u'2019-06-06T07:02:16.027011+00:00', u'ports': [{u'href': u'http://localhost/v1/nodes/0d73ae51-5e62-4f97-a9ae-26115d941440/ports', u'rel': u'self'}, {u'href': u'http://localhost/nodes/0d73ae51-5e62-4f97-a9ae-26115d941440/ports', u'rel': u'bookmark'}], u'chassis_uuid': None, u'instance_info': {u'foo': u'bar', u'image_url': u'******', u'configdrive': u'******'}} {16} ironic.tests.unit.api.controllers.v1.test_node.TestListNodes.test_links [0.141183s] ... ok PUT: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states/provision {'rescue_password': 'password', 'target': 'active'} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-ef682f09-a83b-46e2-bbe1-72057414b194 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.38 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"\\\"rescue_password\\\" is only valid when setting target provision state to rescue\"}"} {19} ironic.tests.unit.api.controllers.v1.test_node.TestPut.test_provision_unexpected_rescue_password [0.104647s] ... ok PUT: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states/raid {'logical_disks': [{'size_gb': 100, 'raid_level': 1}]} GOT:Response: 204 No Content Openstack-Request-Id: req-69953c7c-caf3-4ff0-bef6-c5abc8cabe76 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.12 {11} ironic.tests.unit.api.controllers.v1.test_node.TestPut.test_put_raid [0.078475s] ... ok GET: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123 {} GOT:{u'target_power_state': None, u'automated_clean': None, u'inspect_interface': None, u'links': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'bookmark'}], u'target_provision_state': None, u'deploy_step': {}, u'storage_interface': None, u'conductor_group': u'', u'protected_reason': u'reason!', u'maintenance_reason': None, u'states': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states', u'rel': u'bookmark'}], u'traits': [], u'provision_state': u'active', u'clean_step': {}, u'vendor_interface': None, u'uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'console_enabled': False, u'extra': {}, u'raid_config': {}, u'provision_updated_at': None, u'power_state': None, u'last_error': None, u'target_raid_config': {}, u'network_interface': None, u'inspection_started_at': None, u'inspection_finished_at': None, u'maintenance': False, u'driver': u'fake-hardware', u'power_interface': None, u'updated_at': None, u'volume': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/volume', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/volume', u'rel': u'bookmark'}], u'raid_interface': None, u'rescue_interface': None, u'boot_interface': None, u'reservation': None, u'management_interface': None, u'properties': {u'memory_mb': u'4096', u'cpu_arch': u'x86_64', u'local_gb': u'10', u'cpus': u'8'}, u'bios_interface': None, u'instance_uuid': None, u'name': None, u'driver_info': {u'fake_password': u'******', u'foo': u'bar'}, u'resource_class': None, u'fault': None, u'created_at': u'2019-06-06T07:02:15.610095+00:00', u'portgroups': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/portgroups', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/portgroups', u'rel': u'bookmark'}], u'deploy_interface': None, u'instance_info': {u'foo': u'bar', u'image_url': u'******', u'configdrive': u'******'}, u'console_interface': None, u'protected': True, u'driver_internal_info': {u'private_state': u'secret value'}, u'chassis_uuid': None, u'ports': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'bookmark'}]} {25} ironic.tests.unit.api.controllers.v1.test_node.TestListNodes.test_node_protected_with_reason [0.102412s] ... ok PATCH: /v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4 [{'path': '/extra/foo1', 'value': 'bar1', 'op': 'add'}, {'path': '/extra/foo2', 'value': 'bar2', 'op': 'add'}, {'path': '/extra/foo3', 'value': 'bar3', 'op': 'add'}] GOT:Response: 200 OK Content-Type: application/json Openstack-Request-Id: req-2a276eb8-a503-4183-9c89-040c7e28b551 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"node_uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "uuid": "6eb02b44-18a3-4659-8c0b-8d2802581ae4", "links": [{"href": "http://localhost/v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4", "rel": "self"}, {"href": "http://localhost/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4", "rel": "bookmark"}], "extra": {"foo1": "bar1", "foo2": "bar2", "foo3": "bar3"}, "created_at": "2019-06-06T07:02:16.229571+00:00", "updated_at": null, "ports": [{"href": "http://localhost/v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4/ports", "rel": "self"}, {"href": "http://localhost/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4/ports", "rel": "bookmark"}], "standalone_ports_supported": true, "mode": "active-backup", "address": "52:54:00:cf:2d:31", "internal_info": {"bar": "buzz"}, "properties": {}, "name": "pg.1"} {5} ironic.tests.unit.api.controllers.v1.test_portgroup.TestPatch.test_add_multi [0.117155s] ... ok PATCH: /v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4 [{'path': '/extra/non-existent', 'op': 'remove'}] GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-5a79ed34-e612-480d-a06b-478554895093 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Couldn't apply patch '{'path': '/extra/non-existent', 'op': 'remove'}'. Reason: can't remove non-existent object 'non-existent'\"}"} {17} ironic.tests.unit.api.controllers.v1.test_portgroup.TestPatch.test_remove_non_existent_property_fail [0.070585s] ... ok POST: /v1/ports {'local_link_connection': {'switch_info': 'switch1', 'port_id': 'Ethernet3/1', 'switch_id': '0a:1b:2c:3d:4e:5f'}, 'node_uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123', 'uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c781', 'extra': {}, 'pxe_enabled': True, 'portgroup_uuid': '6eb02b44-18a3-4659-8c0b-8d2802581ae4', 'physical_network': 'physnet1', 'address': '52:54:00:cf:2d:31', 'is_smartnic': False} GOT:Response: 406 Not Acceptable Content-Type: application/json Openstack-Request-Id: req-c030ed67-06d4-4713-b059-35a9f4849dc2 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.33 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Request not acceptable.\"}"} {10} ironic.tests.unit.api.controllers.v1.test_port.TestPost.test_create_port_with_physical_network_old_api_version [0.093043s] ... ok PUT: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states/provision {'target': 'active'} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-7c6eacda-167e-43b2-a7cb-4e8153cf3537 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"The requested action \\\"active\\\" can not be performed on node \\\"1be26c0b-03f2-4d2e-ae87-c02d7f33c123\\\" while it is in state \\\"adopting\\\".\"}"} PUT: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states/provision {'target': 'rebuild'} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-74837cbc-9e28-460d-88c4-b0d580d0ffad X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"The requested action \\\"rebuild\\\" can not be performed on node \\\"1be26c0b-03f2-4d2e-ae87-c02d7f33c123\\\" while it is in state \\\"adopting\\\".\"}"} PUT: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states/provision {'target': 'deleted'} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-a991cc67-8e4e-486f-83c3-af7004f41572 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"The requested action \\\"deleted\\\" can not be performed on node \\\"1be26c0b-03f2-4d2e-ae87-c02d7f33c123\\\" while it is in state \\\"adopting\\\".\"}"} {8} ironic.tests.unit.api.controllers.v1.test_node.TestPut.test_bad_requests_in_adopting_state [0.153206s] ... ok PUT: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states/provision {'target': 'not-supported'} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-7d7ca556-4320-473b-9293-5442fc937097 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"The requested action \\\"not-supported\\\" can not be performed on node \\\"1be26c0b-03f2-4d2e-ae87-c02d7f33c123\\\" while it is in state \\\"available\\\".\"}"} {6} ironic.tests.unit.api.controllers.v1.test_node.TestPut.test_provision_invalid_state_request [0.080081s] ... ok POST: /v1/ports {'local_link_connection': {'switch_info': 'switch1', 'port_id': 'Ethernet3/1', 'switch_id': '0a:1b:2c:3d:4e:5f'}, 'uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c781', 'extra': {}, 'pxe_enabled': True, 'portgroup_uuid': '6eb02b44-18a3-4659-8c0b-8d2802581ae4', 'physical_network': None, 'address': '52:54:00:cf:2d:31', 'is_smartnic': False} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-a9657f75-dd92-485e-b355-a1ef98aae659 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Invalid input for field/attribute node_uuid. Value: 'None'. Mandatory field missing.\"}"} {28} ironic.tests.unit.api.controllers.v1.test_port.TestPost.test_create_port_no_mandatory_field_node_uuid [0.069991s] ... ok PATCH: /v1/volume/targets/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 [{'path': '/boot_index', 'value': 0, 'op': 'replace'}] GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-c59f2752-5676-4ecf-a912-7d33cb5264ab X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"The requested action \\\"volume target update\\\" can not be performed on node \\\"1be26c0b-03f2-4d2e-ae87-c02d7f33c123\\\" while it is in state \\\"power on\\\".\"}"} {9} ironic.tests.unit.api.controllers.v1.test_volume_target.TestPatch.test_replace_invalid_power_state [0.104418s] ... ok PUT: /v1/nodes/node-39/management/boot_device {'boot_device': 'pxe'} GOT:Response: 204 No Content Openstack-Request-Id: req-7d79c079-c76a-4987-9e1e-475f3a413912 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.5 {19} ironic.tests.unit.api.controllers.v1.test_node.TestPut.test_set_boot_device_by_name [0.092709s] ... ok Running batches of 50 until migrations have been completed. Data migrations have completed. {9} ironic.tests.unit.cmd.test_dbsync.OnlineMigrationTestCase.test__run_online_data_migrations_batches [0.028613s] ... ok {9} ironic.tests.unit.cmd.test_status.TestUpgradeChecks.test__check_obj_versions_bad [0.024988s] ... ok {9} ironic.tests.unit.common.test_glance_service.TestServiceUtils.test_parse_image_id_fail [0.016104s] ... ok {9} ironic.tests.unit.common.test_hash_ring.HashRingManagerTestCase.test_hash_ring_manager_automatic_retry [0.092459s] ... ok {9} ironic.tests.unit.common.test_image_service.FileImageServiceTestCase.test_show [0.023742s] ... ok {9} ironic.tests.unit.common.test_images.FsImageTestCase.test_create_isolinux_image_for_bios [0.038770s] ... ok {9} ironic.tests.unit.common.test_images.IronicImagesTestCase.test_download_size [0.019885s] ... ok {9} ironic.tests.unit.common.test_json_rpc.TestClient.test_call_failure [0.022243s] ... ok {9} ironic.tests.unit.common.test_json_rpc.TestClient.test_cast_failure [0.021180s] ... ok {9} ironic.tests.unit.common.test_json_rpc.TestService.test_authenticated_no_admin_role [0.050294s] ... ok {9} ironic.tests.unit.common.test_keystone.KeystoneTestCase.test_get_session [0.009964s] ... ok {9} ironic.tests.unit.common.test_network.GetPortgroupByIdTestCase.test_portgroup_by_id [0.122472s] ... ok {9} ironic.tests.unit.common.test_neutron.TestGetPhysnetsByPortUUID.test_get_physnets_by_port_uuid_single_segment_no_physnet [0.022514s] ... ok {9} ironic.tests.unit.common.test_pxe_utils.PXEInterfacesTestCase.test__get_deploy_image_info_missing_deploy_kernel [0.038497s] ... ok {9} ironic.tests.unit.common.test_pxe_utils.PXEInterfacesTestCase.test_get_volume_pxe_options [0.122931s] ... ok {9} ironic.tests.unit.common.test_pxe_utils.PXEInterfacesTestCase.test_parse_driver_info_missing_rescue_ramdisk [0.034956s] ... ok {9} ironic.tests.unit.common.test_pxe_utils.TestPXEUtils.test_create_pxe_config_uefi_mac_address [0.120387s] ... ok {9} ironic.tests.unit.common.test_raid.RaidPublicMethodsTestCase.test_update_raid_info_okay_current_capabilities_empty [0.082671s] ... ok {9} ironic.tests.unit.common.test_rpc.TestRequestContextSerializer.test_serialize_context [0.016922s] ... ok {9} ironic.tests.unit.common.test_swift.SwiftTestCase.test_get_temp_url [0.124791s] ... ok {9} ironic.tests.unit.common.test_utils.GenericUtilsTestCase.test_validate_and_normalize_datapath_id [0.017920s] ... ok {9} ironic.tests.unit.conductor.test_allocations.AllocationTestCase.test_destroy_allocation_without_node [0.045851s] ... ok {9} ironic.tests.unit.conductor.test_base_manager.KeepAliveTestCase.test__conductor_service_record_keepalive [0.250834s] ... ok {9} ironic.tests.unit.conductor.test_base_manager.KeepAliveTestCase.test__conductor_service_record_keepalive_failed_db_conn [0.253536s] ... ok GET: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123 {} GOT:{u'target_power_state': None, u'inspect_interface': None, u'links': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'bookmark'}], u'target_provision_state': None, u'deploy_step': {}, u'storage_interface': None, u'updated_at': None, u'maintenance_reason': None, u'states': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states', u'rel': u'bookmark'}], u'traits': [], u'provision_state': u'available', u'clean_step': {}, u'vendor_interface': None, u'uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'console_enabled': False, u'extra': {}, u'raid_config': {}, u'provision_updated_at': None, u'power_state': None, u'last_error': None, u'target_raid_config': {}, u'network_interface': None, u'inspection_started_at': None, u'inspection_finished_at': None, u'maintenance': False, u'driver': u'fake-hardware', u'power_interface': None, u'volume': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/volume', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/volume', u'rel': u'bookmark'}], u'raid_interface': None, u'rescue_interface': None, u'boot_interface': None, u'reservation': None, u'management_interface': None, u'properties': {u'memory_mb': u'4096', u'cpu_arch': u'x86_64', u'local_gb': u'10', u'cpus': u'8'}, u'bios_interface': None, u'instance_uuid': None, u'name': None, u'driver_info': {u'fake_password': u'******', u'foo': u'bar'}, u'resource_class': None, u'fault': None, u'created_at': u'2019-06-06T07:02:15.746761+00:00', u'portgroups': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/portgroups', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/portgroups', u'rel': u'bookmark'}], u'deploy_interface': None, u'instance_info': {u'foo': u'bar', u'image_url': u'******', u'configdrive': u'******'}, u'console_interface': None, u'driver_internal_info': {u'private_state': u'secret value'}, u'chassis_uuid': None, u'ports': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'bookmark'}]} GET: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123 {} GOT:{u'target_power_state': None, u'inspect_interface': None, u'links': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'bookmark'}], u'target_provision_state': None, u'deploy_step': {}, u'storage_interface': None, u'conductor_group': u'', u'updated_at': None, u'maintenance_reason': None, u'states': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states', u'rel': u'bookmark'}], u'traits': [], u'provision_state': u'available', u'clean_step': {}, u'vendor_interface': None, u'uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'console_enabled': False, u'extra': {}, u'raid_config': {}, u'provision_updated_at': None, u'power_state': None, u'last_error': None, u'target_raid_config': {}, u'network_interface': None, u'inspection_started_at': None, u'inspection_finished_at': None, u'maintenance': False, u'driver': u'fake-hardware', u'power_interface': None, u'volume': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/volume', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/volume', u'rel': u'bookmark'}], u'raid_interface': None, u'rescue_interface': None, u'boot_interface': None, u'reservation': None, u'management_interface': None, u'properties': {u'memory_mb': u'4096', u'cpu_arch': u'x86_64', u'local_gb': u'10', u'cpus': u'8'}, u'bios_interface': None, u'instance_uuid': None, u'name': None, u'driver_info': {u'fake_password': u'******', u'foo': u'bar'}, u'resource_class': None, u'fault': None, u'created_at': u'2019-06-06T07:02:15.746761+00:00', u'portgroups': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/portgroups', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/portgroups', u'rel': u'bookmark'}], u'deploy_interface': None, u'instance_info': {u'foo': u'bar', u'image_url': u'******', u'configdrive': u'******'}, u'console_interface': None, u'driver_internal_info': {u'private_state': u'secret value'}, u'chassis_uuid': None, u'ports': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'bookmark'}]} {14} ironic.tests.unit.api.controllers.v1.test_node.TestListNodes.test_node_conductor_group_hidden_in_lower_version [0.116916s] ... ok {9} ironic.tests.unit.conductor.test_base_manager.StartStopTestCase.test_start_recover_nodes_stuck [0.853476s] ... ok {9} ironic.tests.unit.conductor.test_manager.ChangeNodePowerStateTestCase.test_node_set_power_state_notif_set_power_fail [0.269918s] ... ok {9} ironic.tests.unit.conductor.test_manager.DestroyVolumeTargetTestCase.test_destroy_volume_target_already_destroyed [0.118223s] ... ok {9} ironic.tests.unit.conductor.test_manager.DoNodeCleanTestCase.test__do_next_clean_step_automated_bad_step_return_value [0.283868s] ... ok {9} ironic.tests.unit.conductor.test_manager.DoNodeDeployTestCase.test__do_node_deploy_ok [0.332953s] ... ok {9} ironic.tests.unit.conductor.test_manager.DoNodeRescueTestCase.test_do_node_rescue_when_network_validate_fail [0.112270s] ... ok POST: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/volume/targets {'boot_index': 0, 'uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c781', 'extra': {}, 'volume_type': 'iscsi', 'node_uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123', 'volume_id': '12345678', 'properties': {'target_iqn': 'iqn.foo'}} GOT:Response: 403 Forbidden Content-Type: application/json Openstack-Request-Id: req-461dac47-ab1f-42fd-b7ef-80ccb182a03c X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Operation not permitted.\"}"} {1} ironic.tests.unit.api.controllers.v1.test_node.TestPost.test_post_volume_targets_subresource [0.086673s] ... ok {9} ironic.tests.unit.conductor.test_manager.ManagerDoSyncPowerStateTestCase.test_maintenance_on_upgrade_lock [0.022982s] ... ok {9} ironic.tests.unit.conductor.test_manager.ManagerDoSyncPowerStateTestCase.test_max_retries_exceeded [0.044188s] ... ok {9} ironic.tests.unit.conductor.test_manager.NodeInspectHardware.test_inspect_hardware_return_other_state [0.269692s] ... ok {9} ironic.tests.unit.conductor.test_manager.ParallelPowerSyncTestCase.test__sync_power_states_9_nodes_1_worker [0.020837s] ... ok {9} ironic.tests.unit.conductor.test_manager.UpdateVolumeConnectorTestCase.test_update_volume_connector_node_power_on [0.068515s] ... ok {9} ironic.tests.unit.conductor.test_manager.VendorPassthruTestCase.test_driver_vendor_passthru_http_method_not_supported [0.175610s] ... ok {9} ironic.tests.unit.conductor.test_rpcapi.RPCAPITestCase.test_remove_node_traits [0.034505s] ... ok {9} ironic.tests.unit.conductor.test_rpcapi.RPCAPITestCase.test_vendor_passthru [0.026276s] ... ok {9} ironic.tests.unit.conductor.test_task_manager.ExclusiveLockDecoratorTestCase.test_with_shared_lock_task_second_arg [0.016862s] ... ok {9} ironic.tests.unit.conductor.test_task_manager.TaskManagerStateModelTestCases.test_process_event_fsm_raises [0.019749s] ... ok PUT: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states/provision {'rescue_password': 'password', 'target': 'rescue'} GOT:Response: 406 Not Acceptable Content-Type: application/json Openstack-Request-Id: req-f963435d-eab2-4cdb-8317-3163908feffe X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.37 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Request not acceptable.\"}"} {9} ironic.tests.unit.conductor.test_task_manager.TaskManagerTestCase.test_shared_lock_build_driver_exception [0.041266s] ... ok {11} ironic.tests.unit.api.controllers.v1.test_node.TestPut.test_rescue_raises_error_before_1_38 [0.065276s] ... ok PATCH: /v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4 [{'path': '/node_uuid', 'value': '12506333-a81c-4d59-9987-889ed5f8687b', 'op': 'replace'}] GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-76f8fd9a-ec96-452b-833a-8ea62efc1438 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Node 12506333-a81c-4d59-9987-889ed5f8687b could not be found.\"}"} {5} ironic.tests.unit.api.controllers.v1.test_portgroup.TestPatch.test_replace_non_existent_node_uuid [0.082857s] ... ok {5} ironic.tests.unit.api.controllers.v1.test_types.TestJsonPatchType.test_cannot_remove_mandatory_attr [0.039301s] ... ok {9} ironic.tests.unit.conductor.test_utils.DeployingErrorHandlerTestCase.test_cleanup_after_timeout [0.022307s] ... ok {9} ironic.tests.unit.conductor.test_utils.ErrorHandlersTestCase.test_provision_error_handler_no_worker [0.016385s] ... ok {5} ironic.tests.unit.api.controllers.v1.test_types.TestLocalLinkConnectionType.test_local_link_connection_type_local_link_keys_mandatory [0.015674s] ... ok {9} ironic.tests.unit.conductor.test_utils.MiscTestCase.test_notify_conductor_resume_clean [0.100675s] ... ok {9} ironic.tests.unit.conductor.test_utils.ValidatePortPhysnetTestCase.test_validate_port_physnet_1_port_portgroup_w_physnet_update_add_1 [0.081486s] ... ok {5} ironic.tests.unit.api.controllers.v1.test_types.TestLocalLinkConnectionType.test_local_link_connection_type_smart_nic_keys_with_optional [0.015763s] ... ok {9} ironic.tests.unit.conductor.test_utils.ValidatePortPhysnetTestCase.test_validate_port_physnet_empty_portgroup_update_1 [0.077672s] ... ok {5} ironic.tests.unit.api.controllers.v1.test_utils.TestApiUtils.test_allow_node_rebuild_with_configdrive [0.017351s] ... ok GET: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123 {} GOT:{u'target_power_state': None, u'automated_clean': None, u'inspect_interface': None, u'links': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'bookmark'}], u'target_provision_state': None, u'deploy_step': {}, u'storage_interface': None, u'conductor_group': u'', u'protected_reason': None, u'maintenance_reason': None, u'states': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states', u'rel': u'bookmark'}], u'traits': [], u'provision_state': u'available', u'clean_step': {}, u'vendor_interface': None, u'uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'console_enabled': False, u'extra': {}, u'raid_config': {}, u'provision_updated_at': None, u'power_state': None, u'last_error': None, u'target_raid_config': {}, u'network_interface': None, u'inspection_started_at': None, u'inspection_finished_at': None, u'maintenance': False, u'conductor': u'fake.conductor', u'driver': u'fake-hardware', u'power_interface': None, u'updated_at': None, u'volume': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/volume', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/volume', u'rel': u'bookmark'}], u'raid_interface': None, u'rescue_interface': None, u'boot_interface': None, u'reservation': None, u'management_interface': None, u'properties': {u'memory_mb': u'4096', u'cpu_arch': u'x86_64', u'local_gb': u'10', u'cpus': u'8'}, u'bios_interface': None, u'instance_uuid': None, u'name': None, u'driver_info': {u'fake_password': u'******', u'foo': u'bar'}, u'resource_class': None, u'fault': None, u'created_at': u'2019-06-06T07:02:15.655682+00:00', u'portgroups': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/portgroups', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/portgroups', u'rel': u'bookmark'}], u'deploy_interface': None, u'instance_info': {u'foo': u'bar', u'image_url': u'******', u'configdrive': u'******'}, u'console_interface': None, u'protected': False, u'driver_internal_info': {u'private_state': u'secret value'}, u'chassis_uuid': None, u'owner': None, u'ports': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'bookmark'}]} GET: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123 {} GOT:{u'target_power_state': None, u'automated_clean': None, u'inspect_interface': None, u'links': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'bookmark'}], u'target_provision_state': None, u'deploy_step': {}, u'storage_interface': None, u'conductor_group': u'', u'protected_reason': None, u'maintenance_reason': None, u'states': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states', u'rel': u'bookmark'}], u'traits': [], u'provision_state': u'available', u'clean_step': {}, u'vendor_interface': None, u'uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'console_enabled': False, u'extra': {}, u'raid_config': {}, u'provision_updated_at': None, u'power_state': None, u'last_error': None, u'target_raid_config': {}, u'maintenance': False, u'network_interface': None, u'inspection_started_at': None, u'inspection_finished_at': None, u'description': u'useful piece', u'conductor': u'fake.conductor', u'driver': u'fake-hardware', u'power_interface': None, u'updated_at': None, u'volume': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/volume', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/volume', u'rel': u'bookmark'}], u'raid_interface': None, u'rescue_interface': None, u'boot_interface': None, u'reservation': None, u'management_interface': None, u'properties': {u'memory_mb': u'4096', u'cpu_arch': u'x86_64', u'local_gb': u'10', u'cpus': u'8'}, u'bios_interface': None, u'instance_uuid': None, u'name': None, u'driver_info': {u'fake_password': u'******', u'foo': u'bar'}, u'resource_class': None, u'fault': None, u'created_at': u'2019-06-06T07:02:15.655682+00:00', u'portgroups': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/portgroups', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/portgroups', u'rel': u'bookmark'}], u'deploy_interface': None, u'instance_info': {u'foo': u'bar', u'image_url': u'******', u'configdrive': u'******'}, u'console_interface': None, u'protected': False, u'driver_internal_info': {u'private_state': u'secret value'}, u'chassis_uuid': None, u'owner': None, u'ports': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'bookmark'}]} {5} ironic.tests.unit.api.controllers.v1.test_utils.TestApiUtils.test_check_allowed_fields_resource_class_fail [0.019977s] ... ok {31} ironic.tests.unit.api.controllers.v1.test_node.TestListNodes.test_hide_fields_in_newer_versions_description [0.121184s] ... ok {9} ironic.tests.unit.db.test_api.GetNotVersionsTestCase.test_get_not_versions_null [0.053706s] ... ok {5} ironic.tests.unit.api.controllers.v1.test_utils.TestApiUtils.test_is_path_removed_subpath_success [0.020240s] ... ok {9} ironic.tests.unit.db.test_chassis.DbChassisTestCase.test_update_chassis_that_does_not_exist [0.028607s] ... ok {5} ironic.tests.unit.api.controllers.v1.test_utils.TestApiUtils.test_is_path_updated_subpath_success [0.015504s] ... ok DELETE: /v1/nodes/node-39/traits/CUSTOM_1 GOT:Response: 404 Not Found Content-Type: application/json Openstack-Request-Id: req-312449b0-5b37-4cfa-96ba-3c52bfd8b6d0 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.37 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Node 1be26c0b-03f2-4d2e-ae87-c02d7f33c123 could not be found.\"}"} {9} ironic.tests.unit.db.test_deploy_templates.DbDeployTemplateTestCase.test_create_duplicate_uuid [0.022596s] ... ok {5} ironic.tests.unit.api.controllers.v1.test_utils.TestNodeIdent.test_get_rpc_node_expect_name [0.019103s] ... ok {8} ironic.tests.unit.api.controllers.v1.test_node.TestTraits.test_delete_trait_fails_if_node_not_found [0.088982s] ... ok {9} ironic.tests.unit.db.test_deploy_templates.DbDeployTemplateTestCase.test_get_deploy_template_list_by_names [0.029919s] ... ok {5} ironic.tests.unit.api.controllers.v1.test_utils.TestVendorPassthru.test_get_controller_reserved_names [0.016410s] ... ok {9} ironic.tests.unit.db.test_node_tags.DbNodeTagTestCase.test_set_node_tags [0.036533s] ... ok {9} ironic.tests.unit.db.test_node_traits.DbNodeTraitTestCase.test_delete_node_trait_node_not_found [0.026944s] ... ok {5} ironic.tests.unit.api.controllers.v1.test_utils.TestVendorPassthru.test_vendor_passthru_attach_byte_to_byte [0.018632s] ... ok {9} ironic.tests.unit.db.test_node_traits.DbNodeTraitTestCase.test_get_node_traits_empty [0.037961s] ... ok {9} ironic.tests.unit.db.test_nodes.DbNodeTestCase.test_get_node_by_name [0.089784s] ... ok {9} ironic.tests.unit.db.test_nodes.DbNodeTestCase.test_ports_get_destroyed_after_destroying_a_node [0.055846s] ... ok {9} ironic.tests.unit.db.test_nodes.DbNodeTestCase.test_reservation_after_release [0.076503s] ... ok {9} ironic.tests.unit.db.test_nodes.DbNodeTestCase.test_update_node [0.053376s] ... ok {9} ironic.tests.unit.db.test_ports.DbPortTestCase.test_get_port_list [0.057875s] ... ok {9} ironic.tests.unit.dhcp.test_neutron.TestNeutron.test_update_dhcp_fails [0.113661s] ... ok PATCH: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports [{'path': '/extra/foo', 'value': 'bar', 'op': 'add'}] GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-36dea9cb-2b21-4fe2-a204-c14051206a85 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Missing argument: \\\"port_uuid\\\"\"}"} {9} ironic.tests.unit.drivers.modules.ansible.test_deploy.TestAnsibleMethods.test__validate_clean_steps_missing [0.034563s] ... ok {25} ironic.tests.unit.api.controllers.v1.test_node.TestPatch.test_patch_ports_subresource_no_port_id [0.077487s] ... ok {9} ironic.tests.unit.drivers.modules.cimc.test_management.CIMCManagementTestCase.test_validate [0.099680s] ... ok {9} ironic.tests.unit.drivers.modules.drac.test_management.DracManagementInternalMethodsTestCase.test_set_boot_device_called_with_no_change [0.029864s] ... ok PUT: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states/console {'enabled': 'true'} GOT:Response: 202 Accepted Location: http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states/console Openstack-Request-Id: req-0cfde58a-78b5-45d4-a820-ab880f7a319d X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {19} ironic.tests.unit.api.controllers.v1.test_node.TestPut.test_set_console_mode_enabled [0.067268s] ... ok {9} ironic.tests.unit.drivers.modules.drac.test_periodic_task.DracPeriodicTaskTestCase.test__check_node_raid_jobs_with_failed_job [0.130450s] ... ok GET: /v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4?fields=uuid,spongebob {} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-fc517c3b-e425-4e39-9a43-960c1583fded X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Field(s) \\\"spongebob\\\" are not valid\"}"} {9} ironic.tests.unit.drivers.modules.drac.test_raid.DracCreateRaidConfigurationHelpersTestCase.test__max_volume_size_mb [0.057532s] ... ok {28} ironic.tests.unit.api.controllers.v1.test_portgroup.TestListPortgroups.test_get_custom_fields_invalid_fields [0.083321s] ... ok {9} ironic.tests.unit.drivers.modules.ibmc.test_management.IBMCManagementTestCase.test_get_properties [0.086164s] ... ok {9} ironic.tests.unit.drivers.modules.ibmc.test_utils.IBMCUtilsTestCase.test_parse_driver_info_default_scheme_with_port [0.034309s] ... ok {9} ironic.tests.unit.drivers.modules.ilo.test_bios.IloBiosTestCase.test_cache_bios_settings [0.092083s] ... ok PUT: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states/provision {'target': 'active', 'configdrive': {'user_data': 'foo'}} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-036f3883-4050-4d2d-afd2-93e5b4e5fa73 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Providing a JSON object for configdrive is only supported starting with API version 1.56\"}"} {6} ironic.tests.unit.api.controllers.v1.test_node.TestPut.test_provision_with_deploy_configdrive_as_dict_unsupported [0.086168s] ... ok {9} ironic.tests.unit.drivers.modules.ilo.test_boot.IloBootPrivateMethodsTestCase.test__validate_whole_disk_image [0.148565s] ... ok {9} ironic.tests.unit.drivers.modules.ilo.test_boot.IloPXEBootTestCase.test_prepare_instance_bios [0.126256s] ... ok {9} ironic.tests.unit.drivers.modules.ilo.test_common.IloCommonMethodsTestCase.test_eject_vmedia_devices [0.101508s] ... ok {9} ironic.tests.unit.drivers.modules.ilo.test_common.IloCommonMethodsTestCase.test_get_server_post_state [0.079187s] ... ok {9} ironic.tests.unit.drivers.modules.ilo.test_common.IloValidateParametersTestCase.test_parse_driver_info_missing_multiple_params [0.034809s] ... ok {9} ironic.tests.unit.drivers.modules.ilo.test_firmware_processor.FirmwareProcessorTestCase.test__download_http_based_fw_to_downloads_the_fw_file [0.026793s] ... ok {9} ironic.tests.unit.drivers.modules.ilo.test_management.IloManagementTestCase.test_reset_secure_boot_keys_to_default [0.075816s] ... ok {9} ironic.tests.unit.drivers.modules.ilo.test_vendor.VendorPassthruTestCase.test__validate_boot_into_iso_manage [0.063532s] ... ok {9} ironic.tests.unit.drivers.modules.irmc.test_boot.IRMCDeployPrivateMethodsTestCase.test__attach_virtual_fd_fail [0.072687s] ... ok {9} ironic.tests.unit.drivers.modules.irmc.test_boot.IRMCPXEBootBasicTestCase.test_prepare_instance_ramdisk_pxe_conf_exists [0.126664s] ... ok {9} ironic.tests.unit.drivers.modules.irmc.test_boot.IRMCVirtualMediaBootTestCase.test_clean_up_ramdisk [0.092687s] ... ok {9} ironic.tests.unit.drivers.modules.irmc.test_boot.IRMCVirtualMediaBootTestCase.test_validate_glance_image [0.115116s] ... ok {9} ironic.tests.unit.drivers.modules.irmc.test_boot.IRMCVirtualMediaBootWithVolumeTestCase.test_clean_up_instance_error [0.108941s] ... ok {9} ironic.tests.unit.drivers.modules.irmc.test_inspect.IRMCInspectTestCase.test_inspect_hardware [0.257239s] ... ok {9} ironic.tests.unit.drivers.modules.irmc.test_power.IRMCPowerInternalMethodsTestCase.test__set_power_state_power_off_ok [0.064286s] ... ok {9} ironic.tests.unit.drivers.modules.irmc.test_power.IRMCPowerInternalMethodsTestCase.test__set_power_state_soft_reboot_ok [0.060208s] ... ok {9} ironic.tests.unit.drivers.modules.irmc.test_raid.IRMCRaidConfigurationInternalMethodsTestCase.test__fail_validate_capacity_raid_1 [0.020843s] ... ok {9} ironic.tests.unit.drivers.modules.network.test_common.TestNeutronVifPortIDMixin.test_update_portgroup_address_fail [0.077725s] ... ok {9} ironic.tests.unit.drivers.modules.network.test_common.TestVifPortIDMixin.test_get_current_vif_internal_info_provisioning [0.071736s] ... ok {9} ironic.tests.unit.drivers.modules.network.test_common.TestVifPortIDMixin.test_vif_list_internal [0.077474s] ... ok {9} ironic.tests.unit.drivers.modules.network.test_flat.TestFlatInterface.test__bind_flat_ports_set_binding_host_id [0.069004s] ... ok {9} ironic.tests.unit.drivers.modules.network.test_flat.TestFlatInterface.test__bind_flat_ports_set_binding_host_id_raise [0.072898s] ... ok {9} ironic.tests.unit.drivers.modules.network.test_neutron.NeutronInterfaceTestCase.test_remove_cleaning_network [0.075150s] ... ok {9} ironic.tests.unit.drivers.modules.network.test_neutron.NeutronInterfaceTestCase.test_unconfigure_tenant_networks_smartnic [0.070447s] ... ok {9} ironic.tests.unit.drivers.modules.redfish.test_inspect.RedfishInspectTestCase.test_inspect_hardware_ignore_missing_cpu [0.085105s] ... ok {9} ironic.tests.unit.drivers.modules.redfish.test_management.RedfishManagementTestCase.test_inject_nmi_fail [0.126555s] ... ok {9} ironic.tests.unit.drivers.modules.redfish.test_management.RedfishManagementTestCase.test_set_boot_device_fail [0.105231s] ... ok {9} ironic.tests.unit.drivers.modules.redfish.test_utils.RedfishUtilsTestCase.test_parse_driver_info_default_scheme [0.022462s] ... ok {9} ironic.tests.unit.drivers.modules.redfish.test_utils.RedfishUtilsTestCase.test_parse_driver_info_missing_info [0.021633s] ... ok {9} ironic.tests.unit.drivers.modules.redfish.test_utils.RedfishUtilsTestCase.test_parse_driver_info_valid_capath [0.035252s] ... ok {9} ironic.tests.unit.drivers.modules.test_agent.TestAgentDeploy.test_validate [0.090304s] ... ok {9} ironic.tests.unit.drivers.modules.test_agent_base_vendor.AgentDeployMixinTest.test_configure_local_boot_whole_disk_image [0.067393s] ... ok {9} ironic.tests.unit.drivers.modules.test_agent_base_vendor.AgentDeployMixinTest.test_post_clean_step_hook [0.031367s] ... ok {9} ironic.tests.unit.drivers.modules.test_agent_client.TestAgentClient.test_start_iscsi_target_custom_port [0.017270s] ... ok {9} ironic.tests.unit.drivers.modules.test_console_utils.ConsoleUtilsTestCase.test__ensure_console_pid_dir_exists_fail [0.017395s] ... ok POST: /v1/portgroups {'node_uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123', 'extra': {}, 'standalone_ports_supported': True, 'address': '52:54:00:cf:2d:31', 'name': 'fooname'} GOT:Response: 201 Created Content-Type: application/json Location: http://localhost/v1/portgroups/1f2b61d8-d5be-4990-b649-c30f6df2611d Openstack-Request-Id: req-88ecf21b-1eab-4acd-afd0-6bf9f228d4cb X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"node_uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "uuid": "1f2b61d8-d5be-4990-b649-c30f6df2611d", "links": [{"href": "http://localhost/v1/portgroups/1f2b61d8-d5be-4990-b649-c30f6df2611d", "rel": "self"}, {"href": "http://localhost/portgroups/1f2b61d8-d5be-4990-b649-c30f6df2611d", "rel": "bookmark"}], "extra": {}, "created_at": "2019-06-06T07:02:16.547445+00:00", "updated_at": null, "ports": [{"href": "http://localhost/v1/portgroups/1f2b61d8-d5be-4990-b649-c30f6df2611d/ports", "rel": "self"}, {"href": "http://localhost/portgroups/1f2b61d8-d5be-4990-b649-c30f6df2611d/ports", "rel": "bookmark"}], "standalone_ports_supported": true, "mode": "active-backup", "address": "52:54:00:cf:2d:31", "internal_info": {}, "properties": {}, "name": "fooname"} GET: /v1/portgroups/1f2b61d8-d5be-4990-b649-c30f6df2611d {} GOT:{u'node_uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'uuid': u'1f2b61d8-d5be-4990-b649-c30f6df2611d', u'links': [{u'href': u'http://localhost/v1/portgroups/1f2b61d8-d5be-4990-b649-c30f6df2611d', u'rel': u'self'}, {u'href': u'http://localhost/portgroups/1f2b61d8-d5be-4990-b649-c30f6df2611d', u'rel': u'bookmark'}], u'extra': {}, u'created_at': u'2019-06-06T07:02:16.547445+00:00', u'updated_at': None, u'properties': {}, u'standalone_ports_supported': True, u'mode': u'active-backup', u'address': u'52:54:00:cf:2d:31', u'internal_info': {}, u'ports': [{u'href': u'http://localhost/v1/portgroups/1f2b61d8-d5be-4990-b649-c30f6df2611d/ports', u'rel': u'self'}, {u'href': u'http://localhost/portgroups/1f2b61d8-d5be-4990-b649-c30f6df2611d/ports', u'rel': u'bookmark'}], u'name': u'fooname'} {21} ironic.tests.unit.api.controllers.v1.test_portgroup.TestPost.test_create_portgroup_generate_uuid [0.134963s] ... ok GET: /v1/volume/targets/?limit=3 {} GOT:{u'targets': [{u'boot_index': 0, u'uuid': u'85df0786-a7b8-4cbb-9466-fde721b4df77', u'links': [{u'href': u'http://localhost/v1/volume/targets/85df0786-a7b8-4cbb-9466-fde721b4df77', u'rel': u'self'}, {u'href': u'http://localhost/volume/targets/85df0786-a7b8-4cbb-9466-fde721b4df77', u'rel': u'bookmark'}], u'volume_type': u'iscsi', u'node_uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'volume_id': u'12345678'}, {u'boot_index': 1, u'uuid': u'648f15d0-1652-4715-9f8f-b0dfec733dea', u'links': [{u'href': u'http://localhost/v1/volume/targets/648f15d0-1652-4715-9f8f-b0dfec733dea', u'rel': u'self'}, {u'href': u'http://localhost/volume/targets/648f15d0-1652-4715-9f8f-b0dfec733dea', u'rel': u'bookmark'}], u'volume_type': u'iscsi', u'node_uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'volume_id': u'12345678'}, {u'boot_index': 2, u'uuid': u'48b04a71-3988-44ef-a168-50e24ca090c6', u'links': [{u'href': u'http://localhost/v1/volume/targets/48b04a71-3988-44ef-a168-50e24ca090c6', u'rel': u'self'}, {u'href': u'http://localhost/volume/targets/48b04a71-3988-44ef-a168-50e24ca090c6', u'rel': u'bookmark'}], u'volume_type': u'iscsi', u'node_uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'volume_id': u'12345678'}], u'next': u'http://localhost/v1/volume/targets?sort_key=id&sort_dir=asc&limit=3&marker=48b04a71-3988-44ef-a168-50e24ca090c6'} {9} ironic.tests.unit.drivers.modules.test_console_utils.ConsoleUtilsTestCase.test__get_console_pid_not_a_num [0.016116s] ... ok {12} ironic.tests.unit.api.controllers.v1.test_volume_target.TestListVolumeTargets.test_collection_links [0.109280s] ... ok DELETE: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/traits/CUSTOM_TRAIT1 GOT:Response: 404 Not Found Content-Type: application/json {"error_message": "{\"code\": 404, \"description\": \"\", \"title\": \"Not Found\"}"} {9} ironic.tests.unit.drivers.modules.test_deploy_utils.ParseInstanceInfoCapabilitiesTestCase.test_is_trusted_boot_requested_true [0.009530s] ... ok {19} ironic.tests.unit.api.controllers.v1.test_node.TestTraits.test_delete_trait_fails_with_bad_version [0.037893s] ... ok {9} ironic.tests.unit.drivers.modules.test_deploy_utils.ParseInstanceInfoCapabilitiesTestCase.test_parse_instance_info_capabilities [0.009397s] ... ok {9} ironic.tests.unit.drivers.modules.test_deploy_utils.SwitchPxeConfigTestCase.test_switch_pxe_config_trusted_boot [0.021124s] ... ok {9} ironic.tests.unit.drivers.modules.test_deploy_utils.TestStorageInterfaceUtils.test_is_iscsi_boot_false [0.061627s] ... ok {9} ironic.tests.unit.drivers.modules.test_deploy_utils.TestStorageInterfaceUtils.test_is_iscsi_boot_false_fc_target [0.075067s] ... ok {9} ironic.tests.unit.drivers.modules.test_deploy_utils.TrySetBootDeviceTestCase.test_try_set_boot_device_some_other_exception [0.063903s] ... ok {9} ironic.tests.unit.drivers.modules.test_deploy_utils.ValidateImagePropertiesTestCase.test_validate_image_properties_nonglance_image [0.021869s] ... ok PUT: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states/power {'target': 'power on', 'timeout': 0} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-57054f97-d725-46d6-9344-933302252338 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"timeout has to be positive integer\"}"} {1} ironic.tests.unit.api.controllers.v1.test_node.TestPut.test_power_state_power_on_invalid_timeout_no_ver [0.077370s] ... ok {9} ironic.tests.unit.drivers.modules.test_deploy_utils.ValidateImagePropertiesTestCase.test_validate_image_properties_nonglance_image_validation_fail [0.025135s] ... ok {9} ironic.tests.unit.drivers.modules.test_deploy_utils.ValidateParametersTestCase.test__get_img_instance_info_non_glance_image_missing_kernel [0.019792s] ... ok {9} ironic.tests.unit.drivers.modules.test_inspector.InspectHardwareAbortTestCase.test_abort_ok [0.017662s] ... ok {9} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolDriverTestCase.test_management_interface_set_boot_device_unknown_exception [0.062913s] ... ok POST: /v1/ports {'local_link_connection': {'switch_info': 'switch1', 'port_id': 'Ethernet3/1', 'switch_id': '0a:1b:2c:3d:4e:5f'}, 'node_uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123', 'uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c781', 'extra': {}, 'pxe_enabled': True, 'portgroup_uuid': '6eb02b44-18a3-4659-8c0b-8d2802581ae4', 'physical_network': 'physnet1', 'address': '52:54:00:cf:2d:31', 'is_smartnic': False} GOT:Response: 406 Not Acceptable Content-Type: application/json Openstack-Request-Id: req-e20f2760-864e-4c6e-9adc-959009d9197e X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Request not acceptable.\"}"} {10} ironic.tests.unit.api.controllers.v1.test_port.TestPost.test_create_port_with_physical_network_upgrade [0.087943s] ... ok {9} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolDriverTestCase.test_set_power_invalid_state [0.060690s] ... ok {9} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolDriverTestCase.test_vendor_passthru_validate__bmc_reset_good [0.060196s] ... ok {9} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolShellinaboxTestCase.test_stop_console [0.064876s] ... ok {9} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolSocatDriverTestCase.test__exec_stop_console [0.063950s] ... ok {9} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolSocatDriverTestCase.test_get_console [0.063766s] ... ok {9} ironic.tests.unit.drivers.modules.test_ipxe.iPXEBootTestCase.test_prepare_ramdisk_conflicting_boot_modes_set_unsupported [0.111960s] ... ok {9} ironic.tests.unit.drivers.modules.test_ipxe.iPXEBootTestCase.test_prepare_ramdisk_force_persistent_boot_device_true [0.138905s] ... ok GET: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports {} GOT:{u'ports': [{u'uuid': u'437fdd2c-ada6-4615-8b14-df2711ecf186', u'links': [{u'href': u'http://localhost/v1/ports/437fdd2c-ada6-4615-8b14-df2711ecf186', u'rel': u'self'}, {u'href': u'http://localhost/ports/437fdd2c-ada6-4615-8b14-df2711ecf186', u'rel': u'bookmark'}], u'address': u'52:54:00:cf:2d:30'}, {u'uuid': u'56060779-cb48-4a28-83ee-1e90cbfa9bf9', u'links': [{u'href': u'http://localhost/v1/ports/56060779-cb48-4a28-83ee-1e90cbfa9bf9', u'rel': u'self'}, {u'href': u'http://localhost/ports/56060779-cb48-4a28-83ee-1e90cbfa9bf9', u'rel': u'bookmark'}], u'address': u'52:54:00:cf:2d:31'}]} GET: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports?limit=1 {} GOT:{u'ports': [{u'uuid': u'437fdd2c-ada6-4615-8b14-df2711ecf186', u'links': [{u'href': u'http://localhost/v1/ports/437fdd2c-ada6-4615-8b14-df2711ecf186', u'rel': u'self'}, {u'href': u'http://localhost/ports/437fdd2c-ada6-4615-8b14-df2711ecf186', u'rel': u'bookmark'}], u'address': u'52:54:00:cf:2d:30'}], u'next': u'http://localhost/v1/ports?sort_dir=asc&sort_key=id&limit=1&marker=437fdd2c-ada6-4615-8b14-df2711ecf186'} {9} ironic.tests.unit.drivers.modules.test_ipxe.iPXEValidateRescueTestCase.test_validate_rescue_fails_no_rescue_kernel [0.074976s] ... ok {16} ironic.tests.unit.api.controllers.v1.test_node.TestListNodes.test_ports_subresource [0.182616s] ... ok {9} ironic.tests.unit.drivers.modules.test_iscsi_deploy.ISCSIDeployTestCase.test_continue_deploy_localboot [0.124956s] ... ok {9} ironic.tests.unit.drivers.modules.test_iscsi_deploy.ISCSIDeployTestCase.test_deploy_storage_check_write_image_false [0.102440s] ... ok {9} ironic.tests.unit.drivers.modules.test_iscsi_deploy.ISCSIDeployTestCase.test_deploy_storage_check_write_image_false_with_smartnic_port [0.095659s] ... ok {9} ironic.tests.unit.drivers.modules.test_iscsi_deploy.IscsiDeployMethodsTestCase.test_continue_deploy_fail_empty_root_uuid [0.180438s] ... ok {9} ironic.tests.unit.drivers.modules.test_iscsi_deploy.IscsiDeployMethodsTestCase.test_get_deploy_info_whole_disk_image_no_root [0.021934s] ... ok {9} ironic.tests.unit.drivers.modules.test_pxe.PXEBootTestCase.test_prepare_instance_ramdisk_pxe_conf_missing [0.646588s] ... ok {9} ironic.tests.unit.drivers.modules.test_snmp.SNMPDeviceDriverTestCase.test_auto_power_state_off [0.025337s] ... ok {9} ironic.tests.unit.drivers.modules.test_snmp.SNMPDeviceDriverTestCase.test_power_off_delay [1.020943s] ... ok {9} ironic.tests.unit.drivers.modules.test_snmp.SNMPDeviceDriverTestCase.test_power_off_snmp_set_failure [0.027120s] ... ok {9} ironic.tests.unit.drivers.modules.test_snmp.SNMPDeviceDriverTestCase.test_power_reset_on_snmp_set_failure [0.026717s] ... ok {9} ironic.tests.unit.drivers.modules.test_snmp.SNMPValidateParametersTestCase.test__parse_driver_info_snmp_v3_auth_default_proto [0.013215s] ... ok PATCH: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123 [{'path': '/driver', 'value': 'foo', 'op': 'add'}] GOT:Response: 409 Conflict Content-Type: application/json Openstack-Request-Id: req-861faeee-76f2-4108-933e-a60c63a5af14 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Node 1be26c0b-03f2-4d2e-ae87-c02d7f33c123 can not update the driver while the console is enabled. Please stop the console first.\"}"} {14} ironic.tests.unit.api.controllers.v1.test_node.TestPatch.test_patch_update_drive_console_enabled [0.087135s] ... ok {9} ironic.tests.unit.drivers.modules.ucs.test_helper.UcsCommonMethodsTestcase.test_requires_ucs_client_fail_logout [0.137644s] ... ok {9} ironic.tests.unit.drivers.test_base.CleanStepDecoratorTestCase.test_clean_step_bad_priority [0.009607s] ... ok {9} ironic.tests.unit.drivers.test_base.DeployAndCleanStepDecoratorTestCase.test_clean_and_deploy_step_all_args [0.009057s] ... ok {9} ironic.tests.unit.drivers.test_base.TestManagementInterface.test_inject_nmi_default_impl [0.012267s] ... ok {9} ironic.tests.unit.drivers.test_ilo.Ilo5HardwareTestCase.test_default_interfaces [0.058245s] ... ok {9} ironic.tests.unit.objects.test_node.TestConvertToVersion.test_traits_supported_missing [0.014195s] ... ok {9} ironic.tests.unit.objects.test_node.TestConvertToVersion.test_traits_supported_set [0.013952s] ... ok {9} ironic.tests.unit.objects.test_objects.TestObject.test_changed_4 [0.009155s] ... ok {9} ironic.tests.unit.objects.test_port.TestPortObject.test_list [0.016319s] ... ok {9} ironic.tests.unit.objects.test_volume_target.TestVolumeTargetObject.test_list_by_volume_id [0.016320s] ... ok {9} ironic.tests.unit.objects.test_volume_target.TestVolumeTargetObject.test_save [0.018098s] ... ok POST: /v1/portgroups {'node_uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123', 'uuid': '6eb02b44-18a3-4659-8c0b-8d2802581ae4', 'extra': {}, 'standalone_ports_supported': True, 'address': 'AA:AA:AA:11:22:33', 'name': 'fooname'} GOT:Response: 201 Created Content-Type: application/json Location: http://localhost/v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4 Openstack-Request-Id: req-2f3f41e7-b3c3-4d52-8f29-ee3319db1e02 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"node_uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "uuid": "6eb02b44-18a3-4659-8c0b-8d2802581ae4", "links": [{"href": "http://localhost/v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4", "rel": "self"}, {"href": "http://localhost/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4", "rel": "bookmark"}], "extra": {}, "created_at": "2019-06-06T07:02:16.757960+00:00", "updated_at": null, "ports": [{"href": "http://localhost/v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4/ports", "rel": "self"}, {"href": "http://localhost/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4/ports", "rel": "bookmark"}], "standalone_ports_supported": true, "mode": "active-backup", "address": "aa:aa:aa:11:22:33", "internal_info": {}, "properties": {}, "name": "fooname"} POST: /v1/portgroups {'node_uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123', 'uuid': 'a808f6b2-5a45-44d0-b962-04e8196d93aa', 'extra': {}, 'standalone_ports_supported': True, 'address': 'AA:AA:AA:11:22:33', 'name': '1039165e-5382-452a-a345-a5a29a942327'} GOT:Response: 409 Conflict Content-Type: application/json Openstack-Request-Id: req-0b61a1ad-3c55-4678-a0f8-c42b4ab8bf98 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"A portgroup with MAC address aa:aa:aa:11:22:33 already exists.\"}"} {24} ironic.tests.unit.api.controllers.v1.test_portgroup.TestPost.test_create_portgroup_address_already_exist [0.130027s] ... ok PATCH: /v1/volume/connectors/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 [{'path': '/node_id', 'op': 'remove'}] GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-c3c37b7a-0e35-4317-93ea-f28056b239d1 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Couldn't apply patch '{'path': '/node_id', 'op': 'remove'}'. Reason: can't remove non-existent object 'node_id'\"}"} {5} ironic.tests.unit.api.controllers.v1.test_volume_connector.TestPatch.test_remove_node_id [0.074094s] ... ok PUT: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states/provision {'target': 'unrescue'} GOT:Response: 406 Not Acceptable Content-Type: application/json Openstack-Request-Id: req-924ead3d-a513-4872-9f67-b168b24bb8fa X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.37 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Request not acceptable.\"}"} {6} ironic.tests.unit.api.controllers.v1.test_node.TestPut.test_unrescue_raises_error_before_1_38 [0.063931s] ... ok POST: /v1/heartbeat/1be26c0b-03f2-4d2e-ae87-c02d7f33c123 {'callback_url': 'url'} GOT:Response: 202 Accepted Openstack-Request-Id: req-0c15f89e-ec43-4ef6-9367-b11dcccaf097 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {21} ironic.tests.unit.api.controllers.v1.test_ramdisk.TestHeartbeat.test_ok [0.077038s] ... ok GET: /v1/lookup?addresses=11:22:33:44:55:66,66:55:44:33:22:11 {} GOT:Response: 404 Not Found Content-Type: application/json Openstack-Request-Id: req-40be65af-2f6a-4fcd-81c4-054974fb9049 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Resource could not be found.\"}"} {28} ironic.tests.unit.api.controllers.v1.test_ramdisk.TestLookup.test_old_api_version [0.076457s] ... ok {28} ironic.tests.unit.api.controllers.v1.test_types.TestBooleanType.test_invalid_value [0.019974s] ... ok {28} ironic.tests.unit.api.controllers.v1.test_types.TestJsonPatchType.test_missing_required_fields_op [0.040133s] ... ok {28} ironic.tests.unit.api.controllers.v1.test_types.TestJsonType.test_invalid_values [0.016537s] ... ok {28} ironic.tests.unit.api.controllers.v1.test_utils.TestApiUtils.test_allow_port_is_smartnic [0.017150s] ... ok {28} ironic.tests.unit.api.controllers.v1.test_utils.TestApiUtils.test_check_for_invalid_fields [0.016622s] ... ok POST: /v1/ports {'local_link_connection': {'switch_info': 'switch1', 'port_id': 'Ethernet3/1', 'switch_id': '0a:1b:2c:3d:4e:5f'}, 'node_uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123', 'uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c781', 'extra': {}, 'pxe_enabled': True, 'portgroup_uuid': '6eb02b44-18a3-4659-8c0b-8d2802581ae4', 'physical_network': None, 'address': 'AA:BB:CC:DD:EE:FF', 'is_smartnic': False} GOT:Response: 201 Created Content-Type: application/json Location: http://localhost/v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 Openstack-Request-Id: req-10dfc510-f27b-4a6b-bba0-27a689b9ad82 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"local_link_connection": {"switch_info": "switch1", "port_id": "Ethernet3/1", "switch_id": "0a:1b:2c:3d:4e:5f"}, "node_uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "links": [{"href": "http://localhost/v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "rel": "self"}, {"href": "http://localhost/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "rel": "bookmark"}], "extra": {}, "pxe_enabled": true, "portgroup_uuid": "6eb02b44-18a3-4659-8c0b-8d2802581ae4", "updated_at": null, "physical_network": null, "address": "aa:bb:cc:dd:ee:ff", "internal_info": {}, "created_at": "2019-06-06T07:02:16.487351+00:00", "is_smartnic": false} GET: /v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 {} GOT:{u'local_link_connection': {u'switch_info': u'switch1', u'port_id': u'Ethernet3/1', u'switch_id': u'0a:1b:2c:3d:4e:5f'}, u'node_uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c781', u'links': [{u'href': u'http://localhost/v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781', u'rel': u'self'}, {u'href': u'http://localhost/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781', u'rel': u'bookmark'}], u'extra': {}, u'pxe_enabled': True, u'portgroup_uuid': u'6eb02b44-18a3-4659-8c0b-8d2802581ae4', u'updated_at': None, u'physical_network': None, u'address': u'aa:bb:cc:dd:ee:ff', u'internal_info': {}, u'created_at': u'2019-06-06T07:02:16.487351+00:00', u'is_smartnic': False} {23} ironic.tests.unit.api.controllers.v1.test_port.TestPost.test_create_port_address_normalized [0.170801s] ... ok POST: /v1/nodes {'instance_uuid': None, 'uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123', 'driver_info': {'fake_password': 'fakepass', 'foo': 'bar'}, 'extra': {}, 'driver': 'fake-hardware', 'properties': {'memory_mb': '4096', 'cpu_arch': 'x86_64', 'local_gb': '10', 'cpus': '8'}, 'maintenance': False, 'chassis_uuid': 'e74c40e0-d825-11e2-a28f-0800200c9a66', 'instance_info': {'foo': 'bar', 'image_url': 'http://example.com/test_image_url', 'configdrive': 'TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQ='}} GOT:Response: 201 Created Content-Type: application/json Location: http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123 Openstack-Request-Id: req-c4f8e08d-cf69-4e57-8901-0c54abe2607a X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"target_power_state": null, "links": [{"href": "http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "rel": "self"}, {"href": "http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "rel": "bookmark"}], "target_provision_state": null, "last_error": null, "updated_at": null, "maintenance_reason": null, "provision_state": null, "uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "console_enabled": false, "extra": {}, "provision_updated_at": null, "maintenance": false, "power_state": null, "driver": "fake-hardware", "reservation": null, "properties": {"memory_mb": "4096", "cpu_arch": "x86_64", "local_gb": "10", "cpus": "8"}, "instance_uuid": null, "driver_info": {"fake_password": "******", "foo": "bar"}, "created_at": "2019-06-06T07:02:15.968998+00:00", "ports": [{"href": "http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports", "rel": "self"}, {"href": "http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports", "rel": "bookmark"}], "chassis_uuid": "e74c40e0-d825-11e2-a28f-0800200c9a66", "instance_info": {"foo": "bar", "image_url": "******", "configdrive": "******"}} GET: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123 {} GOT:{u'target_power_state': None, u'links': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'bookmark'}], u'target_provision_state': None, u'last_error': None, u'updated_at': None, u'maintenance_reason': None, u'provision_state': None, u'uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'console_enabled': False, u'extra': {}, u'provision_updated_at': None, u'maintenance': False, u'power_state': None, u'driver': u'fake-hardware', u'reservation': None, u'properties': {u'memory_mb': u'4096', u'cpu_arch': u'x86_64', u'local_gb': u'10', u'cpus': u'8'}, u'instance_uuid': None, u'driver_info': {u'fake_password': u'******', u'foo': u'bar'}, u'created_at': u'2019-06-06T07:02:15.968998+00:00', u'ports': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'bookmark'}], u'chassis_uuid': u'e74c40e0-d825-11e2-a28f-0800200c9a66', u'instance_info': {u'foo': u'bar', u'image_url': u'******', u'configdrive': u'******'}} {27} ironic.tests.unit.api.controllers.v1.test_node.TestPost.test_create_node_with_chassis_uuid [0.115284s] ... ok PATCH: /v1/nodes/4fb1e58d-ecec-4c27-8ac0-6baa9f5a268b [{'path': '/automated_clean', 'value': True, 'op': 'replace'}] GOT:Response: 200 OK Content-Type: application/json Openstack-Request-Id: req-b760546d-58be-46a0-bfaa-22cd1492c914 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.47 {"target_power_state": null, "automated_clean": null, "inspect_interface": null, "links": [{"href": "http://localhost/v1/nodes/4fb1e58d-ecec-4c27-8ac0-6baa9f5a268b", "rel": "self"}, {"href": "http://localhost/nodes/4fb1e58d-ecec-4c27-8ac0-6baa9f5a268b", "rel": "bookmark"}], "target_provision_state": null, "deploy_step": {}, "storage_interface": null, "conductor_group": "", "updated_at": null, "maintenance_reason": null, "states": [{"href": "http://localhost/v1/nodes/4fb1e58d-ecec-4c27-8ac0-6baa9f5a268b/states", "rel": "self"}, {"href": "http://localhost/nodes/4fb1e58d-ecec-4c27-8ac0-6baa9f5a268b/states", "rel": "bookmark"}], "traits": [], "provision_state": "available", "clean_step": {}, "vendor_interface": null, "uuid": "4fb1e58d-ecec-4c27-8ac0-6baa9f5a268b", "console_enabled": false, "extra": {}, "raid_config": {}, "provision_updated_at": null, "power_state": null, "last_error": null, "target_raid_config": {}, "network_interface": null, "inspection_started_at": null, "inspection_finished_at": null, "maintenance": false, "power_interface": null, "driver": "fake-hardware", "volume": [{"href": "http://localhost/v1/nodes/4fb1e58d-ecec-4c27-8ac0-6baa9f5a268b/volume", "rel": "self"}, {"href": "http://localhost/nodes/4fb1e58d-ecec-4c27-8ac0-6baa9f5a268b/volume", "rel": "bookmark"}], "raid_interface": null, "rescue_interface": null, "boot_interface": null, "reservation": null, "management_interface": null, "properties": {"memory_mb": "4096", "cpu_arch": "x86_64", "local_gb": "10", "cpus": "8"}, "bios_interface": null, "instance_uuid": null, "name": null, "driver_info": {"fake_password": "******", "foo": "bar"}, "resource_class": null, "fault": null, "created_at": "2019-06-06T07:02:16.122957+00:00", "portgroups": [{"href": "http://localhost/v1/nodes/4fb1e58d-ecec-4c27-8ac0-6baa9f5a268b/portgroups", "rel": "self"}, {"href": "http://localhost/nodes/4fb1e58d-ecec-4c27-8ac0-6baa9f5a268b/portgroups", "rel": "bookmark"}], "deploy_interface": null, "ports": [{"href": "http://localhost/v1/nodes/4fb1e58d-ecec-4c27-8ac0-6baa9f5a268b/ports", "rel": "self"}, {"href": "http://localhost/nodes/4fb1e58d-ecec-4c27-8ac0-6baa9f5a268b/ports", "rel": "bookmark"}], "console_interface": null, "driver_internal_info": {"private_state": "secret value"}, "chassis_uuid": null, "instance_info": {"foo": "bar", "image_url": "******", "configdrive": "******"}} {15} ironic.tests.unit.api.controllers.v1.test_node.TestPatch.test_update_automated_clean [0.115894s] ... ok PUT: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states/power {'target': 'soft power off', 'timeout': 0} GOT:Response: 406 Not Acceptable Content-Type: application/json Openstack-Request-Id: req-01c358fe-204c-4a9b-98d2-1e3dae1fa5e4 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.26 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Request not acceptable.\"}"} {1} ironic.tests.unit.api.controllers.v1.test_node.TestPut.test_power_state_soft_power_off_invalid_timeout_invalid_soft_ver [0.077902s] ... ok POST: /v1/ports {'local_link_connection': {'switch_info': 'switch1', 'port_id': 'Ethernet3/1', 'switch_id': '0a:1b:2c:3d:4e:5f'}, 'node_uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123', 'extra': {}, 'pxe_enabled': True, 'portgroup_uuid': '6eb02b44-18a3-4659-8c0b-8d2802581ae4', 'physical_network': None, 'address': '52:54:00:cf:2d:31', 'is_smartnic': False} GOT:Response: 201 Created Content-Type: application/json Location: http://localhost/v1/ports/be6a3782-6bf5-4c86-8978-346969b5f08f Openstack-Request-Id: req-166a8f29-dab7-4215-b4ba-243eed44a8aa X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"local_link_connection": {"switch_info": "switch1", "port_id": "Ethernet3/1", "switch_id": "0a:1b:2c:3d:4e:5f"}, "node_uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "uuid": "be6a3782-6bf5-4c86-8978-346969b5f08f", "links": [{"href": "http://localhost/v1/ports/be6a3782-6bf5-4c86-8978-346969b5f08f", "rel": "self"}, {"href": "http://localhost/ports/be6a3782-6bf5-4c86-8978-346969b5f08f", "rel": "bookmark"}], "extra": {}, "pxe_enabled": true, "portgroup_uuid": "6eb02b44-18a3-4659-8c0b-8d2802581ae4", "updated_at": null, "physical_network": null, "address": "52:54:00:cf:2d:31", "internal_info": {}, "created_at": "2019-06-06T07:02:16.391019+00:00", "is_smartnic": false} GET: /v1/ports/be6a3782-6bf5-4c86-8978-346969b5f08f {} GOT:{u'local_link_connection': {u'switch_info': u'switch1', u'port_id': u'Ethernet3/1', u'switch_id': u'0a:1b:2c:3d:4e:5f'}, u'node_uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'uuid': u'be6a3782-6bf5-4c86-8978-346969b5f08f', u'links': [{u'href': u'http://localhost/v1/ports/be6a3782-6bf5-4c86-8978-346969b5f08f', u'rel': u'self'}, {u'href': u'http://localhost/ports/be6a3782-6bf5-4c86-8978-346969b5f08f', u'rel': u'bookmark'}], u'extra': {}, u'pxe_enabled': True, u'portgroup_uuid': u'6eb02b44-18a3-4659-8c0b-8d2802581ae4', u'updated_at': None, u'physical_network': None, u'address': u'52:54:00:cf:2d:31', u'internal_info': {}, u'created_at': u'2019-06-06T07:02:16.391019+00:00', u'is_smartnic': False} {30} ironic.tests.unit.api.controllers.v1.test_port.TestPost.test_create_port_generate_uuid [0.179101s] ... ok POST: /v1/heartbeat/1be26c0b-03f2-4d2e-ae87-c02d7f33c123.json {'callback_url': 'url'} GOT:Response: 202 Accepted Openstack-Request-Id: req-a2177e6e-8a44-4c4d-a69f-6e7b440c1258 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {21} ironic.tests.unit.api.controllers.v1.test_ramdisk.TestHeartbeat.test_ok_with_json [0.076316s] ... ok GET: /v1/volume/connectors/1be26c0b-03f2-4d2e-ae87-c02d7f33c781?fields=uuid,extra {} GOT:Response: 404 Not Found Content-Type: application/json {"error_message": "{\"code\": 404, \"description\": \"\", \"title\": \"Not Found\"}"} {28} ironic.tests.unit.api.controllers.v1.test_volume_connector.TestListVolumeConnectors.test_get_custom_fields_invalid_api_version [0.051617s] ... ok GET: /v1/ports?detail=True {} GOT:{u'ports': [{u'local_link_connection': {u'switch_info': u'switch', u'port_id': u'Gig0/1', u'switch_id': u'aa:bb:cc:dd:ee:ff'}, u'node_uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c781', u'links': [{u'href': u'http://localhost/v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781', u'rel': u'self'}, {u'href': u'http://localhost/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781', u'rel': u'bookmark'}], u'extra': {}, u'pxe_enabled': False, u'portgroup_uuid': u'6eb02b44-18a3-4659-8c0b-8d2802581ae4', u'updated_at': None, u'physical_network': u'physnet1', u'address': u'52:54:00:cf:2d:31', u'internal_info': {u'bar': u'buzz'}, u'created_at': u'2019-06-06T07:02:16.254598+00:00', u'is_smartnic': False}]} {11} ironic.tests.unit.api.controllers.v1.test_port.TestListPorts.test_detail_query [0.105564s] ... ok PATCH: /v1/nodes/deadbeef-0000-1111-2222-333333333333 [{'path': '/name', 'value': '', 'op': 'add'}] GOT:Response: 406 Not Acceptable Content-Type: application/json Openstack-Request-Id: req-4ed353ad-0f34-49f1-8a44-11d55314e97a X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Request not acceptable.\"}"} {16} ironic.tests.unit.api.controllers.v1.test_node.TestPatch.test_patch_add_name_empty_not_acceptable [0.076192s] ... ok GET: /v1/ports {} GOT:{u'ports': []} {11} ironic.tests.unit.api.controllers.v1.test_port.TestListPorts.test_list_with_deleted_node [0.069959s] ... ok PATCH: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/volume/connectors [{'path': '/extra/foo', 'value': 'bar', 'op': 'add'}] GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-ef305803-280d-4d49-b14c-412cfc7b16ce X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Missing argument: \\\"connector_uuid\\\"\"}"} {14} ironic.tests.unit.api.controllers.v1.test_node.TestPatch.test_patch_volume_connectors_subresource_no_connector_id [0.078728s] ... ok PATCH: /v1/nodes/449d338e-56a8-45fd-8eb8-dfaa8a425dcc [{'path': '/protected', 'value': True, 'op': 'replace'}, {'path': '/protected_reason', 'value': 'reason!', 'op': 'replace'}] GOT:Response: 200 OK Content-Type: application/json Openstack-Request-Id: req-7628a5ff-08fd-42ec-94bd-e14bf2a9394a X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.48 {"target_power_state": null, "automated_clean": null, "inspect_interface": null, "links": [{"href": "http://localhost/v1/nodes/449d338e-56a8-45fd-8eb8-dfaa8a425dcc", "rel": "self"}, {"href": "http://localhost/nodes/449d338e-56a8-45fd-8eb8-dfaa8a425dcc", "rel": "bookmark"}], "target_provision_state": null, "deploy_step": {}, "storage_interface": null, "conductor_group": "", "protected_reason": null, "maintenance_reason": null, "states": [{"href": "http://localhost/v1/nodes/449d338e-56a8-45fd-8eb8-dfaa8a425dcc/states", "rel": "self"}, {"href": "http://localhost/nodes/449d338e-56a8-45fd-8eb8-dfaa8a425dcc/states", "rel": "bookmark"}], "traits": [], "provision_state": "active", "clean_step": {}, "vendor_interface": null, "uuid": "449d338e-56a8-45fd-8eb8-dfaa8a425dcc", "console_enabled": false, "extra": {}, "raid_config": {}, "provision_updated_at": null, "power_state": null, "last_error": null, "target_raid_config": {}, "network_interface": null, "inspection_started_at": null, "inspection_finished_at": null, "maintenance": false, "power_interface": null, "driver": "fake-hardware", "updated_at": null, "volume": [{"href": "http://localhost/v1/nodes/449d338e-56a8-45fd-8eb8-dfaa8a425dcc/volume", "rel": "self"}, {"href": "http://localhost/nodes/449d338e-56a8-45fd-8eb8-dfaa8a425dcc/volume", "rel": "bookmark"}], "raid_interface": null, "rescue_interface": null, "boot_interface": null, "reservation": null, "management_interface": null, "properties": {"memory_mb": "4096", "cpu_arch": "x86_64", "local_gb": "10", "cpus": "8"}, "bios_interface": null, "instance_uuid": null, "name": null, "driver_info": {"fake_password": "******", "foo": "bar"}, "resource_class": null, "fault": null, "created_at": "2019-06-06T07:02:15.719420+00:00", "portgroups": [{"href": "http://localhost/v1/nodes/449d338e-56a8-45fd-8eb8-dfaa8a425dcc/portgroups", "rel": "self"}, {"href": "http://localhost/nodes/449d338e-56a8-45fd-8eb8-dfaa8a425dcc/portgroups", "rel": "bookmark"}], "deploy_interface": null, "ports": [{"href": "http://localhost/v1/nodes/449d338e-56a8-45fd-8eb8-dfaa8a425dcc/ports", "rel": "self"}, {"href": "http://localhost/nodes/449d338e-56a8-45fd-8eb8-dfaa8a425dcc/ports", "rel": "bookmark"}], "console_interface": null, "protected": false, "driver_internal_info": {"private_state": "secret value"}, "chassis_uuid": null, "instance_info": {"foo": "bar", "image_url": "******", "configdrive": "******"}} {29} ironic.tests.unit.api.controllers.v1.test_node.TestPatch.test_update_protected_with_reason [0.121102s] ... ok GET: /v1/ports {} GOT:{u'ports': [{u'uuid': u'4b88d29c-fc13-4d7a-ace4-2b4c0c2ca303', u'links': [{u'href': u'http://localhost/v1/ports/4b88d29c-fc13-4d7a-ace4-2b4c0c2ca303', u'rel': u'self'}, {u'href': u'http://localhost/ports/4b88d29c-fc13-4d7a-ace4-2b4c0c2ca303', u'rel': u'bookmark'}], u'address': u'52:54:00:cf:2d:30'}, {u'uuid': u'db264485-30c5-4f99-af0e-d9bbb0bd393c', u'links': [{u'href': u'http://localhost/v1/ports/db264485-30c5-4f99-af0e-d9bbb0bd393c', u'rel': u'self'}, {u'href': u'http://localhost/ports/db264485-30c5-4f99-af0e-d9bbb0bd393c', u'rel': u'bookmark'}], u'address': u'52:54:00:cf:2d:31'}, {u'uuid': u'f3d3620b-70b8-40cc-8033-ad6c2fb292cf', u'links': [{u'href': u'http://localhost/v1/ports/f3d3620b-70b8-40cc-8033-ad6c2fb292cf', u'rel': u'self'}, {u'href': u'http://localhost/ports/f3d3620b-70b8-40cc-8033-ad6c2fb292cf', u'rel': u'bookmark'}], u'address': u'52:54:00:cf:2d:32'}], u'next': u'http://localhost/v1/ports?sort_dir=asc&sort_key=id&limit=3&marker=f3d3620b-70b8-40cc-8033-ad6c2fb292cf'} {8} ironic.tests.unit.api.controllers.v1.test_port.TestListPorts.test_collection_links_default_limit [0.141307s] ... ok POST: /v1/portgroups {'node_uuid': 'invalid-format', 'uuid': '6eb02b44-18a3-4659-8c0b-8d2802581ae4', 'extra': {}, 'standalone_ports_supported': True, 'address': '52:54:00:cf:2d:31', 'name': 'fooname'} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-a3ca45e6-b0f5-4784-8861-7f6ca899f59f X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Expected a UUID but received invalid-format.\"}"} {24} ironic.tests.unit.api.controllers.v1.test_portgroup.TestPost.test_create_portgroup_invalid_node_uuid_format [0.059171s] ... ok POST: /v1/volume/connectors {'node_uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123', 'extra': {}, 'uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c781', 'connector_id': 'iqn.2012-06.com.example:initiator'} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-6a7956e3-3077-434f-b1ed-7798ec6bd3de X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Invalid input for field/attribute type. Value: 'None'. Mandatory field missing.\"}"} {5} ironic.tests.unit.api.controllers.v1.test_volume_connector.TestPost.test_create_volume_connector_no_mandatory_field_type [0.060460s] ... ok GET: /v1/lookup {} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-ca806b34-4faa-444e-b940-827a8471f248 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"At least one of 'addresses' and 'node_uuid' parameters is required\"}"} {21} ironic.tests.unit.api.controllers.v1.test_ramdisk.TestLookup.test_nothing_provided [0.069969s] ... ok {21} ironic.tests.unit.api.controllers.v1.test_types.TestEventType.test_network_port_event [0.016583s] ... ok DELETE: /v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4 GOT:Response: 204 No Content Openstack-Request-Id: req-dfe85122-08da-4bbd-811a-c60d8fb1a92b X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {8} ironic.tests.unit.api.controllers.v1.test_portgroup.TestDelete.test_delete_portgroup_byid [0.088387s] ... ok PUT: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states/console {'enabled': 'invalid-value'} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-d94fb923-5354-4ca7-b2ba-7b31a686612b X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Invalid input for field/attribute enabled. Value: 'invalid-value'. unable to convert to boolean. Error: Unrecognized value 'invalid-value', acceptable values are: '0', '1', 'f', 'false', 'n', 'no', 'off', 'on', 't', 'true', 'y', 'yes'\"}"} {1} ironic.tests.unit.api.controllers.v1.test_node.TestPut.test_set_console_mode_bad_request [0.064461s] ... ok {1} ironic.tests.unit.api.controllers.v1.test_notification_utils.APINotifyTestCase.test_notification_uuid_unset [0.022076s] ... ok PATCH: /v1/nodes/0f378136-e0bf-4283-ab02-34d021bd4cb8 [{'path': '/name', 'value': 'this-is-my-node', 'op': 'replace'}] GOT:Response: 409 Conflict Content-Type: application/json Openstack-Request-Id: req-ed1efe0a-a181-41a8-a32b-bd5eaf31b28e X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.5 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"this-is-my-node\"}"} {16} ironic.tests.unit.api.controllers.v1.test_node.TestPatch.test_patch_duplicate_name [0.107381s] ... ok PUT: /v1/nodes/node-39/traits/CUSTOM_TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT {} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-becff55b-bcf4-4a7e-9f81-624bbe3c320f X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.37 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Invalid trait. A valid trait must be no longer than 255 characters. Standard traits are defined in the os_traits library. A custom trait must start with the prefix CUSTOM_ and use the following characters: A-Z, 0-9 and _\"}"} {6} ironic.tests.unit.api.controllers.v1.test_node.TestTraits.test_add_single_trait_rejects_too_long_trait [0.090334s] ... ok POST: /v1/portgroups {'node_uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123', 'uuid': '6eb02b44-18a3-4659-8c0b-8d2802581ae4', 'extra': {}, 'standalone_ports_supported': True, 'address': 'AA:BB:CC:DD:EE:FF', 'name': 'fooname'} GOT:Response: 201 Created Content-Type: application/json Location: http://localhost/v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4 Openstack-Request-Id: req-6d6770b7-bf95-4250-88fa-8bd2b26fece8 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"node_uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "uuid": "6eb02b44-18a3-4659-8c0b-8d2802581ae4", "links": [{"href": "http://localhost/v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4", "rel": "self"}, {"href": "http://localhost/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4", "rel": "bookmark"}], "extra": {}, "created_at": "2019-06-06T07:02:17.424593+00:00", "updated_at": null, "ports": [{"href": "http://localhost/v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4/ports", "rel": "self"}, {"href": "http://localhost/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4/ports", "rel": "bookmark"}], "standalone_ports_supported": true, "mode": "active-backup", "address": "aa:bb:cc:dd:ee:ff", "internal_info": {}, "properties": {}, "name": "fooname"} GET: /v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4 {} GOT:{u'node_uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'uuid': u'6eb02b44-18a3-4659-8c0b-8d2802581ae4', u'links': [{u'href': u'http://localhost/v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4', u'rel': u'self'}, {u'href': u'http://localhost/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4', u'rel': u'bookmark'}], u'extra': {}, u'created_at': u'2019-06-06T07:02:17.424593+00:00', u'updated_at': None, u'properties': {}, u'standalone_ports_supported': True, u'mode': u'active-backup', u'address': u'aa:bb:cc:dd:ee:ff', u'internal_info': {}, u'ports': [{u'href': u'http://localhost/v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4/ports', u'rel': u'self'}, {u'href': u'http://localhost/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4/ports', u'rel': u'bookmark'}], u'name': u'fooname'} {17} ironic.tests.unit.api.controllers.v1.test_portgroup.TestPost.test_create_portgroup_address_normalized [0.131027s] ... ok PATCH: /v1/nodes/19f68843-2858-4d40-980f-b9d634ad58a3 [{'path': '/protected', 'value': True, 'op': 'replace'}] GOT:Response: 200 OK Content-Type: application/json Openstack-Request-Id: req-1bdbb7d2-f96a-4b37-acef-de2ae54f9069 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.48 {"target_power_state": null, "automated_clean": null, "inspect_interface": null, "links": [{"href": "http://localhost/v1/nodes/19f68843-2858-4d40-980f-b9d634ad58a3", "rel": "self"}, {"href": "http://localhost/nodes/19f68843-2858-4d40-980f-b9d634ad58a3", "rel": "bookmark"}], "target_provision_state": null, "deploy_step": {}, "storage_interface": null, "conductor_group": "", "protected_reason": null, "maintenance_reason": null, "states": [{"href": "http://localhost/v1/nodes/19f68843-2858-4d40-980f-b9d634ad58a3/states", "rel": "self"}, {"href": "http://localhost/nodes/19f68843-2858-4d40-980f-b9d634ad58a3/states", "rel": "bookmark"}], "traits": [], "provision_state": "active", "clean_step": {}, "vendor_interface": null, "uuid": "19f68843-2858-4d40-980f-b9d634ad58a3", "console_enabled": false, "extra": {}, "raid_config": {}, "provision_updated_at": null, "power_state": null, "last_error": null, "target_raid_config": {}, "network_interface": null, "inspection_started_at": null, "inspection_finished_at": null, "maintenance": false, "power_interface": null, "driver": "fake-hardware", "updated_at": null, "volume": [{"href": "http://localhost/v1/nodes/19f68843-2858-4d40-980f-b9d634ad58a3/volume", "rel": "self"}, {"href": "http://localhost/nodes/19f68843-2858-4d40-980f-b9d634ad58a3/volume", "rel": "bookmark"}], "raid_interface": null, "rescue_interface": null, "boot_interface": null, "reservation": null, "management_interface": null, "properties": {"memory_mb": "4096", "cpu_arch": "x86_64", "local_gb": "10", "cpus": "8"}, "bios_interface": null, "instance_uuid": null, "name": null, "driver_info": {"fake_password": "******", "foo": "bar"}, "resource_class": null, "fault": null, "created_at": "2019-06-06T07:02:15.928245+00:00", "portgroups": [{"href": "http://localhost/v1/nodes/19f68843-2858-4d40-980f-b9d634ad58a3/portgroups", "rel": "self"}, {"href": "http://localhost/nodes/19f68843-2858-4d40-980f-b9d634ad58a3/portgroups", "rel": "bookmark"}], "deploy_interface": null, "ports": [{"href": "http://localhost/v1/nodes/19f68843-2858-4d40-980f-b9d634ad58a3/ports", "rel": "self"}, {"href": "http://localhost/nodes/19f68843-2858-4d40-980f-b9d634ad58a3/ports", "rel": "bookmark"}], "console_interface": null, "protected": false, "driver_internal_info": {"private_state": "secret value"}, "chassis_uuid": null, "instance_info": {"foo": "bar", "image_url": "******", "configdrive": "******"}} {26} ironic.tests.unit.api.controllers.v1.test_node.TestPatch.test_update_protected [0.114791s] ... ok POST: /v1/nodes {'instance_uuid': None, 'uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123', 'driver_info': {'fake_password': 'fakepass', 'foo': 'bar'}, 'extra': {}, 'driver': 'fake-hardware', 'properties': {'memory_mb': '4096', 'cpu_arch': 'x86_64', 'local_gb': '10', 'cpus': '8'}, 'maintenance': False, 'reservation': 'fake', 'chassis_uuid': 'e74c40e0-d825-11e2-a28f-0800200c9a66', 'instance_info': {'foo': 'bar', 'image_url': 'http://example.com/test_image_url', 'configdrive': 'TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQ='}} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-6b434d97-775e-4746-a588-fcb5f463acf6 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Invalid input for field/attribute reservation. Value: 'fake'. Cannot set read only field.\"}"} {27} ironic.tests.unit.api.controllers.v1.test_node.TestPost.test_create_node_with_internal_field [0.045103s] ... ok PATCH: /v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 [{'path': '/node_uuid', 'value': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123', 'op': 'add'}] GOT:Response: 200 OK Content-Type: application/json Openstack-Request-Id: req-8bbe8699-b6fb-418c-8fb5-a2d0f511cc44 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"node_uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "links": [{"href": "http://localhost/v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "rel": "self"}, {"href": "http://localhost/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "rel": "bookmark"}], "extra": {}, "created_at": "2019-06-06T07:02:16.421163+00:00", "updated_at": null, "address": "52:54:00:cf:2d:31"} {11} ironic.tests.unit.api.controllers.v1.test_port.TestPatch.test_add_node_uuid [0.124127s] ... ok GET: /v1/portgroups {} GOT:{u'portgroups': [{u'address': u'52:54:00:cf:2d:30', u'uuid': u'3a7e232a-304d-48d4-9581-510834b50a51', u'links': [{u'href': u'http://localhost/v1/portgroups/3a7e232a-304d-48d4-9581-510834b50a51', u'rel': u'self'}, {u'href': u'http://localhost/portgroups/3a7e232a-304d-48d4-9581-510834b50a51', u'rel': u'bookmark'}], u'name': u'portgroup0'}, {u'address': u'52:54:00:cf:2d:31', u'uuid': u'83388663-1ffb-4608-bcc3-afb575c20194', u'links': [{u'href': u'http://localhost/v1/portgroups/83388663-1ffb-4608-bcc3-afb575c20194', u'rel': u'self'}, {u'href': u'http://localhost/portgroups/83388663-1ffb-4608-bcc3-afb575c20194', u'rel': u'bookmark'}], u'name': u'portgroup1'}, {u'address': u'52:54:00:cf:2d:32', u'uuid': u'1d563ff3-8f4c-489c-b5e5-79abbad6d990', u'links': [{u'href': u'http://localhost/v1/portgroups/1d563ff3-8f4c-489c-b5e5-79abbad6d990', u'rel': u'self'}, {u'href': u'http://localhost/portgroups/1d563ff3-8f4c-489c-b5e5-79abbad6d990', u'rel': u'bookmark'}], u'name': u'portgroup2'}], u'next': u'http://localhost/v1/portgroups?sort_dir=asc&sort_key=id&limit=3&marker=1d563ff3-8f4c-489c-b5e5-79abbad6d990'} DELETE: /v1/volume/connectors/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-ba56175f-29ed-4a9a-bc98-5066b0cf7e9f X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"The requested action \\\"volume connector deletion\\\" can not be performed on node \\\"1be26c0b-03f2-4d2e-ae87-c02d7f33c123\\\" while it is in state \\\"power on\\\".\"}"} {23} ironic.tests.unit.api.controllers.v1.test_portgroup.TestListPortgroups.test_collection_links_default_limit [0.134425s] ... ok {21} ironic.tests.unit.api.controllers.v1.test_volume_connector.TestDelete.test_delete_volume_connector_invalid_power_state [0.078738s] ... ok GET: /v1/volume/connectors?sort_key=foo {} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-46592520-c7dc-4418-845f-f336705eb982 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"The sort_key value \\\"foo\\\" is an invalid field for sorting\"}"} GET: /v1/volume/connectors?sort_key=extra {} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-168e3ea6-74e5-407b-a821-66ddab0a8f45 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"The sort_key value extra is an invalid field for sorting\"}"} {28} ironic.tests.unit.api.controllers.v1.test_volume_connector.TestListVolumeConnectors.test_sort_key_invalid [0.069385s] ... ok GET: /v1/ports/detail {} GOT:{u'ports': [{u'node_uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'uuid': u'cced08cb-a41d-43aa-8db6-971b9587629f', u'links': [{u'href': u'http://localhost/v1/ports/cced08cb-a41d-43aa-8db6-971b9587629f', u'rel': u'self'}, {u'href': u'http://localhost/ports/cced08cb-a41d-43aa-8db6-971b9587629f', u'rel': u'bookmark'}], u'extra': {}, u'created_at': u'2019-06-06T07:02:16.023950+00:00', u'updated_at': None, u'address': u'66:44:55:33:11:22'}]} {1} ironic.tests.unit.api.controllers.v1.test_port.TestListPorts.test_list_detailed_with_deleted_node [0.084428s] ... ok PATCH: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123 [{'path': '/extra', 'op': 'remove'}] GOT:Response: 200 OK Content-Type: application/json Openstack-Request-Id: req-edc8a7b8-3447-41a9-a966-b481040b477c X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"target_power_state": null, "links": [{"href": "http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "rel": "self"}, {"href": "http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "rel": "bookmark"}], "target_provision_state": null, "last_error": null, "updated_at": null, "maintenance_reason": null, "provision_state": null, "uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "console_enabled": false, "extra": {}, "provision_updated_at": null, "maintenance": false, "power_state": null, "driver": "fake-hardware", "reservation": null, "properties": {"memory_mb": "4096", "cpu_arch": "x86_64", "local_gb": "10", "cpus": "8"}, "instance_uuid": null, "driver_info": {"fake_password": "******", "foo": "bar"}, "created_at": "2019-06-06T07:02:15.781521+00:00", "ports": [{"href": "http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports", "rel": "self"}, {"href": "http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports", "rel": "bookmark"}], "chassis_uuid": "e74c40e0-d825-11e2-a28f-0800200c9a66", "instance_info": {"foo": "bar", "image_url": "******", "configdrive": "******"}} {25} ironic.tests.unit.api.controllers.v1.test_node.TestPatch.test_remove_ok [0.114403s] ... ok POST: /v1/nodes {'instance_uuid': None, 'name': '', 'driver_info': {'fake_password': 'fakepass', 'foo': 'bar'}, 'extra': {}, 'driver': 'fake-hardware', 'properties': {'memory_mb': '4096', 'cpu_arch': 'x86_64', 'local_gb': '10', 'cpus': '8'}, 'maintenance': False, 'chassis_uuid': 'e74c40e0-d825-11e2-a28f-0800200c9a66', 'instance_info': {'foo': 'bar', 'image_url': 'http://example.com/test_image_url', 'configdrive': 'TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQ='}, 'uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123'} GOT:Response: 406 Not Acceptable Content-Type: application/json Openstack-Request-Id: req-558345de-95c9-442b-bd06-3bbbc83d43b2 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Request not acceptable.\"}"} {29} ironic.tests.unit.api.controllers.v1.test_node.TestPost.test_create_node_name_empty_not_acceptable [0.058970s] ... ok GET: /v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 {} GOT:{u'local_link_connection': {u'switch_info': u'switch1', u'port_id': u'Ethernet3/1', u'switch_id': u'0a:1b:2c:3d:4e:5f'}, u'node_uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c781', u'links': [{u'href': u'http://localhost/v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781', u'rel': u'self'}, {u'href': u'http://localhost/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781', u'rel': u'bookmark'}], u'extra': {}, u'pxe_enabled': True, u'portgroup_uuid': None, u'updated_at': None, u'physical_network': None, u'address': u'52:54:00:cf:2d:31', u'internal_info': {u'bar': u'buzz'}, u'created_at': u'2019-06-06T07:02:16.208640+00:00'} GET: /v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 {} GOT:{u'local_link_connection': {u'switch_info': u'switch1', u'port_id': u'Ethernet3/1', u'switch_id': u'0a:1b:2c:3d:4e:5f'}, u'node_uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c781', u'links': [{u'href': u'http://localhost/v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781', u'rel': u'self'}, {u'href': u'http://localhost/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781', u'rel': u'bookmark'}], u'extra': {}, u'pxe_enabled': True, u'portgroup_uuid': None, u'updated_at': None, u'physical_network': None, u'address': u'52:54:00:cf:2d:31', u'internal_info': {u'bar': u'buzz'}, u'created_at': u'2019-06-06T07:02:16.208640+00:00', u'is_smartnic': True} {19} ironic.tests.unit.api.controllers.v1.test_port.TestListPorts.test_hide_fields_in_newer_versions_is_smartnic [0.092581s] ... ok PATCH: /v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4 [{'path': '/mode', 'op': 'remove'}] GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-0fe4f831-7141-4638-a513-2fef12bc88e6 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"'/mode' is a mandatory attribute and can not be removed\"}"} {8} ironic.tests.unit.api.controllers.v1.test_portgroup.TestPatch.test_remove_mode_not_allowed [0.064222s] ... ok GET: /v1/ports/detail?portgroup=6eb02b44-18a3-4659-8c0b-8d2802581ae4 {} GOT:Response: 406 Not Acceptable Content-Type: application/json Openstack-Request-Id: req-2d574595-27e2-42f6-a1e1-9fc6807603c7 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.14 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Request not acceptable.\"}"} {6} ironic.tests.unit.api.controllers.v1.test_port.TestListPorts.test_get_all_by_portgroup_uuid_older_api_version [0.066348s] ... ok GET: /v1/volume/targets?fields=uuid,extra {} GOT:{u'targets': [{u'uuid': u'8ee674e5-df44-441b-8b9f-09aa0b9c0563', u'links': [{u'href': u'http://localhost/v1/volume/targets/8ee674e5-df44-441b-8b9f-09aa0b9c0563', u'rel': u'self'}, {u'href': u'http://localhost/volume/targets/8ee674e5-df44-441b-8b9f-09aa0b9c0563', u'rel': u'bookmark'}], u'extra': {}}, {u'uuid': u'786b20e1-142b-4887-bb3e-e48dad246a01', u'links': [{u'href': u'http://localhost/v1/volume/targets/786b20e1-142b-4887-bb3e-e48dad246a01', u'rel': u'self'}, {u'href': u'http://localhost/volume/targets/786b20e1-142b-4887-bb3e-e48dad246a01', u'rel': u'bookmark'}], u'extra': {}}, {u'uuid': u'0702bec1-e4f5-4ea0-97e6-779ce87f4cbb', u'links': [{u'href': u'http://localhost/v1/volume/targets/0702bec1-e4f5-4ea0-97e6-779ce87f4cbb', u'rel': u'self'}, {u'href': u'http://localhost/volume/targets/0702bec1-e4f5-4ea0-97e6-779ce87f4cbb', u'rel': u'bookmark'}], u'extra': {}}]} {5} ironic.tests.unit.api.controllers.v1.test_volume_target.TestListVolumeTargets.test_get_collection_custom_fields [0.126628s] ... ok PUT: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states/power {'target': 'power on', 'timeout': 0} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-ed64946d-c155-4f89-b82b-bf4e91598cc3 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.27 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"timeout has to be positive integer\"}"} {27} ironic.tests.unit.api.controllers.v1.test_node.TestPut.test_power_state_power_on_invalid_timeout_valid_soft_ver [0.062256s] ... ok POST: /v1/portgroups {'node_uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123', 'uuid': '6eb02b44-18a3-4659-8c0b-8d2802581ae4', 'extra': {}, 'standalone_ports_supported': True, 'address': '52:54:00:cf:2d:31', 'name': 'fooname'} GOT:Response: 404 Not Found Content-Type: application/json Openstack-Request-Id: req-55de7fdc-5221-4361-855e-3b1d394e2004 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.14 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Resource could not be found.\"}"} {17} ironic.tests.unit.api.controllers.v1.test_portgroup.TestPost.test_create_portgroup_invalid_api_version [0.059809s] ... ok GET: /v1/portgroups {} GOT:{u'portgroups': [{u'address': u'52:54:00:cf:2d:30', u'uuid': u'eafdbfb0-7b1f-4852-8905-dec9e5219740', u'links': [{u'href': u'http://localhost/v1/portgroups/eafdbfb0-7b1f-4852-8905-dec9e5219740', u'rel': u'self'}, {u'href': u'http://localhost/portgroups/eafdbfb0-7b1f-4852-8905-dec9e5219740', u'rel': u'bookmark'}], u'name': u'portgroup0'}, {u'address': u'52:54:00:cf:2d:31', u'uuid': u'b2827a28-273f-428e-ad74-2a8cd53034ef', u'links': [{u'href': u'http://localhost/v1/portgroups/b2827a28-273f-428e-ad74-2a8cd53034ef', u'rel': u'self'}, {u'href': u'http://localhost/portgroups/b2827a28-273f-428e-ad74-2a8cd53034ef', u'rel': u'bookmark'}], u'name': u'portgroup1'}, {u'address': u'52:54:00:cf:2d:32', u'uuid': u'b4cba564-0ff2-403c-a72e-95ba299a7cf6', u'links': [{u'href': u'http://localhost/v1/portgroups/b4cba564-0ff2-403c-a72e-95ba299a7cf6', u'rel': u'self'}, {u'href': u'http://localhost/portgroups/b4cba564-0ff2-403c-a72e-95ba299a7cf6', u'rel': u'bookmark'}], u'name': u'portgroup2'}, {u'address': u'52:54:00:cf:2d:33', u'uuid': u'fb8dce83-f001-4473-9bc1-e7955b406516', u'links': [{u'href': u'http://localhost/v1/portgroups/fb8dce83-f001-4473-9bc1-e7955b406516', u'rel': u'self'}, {u'href': u'http://localhost/portgroups/fb8dce83-f001-4473-9bc1-e7955b406516', u'rel': u'bookmark'}], u'name': u'portgroup3'}, {u'address': u'52:54:00:cf:2d:34', u'uuid': u'fd38dcc1-efca-4dd5-a966-23f8197e1015', u'links': [{u'href': u'http://localhost/v1/portgroups/fd38dcc1-efca-4dd5-a966-23f8197e1015', u'rel': u'self'}, {u'href': u'http://localhost/portgroups/fd38dcc1-efca-4dd5-a966-23f8197e1015', u'rel': u'bookmark'}], u'name': u'portgroup4'}]} {10} ironic.tests.unit.api.controllers.v1.test_portgroup.TestListPortgroups.test_many [0.165013s] ... ok PATCH: /v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 [{'path': '/pxe_enabled', 'value': True, 'op': 'replace'}] GOT:Response: 406 Not Acceptable Content-Type: application/json Openstack-Request-Id: req-90ee0071-f36a-41cf-b7f0-38afb86918df X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.14 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Request not acceptable.\"}"} {11} ironic.tests.unit.api.controllers.v1.test_port.TestPatch.test_update_pxe_enabled_old_api_version [0.070031s] ... ok POST: /v1/ports {'local_link_connection': {'switch_info': 'switch1', 'port_id': 'Ethernet3/1', 'switch_id': '0a:1b:2c:3d:4e:5f'}, 'node_uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123', 'uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c781', 'extra': {}, 'pxe_enabled': True, 'physical_network': None, 'address': '52:54:00:cf:2d:31', 'is_smartnic': False} GOT:Response: 201 Created Content-Type: application/json Location: http://localhost/v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 Openstack-Request-Id: req-ac9cf1e2-9ea1-43fe-85d4-09c8a5c943a9 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"local_link_connection": {"switch_info": "switch1", "port_id": "Ethernet3/1", "switch_id": "0a:1b:2c:3d:4e:5f"}, "node_uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "links": [{"href": "http://localhost/v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "rel": "self"}, {"href": "http://localhost/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "rel": "bookmark"}], "extra": {}, "pxe_enabled": true, "portgroup_uuid": null, "updated_at": null, "physical_network": null, "address": "52:54:00:cf:2d:31", "internal_info": {}, "created_at": "2019-06-06T07:02:16.545755+00:00", "is_smartnic": false} {11} ironic.tests.unit.api.controllers.v1.test_port.TestPortsController__CheckAllowedPortFields.test__check_allowed_port_fields_portgroup_not_allow [0.026230s] ... ok {30} ironic.tests.unit.api.controllers.v1.test_port.TestPost.test_create_port_novif_pxe_noportgroup [0.117406s] ... ok PUT: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states/power {'target': 'soft power off'} GOT:Response: 202 Accepted Location: http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states Openstack-Request-Id: req-c7399eab-4aba-4683-ae9d-3e9dc2b27f7a X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.27 {25} ironic.tests.unit.api.controllers.v1.test_node.TestPut.test_power_state_soft_power_off_no_timeout_valid_soft_ver [0.077045s] ... ok PATCH: /v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 [{'path': '/node_id', 'op': 'remove'}] GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-cbd430f6-4d62-4a26-8257-549e3adf5f53 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Couldn't apply patch '{'path': '/node_id', 'op': 'remove'}'. Reason: can't remove non-existent object 'node_id'\"}"} {1} ironic.tests.unit.api.controllers.v1.test_port.TestPatch.test_remove_node_id [0.077925s] ... ok {1} ironic.tests.unit.api.controllers.v1.test_port.TestPortsController__CheckAllowedPortFields.test__check_allowed_port_fields_physnet_allow [0.023299s] ... ok PUT: /v1/nodes/node-39/states/provision {'target': 'active'} GOT:Response: 202 Accepted Location: http://localhost/v1/nodes/node-39/states Openstack-Request-Id: req-ea71eeba-462d-4aae-b65d-acf892e08824 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.5 {27} ironic.tests.unit.api.controllers.v1.test_node.TestPut.test_provision_by_name [0.072252s] ... ok PATCH: /v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 [{'path': '/foo', 'value': 'bar', 'op': 'add'}] GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-11cf6cdc-9bc9-49dc-a7b4-934495c33121 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Adding a new attribute (/foo) to the root of the resource is not allowed\"}"} {6} ironic.tests.unit.api.controllers.v1.test_port.TestPatch.test_add_root_non_existent [0.077308s] ... ok POST: /v1/portgroups {'node_uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123', 'uuid': '6eb02b44-18a3-4659-8c0b-8d2802581ae4', 'extra': {'vif_port_id': 'foo'}, 'standalone_ports_supported': True, 'address': '52:54:00:cf:2d:31', 'name': 'fooname'} GOT:Response: 201 Created Content-Type: application/json Location: http://localhost/v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4 Openstack-Request-Id: req-18f5a1d0-b4a7-4635-b477-e766525ac8f8 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"node_uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "uuid": "6eb02b44-18a3-4659-8c0b-8d2802581ae4", "links": [{"href": "http://localhost/v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4", "rel": "self"}, {"href": "http://localhost/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4", "rel": "bookmark"}], "extra": {"vif_port_id": "foo"}, "created_at": "2019-06-06T07:02:16.949573+00:00", "updated_at": null, "ports": [{"href": "http://localhost/v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4/ports", "rel": "self"}, {"href": "http://localhost/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4/ports", "rel": "bookmark"}], "standalone_ports_supported": true, "mode": "active-backup", "address": "52:54:00:cf:2d:31", "internal_info": {"tenant_vif_port_id": "foo"}, "properties": {}, "name": "fooname"} {24} ironic.tests.unit.api.controllers.v1.test_portgroup.TestPost.test_create_portgroup_with_extra_vif_port_id_deprecated [0.098484s] ... ok PATCH: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123 [{'path': '/instance_uuid', 'value': 'aaaaaaaa-1111-bbbb-2222-cccccccccccc', 'op': 'replace'}] GOT:Response: 200 OK Content-Type: application/json Openstack-Request-Id: req-61c2e15b-6858-414b-ab75-9db794dbb64c X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"target_power_state": null, "links": [{"href": "http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "rel": "self"}, {"href": "http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "rel": "bookmark"}], "target_provision_state": null, "last_error": null, "updated_at": "2013-12-03T06:20:41.184720+00:00", "maintenance_reason": null, "provision_state": null, "uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "console_enabled": false, "extra": {}, "provision_updated_at": null, "maintenance": false, "power_state": null, "driver": "fake-hardware", "reservation": null, "properties": {"memory_mb": "4096", "cpu_arch": "x86_64", "local_gb": "10", "cpus": "8"}, "instance_uuid": null, "driver_info": {"fake_password": "******", "foo": "bar"}, "created_at": "2019-06-06T07:02:16.028666+00:00", "ports": [{"href": "http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports", "rel": "self"}, {"href": "http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports", "rel": "bookmark"}], "chassis_uuid": "e74c40e0-d825-11e2-a28f-0800200c9a66", "instance_info": {"foo": "bar", "image_url": "******", "configdrive": "******"}} {14} ironic.tests.unit.api.controllers.v1.test_node.TestPatch.test_update_ok [0.114782s] ... ok GET: /v1.xml {} GOT:Response: 404 Not Found Content-Type: application/json {"error_message": "{\"code\": 404, \"description\": \"\", \"title\": \"Not Found\"}"} GET: /v1/ {} GOT:Response: 200 OK Content-Type: application/json Openstack-Request-Id: req-92775293-6473-411b-9abf-2e2c23daddbe X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"media_types": [{"base": "application/json", "type": "application/vnd.openstack.ironic.v1+json"}], "version": {"status": "CURRENT", "min_version": "1.1", "version": "1.56", "id": "v1", "links": [{"href": "http://localhost/v1/", "rel": "self"}]}, "links": [{"href": "http://localhost/v1/", "rel": "self"}, {"href": "https://docs.openstack.org//ironic/latest/contributor//webapi.html", "type": "text/html", "rel": "describedby"}], "drivers": [{"href": "http://localhost/v1/drivers/", "rel": "self"}, {"href": "http://localhost/drivers/", "rel": "bookmark"}], "ports": [{"href": "http://localhost/v1/ports/", "rel": "self"}, {"href": "http://localhost/ports/", "rel": "bookmark"}], "chassis": [{"href": "http://localhost/v1/chassis/", "rel": "self"}, {"href": "http://localhost/chassis/", "rel": "bookmark"}], "nodes": [{"href": "http://localhost/v1/nodes/", "rel": "self"}, {"href": "http://localhost/nodes/", "rel": "bookmark"}], "id": "v1"} GET: /v1.json {} GOT:Response: 200 OK Content-Type: application/json Openstack-Request-Id: req-4d8fdbc2-69a1-4ea1-b3b3-1d0c08c3662c X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"media_types": [{"base": "application/json", "type": "application/vnd.openstack.ironic.v1+json"}], "version": {"status": "CURRENT", "min_version": "1.1", "version": "1.56", "id": "v1", "links": [{"href": "http://localhost/v1/", "rel": "self"}]}, "links": [{"href": "http://localhost/v1/", "rel": "self"}, {"href": "https://docs.openstack.org//ironic/latest/contributor//webapi.html", "type": "text/html", "rel": "describedby"}], "drivers": [{"href": "http://localhost/v1/drivers/", "rel": "self"}, {"href": "http://localhost/drivers/", "rel": "bookmark"}], "ports": [{"href": "http://localhost/v1/ports/", "rel": "self"}, {"href": "http://localhost/ports/", "rel": "bookmark"}], "chassis": [{"href": "http://localhost/v1/chassis/", "rel": "self"}, {"href": "http://localhost/chassis/", "rel": "bookmark"}], "nodes": [{"href": "http://localhost/v1/nodes/", "rel": "self"}, {"href": "http://localhost/nodes/", "rel": "bookmark"}], "id": "v1"} {12} ironic.tests.unit.api.test_acl.TestACL.test_public_api_with_path_extensions [0.068043s] ... ok {12} ironic.tests.unit.api.test_hooks.TestContextHook.test_context_hook_after_add_request_id [0.027835s] ... ok {12} ironic.tests.unit.api.test_hooks.TestPolicyDeprecation.test_policy_deprecation_check [0.018209s] ... ok PUT: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states/provision {'target': 'active'} GOT:Response: 202 Accepted Location: http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states Openstack-Request-Id: req-58dc31c1-96b3-4106-9e78-6c07bb038d28 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {27} ironic.tests.unit.api.controllers.v1.test_node.TestPut.test_provision_with_deploy [0.078286s] ... ok {12} ironic.tests.unit.api.test_middleware.TestCORSMiddleware.test_valid_cors_options_request [0.021474s] ... ok {12} ironic.tests.unit.cmd.test_conductor.ConductorStartTestCase.test_warn_about_unsafe_shred_parameters_random_no_zeros [0.026189s] ... ok {12} ironic.tests.unit.common.test_cinder.TestCinderActions.test_attach_volumes_attach_set_meta_failure [0.121754s] ... ok {12} ironic.tests.unit.common.test_cinder.TestCinderActions.test_detach_volumes_client_init_failure_invalid_parameter_value [0.124448s] ... ok {12} ironic.tests.unit.common.test_glance_service.TestGlanceImageService.test_show_raises_when_image_not_active [0.016085s] ... ok {12} ironic.tests.unit.common.test_glance_service.TestGlanceSwiftTempURL.test_swift_temp_url_endpoint_detected [0.022439s] ... ok {12} ironic.tests.unit.common.test_image_service.FileImageServiceTestCase.test_validate_href_path_not_found_or_not_file [0.018565s] ... ok {12} ironic.tests.unit.common.test_network.GetPhysnetsByPortgroupID.test_one_port [0.097141s] ... ok {12} ironic.tests.unit.common.test_network.TestNetwork.test_get_node_vif_ids_one_port_extra [0.082582s] ... ok {12} ironic.tests.unit.common.test_network.TestNetwork.test_get_node_vif_ids_one_portgroup_int_info [0.100994s] ... ok {12} ironic.tests.unit.common.test_network.TestNetwork.test_get_node_vif_ids_two_portgroups_extra [0.110273s] ... ok {12} ironic.tests.unit.common.test_neutron.TestGetNetworkByUUIDOrName.test__get_network_by_uuid_or_name_failure [0.017136s] ... ok {12} ironic.tests.unit.common.test_neutron.TestGetPhysnetsByPortUUID.test_get_physnets_by_port_uuid_network_failure [0.022956s] ... ok {12} ironic.tests.unit.common.test_neutron.TestNeutronNetworkActions.test_remove_neutron_ports_delete_race [0.109577s] ... ok {12} ironic.tests.unit.common.test_neutron.TestNeutronNetworkActions.test_validate_agent_down [0.040666s] ... ok {12} ironic.tests.unit.common.test_pxe_utils.PXEInterfacesTestCase.test_build_pxe_config_options_ipxe [0.162198s] ... ok {12} ironic.tests.unit.common.test_pxe_utils.PXEInterfacesTestCase.test_parse_driver_info_missing_rescue_kernel [0.034162s] ... ok {12} ironic.tests.unit.common.test_pxe_utils.TFTPImageCacheTestCase.test_without_master_path [0.023264s] ... ok {12} ironic.tests.unit.common.test_pxe_utils.TestPXEUtils.test_dhcp_options_for_instance [0.103724s] ... ok {12} ironic.tests.unit.common.test_pxe_utils.TestPXEUtils.test_get_kernel_ramdisk_info [0.034314s] ... ok {12} ironic.tests.unit.common.test_raid.ValidateRaidConfigurationTestCase.test_validate_configuration_custom_schema [0.026313s] ... ok {12} ironic.tests.unit.common.test_raid.ValidateRaidConfigurationTestCase.test_validate_configuration_invalid_disk_type [0.027984s] ... ok {12} ironic.tests.unit.common.test_raid.ValidateRaidConfigurationTestCase.test_validate_configuration_no_logical_disk [0.026795s] ... ok {12} ironic.tests.unit.common.test_raid.ValidateRaidConfigurationTestCase.test_validate_configuration_no_raid_level [0.028153s] ... ok {12} ironic.tests.unit.common.test_rpc.TestUtils.test_get_versioned_notifier [0.016725s] ... ok {12} ironic.tests.unit.conductor.test_allocations.DoAllocateTestCase.test_nodes_candidates_do_not_match [0.073340s] ... ok {12} ironic.tests.unit.conductor.test_base_manager.RegisterInterfacesTestCase.test__register_and_validate_no_valid_default [0.265095s] ... ok {12} ironic.tests.unit.conductor.test_base_manager.StartStopTestCase.test_stop_uninitialized_conductor [0.071065s] ... ok {12} ironic.tests.unit.conductor.test_manager.DestroyNodeTestCase.test_destroy_node [0.474103s] ... ok {12} ironic.tests.unit.conductor.test_manager.DestroyPortgroupTestCase.test_destroy_portgroup [0.100583s] ... ok {12} ironic.tests.unit.conductor.test_manager.DoNodeCleanTestCase.test_continue_node_clean_wrong_state [0.235479s] ... ok {12} ironic.tests.unit.conductor.test_manager.DoNodeCleanTestCase.test_do_next_clean_step_manual_continue_from_last_cleaning [0.293930s] ... ok {12} ironic.tests.unit.conductor.test_manager.DoNodeCleanTestCase.test_do_next_clean_step_oob_reboot_last_step [0.267283s] ... ok {12} ironic.tests.unit.conductor.test_manager.TestIndirectionApiConductor.test_object_backport_versions [0.013892s] ... ok {12} ironic.tests.unit.conductor.test_manager.UpdateVolumeConnectorTestCase.test_update_volume_connector_type [0.086466s] ... ok {12} ironic.tests.unit.conductor.test_manager.VendorPassthruTestCase.test_get_driver_vendor_passthru_methods [0.136269s] ... ok {12} ironic.tests.unit.conductor.test_rpcapi.ConductorRPCAPITestCase.test_version_capped [0.015352s] ... ok {12} ironic.tests.unit.conductor.test_rpcapi.RPCAPITestCase.test_change_node_power_state [0.028532s] ... ok {12} ironic.tests.unit.conductor.test_rpcapi.RPCAPITestCase.test_driver_vendor_passthru [0.026869s] ... ok {12} ironic.tests.unit.conductor.test_rpcapi.RPCAPITestCase.test_inject_nmi [0.026301s] ... ok {12} ironic.tests.unit.conductor.test_rpcapi.RPCAPITestCase.test_set_console_mode [0.024465s] ... ok {12} ironic.tests.unit.conductor.test_rpcapi.RPCAPITestCase.test_set_target_raid_config [0.016567s] ... ok {12} ironic.tests.unit.conductor.test_rpcapi.RPCAPITestCase.test_update_portgroup [0.026189s] ... ok {12} ironic.tests.unit.conductor.test_steps.NodeDeployStepsTestCase.test__get_all_deployment_steps_user_and_driver_steps [0.072403s] ... ok {12} ironic.tests.unit.conductor.test_steps.NodeDeployStepsTestCase.test__get_steps_from_deployment_templates [0.068040s] ... ok {12} ironic.tests.unit.conductor.test_task_manager.TaskManagerStateModelTestCases.test_process_event_sets_callback [0.012859s] ... ok {12} ironic.tests.unit.conductor.test_task_manager.TaskManagerTestCase.test_shared_lock [0.026155s] ... ok {12} ironic.tests.unit.conductor.test_utils.ErrorHandlersTestCase.test_spawn_cleaning_error_handler_no_worker [0.013297s] ... ok PATCH: /v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 [{'path': '/portgroup_uuid', 'value': 'ec16d486-7916-4fe4-9b0f-cacfad662657', 'op': 'add'}] GOT:Response: 200 OK Content-Type: application/json Openstack-Request-Id: req-403bfe07-f94f-4ec0-98e6-1db0035ab169 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.24 {"local_link_connection": {"switch_info": "switch1", "port_id": "Ethernet3/1", "switch_id": "0a:1b:2c:3d:4e:5f"}, "node_uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "links": [{"href": "http://localhost/v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "rel": "self"}, {"href": "http://localhost/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "rel": "bookmark"}], "extra": {}, "pxe_enabled": true, "portgroup_uuid": "ec16d486-7916-4fe4-9b0f-cacfad662657", "updated_at": "2019-06-06T07:02:16.408520+00:00", "address": "52:54:00:cf:2d:31", "internal_info": {"bar": "buzz"}, "created_at": "2019-06-06T07:02:16.316437+00:00"} {19} ironic.tests.unit.api.controllers.v1.test_port.TestPatch.test_add_portgroup_uuid [0.164566s] ... ok {12} ironic.tests.unit.conductor.test_utils.FastTrackTestCase.test_is_fast_track_config_false [0.093705s] ... ok {12} ironic.tests.unit.conductor.test_utils.NodePowerActionTestCase.test__calculate_target_state [0.018696s] ... ok {12} ironic.tests.unit.conductor.test_utils.NodePowerActionTestCase.test_node_power_action_reboot_storage_attach [0.140535s] ... ok {12} ironic.tests.unit.conductor.test_utils.NodePowerActionTestCase.test_node_power_action_set_power_failure [0.173575s] ... ok POST: /v1/ports {'local_link_connection': {'port_id': 'Ethernet1/15', 'switch_id': '0a:1b:2c:3d:4e:5f'}, 'node_uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123', 'uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c781', 'extra': {}, 'pxe_enabled': True, 'portgroup_uuid': '6eb02b44-18a3-4659-8c0b-8d2802581ae4', 'physical_network': None, 'address': '52:54:00:cf:2d:31', 'is_smartnic': False} GOT:Response: 406 Not Acceptable Content-Type: application/json Openstack-Request-Id: req-eeb323eb-5515-496c-be76-7db6bd5c42dd X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.14 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Request not acceptable.\"}"} {12} ironic.tests.unit.db.sqlalchemy.test_migrations.ModelsMigrationsSyncMysql.test_models_sync ... SKIPPED: Backend 'mysql+pymysql' is unavailable: Could not connect {11} ironic.tests.unit.api.controllers.v1.test_port.TestPost.test_create_port_with_llc_old_api_version [0.080603s] ... ok {12} ironic.tests.unit.db.test_bios_settings.DbBIOSSettingTestCase.test_create_bios_setting_list_duplicate [0.036119s] ... ok PUT: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/maintenance {'reason': 'fake'} GOT:Response: 500 Internal Server Error Content-Type: application/json Openstack-Request-Id: req-6fa80205-5279-4005-9827-627af991b2e9 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Server\", \"faultstring\": \"\"}"} {12} ironic.tests.unit.db.test_deploy_templates.DbDeployTemplateTestCase.test_get_deploy_template_by_id [0.026083s] ... ok {25} ironic.tests.unit.api.controllers.v1.test_node.TestPut.test_set_node_maintenance_mode_error [0.070100s] ... ok PATCH: /v1/nodes/node-57.1.json [{'path': '/instance_uuid', 'value': 'aaaaaaaa-1111-bbbb-2222-cccccccccccc', 'op': 'replace'}] GOT:Response: 200 OK Content-Type: application/json Openstack-Request-Id: req-124ac1fe-bb9d-420c-95a0-b04dfe2d33a6 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.5 {"target_power_state": null, "links": [{"href": "http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "rel": "self"}, {"href": "http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "rel": "bookmark"}], "target_provision_state": null, "last_error": null, "updated_at": "2013-12-03T06:20:41.184720+00:00", "maintenance_reason": null, "provision_state": "available", "uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "console_enabled": false, "extra": {}, "provision_updated_at": null, "maintenance": false, "power_state": null, "driver": "fake-hardware", "reservation": null, "properties": {"memory_mb": "4096", "cpu_arch": "x86_64", "local_gb": "10", "cpus": "8"}, "instance_uuid": null, "name": "node-57.1", "driver_info": {"fake_password": "******", "foo": "bar"}, "created_at": "2019-06-06T07:02:16.534202+00:00", "instance_info": {"foo": "bar", "image_url": "******", "configdrive": "******"}, "driver_internal_info": {"private_state": "secret value"}, "chassis_uuid": "e74c40e0-d825-11e2-a28f-0800200c9a66", "ports": [{"href": "http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports", "rel": "self"}, {"href": "http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports", "rel": "bookmark"}]} {12} ironic.tests.unit.db.test_nodes.DbNodeTestCase.test_get_node_by_instance_invalid_uuid [0.017015s] ... ok {16} ironic.tests.unit.api.controllers.v1.test_node.TestPatch.test_update_ok_by_name_with_json [0.114343s] ... ok {12} ironic.tests.unit.dhcp.test_factory.TestDHCPFactory.test_default_dhcp [0.016939s] ... ok {12} ironic.tests.unit.drivers.modules.ansible.test_deploy.TestAnsibleDeploy.test_reboot_to_instance [0.150020s] ... ok {12} ironic.tests.unit.drivers.modules.cimc.test_power.WaitForStateChangeTestCase.test__wait_for_state_change [0.102397s] ... ok {12} ironic.tests.unit.drivers.modules.drac.test_bios.DracBIOSConfigurationTestCase.test_abandon_config_fail [0.109268s] ... ok PATCH: /v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4 [{'path': '/standalone_ports_supported', 'value': False, 'op': 'replace'}] GOT:Response: 200 OK Content-Type: application/json Openstack-Request-Id: req-9d443838-9781-4bad-9970-e26c07d3b92e X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"node_uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "uuid": "6eb02b44-18a3-4659-8c0b-8d2802581ae4", "links": [{"href": "http://localhost/v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4", "rel": "self"}, {"href": "http://localhost/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4", "rel": "bookmark"}], "extra": {}, "created_at": "2019-06-06T07:02:16.726018+00:00", "updated_at": null, "ports": [{"href": "http://localhost/v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4/ports", "rel": "self"}, {"href": "http://localhost/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4/ports", "rel": "bookmark"}], "standalone_ports_supported": false, "mode": "active-backup", "address": "52:54:00:cf:2d:31", "internal_info": {"bar": "buzz"}, "properties": {}, "name": "pg.1"} {23} ironic.tests.unit.api.controllers.v1.test_portgroup.TestPatch.test_update_portgroup_standalone_ports_supported [0.113234s] ... ok {23} ironic.tests.unit.api.controllers.v1.test_types.TestBooleanType.test_valid_true_values [0.015669s] ... ok {12} ironic.tests.unit.drivers.modules.drac.test_raid.DracCreateRaidConfigurationHelpersTestCase.test__find_configuration_all_steps [0.058016s] ... ok {23} ironic.tests.unit.api.controllers.v1.test_types.TestVifType.test_vif_type_bad_id [0.018792s] ... ok {12} ironic.tests.unit.drivers.modules.ibmc.test_power.IBMCPowerTestCase.test_set_power_state_timeout [2.868787s] ... ok {23} ironic.tests.unit.api.controllers.v1.test_utils.TestApiUtils.test_check_allow_clean_verbs [0.016993s] ... ok {12} ironic.tests.unit.drivers.modules.ibmc.test_utils.IBMCUtilsTestCase.test_parse_driver_info_path_verify_ca [0.036269s] ... ok {23} ironic.tests.unit.api.controllers.v1.test_utils.TestApiUtils.test_check_allow_configdrive_as_dict_invalid [0.084860s] ... ok {12} ironic.tests.unit.drivers.modules.ilo.test_boot.IloBootCommonMethodsTestCase.test_parse_driver_info_exc [0.035571s] ... ok {23} ironic.tests.unit.api.controllers.v1.test_utils.TestApiUtils.test_check_allow_driver_detail_false [0.017237s] ... ok {12} ironic.tests.unit.drivers.modules.ilo.test_boot.IloBootPrivateMethodsTestCase.test__disable_secure_boot_exception [0.111336s] ... ok {23} ironic.tests.unit.api.controllers.v1.test_utils.TestApiUtils.test_check_allow_filter_driver_type_none [0.017040s] ... ok {12} ironic.tests.unit.drivers.modules.ilo.test_boot.IloBootPrivateMethodsTestCase.test__disable_secure_boot_true [0.093293s] ... ok {23} ironic.tests.unit.api.controllers.v1.test_utils.TestApiUtils.test_check_allow_manage_verbs [0.018450s] ... ok {12} ironic.tests.unit.drivers.modules.ilo.test_boot.IloPXEBootTestCase.test_clean_up_instance_boot_from_volume [0.137651s] ... ok POST: /v1/ports {'local_link_connection': {'switch_info': 'switch1', 'port_id': 'Ethernet3/1', 'switch_id': '0a:1b:2c:3d:4e:5f'}, 'node_uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123', 'uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c781', 'extra': {}, 'pxe_enabled': True, 'portgroup_uuid': '6eb02b44-18a3-4659-8c0b-8d2802581ae4', 'physical_network': None, 'address': '52:54:00:cf:2d:31', 'is_smartnic': False} GOT:Response: 406 Not Acceptable Content-Type: application/json Openstack-Request-Id: req-9193c966-4f88-497c-afd5-1d5c35eb5e10 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.15 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Request not acceptable.\"}"} {30} ironic.tests.unit.api.controllers.v1.test_port.TestPost.test_create_port_portgroup_old_api_version [0.081307s] ... ok {12} ironic.tests.unit.drivers.modules.ilo.test_common.IloCommonMethodsTestCase.test_get_ilo_object_snmp [0.229514s] ... ok {12} ironic.tests.unit.drivers.modules.ilo.test_common.IloCommonMethodsTestCase.test_remove_single_or_list_of_files_with_file_list [0.024683s] ... ok {12} ironic.tests.unit.drivers.modules.ilo.test_common.IloValidateParametersTestCase.test_parse_driver_info_snmp_inspection_false [0.022908s] ... ok {12} ironic.tests.unit.drivers.modules.ilo.test_firmware_processor.FirmwareProcessorTestCase.test_verify_firmware_update_args_throws_for_no_firmware_url [0.011311s] ... ok {12} ironic.tests.unit.drivers.modules.ilo.test_inspect.IloInspectTestCase.test_inspect_essential_ok_power_off [0.093632s] ... ok {12} ironic.tests.unit.drivers.modules.ilo.test_power.IloPowerInternalMethodsTestCase.test__set_power_state_soft_reboot_fail_to_off [0.064844s] ... ok {12} ironic.tests.unit.drivers.modules.ilo.test_power.IloPowerInternalMethodsTestCase.test__set_power_state_soft_reboot_ok [2.071993s] ... ok {12} ironic.tests.unit.drivers.modules.irmc.test_boot.IRMCDeployPrivateMethodsTestCase.test__parse_instance_info_with_boot_iso_file_url_ok [0.026473s] ... ok {12} ironic.tests.unit.drivers.modules.irmc.test_boot.IRMCPXEBootBasicTestCase.test_prepare_ramdisk_ipxe_swift [0.130311s] ... ok {12} ironic.tests.unit.drivers.modules.irmc.test_boot.IRMCPXEBootBasicTestCase.test_prepare_ramdisk_set_boot_mode_on_bm [0.117830s] ... ok {12} ironic.tests.unit.drivers.modules.irmc.test_boot.IRMCPXEBootTestCase.test_prepare_instance_with_secure_boot [0.082620s] ... ok {12} ironic.tests.unit.drivers.modules.irmc.test_boot.IRMCVirtualMediaBootTestCase.test_prepare_instance_with_secure_boot_false [0.083805s] ... ok {12} ironic.tests.unit.drivers.modules.irmc.test_boot.IRMCVirtualMediaBootWithVolumeTestCase.test__configure_boot_from_volume_apply_error [0.118405s] ... ok {12} ironic.tests.unit.drivers.modules.irmc.test_boot.IRMCVirtualMediaBootWithVolumeTestCase.test_validate_iscsi_connector_no_iqn [0.116965s] ... ok {12} ironic.tests.unit.drivers.modules.irmc.test_management.IRMCManagementTestCase.test_get_properties [0.050872s] ... ok {12} ironic.tests.unit.drivers.modules.irmc.test_management.IRMCManagementTestCase.test_management_interface_get_sensors_data_ipmitool_ok [0.061718s] ... ok {12} ironic.tests.unit.drivers.modules.irmc.test_raid.IRMCRaidConfigurationInternalMethodsTestCase.test__fail_validate_capacity_raid_6 [0.019777s] ... ok {12} ironic.tests.unit.drivers.modules.network.test_common.TestNeutronVifPortIDMixin.test_port_changed_vif_nopxe_noportgroup [0.173624s] ... ok {12} ironic.tests.unit.drivers.modules.network.test_common.TestNeutronVifPortIDMixin.test_port_changed_vif_pxe_noportgroup [0.171525s] ... ok {12} ironic.tests.unit.drivers.modules.network.test_flat.TestFlatInterface.test_remove_rescuing_network [0.064786s] ... ok PUT: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states/provision {'target': 'active', 'configdrive': {'user_data': 'foo'}} GOT:Response: 202 Accepted Location: http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states Openstack-Request-Id: req-48b37481-ef32-489f-8964-fa5308d35329 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {27} ironic.tests.unit.api.controllers.v1.test_node.TestPut.test_provision_with_deploy_configdrive_as_dict [0.089994s] ... ok {12} ironic.tests.unit.drivers.modules.network.test_flat.TestFlatInterface.test_validate [0.063737s] ... ok {12} ironic.tests.unit.drivers.modules.network.test_neutron.NeutronInterfaceTestCase.test_add_provisioning_network_from_node [0.133828s] ... ok {12} ironic.tests.unit.drivers.modules.network.test_neutron.NeutronInterfaceTestCase.test_add_provisioning_network_with_sg [0.075316s] ... ok {12} ironic.tests.unit.drivers.modules.network.test_neutron.NeutronInterfaceTestCase.test_validate_rescue [0.094742s] ... ok {12} ironic.tests.unit.drivers.modules.network.test_noop.NoopInterfaceTestCase.test_add_provisioning_network [0.073382s] ... ok PATCH: /v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4 [{'path': '/extra/vif_port_id', 'value': 'foo', 'op': 'add'}, {'path': '/extra/vif_port_id', 'value': 'bar', 'op': 'add'}] GOT:Response: 200 OK Content-Type: application/json Openstack-Request-Id: req-0add8281-00dd-4de6-bdb6-6ddbd90b2710 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.27 {"node_uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "uuid": "6eb02b44-18a3-4659-8c0b-8d2802581ae4", "links": [{"href": "http://localhost/v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4", "rel": "self"}, {"href": "http://localhost/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4", "rel": "bookmark"}], "extra": {"vif_port_id": "bar"}, "created_at": "2019-06-06T07:02:16.212921+00:00", "updated_at": "2019-06-06T07:02:16.277429+00:00", "ports": [{"href": "http://localhost/v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4/ports", "rel": "self"}, {"href": "http://localhost/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4/ports", "rel": "bookmark"}], "standalone_ports_supported": true, "mode": "active-backup", "address": "52:54:00:cf:2d:31", "internal_info": {"tenant_vif_port_id": "bar", "bar": "buzz"}, "properties": {}, "name": "fooname"} {12} ironic.tests.unit.drivers.modules.redfish.test_bios.RedfishBiosTestCase.test_factory_reset_fail [0.071176s] ... ok {8} ironic.tests.unit.api.controllers.v1.test_portgroup.TestPatchExtraVifPortId.test_add_extra_vif_port_id [0.126858s] ... ok {12} ironic.tests.unit.drivers.modules.redfish.test_management.RedfishManagementTestCase.test_get_supported_boot_devices [0.052317s] ... ok {8} ironic.tests.unit.api.controllers.v1.test_types.TestJsonPatchType.test_cannot_remove_extra_non_removable_attr [0.039061s] ... ok {12} ironic.tests.unit.drivers.modules.redfish.test_utils.RedfishUtilsTestCase.test_disabled_sessions_cache [0.080741s] ... ok {12} ironic.tests.unit.drivers.modules.redfish.test_utils.RedfishUtilsTestCase.test_ensure_session_reuse [0.101615s] ... ok {8} ironic.tests.unit.api.controllers.v1.test_types.TestUuidType.test_invalid_uuid [0.018512s] ... ok {8} ironic.tests.unit.api.controllers.v1.test_utils.TestApiUtils.test_check_allow_clean_verbs_fail [0.017294s] ... ok {12} ironic.tests.unit.drivers.modules.redfish.test_utils.RedfishUtilsTestCase.test_expire_old_sessions [0.067643s] ... ok {12} ironic.tests.unit.drivers.modules.storage.test_cinder.CinderInterfaceTestCase.test__generate_connector_unknown_raises_excption [0.081534s] ... ok {8} ironic.tests.unit.api.controllers.v1.test_utils.TestApiUtils.test_check_allow_specify_driver [0.022187s] ... ok {12} ironic.tests.unit.drivers.modules.test_agent.AgentRescueTestCase.test_agent_rescue_power_on [0.105975s] ... ok POST: /v1/ports {'local_link_connection': {'switch_info': 'switch1', 'port_id': 'Ethernet3/1', 'switch_id': '0a:1b:2c:3d:4e:5f'}, 'node_uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123', 'uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c781', 'extra': {}, 'pxe_enabled': True, 'portgroup_uuid': '6eb02b44-18a3-4659-8c0b-8d2802581ae4', 'physical_network': None, 'address': '52-54-00-cf-2d-31', 'is_smartnic': False} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-59d56092-280c-44ea-9503-96cb9618c7ba X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Expected a MAC address but received 52-54-00-cf-2d-31.\"}"} {8} ironic.tests.unit.api.controllers.v1.test_utils.TestApiUtils.test_check_allow_specify_driver_fail [0.016975s] ... ok {6} ironic.tests.unit.api.controllers.v1.test_port.TestPost.test_create_port_with_hyphens_delimiter [0.066631s] ... ok {12} ironic.tests.unit.drivers.modules.test_agent.TestAgentDeploy.test_get_properties [0.039850s] ... ok {8} ironic.tests.unit.api.controllers.v1.test_utils.TestApiUtils.test_is_path_updated_success [0.015322s] ... ok {8} ironic.tests.unit.api.controllers.v1.test_utils.TestPortgroupIdent.test_get_rpc_portgroup_uuid [0.018001s] ... ok {12} ironic.tests.unit.drivers.modules.test_agent.TestAgentDeploy.test_prepare_with_neutron_net_exc_no_capabilities [0.191042s] ... ok DELETE: /v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4 GOT:Response: 404 Not Found Content-Type: application/json {"error_message": "{\"code\": 404, \"description\": \"\", \"title\": \"Not Found\"}"} {11} ironic.tests.unit.api.controllers.v1.test_portgroup.TestDelete.test_delete_portgroup_invalid_api_version [0.050879s] ... ok {12} ironic.tests.unit.drivers.modules.test_agent_base_vendor.HeartbeatMixinTest.test_heartbeat_touch_provisioning_and_url_save [0.091271s] ... ok {12} ironic.tests.unit.drivers.modules.test_boot_mode_utils.GetBootModeTestCase.test_get_boot_mode_bios [0.009957s] ... ok {12} ironic.tests.unit.drivers.modules.test_deploy_utils.AgentMethodsTestCase.test_direct_deploy_should_convert_raw_image_true [0.022655s] ... ok {12} ironic.tests.unit.drivers.modules.test_deploy_utils.GetPxeBootConfigTestCase.test_get_pxe_boot_file_cpu_not_in_by_arch [0.013460s] ... ok {12} ironic.tests.unit.drivers.modules.test_deploy_utils.GetSingleNicTestCase.test_get_single_nic_with_vif_port_id [0.063941s] ... ok {12} ironic.tests.unit.drivers.modules.test_deploy_utils.InstanceInfoTestCase.test_parse_instance_info_nonglance_image_no_kernel [0.020133s] ... ok {12} ironic.tests.unit.drivers.modules.test_deploy_utils.ParseInstanceInfoCapabilitiesTestCase.test_is_secure_boot_requested_false [0.009480s] ... ok POST: /v1/portgroups {'node_uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123', 'uuid': '6eb02b44-18a3-4659-8c0b-8d2802581ae4', 'extra': {}, 'standalone_ports_supported': True, 'mode': '802.3ad', 'address': '52:54:00:cf:2d:31', 'name': 'fooname'} GOT:Response: 406 Not Acceptable Content-Type: application/json Openstack-Request-Id: req-27e62b50-c9cd-4d5e-8e05-27add5fb28df X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.25 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Request not acceptable.\"}"} POST: /v1/portgroups {'node_uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123', 'uuid': '6eb02b44-18a3-4659-8c0b-8d2802581ae4', 'extra': {}, 'standalone_ports_supported': True, 'address': '52:54:00:cf:2d:31', 'properties': {'bond_prop': 123}, 'name': 'fooname'} GOT:Response: 406 Not Acceptable Content-Type: application/json Openstack-Request-Id: req-6d613709-0100-4167-9835-ba345efdcc59 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.25 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Request not acceptable.\"}"} {12} ironic.tests.unit.drivers.modules.test_deploy_utils.TestBuildInstanceInfoForHttpProvisioning.test_build_instance_info_no_force_raw [0.109538s] ... ok {17} ironic.tests.unit.api.controllers.v1.test_portgroup.TestPost.test_create_portgroup_mode_old_api_version [0.097104s] ... ok {17} ironic.tests.unit.api.controllers.v1.test_types.TestJsonPatchType.test_cannot_update_internal_attr [0.038942s] ... ok {12} ironic.tests.unit.drivers.modules.test_deploy_utils.TestStorageInterfaceUtils.test_populate_storage_driver_internal_info_error [0.065017s] ... ok {17} ironic.tests.unit.api.controllers.v1.test_types.TestVifType.test_vif_type_missing_mandatory_key [0.016560s] ... ok {12} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolDriverTestCase.test_vendor_passthru_validate__bmc_reset_cold_good [0.066492s] ... ok {17} ironic.tests.unit.api.controllers.v1.test_utils.TestApiUtils.test_apply_jsonpatch_remove_non_existent [0.017944s] ... ok {17} ironic.tests.unit.api.controllers.v1.test_utils.TestApiUtils.test_is_path_removed_similar_subpath [0.015858s] ... ok {12} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolPrivateMethodTestCase.test__exec_ipmitool_without_password [0.027230s] ... ok {17} ironic.tests.unit.api.controllers.v1.test_versions.TestMaxVersionString.test_max_version_not_pinned_in_release_mappings [0.015996s] ... ok {12} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolPrivateMethodTestCase.test__make_password_file_with_numeric_password [0.023772s] ... ok {12} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolPrivateMethodTestCase.test__power_status_on [0.025098s] ... ok {12} ironic.tests.unit.drivers.modules.test_pxe.PXEBootTestCase.test_validate_skip_check_write_image_false [0.056639s] ... ok POST: /v1/volume/connectors {'node_uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123', 'extra': {}, 'type': 'iqn', 'uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c781', 'connector_id': 'iqn.2012-06.com.example:initiator'} GOT:Response: 201 Created Content-Type: application/json Location: http://localhost/v1/volume/connectors/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 Openstack-Request-Id: req-ec3f9720-a690-4222-ab9e-98a05ad84af7 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"node_uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "links": [{"href": "http://localhost/v1/volume/connectors/1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "rel": "self"}, {"href": "http://localhost/volume/connectors/1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "rel": "bookmark"}], "extra": {}, "created_at": "2000-01-01T00:00:00+00:00", "updated_at": null, "connector_id": "iqn.2012-06.com.example:initiator", "type": "iqn"} GET: /v1/volume/connectors/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 {} GOT:{u'node_uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c781', u'links': [{u'href': u'http://localhost/v1/volume/connectors/1be26c0b-03f2-4d2e-ae87-c02d7f33c781', u'rel': u'self'}, {u'href': u'http://localhost/volume/connectors/1be26c0b-03f2-4d2e-ae87-c02d7f33c781', u'rel': u'bookmark'}], u'extra': {}, u'created_at': u'2000-01-01T00:00:00+00:00', u'updated_at': None, u'connector_id': u'iqn.2012-06.com.example:initiator', u'type': u'iqn'} {12} ironic.tests.unit.drivers.modules.test_snmp.SNMPDeviceDriverTestCase.test_apc_rackpdu_power_off [0.025192s] ... ok {21} ironic.tests.unit.api.controllers.v1.test_volume_connector.TestPost.test_create_volume_connector [0.128169s] ... ok {12} ironic.tests.unit.drivers.modules.test_snmp.SNMPDeviceDriverTestCase.test_auto_power_reset [0.050522s] ... ok {21} ironic.tests.unit.api.test_hooks.TestContextHook.test_context_hook_public_api [0.030443s] ... ok {12} ironic.tests.unit.drivers.modules.test_snmp.SNMPDeviceDriverTestCase.test_power_on_delay [1.029414s] ... ok {12} ironic.tests.unit.drivers.modules.test_snmp.SNMPDeviceDriverTestCase.test_power_reset_off_delay_on_delay [2.023474s] ... ok {12} ironic.tests.unit.drivers.modules.test_snmp.SNMPDeviceDriverTestCase.test_power_state_error [0.029533s] ... ok {12} ironic.tests.unit.drivers.modules.ucs.test_helper.UcsValidateParametersTestCase.test_parse_driver_info_missing_service_profile [0.060083s] ... ok {12} ironic.tests.unit.drivers.modules.ucs.test_power.UcsPowerTestCase.test_set_and_wait_for_state_change_fail [0.159895s] ... ok {12} ironic.tests.unit.drivers.modules.xclarity.test_power.XClarityPowerDriverTestCase.test_get_properties [0.024255s] ... ok {12} ironic.tests.unit.drivers.test_base.CleanStepDecoratorTestCase.test__validate_argsinfo_arg_unknown_key [0.010693s] ... ok {12} ironic.tests.unit.drivers.test_base.RAIDInterfaceTestCase.test_validate [0.013671s] ... ok {12} ironic.tests.unit.drivers.test_base.TestManagementInterface.test_get_boot_mode_default_impl [0.014097s] ... ok {12} ironic.tests.unit.objects.test_chassis.TestChassisObject.test_get_bad_id_and_uuid [0.014632s] ... ok Malformed option m1.key1value1 {21} ironic.tests.unit.cmd.test_dbsync.OnlineMigrationTestCase.test__run_online_data_migrations_invalid_option2 [0.027671s] ... ok {21} ironic.tests.unit.common.test_driver_factory.HardwareTypeLoadTestCase.test_build_driver_for_task_bad_default [0.095999s] ... ok {12} ironic.tests.unit.objects.test_conductor.TestConductorObject.test_register_update_existing_true [0.018066s] ... ok {21} ironic.tests.unit.common.test_driver_factory.HardwareTypeLoadTestCase.test_no_rescue_interface_default_from_conf [0.035051s] ... ok {21} ironic.tests.unit.common.test_glance_service.CheckImageServiceTestCase.test_check_image_service_client_already_set [0.028340s] ... ok {12} ironic.tests.unit.objects.test_node.TestConvertToVersion.test_automated_clean_unsupported_set_no_remove_non_default [0.015350s] ... ok PATCH: /v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4 [{'path': '/node_uuid', 'value': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123', 'op': 'replace'}] GOT:Response: 200 OK Content-Type: application/json Openstack-Request-Id: req-16bd16dc-2ce1-4192-b70d-c8013564eb14 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"node_uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "uuid": "6eb02b44-18a3-4659-8c0b-8d2802581ae4", "links": [{"href": "http://localhost/v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4", "rel": "self"}, {"href": "http://localhost/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4", "rel": "bookmark"}], "extra": {}, "created_at": "2019-06-06T07:02:16.749867+00:00", "updated_at": null, "ports": [{"href": "http://localhost/v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4/ports", "rel": "self"}, {"href": "http://localhost/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4/ports", "rel": "bookmark"}], "standalone_ports_supported": true, "mode": "active-backup", "address": "52:54:00:cf:2d:31", "internal_info": {"bar": "buzz"}, "properties": {}, "name": "pg.1"} {10} ironic.tests.unit.api.controllers.v1.test_portgroup.TestPatch.test_replace_node_uuid [0.119911s] ... ok {21} ironic.tests.unit.common.test_glance_service.TestSwiftTempUrlCache.test_swift_temp_url_cache_enabled [0.021768s] ... ok {12} ironic.tests.unit.objects.test_node.TestConvertToVersion.test_owner_supported_missing [0.015608s] ... ok {21} ironic.tests.unit.common.test_json_rpc.TestClient.test_call_serialization [0.028105s] ... ok {12} ironic.tests.unit.objects.test_node.TestNodeObject.test_as_dict_with_traits [0.015332s] ... ok {21} ironic.tests.unit.common.test_json_rpc.TestService.test_authenticated [0.074788s] ... ok {12} ironic.tests.unit.objects.test_node.TestNodeObject.test_create_with_traits [0.016146s] ... ok {21} ironic.tests.unit.common.test_network.GetPhysnetsByPortgroupID.test_exclude_port_no_id [0.111997s] ... ok {12} ironic.tests.unit.objects.test_node.TestNodeObject.test_get_by_name [0.020472s] ... ok {12} ironic.tests.unit.objects.test_node.TestNodeObject.test_get_by_port_addresses [0.018107s] ... ok {12} ironic.tests.unit.objects.test_node.TestNodeObject.test_get_by_uuid [0.017932s] ... ok {21} ironic.tests.unit.common.test_network.GetPhysnetsForNodeTestCase.test_get_physnets_for_node_excludes_None [0.105386s] ... ok {12} ironic.tests.unit.objects.test_node.TestNodeObject.test_release_node_not_found [0.016676s] ... ok {21} ironic.tests.unit.common.test_network.GetPortsByPortgroupIdTestCase.test_ports_by_portgroup_id_empty [0.106577s] ... ok {12} ironic.tests.unit.objects.test_node.TestNodePayloads.test_node_payload [0.015949s] ... ok {21} ironic.tests.unit.common.test_network.TestNetwork.test_get_node_vif_ids_two_portgroups_int_info [0.080727s] ... ok PUT: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/maintenance {} GOT:Response: 202 Accepted Openstack-Request-Id: req-25a547e9-1ac6-490e-bc86-fe776a14b4b4 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {12} ironic.tests.unit.objects.test_notification.TestNotificationBase.test_emit_notification_empty_schema [0.023676s] ... ok {25} ironic.tests.unit.api.controllers.v1.test_node.TestPut.test_set_node_maintenance_mode_no_reason [0.064851s] ... ok {21} ironic.tests.unit.common.test_neutron.TestNeutronNetworkActions.test_remove_neutron_smartnic_ports [0.079064s] ... ok {12} ironic.tests.unit.objects.test_objects.TestObject.test_hydration_bad_ns [0.010094s] ... ok {21} ironic.tests.unit.common.test_neutron.TestValidateNetwork.test_by_uuid [0.012358s] ... ok {12} ironic.tests.unit.objects.test_port.TestConvertToVersion.test_physnet_unsupported_missing [0.013929s] ... ok {21} ironic.tests.unit.common.test_neutron.TestValidateNetwork.test_failure [0.012696s] ... ok {21} ironic.tests.unit.common.test_policy.PolicyInCodeTestCase.test_public_api [0.026151s] ... ok {21} ironic.tests.unit.common.test_pxe_utils.PXEInterfacesTestCase.test_build_pxe_config_options_ipa_debug_rescue [0.130211s] ... ok {21} ironic.tests.unit.common.test_pxe_utils.PXEInterfacesTestCase.test_build_pxe_config_options_pxe_no_kernel_no_ramdisk [0.103868s] ... ok {21} ironic.tests.unit.common.test_pxe_utils.PXEInterfacesTestCase.test_build_pxe_config_options_pxe_without_is_whole_disk_image [0.131294s] ... ok POST: /v1/nodes {'instance_uuid': None, 'uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123', 'driver_info': {'fake_password': 'fakepass', 'foo': 'bar'}, 'extra': {}, 'driver': 'fake-hardware', 'properties': {'memory_mb': '4096', 'cpu_arch': 'x86_64', 'local_gb': '10', 'cpus': '8'}, 'maintenance': False, 'chassis_uuid': 'e74c40e0-d825-11e2-a28f-0800200c9a66', 'instance_info': {'foo': 'bar', 'image_url': 'http://example.com/test_image_url', 'configdrive': 'TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQ='}, 'network_interface': 'neutron'} GOT:Response: 201 Created Content-Type: application/json Location: http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123 Openstack-Request-Id: req-20b7eee0-f5e5-423c-81a2-977efdd008ee X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.20 {"target_power_state": null, "links": [{"href": "http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "rel": "self"}, {"href": "http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "rel": "bookmark"}], "target_provision_state": null, "last_error": null, "updated_at": null, "maintenance_reason": null, "states": [{"href": "http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states", "rel": "self"}, {"href": "http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states", "rel": "bookmark"}], "provision_state": "enroll", "clean_step": {}, "uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "console_enabled": false, "extra": {}, "raid_config": {}, "provision_updated_at": null, "power_state": null, "target_raid_config": {}, "network_interface": "neutron", "inspection_started_at": null, "inspection_finished_at": null, "maintenance": false, "driver": "fake-hardware", "reservation": null, "properties": {"memory_mb": "4096", "cpu_arch": "x86_64", "local_gb": "10", "cpus": "8"}, "instance_uuid": null, "name": null, "driver_info": {"fake_password": "******", "foo": "bar"}, "created_at": "2000-01-01T00:00:00+00:00", "ports": [{"href": "http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports", "rel": "self"}, {"href": "http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports", "rel": "bookmark"}], "driver_internal_info": {}, "chassis_uuid": "e74c40e0-d825-11e2-a28f-0800200c9a66", "instance_info": {"foo": "bar", "image_url": "******", "configdrive": "******"}} GET: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123 {} GOT:{u'target_power_state': None, u'links': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'bookmark'}], u'target_provision_state': None, u'last_error': None, u'updated_at': None, u'maintenance_reason': None, u'states': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states', u'rel': u'bookmark'}], u'provision_state': u'enroll', u'clean_step': {}, u'uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'console_enabled': False, u'extra': {}, u'raid_config': {}, u'provision_updated_at': None, u'power_state': None, u'target_raid_config': {}, u'network_interface': u'neutron', u'inspection_started_at': None, u'inspection_finished_at': None, u'maintenance': False, u'driver': u'fake-hardware', u'reservation': None, u'properties': {u'memory_mb': u'4096', u'cpu_arch': u'x86_64', u'local_gb': u'10', u'cpus': u'8'}, u'instance_uuid': None, u'name': None, u'driver_info': {u'fake_password': u'******', u'foo': u'bar'}, u'created_at': u'2000-01-01T00:00:00+00:00', u'instance_info': {u'foo': u'bar', u'image_url': u'******', u'configdrive': u'******'}, u'driver_internal_info': {}, u'chassis_uuid': u'e74c40e0-d825-11e2-a28f-0800200c9a66', u'ports': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'bookmark'}]} {21} ironic.tests.unit.common.test_pxe_utils.PXEInterfacesTestCase.test_parse_driver_info_deploy [0.021594s] ... ok PATCH: /v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 [{'path': '/physical_network', 'op': 'remove'}] GOT:Response: 406 Not Acceptable Content-Type: application/json Openstack-Request-Id: req-6f183fd0-b493-4e65-9675-1681209c9a10 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.34 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Request not acceptable.\"}"} {19} ironic.tests.unit.api.controllers.v1.test_port.TestPatch.test_remove_physical_network_upgrade [0.071123s] ... ok GET: /v1/volume/targets/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 {} GOT:Response: 404 Not Found Content-Type: application/json {"error_message": "{\"code\": 404, \"description\": \"\", \"title\": \"Not Found\"}"} {7} ironic.tests.unit.api.controllers.v1.test_node.TestPost.test_create_node_explicit_network_interface [0.161420s] ... ok {17} ironic.tests.unit.api.controllers.v1.test_volume_target.TestListVolumeTargets.test_get_one_invalid_api_version [0.051621s] ... ok {21} ironic.tests.unit.common.test_pxe_utils.TestPXEUtils.test__link_ip_address_pxe_configs [0.079033s] ... ok PUT: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states/provision {'target': 'active'} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-f5ca1063-0807-4e75-8edc-1b07c00de4a2 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"The requested action \\\"active\\\" can not be performed on node \\\"1be26c0b-03f2-4d2e-ae87-c02d7f33c123\\\" while it is in state \\\"adopt failed\\\".\"}"} PUT: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states/provision {'target': 'rebuild'} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-01a7648c-72ac-44f4-b082-4397a371636f X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"The requested action \\\"rebuild\\\" can not be performed on node \\\"1be26c0b-03f2-4d2e-ae87-c02d7f33c123\\\" while it is in state \\\"adopt failed\\\".\"}"} PUT: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states/provision {'target': 'deleted'} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-05f6d0cf-e925-4021-b52c-ab93b03a9922 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"The requested action \\\"deleted\\\" can not be performed on node \\\"1be26c0b-03f2-4d2e-ae87-c02d7f33c123\\\" while it is in state \\\"adopt failed\\\".\"}"} {19} ironic.tests.unit.api.controllers.v1.test_port.TestPortObject.test_port_init [0.011976s] ... ok {26} ironic.tests.unit.api.controllers.v1.test_node.TestPut.test_bad_requests_in_adoption_failed_state [0.150587s] ... ok {21} ironic.tests.unit.common.test_pxe_utils.TestPXEUtils.test_get_kernel_ramdisk_info_bad_driver_info [0.026296s] ... ok {21} ironic.tests.unit.common.test_utils.TempFilesTestCase.test_check_dir_with_pass_in [0.018609s] ... ok {21} ironic.tests.unit.conductor.test_base_manager.StartConsolesTestCase.test__start_consoles_node_not_found [0.227458s] ... ok {21} ironic.tests.unit.conductor.test_base_manager.StartStopTestCase.test_del_host_waits_on_workerpool [0.179963s] ... ok {21} ironic.tests.unit.conductor.test_manager.ChangeNodePowerStateTestCase.test_change_node_power_state_worker_pool_full [0.264048s] ... ok GET: /v1/volume/connectors/1be26c0b-03f2-4d2e-ae87-c02d7f33c781?fields=uuid,spongebob {} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-a357f9e4-bf38-4b30-8742-64ee3c696013 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Field(s) \\\"spongebob\\\" are not valid\"}"} {23} ironic.tests.unit.api.controllers.v1.test_volume_connector.TestListVolumeConnectors.test_get_custom_fields_invalid_fields [0.085089s] ... ok {21} ironic.tests.unit.conductor.test_manager.DestroyPortTestCase.test_destroy_port_node_active_and_maintenance [0.088857s] ... ok {21} ironic.tests.unit.conductor.test_manager.DoNodeCleanTestCase.test_do_node_clean_network_validate_fail [0.314690s] ... ok GET: /v1/portgroups?detail=True&fields=name {} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-045701e0-4599-4eaa-8ac1-5a37f9750384 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Can not specify ?detail=True and fields in the same request.\"}"} {21} ironic.tests.unit.conductor.test_manager.DoNodeDeployTestCase.test__old_rest_of_do_node_deploy_has_steps [0.372261s] ... ok {30} ironic.tests.unit.api.controllers.v1.test_portgroup.TestListPortgroups.test_detail_using_query_and_fields [0.064781s] ... ok {21} ironic.tests.unit.conductor.test_manager.DoNodeTearDownTestCase.test_do_node_tear_down_worker_pool_full [0.367269s] ... ok {21} ironic.tests.unit.conductor.test_manager.DoNodeVerifyTestCase.test__do_node_verify_validation_fails [0.360939s] ... ok {21} ironic.tests.unit.conductor.test_manager.ManagerCheckDeployTimeoutsTestCase.test_not_mapped [0.027431s] ... ok {21} ironic.tests.unit.conductor.test_manager.ManagerCheckOrphanNodesTestCase.test__check_orphan_nodes_alive [0.254286s] ... ok {21} ironic.tests.unit.conductor.test_manager.ManagerPowerRecoveryTestCase.test_node_not_in_maintenance_on_acquire [0.028746s] ... ok PUT: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states/console {} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-770f0c1a-1adb-41de-abb8-5110716fcdaf X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Missing argument: \\\"enabled\\\"\"}"} {27} ironic.tests.unit.api.controllers.v1.test_node.TestPut.test_set_console_mode_bad_request_missing_parameter [0.062677s] ... ok {21} ironic.tests.unit.conductor.test_manager.ManagerSyncPowerStatesTestCase.test_node_in_maintenance_on_acquire [0.030395s] ... ok {21} ironic.tests.unit.conductor.test_manager.ManagerTestProperties.test_driver_properties_fake [0.180969s] ... ok {21} ironic.tests.unit.conductor.test_manager.ParallelPowerSyncTestCase.test__sync_power_states_1_nodes_8_workers [0.026084s] ... ok {21} ironic.tests.unit.conductor.test_manager.TestIndirectionApiConductor.test_object_class_action_on_raise [0.022801s] ... ok {21} ironic.tests.unit.conductor.test_manager.UpdatePortTestCase.test_update_port_node_manageable_state [0.125860s] ... ok {21} ironic.tests.unit.conductor.test_manager.UpdatePortTestCase.test_update_port_port_changed_failure [0.109367s] ... ok {21} ironic.tests.unit.conductor.test_manager.UpdateVolumeConnectorTestCase.test_update_volume_connector [0.110113s] ... ok {21} ironic.tests.unit.conductor.test_manager.VifTestCase.test_vif_attach_node_locked [0.059487s] ... ok {21} ironic.tests.unit.conductor.test_rpcapi.RPCAPITestCase.test_get_topic_for_driver_doesnt_cache [0.054217s] ... ok {21} ironic.tests.unit.conductor.test_rpcapi.RPCAPITestCase.test_set_boot_device [0.024316s] ... ok {21} ironic.tests.unit.conductor.test_steps.NodeDeployStepsTestCase.test__validate_user_deploy_steps_missing_required_arg [0.098655s] ... ok GET: /v1/volume/connectors/1be26c0b-03f2-4d2e-ae87-c02d7f33c781?fields=connector_id,extra {} GOT:{u'connector_id': u'iqn.2012-06.com.example:initiator', u'links': [{u'href': u'http://localhost/v1/volume/connectors/1be26c0b-03f2-4d2e-ae87-c02d7f33c781', u'rel': u'self'}, {u'href': u'http://localhost/volume/connectors/1be26c0b-03f2-4d2e-ae87-c02d7f33c781', u'rel': u'bookmark'}], u'extra': {}} {8} ironic.tests.unit.api.controllers.v1.test_volume_connector.TestListVolumeConnectors.test_get_one_custom_fields [0.086456s] ... ok {21} ironic.tests.unit.conductor.test_task_manager.ProvisionNotifyTestCase.test_notify_error_state [0.021424s] ... ok {21} ironic.tests.unit.conductor.test_task_manager.TaskManagerStateModelTestCases.test_process_event_no_callback_stable_state [0.022996s] ... ok {21} ironic.tests.unit.conductor.test_utils.NodePowerActionTestCase.test__can_skip_state_change_different_state [0.091956s] ... ok {21} ironic.tests.unit.db.sqlalchemy.test_migrations.TestMigrationsPostgreSQL.test_upgrade_and_create_schema ... SKIPPED: Backend 'postgresql' is unavailable: Could not connect {21} ironic.tests.unit.db.test_api.UpdateToLatestVersionsTestCase.test_old_version_max_count_2_some_nodes [0.507776s] ... ok {21} ironic.tests.unit.db.test_conductor.DbConductorTestCase.test_get_conductor [0.025598s] ... ok GET: /v1/nodes/detail {} GOT:{u'nodes': [{u'target_power_state': None, u'links': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'bookmark'}], u'target_provision_state': None, u'last_error': None, u'updated_at': None, u'maintenance_reason': None, u'states': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states', u'rel': u'bookmark'}], u'provision_state': u'available', u'clean_step': {}, u'uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'console_enabled': False, u'extra': {}, u'raid_config': {}, u'provision_updated_at': None, u'power_state': None, u'target_raid_config': {}, u'network_interface': None, u'inspection_started_at': None, u'inspection_finished_at': None, u'maintenance': False, u'driver': u'fake-hardware', u'reservation': None, u'properties': {u'memory_mb': u'4096', u'cpu_arch': u'x86_64', u'local_gb': u'10', u'cpus': u'8'}, u'instance_uuid': None, u'name': None, u'driver_info': {u'fake_password': u'******', u'foo': u'bar'}, u'created_at': u'2019-06-06T07:02:15.778669+00:00', u'instance_info': {u'foo': u'bar', u'image_url': u'******', u'configdrive': u'******'}, u'driver_internal_info': {u'private_state': u'secret value'}, u'chassis_uuid': None, u'ports': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'bookmark'}]}]} GET: /v1/nodes/detail {} GOT:{u'nodes': [{u'target_power_state': None, u'links': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'bookmark'}], u'target_provision_state': None, u'last_error': None, u'updated_at': None, u'maintenance_reason': None, u'states': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states', u'rel': u'bookmark'}], u'provision_state': u'available', u'clean_step': {}, u'uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'console_enabled': False, u'extra': {}, u'raid_config': {}, u'provision_updated_at': None, u'power_state': None, u'target_raid_config': {}, u'network_interface': None, u'inspection_started_at': None, u'inspection_finished_at': None, u'maintenance': False, u'driver': u'fake-hardware', u'reservation': None, u'properties': {u'memory_mb': u'4096', u'cpu_arch': u'x86_64', u'local_gb': u'10', u'cpus': u'8'}, u'instance_uuid': None, u'name': None, u'driver_info': {u'fake_password': u'******', u'foo': u'bar'}, u'resource_class': u'foo', u'created_at': u'2019-06-06T07:02:15.778669+00:00', u'instance_info': {u'foo': u'bar', u'image_url': u'******', u'configdrive': u'******'}, u'driver_internal_info': {u'private_state': u'secret value'}, u'chassis_uuid': None, u'ports': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'bookmark'}]}]} {21} ironic.tests.unit.db.test_node_traits.DbNodeTraitTestCase.test_node_trait_not_exists [0.044164s] ... ok {31} ironic.tests.unit.api.controllers.v1.test_node.TestListNodes.test_hide_fields_in_newer_versions_resource_class [0.202940s] ... ok {21} ironic.tests.unit.db.test_nodes.DbNodeTestCase.test_get_node_by_id [0.094417s] ... ok {21} ironic.tests.unit.db.test_nodes.DbNodeTestCase.test_get_node_by_instance [0.100299s] ... ok {21} ironic.tests.unit.db.test_nodes.DbNodeTestCase.test_update_node_with_tags [0.071237s] ... ok {21} ironic.tests.unit.db.test_portgroups.DbportgroupTestCase.test_update_portgroup_uuid [0.038078s] ... ok {21} ironic.tests.unit.db.test_ports.DbPortTestCase.test_get_ports_by_node_id_that_does_not_exist [0.046140s] ... ok POST: /v1/portgroups {'node_uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123', 'uuid': '6eb02b44-18a3-4659-8c0b-8d2802581ae4', 'extra': {}, 'standalone_ports_supported': True, 'address': '52:54:00:cf:2d:31', 'name': 'fooname'} GOT:Response: 201 Created Content-Type: application/json Location: http://localhost/v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4 Openstack-Request-Id: req-7e82d623-3faf-4bae-8c70-fb111f416efa X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"node_uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "uuid": "6eb02b44-18a3-4659-8c0b-8d2802581ae4", "links": [{"href": "http://localhost/v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4", "rel": "self"}, {"href": "http://localhost/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4", "rel": "bookmark"}], "extra": {}, "created_at": "2019-06-06T07:02:17.047063+00:00", "updated_at": null, "ports": [{"href": "http://localhost/v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4/ports", "rel": "self"}, {"href": "http://localhost/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4/ports", "rel": "bookmark"}], "standalone_ports_supported": true, "mode": "active-backup", "address": "52:54:00:cf:2d:31", "internal_info": {}, "properties": {}, "name": "fooname"} {21} ironic.tests.unit.dhcp.test_neutron.TestNeutron.test__get_fixed_ip_address_invalid_ip [0.044885s] ... ok {24} ironic.tests.unit.api.controllers.v1.test_portgroup.TestPost.test_node_uuid_to_node_id_mapping [0.101035s] ... ok {21} ironic.tests.unit.drivers.modules.ansible.test_deploy.TestAnsibleDeploy.test__ansible_deploy_iwdi [0.156867s] ... ok GET: / {} GOT:Response: 200 OK Content-Type: application/json Openstack-Request-Id: req-ba702149-ba87-4e81-9964-0f21ed393f12 {"default_version": {"status": "CURRENT", "min_version": "1.1", "version": "1.56", "id": "v1", "links": [{"href": "http://localhost/v1/", "rel": "self"}]}, "versions": [{"status": "CURRENT", "min_version": "1.1", "version": "1.56", "id": "v1", "links": [{"href": "http://localhost/v1/", "rel": "self"}]}], "name": "OpenStack Ironic API", "description": "Ironic is an OpenStack project which aims to provision baremetal machines."} GET: /v1 {} GOT:Response: 200 OK Content-Type: application/json Openstack-Request-Id: req-56c5fe53-4caf-4050-a81a-1259f1275d9d X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"media_types": [{"base": "application/json", "type": "application/vnd.openstack.ironic.v1+json"}], "version": {"status": "CURRENT", "min_version": "1.1", "version": "1.56", "id": "v1", "links": [{"href": "http://localhost/v1/", "rel": "self"}]}, "links": [{"href": "http://localhost/v1/", "rel": "self"}, {"href": "https://docs.openstack.org//ironic/latest/contributor//webapi.html", "type": "text/html", "rel": "describedby"}], "drivers": [{"href": "http://localhost/v1/drivers/", "rel": "self"}, {"href": "http://localhost/drivers/", "rel": "bookmark"}], "ports": [{"href": "http://localhost/v1/ports/", "rel": "self"}, {"href": "http://localhost/ports/", "rel": "bookmark"}], "chassis": [{"href": "http://localhost/v1/chassis/", "rel": "self"}, {"href": "http://localhost/chassis/", "rel": "bookmark"}], "nodes": [{"href": "http://localhost/v1/nodes/", "rel": "self"}, {"href": "http://localhost/nodes/", "rel": "bookmark"}], "id": "v1"} {5} ironic.tests.unit.api.test_acl.TestACL.test_public_api [0.078495s] ... ok {21} ironic.tests.unit.drivers.modules.drac.test_bios.DracBIOSConfigurationTestCase.test_commit_config [0.109100s] ... ok {21} ironic.tests.unit.drivers.modules.drac.test_raid.DracCreateRaidConfigurationHelpersTestCase.test__find_configuration_with_more_than_min_disks_for_raid_level [0.059007s] ... ok {21} ironic.tests.unit.drivers.modules.drac.test_raid.DracCreateRaidConfigurationHelpersTestCase.test__volume_usage_per_disk_mb [0.057229s] ... ok {21} ironic.tests.unit.drivers.modules.drac.test_raid.DracManageVirtualDisksTestCase.test_commit_config [0.037381s] ... ok {21} ironic.tests.unit.drivers.modules.drac.test_raid.DracRaidInterfaceTestCase.test_create_configuration_fails_with_sharing_disabled [0.177214s] ... ok {21} ironic.tests.unit.drivers.modules.ibmc.test_management.IBMCManagementTestCase.test_get_supported_boot_modes [0.086679s] ... ok {21} ironic.tests.unit.drivers.modules.ibmc.test_utils.IBMCUtilsTestCase.test_parse_driver_info_default_scheme [0.033792s] ... ok {21} ironic.tests.unit.drivers.modules.ilo.test_bios.IloBiosTestCase.test_apply_configuration_pre_boot [0.116664s] ... ok {21} ironic.tests.unit.drivers.modules.ilo.test_boot.IloVirtualMediaBootTestCase.test_prepare_ramdisk_rescue_not_a_glance_image [0.152244s] ... ok {21} ironic.tests.unit.drivers.modules.ilo.test_boot.IloVirtualMediaBootTestCase.test_validate_ramdisk_boot_option_glance [0.082273s] ... ok {21} ironic.tests.unit.drivers.modules.ilo.test_common.IloValidateParametersTestCase.test_parse_driver_info_missing_password [0.027361s] ... ok {21} ironic.tests.unit.drivers.modules.ilo.test_firmware_processor.FirmwareProcessorTestCase.test__remove_swift_based_me [0.039623s] ... ok {21} ironic.tests.unit.drivers.modules.ilo.test_firmware_processor.FirmwareProcessorTestCase.test_fw_processor_ctor_sets_parsed_url_attrib_of_fw_processor [0.009933s] ... ok {21} ironic.tests.unit.drivers.modules.ilo.test_firmware_processor.FirmwareProcessorTestCase.test_get_and_validate_firmware_image_info_fails_for_empty_parameter [0.016659s] ... ok {21} ironic.tests.unit.drivers.modules.ilo.test_firmware_processor.FirmwareProcessorTestCase.test_process_fw_on_calls__extract_fw_from_file [0.098585s] ... ok PUT: /v1/nodes/node-39/maintenance {} GOT:Response: 202 Accepted Openstack-Request-Id: req-bbefe309-f3a0-48b4-accd-3ca974ef02f5 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.5 {26} ironic.tests.unit.api.controllers.v1.test_node.TestPut.test_set_node_maintenance_mode_no_reason_by_name [0.069209s] ... ok {21} ironic.tests.unit.drivers.modules.ilo.test_firmware_processor.FirmwareProcessorTestCase.test_process_fw_on_throws_error_if_checksum_validation_fails [0.086695s] ... ok {21} ironic.tests.unit.drivers.modules.ilo.test_inspect.TestInspectPrivateMethods.test__get_essential_properties_fail [0.031156s] ... ok {21} ironic.tests.unit.drivers.modules.ilo.test_power.IloPowerTestCase.test_validate_fail [0.063922s] ... ok {21} ironic.tests.unit.drivers.modules.ilo.test_raid.Ilo5RAIDTestCase.test_delete_configuration_with_read_raid_failed [0.129421s] ... ok {21} ironic.tests.unit.drivers.modules.irmc.test_boot.IRMCDeployPrivateMethodsTestCase.test_setup_vmedia_with_image_service_rescue [0.112564s] ... ok {21} ironic.tests.unit.drivers.modules.irmc.test_boot.IRMCPXEBootBasicTestCase.test_prepare_ramdisk [0.131090s] ... ok {21} ironic.tests.unit.drivers.modules.irmc.test_boot.IRMCPXEBootBasicTestCase.test_prepare_ramdisk_rescue [0.109579s] ... ok {21} ironic.tests.unit.drivers.modules.irmc.test_boot.IRMCVirtualMediaBootTestCase.test_prepare_ramdisk_glance_image_deploying [0.108819s] ... ok {21} ironic.tests.unit.drivers.modules.irmc.test_inspect.IRMCInspectTestCase.test_inspect_hardware_props_empty_gpu_ids_fpga_ids [0.071522s] ... ok {21} ironic.tests.unit.drivers.modules.irmc.test_management.IRMCManagementFunctionsTestCase.test__restore_bios_config_failed [0.068192s] ... ok {21} ironic.tests.unit.drivers.modules.irmc.test_management.IRMCManagementFunctionsTestCase.test_backup_bios_config_skipped [0.065524s] ... ok {21} ironic.tests.unit.drivers.modules.irmc.test_management.IRMCManagementTestCase.test_management_interface_set_boot_device_ng [0.081484s] ... ok {21} ironic.tests.unit.drivers.modules.irmc.test_management.IRMCManagementTestCase.test_management_interface_set_boot_device_ok_disk [0.319381s] ... ok {21} ironic.tests.unit.drivers.modules.irmc.test_periodic_task.iRMCPeriodicTaskTestCase.test__query_raid_config_fgi_status_with_two_nodes_without_raid_config [0.051469s] ... ok {21} ironic.tests.unit.drivers.modules.irmc.test_raid.IRMCRaidConfigurationTestCase.test_delete_raid_configuration_return_cleared_raid_config [0.070787s] ... ok POST: /v1/volume/connectors {'node_uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123', 'extra': {'none': None, 'int': 123, 'float': 0.1, 'list': [1, 2], 'bool': True, 'str': 'foo', 'dict': {'cat': 'meow'}}, 'type': 'iqn', 'uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c781', 'connector_id': 'iqn.2012-06.com.example:initiator'} GOT:Response: 201 Created Content-Type: application/json Location: http://localhost/v1/volume/connectors/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 Openstack-Request-Id: req-73744d3c-9a6b-4ee6-8c0d-6bc4b4a9a030 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"node_uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "links": [{"href": "http://localhost/v1/volume/connectors/1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "rel": "self"}, {"href": "http://localhost/volume/connectors/1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "rel": "bookmark"}], "extra": {"none": null, "int": 123, "float": 0.1, "list": [1, 2], "dict": {"cat": "meow"}, "str": "foo", "bool": true}, "created_at": "2019-06-06T07:02:17.189429+00:00", "updated_at": null, "connector_id": "iqn.2012-06.com.example:initiator", "type": "iqn"} GET: /v1/volume/connectors/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 {} GOT:{u'node_uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c781', u'links': [{u'href': u'http://localhost/v1/volume/connectors/1be26c0b-03f2-4d2e-ae87-c02d7f33c781', u'rel': u'self'}, {u'href': u'http://localhost/volume/connectors/1be26c0b-03f2-4d2e-ae87-c02d7f33c781', u'rel': u'bookmark'}], u'extra': {u'none': None, u'int': 123, u'float': 0.1, u'list': [1, 2], u'bool': True, u'str': u'foo', u'dict': {u'cat': u'meow'}}, u'created_at': u'2019-06-06T07:02:17.189429+00:00', u'updated_at': None, u'connector_id': u'iqn.2012-06.com.example:initiator', u'type': u'iqn'} {28} ironic.tests.unit.api.controllers.v1.test_volume_connector.TestPost.test_create_volume_connector_valid_extra [0.125861s] ... ok {21} ironic.tests.unit.drivers.modules.network.test_common.TestCommonFunctions.test__get_free_portgroups_and_ports_neutron_missed [0.069330s] ... ok {28} ironic.tests.unit.common.test_driver_factory.CheckAndUpdateNodeInterfacesTestCase.test_create_node_dynamic_driver_interfaces_set [0.058206s] ... ok {21} ironic.tests.unit.drivers.modules.network.test_common.TestCommonFunctions.test_get_free_port_like_object_vif_attached_to_portgroup [0.074744s] ... ok {28} ironic.tests.unit.common.test_driver_factory.HardwareTypeLoadTestCase.test_invalid_storage_interface [0.032740s] ... ok {28} ironic.tests.unit.common.test_driver_factory.NetworkInterfaceFactoryTestCase.test_build_driver_for_task [0.119704s] ... ok {21} ironic.tests.unit.drivers.modules.network.test_common.TestNeutronVifPortIDMixin.test_port_changed_vif_pxe_portgroup_nostandalone_ports [0.193348s] ... ok {21} ironic.tests.unit.drivers.modules.network.test_common.TestNeutronVifPortIDMixin.test_vif_attach_active_node_failure [0.090477s] ... ok {21} ironic.tests.unit.drivers.modules.network.test_common.TestNeutronVifPortIDMixin.test_vif_attach_failure [0.075239s] ... ok {28} ironic.tests.unit.common.test_fsm.FSMTest.test_target_state_stable [0.016727s] ... ok {28} ironic.tests.unit.common.test_glance_service.CheckImageServiceTestCase.test_check_image_service__config_auth [0.033231s] ... ok {21} ironic.tests.unit.drivers.modules.network.test_common.TestNeutronVifPortIDMixin.test_vif_detach_not_attached [0.068032s] ... ok {28} ironic.tests.unit.common.test_glance_service.TestGlanceImageService.test_client_httpnotfound_converts_to_imagenotfound [0.017453s] ... ok {28} ironic.tests.unit.common.test_hash_ring.HashRingManagerTestCase.test_hash_ring_manager_driver_not_found [0.090497s] ... ok {21} ironic.tests.unit.drivers.modules.network.test_common.TestVifPortIDMixin.test__save_vif_to_port_like_obj_port [0.035530s] ... ok {21} ironic.tests.unit.drivers.modules.network.test_flat.TestFlatInterface.test_remove_provisioning_network [0.081083s] ... ok {28} ironic.tests.unit.common.test_images.FsImageTestCase.test__generate_grub_cfg [0.025193s] ... ok {21} ironic.tests.unit.drivers.modules.network.test_neutron.NeutronInterfaceTestCase.test_configure_tenant_networks_with_portgroups [0.126674s] ... ok {28} ironic.tests.unit.common.test_images.FsImageTestCase.test_create_isolinux_image_for_uefi_with_deploy_iso [0.040841s] ... ok {21} ironic.tests.unit.drivers.modules.network.test_neutron.NeutronInterfaceTestCase.test_remove_rescuing_network [0.102890s] ... ok {28} ironic.tests.unit.common.test_json_rpc.TestService.test_method_not_found [0.054012s] ... ok {21} ironic.tests.unit.drivers.modules.storage.test_cinder.CinderInterfaceTestCase.test_validate_fails_iscsi_conn_fc_target [0.096074s] ... ok {28} ironic.tests.unit.common.test_json_rpc.TestService.test_method_not_post [0.049694s] ... ok {21} ironic.tests.unit.drivers.modules.test_agent.TestAgentDeploy.test_validate_invalid_proxies [0.064041s] ... ok {21} ironic.tests.unit.drivers.modules.test_agent_base_vendor.AgentDeployMixinTest.test_reboot_and_finish_deploy_deprecated [0.111688s] ... ok GET: /v1/volume/targets {} GOT:{u'targets': [{u'boot_index': 0, u'uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c781', u'links': [{u'href': u'http://localhost/v1/volume/targets/1be26c0b-03f2-4d2e-ae87-c02d7f33c781', u'rel': u'self'}, {u'href': u'http://localhost/volume/targets/1be26c0b-03f2-4d2e-ae87-c02d7f33c781', u'rel': u'bookmark'}], u'volume_type': u'iscsi', u'node_uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'volume_id': u'12345678'}]} {28} ironic.tests.unit.common.test_network.GetPhysnetsForNodeTestCase.test_get_physnets_for_node_no_ports [0.102319s] ... ok {17} ironic.tests.unit.api.controllers.v1.test_volume_target.TestListVolumeTargets.test_one [0.086705s] ... ok {21} ironic.tests.unit.drivers.modules.test_agent_client.TestAgentClient.test_get_clean_steps [0.020361s] ... ok {28} ironic.tests.unit.common.test_network.TestNetwork.test_get_node_vif_ids_one_portgroup_extra [0.106645s] ... ok {21} ironic.tests.unit.drivers.modules.test_agent_client.TestAgentClient.test_install_bootloaderi_with_prep [0.021125s] ... ok {21} ironic.tests.unit.drivers.modules.test_agent_client.TestAgentClientAttempts.test__command_fail_all_attempts [0.024820s] ... ok {28} ironic.tests.unit.common.test_neutron.TestNeutronNetworkActions.test_add_network_no_port [0.120770s] ... ok {21} ironic.tests.unit.drivers.modules.test_console_utils.ConsoleUtilsTestCase.test_get_shellinabox_console_https_url [0.023995s] ... ok {28} ironic.tests.unit.common.test_neutron.TestNeutronNetworkActions.test_verify_sec_groups_exception_by_neutronclient [0.042225s] ... ok {28} ironic.tests.unit.common.test_pxe_utils.PXEInterfacesTestCase.test_get_instance_image_info_without_is_whole_disk_image [0.138178s] ... ok {21} ironic.tests.unit.drivers.modules.test_console_utils.ConsoleUtilsTestCase.test_start_socat_console_fail_nopiddir [0.032234s] ... ok GET: / {} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-cced5903-eda3-46fb-a1b2-1a612e0f8ad3 {"error_message": "{\"debuginfo\":null,\"faultcode\":\"Client\",\"faultstring\":\"Test exception message.\"}"} {5} ironic.tests.unit.api.test_hooks.TestNoExceptionTracebackHook.test_hook_on_clientfault [0.045259s] ... ok {21} ironic.tests.unit.drivers.modules.test_deploy_utils.GetSingleNicTestCase.test_get_single_nic_with_provisioning_vif_port_id [0.077502s] ... ok {28} ironic.tests.unit.common.test_pxe_utils.PXEInterfacesTestCase.test_get_volume_pxe_options_unsupported_volume_type [0.117723s] ... ok {5} ironic.tests.unit.api.test_middleware.TestCORSMiddleware.test_invalid_cors_options_request [0.031044s] ... ok {21} ironic.tests.unit.drivers.modules.test_deploy_utils.OtherFunctionTestCase.test_get_boot_option_overridden_default_value [0.021070s] ... ok {28} ironic.tests.unit.common.test_pxe_utils.TestPXEUtils.test__get_pxe_mac_path [0.033650s] ... ok {5} ironic.tests.unit.cmd.test_dbsync.OnlineMigrationTestCase.test_check_obj_versions_ignore_models [0.035784s] ... ok {21} ironic.tests.unit.drivers.modules.test_deploy_utils.OtherFunctionTestCase.test_set_failed_state_collect_deploy_logs [0.151562s] ... ok {28} ironic.tests.unit.common.test_raid.ValidateRaidConfigurationTestCase.test_validate_configuration_invalid_size_gb [0.031677s] ... ok {5} ironic.tests.unit.common.test_cinder.TestCinderUtils.test_is_volume_available [0.035318s] ... ok {21} ironic.tests.unit.drivers.modules.test_deploy_utils.OtherFunctionTestCase.test_set_failed_state_collect_deploy_logs_overide [0.091281s] ... ok {28} ironic.tests.unit.common.test_release_mappings.ReleaseMappingsTestCase.test_current_rpc_version [0.016189s] ... ok {5} ironic.tests.unit.common.test_driver_factory.DefaultInterfaceTestCase.test_calculated_no_answer [0.025864s] ... ok {28} ironic.tests.unit.common.test_swift.SwiftTestCase.test_head_object [0.118789s] ... ok {5} ironic.tests.unit.common.test_glance_service.TestGlanceImageService.test_download_file_url [0.031021s] ... ok {21} ironic.tests.unit.drivers.modules.test_deploy_utils.PhysicalWorkTestCase.test_login_iscsi_calls_verify_and_update [0.016206s] ... ok {28} ironic.tests.unit.common.test_utils.ExecuteTestCase.test_execute_not_use_standard_locale [0.020409s] ... ok {5} ironic.tests.unit.common.test_hash_ring.HashRingManagerWithGroupsTestCase.test_hash_ring_manager_hardware_type_success_groups [0.079436s] ... ok {28} ironic.tests.unit.common.test_wsgi_service.TestWSGIService.test_workers_set_zero_setting [0.077169s] ... ok {21} ironic.tests.unit.drivers.modules.test_deploy_utils.SwitchPxeConfigTestCase.test_switch_uefi_grub_pxe_config_partition_image [0.024118s] ... ok {21} ironic.tests.unit.drivers.modules.test_deploy_utils.ValidateImagePropertiesTestCase.test_validate_image_properties_glance_image_not_found [0.017707s] ... ok {28} ironic.tests.unit.conductor.test_allocations.AllocationTestCase.test_destroy_allocation_with_node_in_maintenance [0.130908s] ... ok {21} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolCheckInitTestCase.test_console_init_calls_for_socat [0.014860s] ... ok {5} ironic.tests.unit.common.test_image_service.ServiceGetterTestCase.test_get_https_image_service [0.017433s] ... ok {28} ironic.tests.unit.conductor.test_manager.ContinueNodeDeployTestCase.test_continue_node_deploy_worker_pool_full [0.265665s] ... ok {21} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolDriverTestCase.test_send_raw_bytes_returns [0.069564s] ... ok {5} ironic.tests.unit.common.test_images.FsImageTestCase.test_create_isolinux_image_mkisofs_fails [0.037356s] ... ok {28} ironic.tests.unit.conductor.test_manager.DestroyNodeTestCase.test_destroy_node_console_disable_fail [0.365076s] ... ok {5} ironic.tests.unit.common.test_json_rpc.TestClient.test_call_success_with_version_and_cap [0.024310s] ... ok {21} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolDriverTestCase.test_set_power_on_timeout_fail [0.566296s] ... ok GET: /v1/portgroups {} GOT:Response: 404 Not Found Content-Type: application/json Openstack-Request-Id: req-c7ffc550-e53f-4890-ac3b-8e6cfc565e49 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.14 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Resource could not be found.\"}"} {28} ironic.tests.unit.conductor.test_manager.DoNextDeployStepTestCase.test__do_next_deploy_step_none [0.412279s] ... ok {30} ironic.tests.unit.api.controllers.v1.test_portgroup.TestListPortgroups.test_portgroup_get_all_invalid_api_version [0.061463s] ... ok {5} ironic.tests.unit.common.test_neutron.TestNeutronClient.test_get_neutron_client_with_token [0.060103s] ... ok {21} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolPrivateMethodTestCase.test_exec_ipmitool_exception_retry_insufficient_resources_for_session [0.027766s] ... ok {5} ironic.tests.unit.common.test_neutron.TestUpdatePortAddress.test_update_port_address [0.020607s] ... ok {28} ironic.tests.unit.conductor.test_manager.DoNodeCleanTestCase.test__do_next_clean_step_manual_no_steps [0.596536s] ... ok {21} ironic.tests.unit.drivers.modules.test_ipxe.iPXEBootTestCase.test_prepare_instance_localboot_active [0.115998s] ... ok {28} ironic.tests.unit.conductor.test_manager.DoNodeCleanTestCase.test__do_node_clean_automated [0.223538s] ... ok {5} ironic.tests.unit.common.test_policy.PolicyInCodeTestCaseNegative.test_show_password [0.027174s] ... ok {21} ironic.tests.unit.drivers.modules.test_ipxe.iPXEBootTestCase.test_prepare_ramdisk_conflicting_boot_modes [0.114811s] ... ok PUT: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states/console {'enabled': 'true'} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-2a2725b3-f219-498b-876c-0687bc5b4779 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Driver test-driver does not support console (disabled or not implemented).\"}"} {28} ironic.tests.unit.conductor.test_manager.DoNodeCleanTestCase.test__do_node_clean_automated_enabled_individual_enabled [0.332542s] ... ok {21} ironic.tests.unit.drivers.modules.test_iscsi_deploy.ISCSIDeployTestCase.test_get_properties [0.047609s] ... ok {27} ironic.tests.unit.api.controllers.v1.test_node.TestPut.test_set_console_mode_console_not_supported [0.079855s] ... ok {5} ironic.tests.unit.common.test_pxe_utils.PXEInterfacesTestCase.test_get_instance_image_info [0.118607s] ... ok {28} ironic.tests.unit.conductor.test_manager.DoNodeCleanTestCase.test_do_next_clean_step_manual_first_step_async [0.361633s] ... ok PUT: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/traits/CUSTOM_TRAIT1 {} GOT:Response: 405 Method Not Allowed Allow: DELETE, GET, PATCH, POST Content-Type: application/json {"error_message": "{\"code\": 405, \"description\": \"\", \"title\": \"Method Not Allowed\"}"} {27} ironic.tests.unit.api.controllers.v1.test_notification_utils.APINotifyTestCase.test_common_params [0.018508s] ... ok {21} ironic.tests.unit.drivers.modules.test_iscsi_deploy.ISCSIDeployTestCase.test_tear_down_cleaning [0.063247s] ... ok POST: /v1/ports {'node_uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123', 'uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c781', 'extra': {}, 'pxe_enabled': False, 'physical_network': None, 'address': '52:54:00:cf:2d:31', 'is_smartnic': False} GOT:Response: 406 Not Acceptable Content-Type: application/json Openstack-Request-Id: req-691a6ef9-261a-44a4-b260-c63a08606795 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.14 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Request not acceptable.\"}"} {5} ironic.tests.unit.common.test_raid.RaidPublicMethodsTestCase.test_update_raid_info_okay_no_root_volumes [0.083929s] ... ok {26} ironic.tests.unit.api.controllers.v1.test_node.TestTraits.test_add_single_trait_fails_with_bad_version [0.058411s] ... ok {28} ironic.tests.unit.conductor.test_manager.DoNodeCleanTestCase.test_do_next_clean_step_oob_reboot [0.313323s] ... ok {19} ironic.tests.unit.api.controllers.v1.test_port.TestPost.test_create_port_with_pxe_enabled_old_api_version [0.070358s] ... ok {21} ironic.tests.unit.drivers.modules.test_pxe.PXEBootTestCase.test_prepare_ramdisk_conflicting_boot_modes [0.102357s] ... ok {5} ironic.tests.unit.common.test_utils.TempFilesTestCase.test_tempdir_mocked_error_on_rmtree [0.043882s] ... ok POST: /v1/ports {'local_link_connection': {'switch_info': 'switch1', 'port_id': 'Ethernet3/1', 'switch_id': '0a:1b:2c:3d:4e:5f'}, 'node_uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123', 'uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c781', 'extra': {}, 'pxe_enabled': True, 'portgroup_uuid': '6eb02b44-18a3-4659-8c0b-8d2802581ae4', 'physical_network': None, 'address': '52:54:00:cf:2d:31', 'internal_info': {'a': 'b'}, 'is_smartnic': False} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-ab2e814a-c833-4809-934b-9bccb6f1fcf7 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Invalid input for field/attribute internal_info. Value: '{u'a': u'b'}'. Cannot set read only field.\"}"} {28} ironic.tests.unit.conductor.test_manager.DoNodeCleanTestCase.test_do_next_clean_step_oob_reboot_fail [0.356964s] ... ok {21} ironic.tests.unit.drivers.modules.test_pxe.PXEBootTestCase.test_prepare_ramdisk_set_default_boot_mode_on_ironic_bios [0.145452s] ... ok {6} ironic.tests.unit.api.controllers.v1.test_port.TestPost.test_create_port_with_internal_field [0.066307s] ... ok {5} ironic.tests.unit.conductor.test_allocations.AllocationTestCase.test_destroy_allocation_with_node [0.156315s] ... ok {28} ironic.tests.unit.conductor.test_manager.DoNodeInspectAbortTestCase.test_do_inspect_abort_interface_return_failed [0.260585s] ... ok {21} ironic.tests.unit.drivers.modules.test_pxe.PXEBootTestCase.test_validate_fail_invalid_trusted_boot_value [0.060331s] ... ok {28} ironic.tests.unit.conductor.test_manager.MiscTestCase.test_iter_nodes_shutdown [0.162798s] ... ok {5} ironic.tests.unit.conductor.test_base_manager.ManagerSpawnWorkerTestCase.test__spawn_worker_none_free [0.014545s] ... ok {21} ironic.tests.unit.drivers.modules.test_snmp.SNMPClientTestCase.test__get_context [0.024638s] ... ok {5} ironic.tests.unit.conductor.test_manager.DestroyNodeTestCase.test_destroy_node_invalid_provision_state [0.283724s] ... ok {28} ironic.tests.unit.conductor.test_manager.RaidTestCases.test_set_target_raid_config_invalid_parameter_value [0.101525s] ... ok {5} ironic.tests.unit.conductor.test_manager.DestroyNodeTestCase.test_destroy_node_reserved [0.287109s] ... ok {21} ironic.tests.unit.drivers.modules.test_snmp.SNMPClientTestCase.test_set_err_engine [0.027420s] ... ok {28} ironic.tests.unit.conductor.test_manager.ServiceDoNodeDeployTestCase.test_do_node_deploy_traits_validate_fail [0.098713s] ... ok {21} ironic.tests.unit.drivers.modules.test_snmp.SNMPDeviceDriverTestCase.test_apc_rackpdu_power_on [0.016672s] ... ok {5} ironic.tests.unit.conductor.test_manager.DoNodeCleanTestCase.test_do_next_clean_step_manual_all [0.459158s] ... ok {28} ironic.tests.unit.conductor.test_manager.UpdatePortTestCase.test_update_port_node_locked [0.048085s] ... ok POST: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/vendor_passthru {'foo': 'bar'} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-744faca4-ec56-4805-ac89-192844e19639 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Missing argument: \\\"method\\\"\"}"} {21} ironic.tests.unit.drivers.modules.test_snmp.SNMPDeviceDriverTestCase.test_cyberpower_power_state_on [0.015220s] ... ok {5} ironic.tests.unit.conductor.test_manager.DoNodeRescueTestCase.test_do_node_unrescue_validate_fail [0.078309s] ... ok {28} ironic.tests.unit.conductor.test_rpcapi.RPCAPITestCase.test_get_random_topic [0.020906s] ... ok {7} ironic.tests.unit.api.controllers.v1.test_node.TestPost.test_vendor_passthru_without_method [0.068742s] ... ok {21} ironic.tests.unit.drivers.modules.test_snmp.SNMPDeviceDriverTestCase.test_eaton_power_power_on [0.015931s] ... ok {5} ironic.tests.unit.conductor.test_manager.ManagerCheckInspectWaitTimeoutsTestCase.test__check_inspect_timeouts_acquire_node_locked [0.018206s] ... ok {28} ironic.tests.unit.conductor.test_rpcapi.RPCAPITestCase.test_get_topic_for_unknown_driver [0.029252s] ... ok {21} ironic.tests.unit.drivers.modules.test_snmp.SNMPDeviceDriverTestCase.test_power_on_snmp_set_failure [0.015440s] ... ok POST: /v1/heartbeat/6bfaa3c7-8c9d-48b1-acd4-c4957b8bc87e {'callback_url': 'url'} GOT:Response: 404 Not Found Content-Type: application/json Openstack-Request-Id: req-6773fefc-83b3-4168-8418-a2a1ad0f93c3 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Resource could not be found.\"}"} {5} ironic.tests.unit.conductor.test_manager.ManagerCheckOrphanNodesTestCase.test__check_orphan_nodes_release_exceptions_skipping [0.239180s] ... ok {24} ironic.tests.unit.api.controllers.v1.test_ramdisk.TestHeartbeat.test_old_api_version [0.048358s] ... ok {21} ironic.tests.unit.drivers.modules.test_snmp.SNMPDeviceDriverTestCase.test_power_reset_on_invalid_state [9.027793s] ... ok {28} ironic.tests.unit.conductor.test_rpcapi.RPCAPITestCase.test_object_class_action_versions_invalid_version [0.017350s] ... ok {5} ironic.tests.unit.conductor.test_manager.ManagerDoSyncPowerStateTestCase.test_get_power_state_fail [0.035861s] ... ok {21} ironic.tests.unit.drivers.modules.test_snmp.SNMPDriverTestCase.test_reboot_snmp_failure [0.062059s] ... ok {24} ironic.tests.unit.api.controllers.v1.test_types.TestLocalLinkConnectionType.test_local_link_connection_type_empty_value [0.015808s] ... ok {28} ironic.tests.unit.conductor.test_rpcapi.RPCAPITestCase.test_vif_attach [0.016876s] ... ok {24} ironic.tests.unit.api.controllers.v1.test_types.TestMacAddressType.test_valid_mac_addr [0.017653s] ... ok {5} ironic.tests.unit.conductor.test_manager.ManagerDoSyncPowerStateTestCase.test_validate_fail [0.037139s] ... ok {21} ironic.tests.unit.drivers.modules.test_snmp.SNMPValidateParametersTestCase.test__parse_driver_info_read_write_community [0.012967s] ... ok {28} ironic.tests.unit.conductor.test_task_manager.ExclusiveLockDecoratorTestCase.test_with_excl_lock_task_first_arg [0.010668s] ... ok {21} ironic.tests.unit.drivers.test_base.DeployStepDecoratorTestCase.test_deploy_step_bad_priority [0.008908s] ... ok {5} ironic.tests.unit.conductor.test_manager.ManagerPowerRecoveryTestCase.test_node_locked_on_acquire [0.027907s] ... ok {24} ironic.tests.unit.api.controllers.v1.test_utils.TestApiUtils.test_allow_inject_nmi [0.017503s] ... ok {28} ironic.tests.unit.conductor.test_utils.ErrorHandlersTestCase.test_spawn_deploying_error_handler_other_error [0.030172s] ... ok {5} ironic.tests.unit.conductor.test_manager.ManagerSyncLocalStateTestCase.test_good [0.027199s] ... ok {21} ironic.tests.unit.drivers.test_drac.IDRACHardwareTestCase.test_override_with_agent [0.056073s] ... ok {24} ironic.tests.unit.api.controllers.v1.test_utils.TestApiUtils.test_check_allow_driver_detail_fail [0.020597s] ... ok {28} ironic.tests.unit.conductor.test_utils.ValidateInstanceInfoTraitsTestCase.test_validate_instance_info_traits [0.009716s] ... ok {5} ironic.tests.unit.conductor.test_manager.MiscTestCase.test_validate_driver_interfaces_validation_fail_instance_traits [0.083360s] ... ok {21} ironic.tests.unit.drivers.test_ilo.IloHardwareTestCase.test_override_with_agent_rescue [0.055073s] ... ok {5} ironic.tests.unit.conductor.test_manager.StoreConfigDriveTestCase.test_store_configdrive_swift_no_deploy_timeout [0.074985s] ... ok {24} ironic.tests.unit.api.controllers.v1.test_utils.TestApiUtils.test_check_allow_filter_driver_type_fail [0.017739s] ... ok {21} ironic.tests.unit.drivers.test_utils.UtilsRamdiskLogsTestCase.test_store_ramdisk_logs_swift [0.025225s] ... ok {5} ironic.tests.unit.conductor.test_manager.UpdateNodeTestCase.test_update_node_interface_invalid [0.212524s] ... ok {28} ironic.tests.unit.db.sqlalchemy.test_migrations.TestMigrationsMySQL.test_upgrade_and_create_schema ... SKIPPED: Backend 'mysql+pymysql' is unavailable: Could not connect {5} ironic.tests.unit.conductor.test_manager.UpdatePortTestCase.test_update_port_address_maintenance [0.119726s] ... ok {21} ironic.tests.unit.objects.test_allocation.TestAllocationObject.test_create [0.014173s] ... ok {5} ironic.tests.unit.conductor.test_manager.UpdateVolumeTargetTestCase.test_update_volume_target_node_power_on [0.108955s] ... ok {21} ironic.tests.unit.objects.test_chassis.TestChassisObject.test_save_after_refresh [0.027045s] ... ok {28} ironic.tests.unit.db.sqlalchemy.test_migrations.TestMigrationsPostgreSQL.test_create_schema_and_version ... SKIPPED: Backend 'postgresql' is unavailable: Could not connect {5} ironic.tests.unit.conductor.test_manager.VifTestCase.test_vif_attach_raises_vif_invalid_for_attach [0.103588s] ... ok {21} ironic.tests.unit.objects.test_fields.TestNotificationLevelField.test_coerce_bad_value [0.008587s] ... ok {5} ironic.tests.unit.conductor.test_rpcapi.RPCAPITestCase.test_get_raid_logical_disk_properties [0.025180s] ... ok {28} ironic.tests.unit.db.sqlalchemy.test_migrations.TestMigrationsPostgreSQL.test_walk_versions ... SKIPPED: Backend 'postgresql' is unavailable: Could not connect {21} ironic.tests.unit.objects.test_node.TestConvertToVersion.test_automated_clean_supported_set [0.013358s] ... ok {5} ironic.tests.unit.conductor.test_rpcapi.RPCAPITestCase.test_object_action [0.026325s] ... ok {5} ironic.tests.unit.conductor.test_steps.GetValidatedStepsFromTemplatesTestCase.test_instance_deploy_failure [0.107915s] ... ok {28} ironic.tests.unit.db.test_allocations.AllocationsTestCase.test_destroy_allocation [0.045713s] ... ok {21} ironic.tests.unit.objects.test_node.TestConvertToVersion.test_trait_unsupported_set_no_remove_default [0.012804s] ... ok {5} ironic.tests.unit.conductor.test_steps.NodeCleaningStepsTestCase.test__get_cleaning_steps [0.106362s] ... ok {21} ironic.tests.unit.objects.test_node.TestNodeObject.test_release [0.017061s] ... ok {28} ironic.tests.unit.db.test_allocations.AllocationsTestCase.test_update_allocation_associated_with_another_node [0.073434s] ... ok {5} ironic.tests.unit.conductor.test_steps.NodeDeployStepsTestCase.test__validate_user_deploy_steps_disable_non_core [0.104792s] ... ok GET: /v1/ports?fields=address&limit=2 {} GOT:{u'ports': [{u'links': [{u'href': u'http://localhost/v1/ports/3e8c8981-9c23-427a-8bb2-6ae434a9a6f5', u'rel': u'self'}, {u'href': u'http://localhost/ports/3e8c8981-9c23-427a-8bb2-6ae434a9a6f5', u'rel': u'bookmark'}], u'address': u'52:54:00:cf:2d:30'}, {u'links': [{u'href': u'http://localhost/v1/ports/305de3df-2a20-4f07-84eb-2a7e82be562e', u'rel': u'self'}, {u'href': u'http://localhost/ports/305de3df-2a20-4f07-84eb-2a7e82be562e', u'rel': u'bookmark'}], u'address': u'52:54:00:cf:2d:31'}], u'next': u'http://localhost/v1/ports?sort_dir=asc&sort_key=id&limit=2&marker=305de3df-2a20-4f07-84eb-2a7e82be562e'} {25} ironic.tests.unit.api.controllers.v1.test_port.TestListPorts.test_get_collection_next_marker_no_uuid [0.115492s] ... ok {21} ironic.tests.unit.objects.test_objects.TestObject.test_base_attributes [0.008651s] ... ok {28} ironic.tests.unit.db.test_bios_settings.DbBIOSSettingTestCase.test_create_bios_setting_list_node_not_exist [0.038766s] ... ok {5} ironic.tests.unit.conductor.test_task_manager.TaskManagerTestCase.test_excl_lock_build_driver_exception [0.043255s] ... ok {28} ironic.tests.unit.db.test_bios_settings.DbBIOSSettingTestCase.test_get_bios_setting_list [0.057015s] ... ok {21} ironic.tests.unit.objects.test_objects.TestObject.test_get_target_version_pinned_no_myobj [0.009234s] ... ok {5} ironic.tests.unit.conductor.test_task_manager.TaskManagerTestCase.test_excl_lock_get_volconn_exception [0.043166s] ... ok {21} ironic.tests.unit.objects.test_objects.TestObject.test_object_property_type_error [0.008880s] ... ok {28} ironic.tests.unit.db.test_conductor.DbConductorTestCase.test_get_active_hardware_type_dict_one_host_one_ht [0.041468s] ... ok {5} ironic.tests.unit.conductor.test_task_manager.TaskManagerTestCase.test_spawn_after_exception_while_yielded [0.055451s] ... ok {21} ironic.tests.unit.objects.test_port.TestConvertToVersion.test_is_smartnic_unsupported_set_no_remove_default [0.012184s] ... ok {28} ironic.tests.unit.db.test_conductor.DbConductorTestCase.test_get_online_conductors [0.037344s] ... ok {5} ironic.tests.unit.conductor.test_task_manager.TaskManagerTestCase.test_upgrade_lock_refreshes_fsm [0.094378s] ... ok {21} ironic.tests.unit.objects.test_portgroup.TestPortgroupObject.test_get_by_uuid [0.014808s] ... ok {28} ironic.tests.unit.db.test_conductor.DbConductorTestCase.test_register_conductor_existing_fails [0.031562s] ... ok {5} ironic.tests.unit.conductor.test_utils.DeployingErrorHandlerTestCase.test_deploying_error_handler_cleanup_ironic_exception [0.017403s] ... ok {28} ironic.tests.unit.db.test_node_traits.DbNodeTraitTestCase.test_delete_node_trait_not_found [0.042472s] ... ok {5} ironic.tests.unit.conductor.test_utils.DeployingErrorHandlerTestCase.test_deploying_error_handler_cleanup_random_exception [0.014164s] ... ok {28} ironic.tests.unit.db.test_nodes.DbNodeTestCase.test_get_node_by_port_addresses_not_found [0.094893s] ... ok {5} ironic.tests.unit.conductor.test_utils.ErrorHandlersTestCase.test_cleanup_cleanwait_timeout [0.013090s] ... ok {5} ironic.tests.unit.conductor.test_utils.ErrorHandlersTestCase.test_spawn_rescue_error_handler_other_error [0.014604s] ... ok {28} ironic.tests.unit.db.test_nodes.DbNodeTestCase.test_get_node_list [0.076514s] ... ok {28} ironic.tests.unit.db.test_ports.DbPortTestCase.test_get_ports_by_portgroup_id [0.038911s] ... ok {5} ironic.tests.unit.conductor.test_utils.NodePowerActionTestCase.test_node_power_action_set_power_failure_notify [0.175478s] ... ok {5} ironic.tests.unit.conductor.test_utils.NodeSoftPowerActionTestCase.test_node_power_action_soft_power_off [0.130022s] ... ok {28} ironic.tests.unit.db.test_ports.DbPortTestCase.test_update_port [0.025487s] ... ok {28} ironic.tests.unit.db.test_ports.DbPortTestCase.test_update_port_duplicated_address [0.028926s] ... ok {5} ironic.tests.unit.conductor.test_utils.ValidateInstanceInfoTraitsTestCase.test_validate_instance_info_traits_no_instance_traits [0.016868s] ... ok {28} ironic.tests.unit.dhcp.test_neutron.TestNeutron.test__get_fixed_ip_address [0.024098s] ... ok {5} ironic.tests.unit.conductor.test_utils.ValidatePortPhysnetTestCase.test_validate_port_physnet_1_port_portgroup_no_physnet_update_1 [0.092724s] ... ok {5} ironic.tests.unit.db.test_allocations.AllocationsTestCase.test_update_allocation_duplicated_name [0.027833s] ... ok {28} ironic.tests.unit.dhcp.test_neutron.TestNeutron.test__get_fixed_ip_address_with_exception [0.039663s] ... ok {5} ironic.tests.unit.db.test_allocations.AllocationsTestCase.test_update_allocation_node_already_associated [0.061980s] ... ok {28} ironic.tests.unit.drivers.modules.ansible.test_deploy.TestAnsibleDeploy.test_execute_clean_step_no_success_log [0.120603s] ... ok {5} ironic.tests.unit.db.test_bios_settings.DbBIOSSettingTestCase.test_create_bios_setting_list [0.026094s] ... ok {28} ironic.tests.unit.drivers.modules.ansible.test_deploy.TestAnsibleMethods.test__prepare_variables [0.080027s] ... ok {5} ironic.tests.unit.db.test_bios_settings.DbBIOSSettingTestCase.test_get_bios_setting [0.032242s] ... ok {28} ironic.tests.unit.drivers.modules.ansible.test_deploy.TestAnsibleMethods.test__run_playbook_fail [0.037579s] ... ok {5} ironic.tests.unit.db.test_chassis.DbChassisTestCase.test_destroy_chassis [0.035559s] ... ok {28} ironic.tests.unit.drivers.modules.cimc.test_common.ParseDriverInfoTestCase.test_parse_driver_info_missing_username [0.022973s] ... ok {28} ironic.tests.unit.drivers.modules.drac.test_management.DracManagementInternalMethodsTestCase.test__flexibly_program_boot_order_for_pxe [0.030941s] ... ok {5} ironic.tests.unit.db.test_chassis.DbChassisTestCase.test_get_chassis_by_id [0.017615s] ... ok {28} ironic.tests.unit.drivers.modules.drac.test_raid.DracRaidInterfaceTestCase.test_get_logical_disks [0.095245s] ... ok {5} ironic.tests.unit.db.test_conductor.DbConductorTestCase.test_get_active_hardware_type_dict_many_host_one_ht [0.030315s] ... ok {28} ironic.tests.unit.drivers.modules.ibmc.test_vendor.IBMCVendorTestCase.test_list_boot_type_order [0.082048s] ... ok {28} ironic.tests.unit.drivers.modules.ilo.test_boot.IloBootPrivateMethodsTestCase.test__get_boot_iso_uefi_no_glance_image [0.074000s] ... ok {5} ironic.tests.unit.db.test_deploy_templates.DbDeployTemplateTestCase.test_update_duplicate_name [0.025439s] ... ok POST: /v1/nodes {'instance_uuid': None, 'uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123', 'driver_info': {'fake_password': 'fakepass', 'foo': 'bar'}, 'extra': {}, 'storage_interface': 'cinder', 'driver': 'fake-hardware', 'properties': {'memory_mb': '4096', 'cpu_arch': 'x86_64', 'local_gb': '10', 'cpus': '8'}, 'maintenance': False, 'chassis_uuid': 'e74c40e0-d825-11e2-a28f-0800200c9a66', 'instance_info': {'foo': 'bar', 'image_url': 'http://example.com/test_image_url', 'configdrive': 'TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQ='}} GOT:Response: 201 Created Content-Type: application/json Location: http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123 Openstack-Request-Id: req-3b3860a6-e245-43d9-a31a-f335186ccfff X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.33 {"target_power_state": null, "inspect_interface": "fake", "links": [{"href": "http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "rel": "self"}, {"href": "http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "rel": "bookmark"}], "target_provision_state": null, "last_error": null, "storage_interface": "cinder", "updated_at": null, "maintenance_reason": null, "states": [{"href": "http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states", "rel": "self"}, {"href": "http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states", "rel": "bookmark"}], "provision_state": "enroll", "clean_step": {}, "vendor_interface": "fake", "uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "console_enabled": false, "extra": {}, "raid_config": {}, "provision_updated_at": null, "power_state": null, "target_raid_config": {}, "network_interface": "flat", "inspection_started_at": null, "inspection_finished_at": null, "maintenance": false, "power_interface": "fake", "driver": "fake-hardware", "volume": [{"href": "http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/volume", "rel": "self"}, {"href": "http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/volume", "rel": "bookmark"}], "raid_interface": "fake", "boot_interface": "fake", "reservation": null, "management_interface": "fake", "properties": {"memory_mb": "4096", "cpu_arch": "x86_64", "local_gb": "10", "cpus": "8"}, "instance_uuid": null, "name": null, "driver_info": {"fake_password": "******", "foo": "bar"}, "resource_class": null, "created_at": "2000-01-01T00:00:00+00:00", "portgroups": [{"href": "http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/portgroups", "rel": "self"}, {"href": "http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/portgroups", "rel": "bookmark"}], "deploy_interface": "fake", "ports": [{"href": "http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports", "rel": "self"}, {"href": "http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports", "rel": "bookmark"}], "console_interface": "fake", "driver_internal_info": {}, "chassis_uuid": "e74c40e0-d825-11e2-a28f-0800200c9a66", "instance_info": {"foo": "bar", "image_url": "******", "configdrive": "******"}} GET: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123 {} GOT:{u'target_power_state': None, u'inspect_interface': u'fake', u'links': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'bookmark'}], u'target_provision_state': None, u'last_error': None, u'storage_interface': u'cinder', u'updated_at': None, u'maintenance_reason': None, u'states': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states', u'rel': u'bookmark'}], u'provision_state': u'enroll', u'clean_step': {}, u'vendor_interface': u'fake', u'uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'console_enabled': False, u'extra': {}, u'raid_config': {}, u'provision_updated_at': None, u'power_state': None, u'target_raid_config': {}, u'network_interface': u'flat', u'inspection_started_at': None, u'inspection_finished_at': None, u'maintenance': False, u'driver': u'fake-hardware', u'power_interface': u'fake', u'volume': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/volume', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/volume', u'rel': u'bookmark'}], u'raid_interface': u'fake', u'boot_interface': u'fake', u'reservation': None, u'management_interface': u'fake', u'properties': {u'memory_mb': u'4096', u'cpu_arch': u'x86_64', u'local_gb': u'10', u'cpus': u'8'}, u'instance_uuid': None, u'name': None, u'driver_info': {u'fake_password': u'******', u'foo': u'bar'}, u'resource_class': None, u'created_at': u'2000-01-01T00:00:00+00:00', u'portgroups': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/portgroups', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/portgroups', u'rel': u'bookmark'}], u'deploy_interface': u'fake', u'instance_info': {u'foo': u'bar', u'image_url': u'******', u'configdrive': u'******'}, u'console_interface': u'fake', u'driver_internal_info': {}, u'chassis_uuid': u'e74c40e0-d825-11e2-a28f-0800200c9a66', u'ports': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'bookmark'}]} POST: /v1/ports {'local_link_connection': {'switch_info': 'switch1', 'port_id': 'Ethernet3/1', 'switch_id': '0a:1b:2c:3d:4e:5f'}, 'node_uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123', 'uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c781', 'extra': {'foo': 123}, 'pxe_enabled': True, 'portgroup_uuid': '6eb02b44-18a3-4659-8c0b-8d2802581ae4', 'physical_network': None, 'address': '52:54:00:cf:2d:31', 'is_smartnic': False} GOT:Response: 201 Created Content-Type: application/json Location: http://localhost/v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 Openstack-Request-Id: req-9f92ca55-a08a-42fd-a287-8b8fba7ab9df X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"local_link_connection": {"switch_info": "switch1", "port_id": "Ethernet3/1", "switch_id": "0a:1b:2c:3d:4e:5f"}, "node_uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "links": [{"href": "http://localhost/v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "rel": "self"}, {"href": "http://localhost/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "rel": "bookmark"}], "extra": {"foo": 123}, "pxe_enabled": true, "portgroup_uuid": "6eb02b44-18a3-4659-8c0b-8d2802581ae4", "updated_at": null, "physical_network": null, "address": "52:54:00:cf:2d:31", "internal_info": {}, "created_at": "2019-06-06T07:02:16.240377+00:00", "is_smartnic": false} GET: /v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 {} GOT:{u'local_link_connection': {u'switch_info': u'switch1', u'port_id': u'Ethernet3/1', u'switch_id': u'0a:1b:2c:3d:4e:5f'}, u'node_uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c781', u'links': [{u'href': u'http://localhost/v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781', u'rel': u'self'}, {u'href': u'http://localhost/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781', u'rel': u'bookmark'}], u'extra': {u'foo': 123}, u'pxe_enabled': True, u'portgroup_uuid': u'6eb02b44-18a3-4659-8c0b-8d2802581ae4', u'updated_at': None, u'physical_network': None, u'address': u'52:54:00:cf:2d:31', u'internal_info': {}, u'created_at': u'2019-06-06T07:02:16.240377+00:00', u'is_smartnic': False} {28} ironic.tests.unit.drivers.modules.ilo.test_common.IloCommonMethodsTestCase.test_set_boot_mode_with_IloOperationError [0.022779s] ... ok {5} ironic.tests.unit.db.test_deploy_templates.DbDeployTemplateTestCase.test_update_name [0.023013s] ... ok {1} ironic.tests.unit.api.controllers.v1.test_port.TestPost.test_create_port_doesnt_contain_id [0.118091s] ... ok {22} ironic.tests.unit.api.controllers.v1.test_node.TestPost.test_create_node_explicit_storage_interface [0.135505s] ... ok {28} ironic.tests.unit.drivers.modules.ilo.test_common.IloValidateParametersTestCase.test_parse_driver_info_invalid_multiple_params [0.020996s] ... ok {5} ironic.tests.unit.db.test_portgroups.DbportgroupTestCase.test_create_portgroup_duplicated_address [0.022117s] ... ok {28} ironic.tests.unit.drivers.modules.ilo.test_inspect.IloInspectTestCase.test_inspect_essential_capabilities_exist_ok [0.115791s] ... ok {5} ironic.tests.unit.db.test_volume_targets.DbVolumeTargetTestCase.test_get_volume_targets_by_node_id [0.034543s] ... ok {28} ironic.tests.unit.drivers.modules.irmc.test_boot.IRMCDeployPrivateMethodsTestCase.test__detach_virtual_cd_ok [0.070612s] ... ok {5} ironic.tests.unit.db.test_volume_targets.DbVolumeTargetTestCase.test_update_volume_target [0.026100s] ... ok PATCH: /v1/volume/targets/10a71c10-3009-4310-9516-72f3a0b5ef87 [{'path': '/extra/foo', 'value': 'bar', 'op': 'add'}] GOT:Response: 404 Not Found Content-Type: application/json Openstack-Request-Id: req-9db82bb6-bb5b-44af-824a-eb2489d6e9ee X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Volume target 10a71c10-3009-4310-9516-72f3a0b5ef87 could not be found.\"}"} {17} ironic.tests.unit.api.controllers.v1.test_volume_target.TestPatch.test_update_not_found [0.069342s] ... ok {28} ironic.tests.unit.drivers.modules.irmc.test_boot.IRMCPXEBootBasicTestCase.test_prepare_ramdisk_ipxe_with_copy_file_different [0.149266s] ... ok {5} ironic.tests.unit.drivers.modules.cimc.test_power.PowerTestCase.test_get_properties [0.070613s] ... ok {28} ironic.tests.unit.drivers.modules.irmc.test_boot.IRMCPXEBootBasicTestCase.test_validate_fail_invalid_trusted_boot_value [0.053538s] ... ok {5} ironic.tests.unit.drivers.modules.drac.test_power.DracPowerTestCase.test_get_power_state [0.087037s] ... ok {28} ironic.tests.unit.drivers.modules.irmc.test_boot.IRMCVirtualMediaBootWithVolumeTestCase.test__cleanup_boot_from_volume [0.077757s] ... ok {28} ironic.tests.unit.drivers.modules.irmc.test_common.IRMCCommonMethodsTestCase.test_get_irmc_report [0.021484s] ... ok {28} ironic.tests.unit.drivers.modules.irmc.test_inspect.IRMCInspectTestCase.test_inspect_hardware_props_empty_gpu_ids_fpga_id_sand_existing_cap [0.055832s] ... ok {5} ironic.tests.unit.drivers.modules.drac.test_raid.DracCreateRaidConfigurationHelpersTestCase.test__calculate_spans_for_invalid_raid_level [0.057789s] ... ok {5} ironic.tests.unit.drivers.modules.drac.test_raid.DracCreateRaidConfigurationHelpersTestCase.test__find_configuration [0.035748s] ... ok {28} ironic.tests.unit.drivers.modules.irmc.test_management.IRMCManagementTestCase.test_management_interface_get_sensors_data_exception [0.066235s] ... ok {5} ironic.tests.unit.drivers.modules.drac.test_raid.DracRaidInterfaceTestCase.test_create_configuration_with_nested_raid_10 [0.125367s] ... ok {28} ironic.tests.unit.drivers.modules.irmc.test_raid.IRMCRaidConfigurationInternalMethodsTestCase.test___fail_validation_with_raid_level_is_none [0.050268s] ... ok DELETE: /v1/portgroups/blah GOT:Response: 404 Not Found Content-Type: application/json Openstack-Request-Id: req-39dfb0ac-a8b3-4764-8903-0067c4936334 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Portgroup blah could not be found.\"}"} {5} ironic.tests.unit.drivers.modules.ibmc.test_power.IBMCPowerTestCase.test_get_power_state [0.080633s] ... ok {6} ironic.tests.unit.api.controllers.v1.test_portgroup.TestDelete.test_delete_portgroup_byname_not_existed [0.074056s] ... ok {5} ironic.tests.unit.drivers.modules.ibmc.test_utils.IBMCUtilsTestCase.test_handle_ibmc_exception_retry [4.102220s] ... ok {28} ironic.tests.unit.drivers.modules.irmc.test_raid.IRMCRaidConfigurationInternalMethodsTestCase.test__fail_validate_capacity_raid_10 [0.021995s] ... ok {28} ironic.tests.unit.drivers.modules.irmc.test_raid.IRMCRaidConfigurationInternalMethodsTestCase.test__fail_validation_without_physical_disks [0.056173s] ... ok {28} ironic.tests.unit.drivers.modules.irmc.test_raid.IRMCRaidConfigurationTestCase.test_create_raid_with_raid_5_and_0 [0.059133s] ... ok {5} ironic.tests.unit.drivers.modules.ilo.test_bios.IloBiosTestCase.test__execute_post_boot_bios_get_settings_error [0.108630s] ... ok {5} ironic.tests.unit.drivers.modules.ilo.test_boot.IloVirtualMediaBootTestCase.test_clean_up_instance_boot_from_volume [0.128082s] ... ok {28} ironic.tests.unit.drivers.modules.network.test_common.TestCommonFunctions.test_plug_port_to_tenant_network_smartnic_port [0.117192s] ... ok {5} ironic.tests.unit.drivers.modules.ilo.test_common.IloCommonMethodsTestCase.test_copy_image_to_web_server_fails [0.033478s] ... ok PATCH: /v1/portgroups/pg.1 [{'path': '/extra/foo', 'value': 'bar', 'op': 'add'}] GOT:Response: 200 OK Content-Type: application/json Openstack-Request-Id: req-c4a4fa83-38ba-4f5e-b6ca-14ab3e53d666 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"node_uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "uuid": "6eb02b44-18a3-4659-8c0b-8d2802581ae4", "links": [{"href": "http://localhost/v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4", "rel": "self"}, {"href": "http://localhost/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4", "rel": "bookmark"}], "extra": {"foo": "bar"}, "created_at": "2019-06-06T07:02:16.869550+00:00", "updated_at": null, "ports": [{"href": "http://localhost/v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4/ports", "rel": "self"}, {"href": "http://localhost/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4/ports", "rel": "bookmark"}], "standalone_ports_supported": true, "mode": "active-backup", "address": "52:54:00:cf:2d:31", "internal_info": {"bar": "buzz"}, "properties": {}, "name": "pg.1"} {28} ironic.tests.unit.drivers.modules.network.test_common.TestNeutronVifPortIDMixin.test_port_changed_novif_nopxe_portgroup_nostandalone_ports [0.255575s] ... ok {10} ironic.tests.unit.api.controllers.v1.test_portgroup.TestPatch.test_update_byname [0.115991s] ... ok {28} ironic.tests.unit.drivers.modules.network.test_common.TestNeutronVifPortIDMixin.test_update_portgroup_standalone_ports_vif_nopxe_ports [0.066833s] ... ok {5} ironic.tests.unit.drivers.modules.ilo.test_common.IloCommonMethodsTestCase.test_get_secure_boot_mode [0.084730s] ... ok {28} ironic.tests.unit.drivers.modules.network.test_common.TestNeutronVifPortIDMixin.test_vif_attach_update_port_exception [0.071128s] ... ok {5} ironic.tests.unit.drivers.modules.ilo.test_firmware_processor.FirmwareProcessorTestCase.test__extract_fw_from_file_doesnt_upload_firmware [0.047230s] ... ok {28} ironic.tests.unit.drivers.modules.network.test_common.TestVifPortIDMixin.test__get_vif_id_by_port_like_obj_not_attached [0.026651s] ... ok {5} ironic.tests.unit.drivers.modules.ilo.test_inspect.TestInspectPrivateMethods.test__get_essential_properties_fail_mac_invalid_format [0.031960s] ... ok {28} ironic.tests.unit.drivers.modules.network.test_flat.TestFlatInterface.test_add_cleaning_network_from_node [0.133691s] ... ok {5} ironic.tests.unit.drivers.modules.ilo.test_management.IloManagementTestCase.test_clear_iscsi_boot_target_in_bios [0.086210s] ... ok {28} ironic.tests.unit.drivers.modules.network.test_neutron.NeutronInterfaceTestCase.test_unconfigure_tenant_networks [0.060334s] ... ok {5} ironic.tests.unit.drivers.modules.ilo.test_management.IloManagementTestCase.test_set_iscsi_boot_target_with_auth [0.086268s] ... ok {28} ironic.tests.unit.drivers.modules.redfish.test_bios.RedfishBiosTestCase.test_apply_configuration_step2 [0.071720s] ... ok {5} ironic.tests.unit.drivers.modules.ilo.test_vendor.VendorPassthruTestCase.test__validate_boot_into_iso_missing_boot_iso_href [0.078891s] ... ok {5} ironic.tests.unit.drivers.modules.irmc.test_boot.IRMCDeployPrivateMethodsTestCase.test__cleanup_vmedia_boot_ok [0.093266s] ... ok {28} ironic.tests.unit.drivers.modules.redfish.test_management.RedfishManagementTestCase.test_validate [0.052171s] ... ok {5} ironic.tests.unit.drivers.modules.irmc.test_boot.IRMCPXEBootTestCase.test_prepare_instance_without_secure_boot [0.107632s] ... ok {28} ironic.tests.unit.drivers.modules.storage.test_cinder.CinderInterfaceTestCase.test_validate_fail_on_unknown_volume_types [0.089428s] ... ok PATCH: /v1/nodes/9516cb21-5f40-4a41-b72f-ab6fcd10ac43 [{'path': '/resource_class', 'value': 'foo', 'op': 'add'}] GOT:Response: 200 OK Content-Type: application/json Openstack-Request-Id: req-7c777412-42da-41cc-983d-5d941930fabc X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.21 {"target_power_state": null, "links": [{"href": "http://localhost/v1/nodes/9516cb21-5f40-4a41-b72f-ab6fcd10ac43", "rel": "self"}, {"href": "http://localhost/nodes/9516cb21-5f40-4a41-b72f-ab6fcd10ac43", "rel": "bookmark"}], "target_provision_state": null, "last_error": null, "updated_at": null, "maintenance_reason": null, "states": [{"href": "http://localhost/v1/nodes/9516cb21-5f40-4a41-b72f-ab6fcd10ac43/states", "rel": "self"}, {"href": "http://localhost/nodes/9516cb21-5f40-4a41-b72f-ab6fcd10ac43/states", "rel": "bookmark"}], "provision_state": "available", "clean_step": {}, "uuid": "9516cb21-5f40-4a41-b72f-ab6fcd10ac43", "console_enabled": false, "extra": {}, "raid_config": {}, "provision_updated_at": null, "power_state": null, "target_raid_config": {}, "network_interface": null, "inspection_started_at": null, "inspection_finished_at": null, "maintenance": false, "driver": "fake-hardware", "reservation": null, "properties": {"memory_mb": "4096", "cpu_arch": "x86_64", "local_gb": "10", "cpus": "8"}, "instance_uuid": null, "name": null, "driver_info": {"fake_password": "******", "foo": "bar"}, "resource_class": null, "created_at": "2019-06-06T07:02:16.171583+00:00", "ports": [{"href": "http://localhost/v1/nodes/9516cb21-5f40-4a41-b72f-ab6fcd10ac43/ports", "rel": "self"}, {"href": "http://localhost/nodes/9516cb21-5f40-4a41-b72f-ab6fcd10ac43/ports", "rel": "bookmark"}], "driver_internal_info": {"private_state": "secret value"}, "chassis_uuid": null, "instance_info": {"foo": "bar", "image_url": "******", "configdrive": "******"}} {14} ironic.tests.unit.api.controllers.v1.test_node.TestPatch.test_update_resource_class [0.118998s] ... ok {28} ironic.tests.unit.drivers.modules.test_agent.AgentRAIDTestCase.test__create_configuration_final_registered [0.062034s] ... ok {5} ironic.tests.unit.drivers.modules.irmc.test_common.IRMCValidateParametersTestCase.test_parse_driver_info_invalid_snmp_community [0.024973s] ... ok {5} ironic.tests.unit.drivers.modules.irmc.test_common.IRMCValidateParametersTestCase.test_parse_driver_info_missing_password [0.030248s] ... ok {28} ironic.tests.unit.drivers.modules.test_agent.TestAgentDeploy.test_deploy_is_done [0.064059s] ... ok {5} ironic.tests.unit.drivers.modules.irmc.test_inspect.IRMCInspectTestCase.test_inspect_hardware_props_trusted_boot_is_false [0.063144s] ... ok {28} ironic.tests.unit.drivers.modules.test_agent_base_vendor.AgentDeployMixinTest.test_reboot_and_finish_deploy_power_action_oob_power_off [0.084906s] ... ok {5} ironic.tests.unit.drivers.modules.irmc.test_periodic_task.iRMCPeriodicTaskTestCase.test__query_raid_config_fgi_status_completing_status [0.050770s] ... ok {28} ironic.tests.unit.drivers.modules.test_deploy_utils.AgentMethodsTestCase.test_tear_down_inband_cleaning_manage_boot_false [0.080774s] ... ok {5} ironic.tests.unit.drivers.modules.irmc.test_periodic_task.iRMCPeriodicTaskTestCase.test__query_raid_config_fgi_status_without_fgi_status [0.042008s] ... ok {28} ironic.tests.unit.drivers.modules.test_deploy_utils.GetPxeBootConfigTestCase.test_get_pxe_config_template_cpu_in_by_arch [0.023850s] ... ok {5} ironic.tests.unit.drivers.modules.network.test_common.TestCommonFunctions.test_get_free_port_like_object_vif_attached_to_portgroup_extra [0.078642s] ... ok {28} ironic.tests.unit.drivers.modules.test_deploy_utils.PhysicalWorkTestCase.test_check_file_system_for_iscsi_device [0.018462s] ... ok {5} ironic.tests.unit.drivers.modules.network.test_common.TestNeutronVifPortIDMixin.test_vif_attach_active_node [0.097703s] ... ok {28} ironic.tests.unit.drivers.modules.test_deploy_utils.TestBuildInstanceInfoForDeploy.test_build_instance_info_for_deploy_glance_partition_image [0.165479s] ... ok {28} ironic.tests.unit.drivers.modules.test_deploy_utils.TestBuildInstanceInfoForDeploy.test_build_instance_info_for_deploy_nonglance_image [0.080894s] ... ok {5} ironic.tests.unit.drivers.modules.network.test_common.TestVifPortIDMixin.test_vif_list_extra [0.073281s] ... ok {5} ironic.tests.unit.drivers.modules.network.test_flat.TestFlatInterface.test_add_rescuing_network [0.066802s] ... ok {28} ironic.tests.unit.drivers.modules.test_image_cache.TestUpdateImages.test__delete_master_path_if_stale_out_of_date [0.013811s] ... ok {5} ironic.tests.unit.drivers.modules.network.test_noop.NoopInterfaceTestCase.test_add_cleaning_network [0.080954s] ... ok PATCH: /v1/volume/connectors/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 [{'path': '/extra/foo1', 'value': 'bar1x', 'op': 'replace'}, {'path': '/extra/foo2', 'value': 'bar2x', 'op': 'replace'}, {'path': '/extra/foo3', 'value': 'bar3x', 'op': 'replace'}] GOT:Response: 200 OK Content-Type: application/json Openstack-Request-Id: req-7c883332-c53a-490d-8703-13d787de4400 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"node_uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "links": [{"href": "http://localhost/v1/volume/connectors/1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "rel": "self"}, {"href": "http://localhost/volume/connectors/1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "rel": "bookmark"}], "extra": {"foo1": "bar1x", "foo2": "bar2x", "foo3": "bar3x"}, "created_at": "2019-06-06T07:02:17.120255+00:00", "updated_at": "2019-06-06T07:02:17.127619+00:00", "connector_id": "iqn.2012-06.com.example:initiator", "type": "iqn"} {28} ironic.tests.unit.drivers.modules.test_inspect_utils.InspectFunctionTestCase.test_create_ports_if_not_exist [0.238898s] ... ok {5} ironic.tests.unit.drivers.modules.network.test_noop.NoopInterfaceTestCase.test_validate [0.074577s] ... ok {28} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolDriverTestCase.test_get_force_boot_device_persistent [0.062450s] ... ok {23} ironic.tests.unit.api.controllers.v1.test_volume_connector.TestPatch.test_replace_multi [0.122511s] ... ok {5} ironic.tests.unit.drivers.modules.network.test_noop.NoopInterfaceTestCase.test_vif_list [0.077101s] ... ok DELETE: /v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 GOT:Response: 409 Conflict Content-Type: application/json Openstack-Request-Id: req-279fe2c1-e561-452c-a9e0-74f7647c5ac6 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Node fake-node is locked by host fake-host, please retry after the current operation is completed.\"}"} {28} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolDriverTestCase.test_management_interface_validate_fail [0.069645s] ... ok PUT: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states/provision {'target': 'abort'} GOT:Response: 202 Accepted Location: http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states Openstack-Request-Id: req-41c92b65-b447-49ba-bacf-e463800c1476 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.13 {5} ironic.tests.unit.drivers.modules.redfish.test_bios.RedfishBiosTestCase.test_factory_reset [0.106117s] ... ok {26} ironic.tests.unit.api.controllers.v1.test_port.TestDelete.test_delete_port_node_locked [0.105549s] ... ok {7} ironic.tests.unit.api.controllers.v1.test_node.TestPut.test_abort_cleanwait [0.111154s] ... ok {28} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolDriverTestCase.test_reboot_already_off [0.078305s] ... ok {5} ironic.tests.unit.drivers.modules.redfish.test_management.RedfishManagementTestCase.test_get_sensors_data [0.053364s] ... ok {5} ironic.tests.unit.drivers.modules.redfish.test_management.RedfishManagementTestCase.test_set_boot_device_persistency [0.069685s] ... ok {28} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolDriverTestCase.test_vendor_passthru_call_send_raw_bytes [0.072180s] ... ok {5} ironic.tests.unit.drivers.modules.redfish.test_utils.RedfishUtilsTestCase.test_parse_driver_info_invalid_auth_type [0.021435s] ... ok {5} ironic.tests.unit.drivers.modules.redfish.test_utils.RedfishUtilsTestCase.test_parse_driver_info_invalid_value_verify_ca [0.020534s] ... ok {28} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolPrivateMethodTestCase.test__exec_ipmitool_with_single_bridging [0.029234s] ... ok {5} ironic.tests.unit.drivers.modules.storage.test_cinder.CinderInterfaceTestCase.test_validate_fails_with_ipxe_not_enabled [0.092220s] ... ok {28} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolPrivateMethodTestCase.test__parse_driver_info_ipmi_hex_kg_key [0.025801s] ... ok {5} ironic.tests.unit.drivers.modules.test_agent.AgentRescueTestCase.test_agent_rescue_validate_fails_empty_rescue_password [0.077825s] ... ok {28} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolPrivateMethodTestCase.test__parse_driver_info_ipmi_hex_kg_key_odd_chars [0.025914s] ... ok {28} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolPrivateMethodTestCase.test_exec_ipmitool_exception_non_retryable_failure_timeout [0.030504s] ... ok {5} ironic.tests.unit.drivers.modules.test_agent.TestAgentDeploy.test_prepare_active_and_unrescue_states [0.120966s] ... ok {28} ironic.tests.unit.drivers.modules.test_ipxe.iPXEBootTestCase.test_prepare_ramdisk_force_persistent_boot_device_false [0.141363s] ... ok PATCH: /v1/volume/connectors/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 [{'path': '/extra/foo1', 'value': 'bar1', 'op': 'add'}, {'path': '/extra/foo2', 'value': 'bar2', 'op': 'add'}, {'path': '/extra/foo3', 'value': 'bar3', 'op': 'add'}] GOT:Response: 200 OK Content-Type: application/json Openstack-Request-Id: req-9bcea67d-5923-44c8-a733-ae7ad901c24d X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"node_uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "links": [{"href": "http://localhost/v1/volume/connectors/1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "rel": "self"}, {"href": "http://localhost/volume/connectors/1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "rel": "bookmark"}], "extra": {"foo1": "bar1", "foo2": "bar2", "foo3": "bar3"}, "created_at": "2019-06-06T07:02:16.579607+00:00", "updated_at": null, "connector_id": "iqn.2012-06.com.example:initiator", "type": "iqn"} {5} ironic.tests.unit.drivers.modules.test_agent.TestAgentDeploy.test_tear_down_with_smartnic_port [0.153335s] ... ok {8} ironic.tests.unit.api.controllers.v1.test_volume_connector.TestPatch.test_add_multi [0.113232s] ... ok {28} ironic.tests.unit.drivers.modules.test_iscsi_deploy.IscsiDeployMethodsTestCase.test_do_agent_iscsi_deploy_okay [0.102724s] ... ok {5} ironic.tests.unit.drivers.modules.test_agent.TestAgentDeploy.test_validate_nonglance_image_no_checksum [0.084180s] ... ok {28} ironic.tests.unit.drivers.modules.test_iscsi_deploy.IscsiDeployMethodsTestCase.test_get_deploy_info_portal_port [0.037074s] ... ok {5} ironic.tests.unit.drivers.modules.test_boot_mode_utils.GetBootModeTestCase.test_get_boot_mode_uefi [0.011704s] ... ok {5} ironic.tests.unit.drivers.modules.test_console_utils.ConsoleUtilsTestCase.test__get_console_pid_file_not_found [0.014808s] ... ok {5} ironic.tests.unit.drivers.modules.test_deploy_utils.InstanceInfoTestCase.test_parse_instance_info_configdrive [0.021961s] ... ok {28} ironic.tests.unit.drivers.modules.test_iscsi_deploy.IscsiDeployPrivateMethodsTestCase.test__save_disk_layout [0.747429s] ... ok {5} ironic.tests.unit.drivers.modules.test_deploy_utils.InstanceInfoTestCase.test_parse_instance_info_valid_preserve_ephemeral_false [0.067946s] ... ok {5} ironic.tests.unit.drivers.modules.test_deploy_utils.PhysicalWorkTestCase.test_deploy_partition_image_netboot_bios [0.025097s] ... ok GET: / {} GOT:Response: 500 Internal Server Error Content-Type: application/json Openstack-Request-Id: req-2b060324-af0d-40e9-beee-0c2563f8b706 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Server\", \"faultstring\": \"Error message without traceback \\n but \\n multiline\"}"} {28} ironic.tests.unit.drivers.modules.test_pxe.PXEBootTestCase.test_prepare_ramdisk_force_persistent_boot_device_false [0.116429s] ... ok {17} ironic.tests.unit.api.test_hooks.TestNoExceptionTracebackHook.test_hook_without_traceback [0.045128s] ... ok {5} ironic.tests.unit.drivers.modules.test_deploy_utils.PhysicalWorkTestCase.test_deploy_whole_disk_image_sparse [0.023301s] ... ok {17} ironic.tests.unit.common.test_cinder.TestCinderUtils.test__get_attachment_id [0.031648s] ... ok {5} ironic.tests.unit.drivers.modules.test_deploy_utils.SwitchPxeConfigTestCase.test_switch_pxe_config_whole_disk_image [0.027081s] ... ok {17} ironic.tests.unit.common.test_driver_factory.DefaultInterfaceTestCase.test_calculated_with_two [0.028301s] ... ok {28} ironic.tests.unit.drivers.modules.test_pxe.PXEBootTestCase.test_prepare_ramdisk_set_boot_mode_not_called [0.115949s] ... ok {5} ironic.tests.unit.drivers.modules.test_image_cache.CleanupImageCacheTestCase.test_clean_up_fail [0.019986s] ... ok {28} ironic.tests.unit.drivers.modules.test_snmp.SNMPClientTestCase.test__get_auth_v1_read [0.027867s] ... ok {17} ironic.tests.unit.common.test_driver_factory.HardwareTypeLoadTestCase.test_build_driver_for_task_calculated_defaults [0.100984s] ... ok {5} ironic.tests.unit.drivers.modules.test_image_cache.TestImageCacheCleanUp.test_clean_up_old_deleted [0.012964s] ... ok {17} ironic.tests.unit.common.test_glance_service.TestGlanceSwiftTempURL.test__validate_temp_url_endpoint_less_than_download_delay [0.016891s] ... ok {5} ironic.tests.unit.drivers.modules.test_inspector.GetClientTestCase.test__get_client [0.020764s] ... ok {28} ironic.tests.unit.drivers.modules.test_snmp.SNMPClientTestCase.test__get_transport_custom_timeout [0.032108s] ... ok {17} ironic.tests.unit.common.test_glance_service.TestGlanceSwiftTempURL.test_swift_temp_url_multiple_containers [0.022249s] ... ok {5} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolDriverTestCase.test_dump_sdr_fail [0.068758s] ... ok {28} ironic.tests.unit.drivers.modules.test_snmp.SNMPDeviceDriverTestCase.test_power_reset_delay_option [0.026298s] ... ok {5} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolPrivateMethodTestCase.test__exec_ipmitool_second_call_to_address_sleep [0.028560s] ... ok {17} ironic.tests.unit.common.test_glance_service.TestSwiftTempUrlCache.test_return_cached_tempurl [0.019839s] ... ok GET: /v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 {} GOT:{u'local_link_connection': {u'switch_info': u'switch1', u'port_id': u'Ethernet3/1', u'switch_id': u'0a:1b:2c:3d:4e:5f'}, u'node_uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c781', u'links': [{u'href': u'http://localhost/v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781', u'rel': u'self'}, {u'href': u'http://localhost/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781', u'rel': u'bookmark'}], u'extra': {}, u'pxe_enabled': True, u'portgroup_uuid': None, u'updated_at': None, u'address': u'52:54:00:cf:2d:31', u'internal_info': {u'bar': u'buzz'}, u'created_at': u'2019-06-06T07:02:16.572456+00:00'} {17} ironic.tests.unit.common.test_image_service.ServiceGetterTestCase.test_get_http_image_service [0.017734s] ... ok {28} ironic.tests.unit.drivers.modules.test_snmp.SNMPDeviceDriverTestCase.test_teltronix_power_on [0.027936s] ... ok {27} ironic.tests.unit.api.controllers.v1.test_port.TestListPorts.test_get_one_portgroup_is_none [0.089372s] ... ok {5} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolPrivateMethodTestCase.test__exec_ipmitool_with_timing [0.031556s] ... ok {17} ironic.tests.unit.common.test_json_rpc.TestService.test_expected_failure [0.049415s] ... ok {28} ironic.tests.unit.drivers.modules.test_snmp.SNMPDriverTestCase.test_set_power_state_on_error [0.068171s] ... ok {5} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolShellinaboxTestCase.test_stop_console_fail [0.066542s] ... ok {17} ironic.tests.unit.common.test_json_rpc.TestService.test_success [0.056673s] ... ok POST: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/vendor_passthru/test {'foo': 'bar'} GOT:Response: 202 Accepted Content-Type: application/json Openstack-Request-Id: req-d5d71643-b347-4d13-a0cf-9ec0cb20b045 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 null {5} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolSocatDriverTestCase.test_stop_console [0.067444s] ... ok {28} ironic.tests.unit.drivers.modules.test_snmp.SNMPValidateParametersTestCase.test__parse_driver_info_snmp_port [0.014983s] ... ok {22} ironic.tests.unit.api.controllers.v1.test_node.TestPost.test_vendor_passthru_async [0.081710s] ... ok {17} ironic.tests.unit.common.test_keystone.KeystoneTestCase.test_get_auth_fail [0.013703s] ... ok {5} ironic.tests.unit.drivers.modules.test_ipxe.iPXEBootTestCase.test_validate_fail_no_image_kernel_ramdisk_props [0.057112s] ... ok {5} ironic.tests.unit.drivers.modules.test_iscsi_deploy.CleanUpFullFlowTestCase.test_clean_up_with_master [0.063192s] ... ok {28} ironic.tests.unit.drivers.modules.test_snmp.SNMPValidateParametersTestCase.test__parse_driver_info_snmp_v3_auth_key_proto [0.014575s] ... ok {17} ironic.tests.unit.common.test_network.TestNetwork.test_get_node_vif_ids_during_rescuing [0.120829s] ... ok {5} ironic.tests.unit.drivers.modules.test_iscsi_deploy.IscsiDeployMethodsTestCase.test_continue_deploy_fail_no_root_uuid_or_disk_id [0.171720s] ... ok {28} ironic.tests.unit.drivers.modules.xclarity.test_power.XClarityPowerDriverTestCase.test_set_power_timeout [0.067255s] ... ok {17} ironic.tests.unit.common.test_network.TestNetwork.test_remove_vifs_from_node [0.177664s] ... ok {28} ironic.tests.unit.drivers.test_base.CleanStepDecoratorTestCase.test__validate_argsinfo_arg_description_invalid [0.009658s] ... ok {5} ironic.tests.unit.drivers.modules.test_pxe.PXEBootTestCase.test_validate_fail_no_image_kernel_ramdisk_props [0.059153s] ... ok {17} ironic.tests.unit.common.test_neutron.TestNeutronNetworkActions.test_is_smartnic_port_false [0.027629s] ... ok {28} ironic.tests.unit.drivers.test_base.CleanStepDecoratorTestCase.test__validate_argsinfo_arg_required_invalid [0.009064s] ... ok {5} ironic.tests.unit.drivers.modules.test_pxe.PXERamdiskDeployTestCase.test_validate_interface_mismatch [0.080787s] ... ok DELETE: /v1/volume/connectors/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 GOT:Response: 409 Conflict Content-Type: application/json Openstack-Request-Id: req-152f60bd-45f6-4e30-ae27-feca72cf7b13 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Node fake-node is locked by host fake-host, please retry after the current operation is completed.\"}"} {24} ironic.tests.unit.api.controllers.v1.test_volume_connector.TestDelete.test_delete_volume_connector_node_locked [0.106110s] ... ok {28} ironic.tests.unit.drivers.test_base.PassthruDecoratorTestCase.test_passthru_ironicexception [0.021572s] ... ok {17} ironic.tests.unit.common.test_neutron.TestNeutronNetworkActions.test_wait_for_port_status_down [0.030999s] ... ok {5} ironic.tests.unit.drivers.modules.test_snmp.SNMPDeviceDriverTestCase.test_apc_power_state_on [0.016468s] ... ok {28} ironic.tests.unit.drivers.test_cisco.CiscoUCSManagedHardwareTestCase.test_override_with_cimc_interfaces [0.061485s] ... ok {5} ironic.tests.unit.drivers.modules.test_snmp.SNMPDeviceDriverTestCase.test_apc_rackpdu_snmp_objects [0.016894s] ... ok {17} ironic.tests.unit.common.test_neutron.TestUpdatePortAddress.test_update_port_address_with_binding [0.019143s] ... ok {28} ironic.tests.unit.drivers.test_ipmi.IPMIHardwareTestCase.test_default_interfaces [0.062082s] ... ok {5} ironic.tests.unit.drivers.modules.test_snmp.SNMPDeviceDriverTestCase.test_cyberpower_power_reset [0.019056s] ... ok {17} ironic.tests.unit.common.test_pxe_utils.PXEInterfacesTestCase.test_build_pxe_config_options_pxe [0.113771s] ... ok {28} ironic.tests.unit.drivers.test_snmp.SNMPHardwareTestCase.test_default_interfaces [0.063183s] ... ok {5} ironic.tests.unit.drivers.modules.test_snmp.SNMPValidateParametersTestCase.test__parse_driver_info_snmp_v3_priv_badproto [0.015193s] ... ok {17} ironic.tests.unit.common.test_pxe_utils.TFTPImageCacheTestCase.test_with_master_path [0.023442s] ... ok {17} ironic.tests.unit.common.test_pxe_utils.TestPXEUtils.test_create_pxe_config_uefi_elilo [0.123528s] ... ok {28} ironic.tests.unit.objects.test_node.TestConvertToVersion.test_traits_unsupported_missing [0.014959s] ... ok {17} ironic.tests.unit.common.test_pxe_utils.TestPXEUtils.test_default_grub_config [0.058567s] ... ok {5} ironic.tests.unit.drivers.modules.test_snmp.SNMPValidateParametersTestCase.test__parse_driver_info_snmp_v3_priv_default_proto [0.016091s] ... ok {17} ironic.tests.unit.common.test_pxe_utils.TestPXEUtils.test_default_ipxe_timeout_config [0.086478s] ... ok {17} ironic.tests.unit.common.test_pxe_utils.TestPXEUtils.test_get_path_relative_to_tftp_root_with_trailing_slash [0.033981s] ... ok {5} ironic.tests.unit.drivers.modules.ucs.test_management.UcsManagementTestCase.test_get_supported_boot_devices [0.067655s] ... ok {28} ironic.tests.unit.objects.test_node.TestNodeObject.test_list [0.019224s] ... ok {5} ironic.tests.unit.drivers.modules.ucs.test_power.UcsPowerTestCase.test__wait_for_state_change_already_target_state [0.113209s] ... ok {28} ironic.tests.unit.objects.test_node.TestNodeObject.test_save_with_conductor_group_fail [0.021080s] ... ok {17} ironic.tests.unit.common.test_pxe_utils.TestPXEUtils.test_get_pxe_config_file_path [0.035291s] ... ok {5} ironic.tests.unit.drivers.modules.xclarity.test_common.XClarityCommonTestCase.test_get_server_hardware_id [0.022574s] ... ok {28} ironic.tests.unit.objects.test_objects.TestObject.test__from_db_object [0.012200s] ... ok {5} ironic.tests.unit.drivers.test_base.DeployStepTestCase.test_get_and_execute_deploy_steps [0.013702s] ... ok {17} ironic.tests.unit.common.test_utils.GenericUtilsTestCase.test_file_has_content_differ [0.021782s] ... ok {17} ironic.tests.unit.conductor.test_base_manager.StartStopTestCase.test_start_clears_conductor_locks [0.208940s] ... ok {28} ironic.tests.unit.objects.test_portgroup.TestConvertToVersion.test_vif_in_extra_in_internal_info [0.015213s] ... ok {5} ironic.tests.unit.objects.test_bios.TestBIOSSettingObject.test_sync_node_setting_delete_nochange [0.038791s] ... ok {5} ironic.tests.unit.objects.test_fields.TestFlexibleDictField.test_coerce [0.010211s] ... ok {17} ironic.tests.unit.conductor.test_base_manager.StartStopTestCase.test_start_fails_on_no_enabled_interfaces [0.015231s] ... ok {5} ironic.tests.unit.objects.test_node.TestConvertToVersion.test_bios_unsupported_set_no_remove_default [0.015553s] ... ok {28} ironic.tests.unit.objects.test_portgroup.TestPortgroupObject.test_get_by_address [0.018808s] ... ok {5} ironic.tests.unit.objects.test_node.TestConvertToVersion.test_protected_supported_missing [0.016392s] ... ok {17} ironic.tests.unit.conductor.test_manager.BootDeviceTestCase.test_get_boot_device [0.080417s] ... ok {28} ironic.tests.unit.objects.test_trait.TestTraitObject.test_create [0.020027s] ... ok {17} ironic.tests.unit.conductor.test_manager.BootDeviceTestCase.test_set_boot_device [0.080166s] ... ok {28} ironic.tests.unit.objects.test_volume_connector.TestVolumeConnectorObject.test_save_after_refresh [0.048310s] ... ok {28} ironic.tests.unit.objects.test_volume_target.TestVolumeTargetObject.test_refresh [0.022965s] ... ok {5} ironic.tests.unit.objects.test_node.TestNodeObject.test_reserve_node_not_found [0.016862s] ... ok {17} ironic.tests.unit.conductor.test_manager.ChangeNodePowerStateTestCase.test_change_node_power_state_power_on [0.287038s] ... ok {5} ironic.tests.unit.objects.test_node.TestNodeObject.test_save_with_traits [0.025022s] ... ok GET: /v1/portgroups/detail?node=test-node {} GOT:{u'portgroups': [{u'node_uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'uuid': u'6eb02b44-18a3-4659-8c0b-8d2802581ae4', u'links': [{u'href': u'http://localhost/v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4', u'rel': u'self'}, {u'href': u'http://localhost/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4', u'rel': u'bookmark'}], u'extra': {}, u'created_at': u'2019-06-06T07:02:16.622178+00:00', u'updated_at': None, u'properties': {}, u'standalone_ports_supported': True, u'mode': u'active-backup', u'address': u'52:54:00:cf:2d:31', u'internal_info': {u'bar': u'buzz'}, u'ports': [{u'href': u'http://localhost/v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4/ports', u'rel': u'self'}, {u'href': u'http://localhost/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4/ports', u'rel': u'bookmark'}], u'name': u'fooname'}]} {19} ironic.tests.unit.api.controllers.v1.test_portgroup.TestListPortgroups.test_detail_by_node_name_ok [0.060966s] ... ok {5} ironic.tests.unit.objects.test_objects.TestObject.test_obj_constructor [0.010304s] ... ok {17} ironic.tests.unit.conductor.test_manager.CheckTimeoutsTestCase.test_check_rescuewait_timeouts [0.229396s] ... ok {5} ironic.tests.unit.objects.test_objects.TestObjectSerializer.test_deserialize_entity_newer_revision_does_not_backport_zero [0.011640s] ... ok {17} ironic.tests.unit.conductor.test_manager.DoNodeAdoptionTestCase.test__do_adoption_take_over_failure [0.227388s] ... ok {5} ironic.tests.unit.objects.test_port.TestPortObject.test_save [0.020682s] ... ok {17} ironic.tests.unit.conductor.test_manager.DoNodeDeployTestCase.test__old_rest_of_do_node_deploy_console [0.255508s] ... ok {17} ironic.tests.unit.conductor.test_manager.ManagerCheckDeployTimeoutsTestCase.test_timeout [0.022290s] ... ok PATCH: /v1/nodes/373493a7-bafb-452e-ba70-ecf6f9354232 [{'path': '/description', 'value': '1234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678last weed', 'op': 'replace'}] GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-b8949857-04a6-4fc3-b5ce-0b7b9d22215c X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.51 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Cannot update node with description exceeding 4096 characters\"}"} {5} ironic.tests.unit.objects.test_portgroup.TestPortgroupObject.test_list [0.018067s] ... ok {15} ironic.tests.unit.api.controllers.v1.test_node.TestPatch.test_update_description_oversize [0.086402s] ... ok {17} ironic.tests.unit.conductor.test_manager.ManagerSyncPowerStatesTestCase.test_node_in_enroll_on_acquire [0.023234s] ... ok {17} ironic.tests.unit.conductor.test_manager.NmiTestCase.test_inject_nmi [0.065259s] ... ok {17} ironic.tests.unit.conductor.test_manager.NodeInspectHardware.test_inspect_hardware_validate_fail [0.091866s] ... ok {17} ironic.tests.unit.conductor.test_manager.NodeTraitsTestCase.test_remove_node_traits_empty [0.092181s] ... ok PATCH: /v1/ports/52:54:00:cf:2d:31 [{'path': '/extra/foo', 'value': 'bar', 'op': 'add'}] GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-542abdf4-b302-4be5-aa05-09d25ac2a466 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Invalid input for field/attribute port_uuid. Value: '52:54:00:cf:2d:31'. unable to convert to uuid. Error: Expected a UUID but received 52:54:00:cf:2d:31.\"}"} {25} ironic.tests.unit.api.controllers.v1.test_port.TestPatch.test_update_byaddress_not_allowed [0.064218s] ... ok {17} ironic.tests.unit.conductor.test_manager.TestIndirectionApiConductor.test_object_action_on_object [0.022680s] ... ok {17} ironic.tests.unit.conductor.test_manager.UpdateNodeTestCase.test_update_node_with_reset_interfaces [0.706795s] ... ok {17} ironic.tests.unit.conductor.test_manager.UpdatePortTestCase.test_update_port_physnet_validation_failure_conflict [0.095110s] ... ok {17} ironic.tests.unit.conductor.test_manager.VifTestCase.test_vif_attach [0.082885s] ... ok {17} ironic.tests.unit.conductor.test_steps.NodeDeployStepsTestCase.test__get_all_deployment_steps_error [0.067835s] ... ok {17} ironic.tests.unit.conductor.test_task_manager.TaskManagerTestCase.test_shared_lock_get_ports_exception [0.039497s] ... ok GET: /v1/volume/connectors {} GOT:Response: 404 Not Found Content-Type: application/json {"error_message": "{\"code\": 404, \"description\": \"\", \"title\": \"Not Found\"}"} {17} ironic.tests.unit.conductor.test_utils.ErrorHandlersTestCase.test_cleanup_rescuewait_timeout [0.021024s] ... ok {24} ironic.tests.unit.api.controllers.v1.test_volume_connector.TestListVolumeConnectors.test_one_invalid_api_version [0.053754s] ... ok PATCH: /v1/portgroups/pg.1 [{'path': '/name', 'value': 'aa:bb_cc', 'op': 'replace'}] GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-3f647e6a-aace-4e93-a541-9156973aad12 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Portgroup pg.1: Cannot change name to invalid name 'aa:bb_cc'\"}"} {24} ironic.tests.unit.api.test_audit.TestAuditMiddleware.test_enable_audit_request_error [0.031008s] ... ok {17} ironic.tests.unit.conductor.test_utils.ErrorHandlersTestCase.test_power_state_error_handler_no_worker [0.013883s] ... ok {10} ironic.tests.unit.api.controllers.v1.test_portgroup.TestPatch.test_update_invalid_name [0.069494s] ... ok {24} ironic.tests.unit.api.test_healthcheck.TestHealthcheckMiddleware.test_enable [0.034254s] ... ok {17} ironic.tests.unit.conductor.test_utils.FastTrackTestCase.test_is_fast_track [0.087088s] ... ok {24} ironic.tests.unit.api.test_middleware.TestCORSMiddleware.test_invalid_cors_get_request [0.044869s] ... ok POST: /v1/nodes {'instance_uuid': None, 'uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123', 'driver_info': {'none': None, 'int': 123, 'float': 0.1, 'list': [1, 2], 'bool': True, 'str': 'foo', 'dict': {'cat': 'meow'}}, 'extra': {}, 'driver': 'fake-hardware', 'properties': {'memory_mb': '4096', 'cpu_arch': 'x86_64', 'local_gb': '10', 'cpus': '8'}, 'maintenance': False, 'chassis_uuid': 'e74c40e0-d825-11e2-a28f-0800200c9a66', 'instance_info': {'foo': 'bar', 'image_url': 'http://example.com/test_image_url', 'configdrive': 'TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQ='}} GOT:Response: 201 Created Content-Type: application/json Location: http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123 Openstack-Request-Id: req-b67a6ff3-0db3-454a-a3ab-c229b640715b X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"target_power_state": null, "links": [{"href": "http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "rel": "self"}, {"href": "http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "rel": "bookmark"}], "target_provision_state": null, "last_error": null, "updated_at": null, "maintenance_reason": null, "provision_state": null, "uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "console_enabled": false, "extra": {}, "provision_updated_at": null, "maintenance": false, "power_state": null, "driver": "fake-hardware", "reservation": null, "properties": {"memory_mb": "4096", "cpu_arch": "x86_64", "local_gb": "10", "cpus": "8"}, "instance_uuid": null, "driver_info": {"none": null, "int": 123, "float": 0.1, "list": [1, 2], "dict": {"cat": "meow"}, "str": "foo", "bool": true}, "created_at": "2019-06-06T07:02:15.937754+00:00", "ports": [{"href": "http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports", "rel": "self"}, {"href": "http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports", "rel": "bookmark"}], "chassis_uuid": "e74c40e0-d825-11e2-a28f-0800200c9a66", "instance_info": {"foo": "bar", "image_url": "******", "configdrive": "******"}} GET: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123 {} GOT:{u'target_power_state': None, u'links': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'bookmark'}], u'target_provision_state': None, u'last_error': None, u'updated_at': None, u'maintenance_reason': None, u'provision_state': None, u'uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'console_enabled': False, u'extra': {}, u'provision_updated_at': None, u'maintenance': False, u'power_state': None, u'driver': u'fake-hardware', u'reservation': None, u'properties': {u'memory_mb': u'4096', u'cpu_arch': u'x86_64', u'local_gb': u'10', u'cpus': u'8'}, u'instance_uuid': None, u'driver_info': {u'none': None, u'int': 123, u'float': 0.1, u'list': [1, 2], u'bool': True, u'str': u'foo', u'dict': {u'cat': u'meow'}}, u'created_at': u'2019-06-06T07:02:15.937754+00:00', u'ports': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'bookmark'}], u'chassis_uuid': u'e74c40e0-d825-11e2-a28f-0800200c9a66', u'instance_info': {u'foo': u'bar', u'image_url': u'******', u'configdrive': u'******'}} {29} ironic.tests.unit.api.controllers.v1.test_node.TestPost.test_create_node_valid_driver_info [0.152013s] ... ok {17} ironic.tests.unit.conductor.test_utils.NodePowerActionTestCase.test_node_power_action_in_same_state [0.123633s] ... ok {17} ironic.tests.unit.conductor.test_utils.NodePowerActionTestCase.test_node_power_action_in_same_state_db_not_in_sync [0.105232s] ... ok {17} ironic.tests.unit.conductor.test_utils.NodePowerActionTestCase.test_node_power_action_power_reboot [0.146578s] ... ok {17} ironic.tests.unit.conductor.test_utils.ValidatePortPhysnetTestCase.test_validate_port_physnet_1_port_portgroup_w_physnet_create_3 [0.094486s] ... ok {17} ironic.tests.unit.conductor.test_utils.ValidatePortPhysnetTestCase.test_validate_port_physnet_inconsistent_physnets_fix [0.076772s] ... ok POST: /v1/nodes {'instance_uuid': None, 'uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123', 'driver_info': {'fake_password': 'fakepass', 'foo': 'bar'}, 'extra': {}, 'driver': 'fake-hardware', 'properties': {'memory_mb': '4096', 'cpu_arch': 'x86_64', 'local_gb': '10', 'cpus': '8'}, 'maintenance': False, 'owner': 'cowsay', 'chassis_uuid': 'e74c40e0-d825-11e2-a28f-0800200c9a66', 'instance_info': {'foo': 'bar', 'image_url': 'http://example.com/test_image_url', 'configdrive': 'TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQ='}} GOT:Response: 201 Created Content-Type: application/json Location: http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123 Openstack-Request-Id: req-7346006c-2015-4371-b8ed-3b0a02ad1fd5 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"target_power_state": null, "automated_clean": null, "inspect_interface": "fake", "links": [{"href": "http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "rel": "self"}, {"href": "http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "rel": "bookmark"}], "target_provision_state": null, "deploy_step": {}, "storage_interface": "noop", "conductor_group": "", "protected_reason": null, "maintenance_reason": null, "states": [{"href": "http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states", "rel": "self"}, {"href": "http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states", "rel": "bookmark"}], "traits": [], "provision_state": "enroll", "clean_step": {}, "vendor_interface": "fake", "description": null, "uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "console_enabled": false, "extra": {}, "raid_config": {}, "provision_updated_at": null, "power_state": null, "last_error": null, "target_raid_config": {}, "network_interface": "flat", "inspection_started_at": null, "inspection_finished_at": null, "maintenance": false, "conductor": null, "power_interface": "fake", "driver": "fake-hardware", "updated_at": null, "volume": [{"href": "http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/volume", "rel": "self"}, {"href": "http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/volume", "rel": "bookmark"}], "raid_interface": "fake", "rescue_interface": "fake", "boot_interface": "fake", "reservation": null, "management_interface": "fake", "properties": {"memory_mb": "4096", "cpu_arch": "x86_64", "local_gb": "10", "cpus": "8"}, "bios_interface": "fake", "instance_uuid": null, "name": null, "driver_info": {"fake_password": "******", "foo": "bar"}, "resource_class": null, "fault": null, "created_at": "2019-06-06T07:02:15.849509+00:00", "portgroups": [{"href": "http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/portgroups", "rel": "self"}, {"href": "http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/portgroups", "rel": "bookmark"}], "deploy_interface": "fake", "ports": [{"href": "http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports", "rel": "self"}, {"href": "http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports", "rel": "bookmark"}], "console_interface": "fake", "protected": false, "driver_internal_info": {}, "chassis_uuid": "e74c40e0-d825-11e2-a28f-0800200c9a66", "owner": "cowsay", "instance_info": {"foo": "bar", "image_url": "******", "configdrive": "******"}, "allocation_uuid": null} GET: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123 {} GOT:{u'target_power_state': None, u'automated_clean': None, u'inspect_interface': u'fake', u'links': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'bookmark'}], u'target_provision_state': None, u'deploy_step': {}, u'storage_interface': u'noop', u'conductor_group': u'', u'protected_reason': None, u'maintenance_reason': None, u'states': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states', u'rel': u'bookmark'}], u'traits': [], u'provision_state': u'enroll', u'clean_step': {}, u'vendor_interface': u'fake', u'uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'console_enabled': False, u'extra': {}, u'raid_config': {}, u'provision_updated_at': None, u'power_state': None, u'last_error': None, u'target_raid_config': {}, u'maintenance': False, u'network_interface': u'flat', u'inspection_started_at': None, u'inspection_finished_at': None, u'description': None, u'conductor': None, u'driver': u'fake-hardware', u'power_interface': u'fake', u'updated_at': None, u'volume': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/volume', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/volume', u'rel': u'bookmark'}], u'raid_interface': u'fake', u'rescue_interface': u'fake', u'boot_interface': u'fake', u'reservation': None, u'management_interface': u'fake', u'properties': {u'memory_mb': u'4096', u'cpu_arch': u'x86_64', u'local_gb': u'10', u'cpus': u'8'}, u'bios_interface': u'fake', u'instance_uuid': None, u'name': None, u'driver_info': {u'fake_password': u'******', u'foo': u'bar'}, u'resource_class': None, u'fault': None, u'created_at': u'2019-06-06T07:02:15.849509+00:00', u'portgroups': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/portgroups', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/portgroups', u'rel': u'bookmark'}], u'deploy_interface': u'fake', u'instance_info': {u'foo': u'bar', u'image_url': u'******', u'configdrive': u'******'}, u'console_interface': u'fake', u'protected': False, u'driver_internal_info': {}, u'chassis_uuid': u'e74c40e0-d825-11e2-a28f-0800200c9a66', u'owner': u'cowsay', u'ports': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'bookmark'}], u'allocation_uuid': None} {3} ironic.tests.unit.api.controllers.v1.test_node.TestPost.test_create_node_owner [0.149209s] ... ok {17} ironic.tests.unit.db.sqlalchemy.test_migrations.TestWalkVersions.test_migrate_up [0.011773s] ... ok {17} ironic.tests.unit.db.test_allocations.AllocationsTestCase.test_destroy_allocation_with_node [0.054379s] ... ok {17} ironic.tests.unit.db.test_deploy_templates.DbDeployTemplateTestCase.test_update_uuid_not_allowed [0.022335s] ... ok {17} ironic.tests.unit.db.test_node_tags.DbNodeTagTestCase.test_add_node_tag_duplicate [0.039005s] ... ok {17} ironic.tests.unit.db.test_node_tags.DbNodeTagTestCase.test_set_node_tags_node_not_exist [0.038606s] ... ok {17} ironic.tests.unit.db.test_nodes.DbNodeTestCase.test_get_nodeinfo_list_description [0.043075s] ... ok {17} ironic.tests.unit.db.test_nodes.DbNodeTestCase.test_traits_get_destroyed_after_destroying_a_node_by_uuid [0.054995s] ... ok {17} ironic.tests.unit.db.test_volume_connectors.DbVolumeConnectorTestCase.test_get_volume_connector_by_id [0.034246s] ... ok {17} ironic.tests.unit.dhcp.test_neutron.TestNeutron.test__get_port_ip_address_tenant [0.096675s] ... ok {17} ironic.tests.unit.drivers.modules.ansible.test_deploy.TestAnsibleDeploy.test_prepare_with_smartnic_port [0.146694s] ... ok {17} ironic.tests.unit.drivers.modules.cimc.test_common.CIMCHandleLogin.test_cimc_handle_login_exception [0.122639s] ... ok {17} ironic.tests.unit.drivers.modules.cimc.test_power.WaitForStateChangeTestCase.test__wait_for_state_change_imc_exception [0.115298s] ... ok POST: /v1/nodes {'instance_uuid': None, 'description': 'useful stuff', 'driver_info': {'fake_password': 'fakepass', 'foo': 'bar'}, 'extra': {}, 'driver': 'fake-hardware', 'properties': {'memory_mb': '4096', 'cpu_arch': 'x86_64', 'local_gb': '10', 'cpus': '8'}, 'maintenance': False, 'chassis_uuid': 'e74c40e0-d825-11e2-a28f-0800200c9a66', 'instance_info': {'foo': 'bar', 'image_url': 'http://example.com/test_image_url', 'configdrive': 'TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQ='}, 'uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123'} GOT:Response: 201 Created Content-Type: application/json Location: http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123 Openstack-Request-Id: req-377f2edf-92da-43d0-9aec-9ed99d221ad1 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"target_power_state": null, "automated_clean": null, "inspect_interface": "fake", "links": [{"href": "http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "rel": "self"}, {"href": "http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "rel": "bookmark"}], "target_provision_state": null, "deploy_step": {}, "storage_interface": "noop", "conductor_group": "", "protected_reason": null, "maintenance_reason": null, "states": [{"href": "http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states", "rel": "self"}, {"href": "http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states", "rel": "bookmark"}], "traits": [], "provision_state": "enroll", "clean_step": {}, "vendor_interface": "fake", "description": "useful stuff", "uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "console_enabled": false, "extra": {}, "raid_config": {}, "provision_updated_at": null, "power_state": null, "last_error": null, "target_raid_config": {}, "network_interface": "flat", "inspection_started_at": null, "inspection_finished_at": null, "maintenance": false, "conductor": null, "power_interface": "fake", "driver": "fake-hardware", "updated_at": null, "volume": [{"href": "http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/volume", "rel": "self"}, {"href": "http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/volume", "rel": "bookmark"}], "raid_interface": "fake", "rescue_interface": "fake", "boot_interface": "fake", "reservation": null, "management_interface": "fake", "properties": {"memory_mb": "4096", "cpu_arch": "x86_64", "local_gb": "10", "cpus": "8"}, "bios_interface": "fake", "instance_uuid": null, "name": null, "driver_info": {"fake_password": "******", "foo": "bar"}, "resource_class": null, "fault": null, "created_at": "2019-06-06T07:02:15.860047+00:00", "portgroups": [{"href": "http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/portgroups", "rel": "self"}, {"href": "http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/portgroups", "rel": "bookmark"}], "deploy_interface": "fake", "ports": [{"href": "http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports", "rel": "self"}, {"href": "http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports", "rel": "bookmark"}], "console_interface": "fake", "protected": false, "driver_internal_info": {}, "chassis_uuid": "e74c40e0-d825-11e2-a28f-0800200c9a66", "owner": null, "instance_info": {"foo": "bar", "image_url": "******", "configdrive": "******"}, "allocation_uuid": null} GET: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123 {} GOT:{u'target_power_state': None, u'automated_clean': None, u'inspect_interface': u'fake', u'links': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'bookmark'}], u'target_provision_state': None, u'deploy_step': {}, u'storage_interface': u'noop', u'conductor_group': u'', u'protected_reason': None, u'maintenance_reason': None, u'states': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states', u'rel': u'bookmark'}], u'traits': [], u'provision_state': u'enroll', u'clean_step': {}, u'vendor_interface': u'fake', u'uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'console_enabled': False, u'extra': {}, u'raid_config': {}, u'provision_updated_at': None, u'power_state': None, u'last_error': None, u'target_raid_config': {}, u'maintenance': False, u'network_interface': u'flat', u'inspection_started_at': None, u'inspection_finished_at': None, u'description': u'useful stuff', u'conductor': None, u'driver': u'fake-hardware', u'power_interface': u'fake', u'updated_at': None, u'volume': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/volume', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/volume', u'rel': u'bookmark'}], u'raid_interface': u'fake', u'rescue_interface': u'fake', u'boot_interface': u'fake', u'reservation': None, u'management_interface': u'fake', u'properties': {u'memory_mb': u'4096', u'cpu_arch': u'x86_64', u'local_gb': u'10', u'cpus': u'8'}, u'bios_interface': u'fake', u'instance_uuid': None, u'name': None, u'driver_info': {u'fake_password': u'******', u'foo': u'bar'}, u'resource_class': None, u'fault': None, u'created_at': u'2019-06-06T07:02:15.860047+00:00', u'portgroups': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/portgroups', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/portgroups', u'rel': u'bookmark'}], u'deploy_interface': u'fake', u'instance_info': {u'foo': u'bar', u'image_url': u'******', u'configdrive': u'******'}, u'console_interface': u'fake', u'protected': False, u'driver_internal_info': {}, u'chassis_uuid': u'e74c40e0-d825-11e2-a28f-0800200c9a66', u'owner': None, u'ports': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'bookmark'}], u'allocation_uuid': None} {20} ironic.tests.unit.api.controllers.v1.test_node.TestPost.test_create_node_description [0.160031s] ... ok {17} ironic.tests.unit.drivers.modules.drac.test_bios.DracBIOSConfigurationTestCase.test_abandon_config [0.100218s] ... ok {17} ironic.tests.unit.drivers.modules.drac.test_job.DracJobTestCase.test_get_job [0.034507s] ... ok {17} ironic.tests.unit.drivers.modules.drac.test_raid.DracRaidInterfaceTestCase.test_create_configuration_fails_if_disk_already_reserved [0.128825s] ... ok {17} ironic.tests.unit.drivers.modules.ilo.test_boot.IloBootPrivateMethodsTestCase.test__validate_driver_info_MissingParam [0.081703s] ... ok {17} ironic.tests.unit.drivers.modules.ilo.test_boot.IloBootPrivateMethodsTestCase.test__validate_non_glance_partition_image [0.112370s] ... ok {17} ironic.tests.unit.drivers.modules.ilo.test_boot.IloPXEBootTestCase.test_prepare_instance [0.108105s] ... ok {17} ironic.tests.unit.drivers.modules.ilo.test_boot.IloVirtualMediaBootTestCase.test_validate_ramdisk_boot_option_webserver [0.097811s] ... ok {17} ironic.tests.unit.drivers.modules.ilo.test_common.IloCommonMethodsTestCase.test_remove_image_from_swift [0.046458s] ... ok {17} ironic.tests.unit.drivers.modules.ilo.test_common.IloCommonMethodsTestCase.test_update_boot_mode_legacy [0.083057s] ... ok {17} ironic.tests.unit.drivers.modules.ilo.test_common.IloCommonMethodsTestCase.test_update_boot_mode_prop_boot_mode_exist [0.067136s] ... ok {17} ironic.tests.unit.drivers.modules.ilo.test_common.IloCommonMethodsTestCase.test_verify_image_checksum_throws_for_failed_validation [0.023618s] ... ok {17} ironic.tests.unit.drivers.modules.ilo.test_firmware_processor.FirmwareProcessorTestCase.test__validate_sum_components [0.010923s] ... ok {17} ironic.tests.unit.drivers.modules.ilo.test_firmware_processor.FirmwareProcessorTestCase.test_process_fw_on_verifies_checksum_of_downloaded_fw_file [0.089576s] ... ok {17} ironic.tests.unit.drivers.modules.ilo.test_power.IloPowerInternalMethodsTestCase.test__set_power_state_on_ok [0.062882s] ... ok {17} ironic.tests.unit.drivers.modules.ilo.test_power.IloPowerInternalMethodsTestCase.test__set_power_state_soft_power_off_ok [2.074007s] ... ok {17} ironic.tests.unit.drivers.modules.irmc.test_boot.IRMCDeployPrivateMethodsTestCase.test__prepare_boot_iso_file [0.113232s] ... ok {17} ironic.tests.unit.drivers.modules.irmc.test_boot.IRMCPXEBootBasicTestCase.test_prepare_instance_localboot_active [0.116873s] ... ok {17} ironic.tests.unit.drivers.modules.irmc.test_boot.IRMCPXEBootBasicTestCase.test_prepare_ramdisk_force_persistent_boot_device_sloppy_false [0.724282s] ... ok {17} ironic.tests.unit.drivers.modules.irmc.test_boot.IRMCVirtualMediaBootWithVolumeTestCase.test__configure_boot_from_volume_iscsi_no_portal_port [0.205264s] ... ok {17} ironic.tests.unit.drivers.modules.irmc.test_boot.IRMCVirtualMediaBootWithVolumeTestCase.test_clean_up_instance [0.115527s] ... ok PUT: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/management/inject_nmi {} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-a62a9222-967e-4199-91ed-0237c033c792 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.29 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Driver test-driver does not support management (disabled or not implemented).\"}"} {17} ironic.tests.unit.drivers.modules.irmc.test_common.IRMCCommonMethodsTestCase.test_set_secure_boot_mode_fail [0.110850s] ... ok {17} ironic.tests.unit.drivers.modules.irmc.test_common.IRMCValidateParametersTestCase.test_parse_driver_info_empty_snmp_security [0.034589s] ... ok {7} ironic.tests.unit.api.controllers.v1.test_node.TestPut.test_inject_nmi_not_supported [0.088342s] ... ok {17} ironic.tests.unit.drivers.modules.irmc.test_common.IRMCValidateParametersTestCase.test_parse_driver_info_missing_address [0.033372s] ... ok PATCH: /v1/nodes/8278d53f-61bf-4155-9c63-9d92940acb67 [{'path': '/extra/foo', 'value': 'bar', 'op': 'add'}] GOT:Response: 200 OK Content-Type: application/json Openstack-Request-Id: req-32bd049e-f3bc-4d9e-ab22-d4ce4b4c6fa6 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"target_power_state": null, "links": [{"href": "http://localhost/v1/nodes/8278d53f-61bf-4155-9c63-9d92940acb67", "rel": "self"}, {"href": "http://localhost/nodes/8278d53f-61bf-4155-9c63-9d92940acb67", "rel": "bookmark"}], "target_provision_state": "available", "last_error": null, "updated_at": null, "maintenance_reason": null, "provision_state": "deploy failed", "uuid": "8278d53f-61bf-4155-9c63-9d92940acb67", "console_enabled": false, "extra": {}, "provision_updated_at": null, "maintenance": false, "power_state": null, "driver": "fake-hardware", "reservation": null, "properties": {"memory_mb": "4096", "cpu_arch": "x86_64", "local_gb": "10", "cpus": "8"}, "instance_uuid": null, "driver_info": {"fake_password": "******", "foo": "bar"}, "created_at": "2019-06-06T07:02:14.799696+00:00", "ports": [{"href": "http://localhost/v1/nodes/8278d53f-61bf-4155-9c63-9d92940acb67/ports", "rel": "self"}, {"href": "http://localhost/nodes/8278d53f-61bf-4155-9c63-9d92940acb67/ports", "rel": "bookmark"}], "chassis_uuid": null, "instance_info": {"foo": "bar", "image_url": "******", "configdrive": "******"}} PATCH: /v1/nodes/c973aa49-281c-4f48-bb9a-e90e9ff8e03d [{'path': '/extra/foo', 'value': 'bar', 'op': 'add'}] GOT:Response: 200 OK Content-Type: application/json Openstack-Request-Id: req-e8e1f872-a154-4aab-9ce7-306f93e46c64 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"target_power_state": null, "links": [{"href": "http://localhost/v1/nodes/c973aa49-281c-4f48-bb9a-e90e9ff8e03d", "rel": "self"}, {"href": "http://localhost/nodes/c973aa49-281c-4f48-bb9a-e90e9ff8e03d", "rel": "bookmark"}], "target_provision_state": "available", "last_error": null, "updated_at": null, "maintenance_reason": null, "provision_state": "inspecting", "uuid": "c973aa49-281c-4f48-bb9a-e90e9ff8e03d", "console_enabled": false, "extra": {}, "provision_updated_at": null, "maintenance": false, "power_state": null, "driver": "fake-hardware", "reservation": null, "properties": {"memory_mb": "4096", "cpu_arch": "x86_64", "local_gb": "10", "cpus": "8"}, "instance_uuid": null, "driver_info": {"fake_password": "******", "foo": "bar"}, "created_at": "2019-06-06T07:02:14.866477+00:00", "ports": [{"href": "http://localhost/v1/nodes/c973aa49-281c-4f48-bb9a-e90e9ff8e03d/ports", "rel": "self"}, {"href": "http://localhost/nodes/c973aa49-281c-4f48-bb9a-e90e9ff8e03d/ports", "rel": "bookmark"}], "chassis_uuid": null, "instance_info": {"foo": "bar", "image_url": "******", "configdrive": "******"}} PATCH: /v1/nodes/ac7fb4ff-e98d-4245-8d68-00e382b46898 [{'path': '/extra/foo', 'value': 'bar', 'op': 'add'}] GOT:Response: 200 OK Content-Type: application/json Openstack-Request-Id: req-e617d66e-89bf-47db-82c6-bb9e1b229709 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"target_power_state": null, "links": [{"href": "http://localhost/v1/nodes/ac7fb4ff-e98d-4245-8d68-00e382b46898", "rel": "self"}, {"href": "http://localhost/nodes/ac7fb4ff-e98d-4245-8d68-00e382b46898", "rel": "bookmark"}], "target_provision_state": "available", "last_error": null, "updated_at": null, "maintenance_reason": null, "provision_state": "inspect failed", "uuid": "ac7fb4ff-e98d-4245-8d68-00e382b46898", "console_enabled": false, "extra": {}, "provision_updated_at": null, "maintenance": false, "power_state": null, "driver": "fake-hardware", "reservation": null, "properties": {"memory_mb": "4096", "cpu_arch": "x86_64", "local_gb": "10", "cpus": "8"}, "instance_uuid": null, "driver_info": {"fake_password": "******", "foo": "bar"}, "created_at": "2019-06-06T07:02:14.916389+00:00", "ports": [{"href": "http://localhost/v1/nodes/ac7fb4ff-e98d-4245-8d68-00e382b46898/ports", "rel": "self"}, {"href": "http://localhost/nodes/ac7fb4ff-e98d-4245-8d68-00e382b46898/ports", "rel": "bookmark"}], "chassis_uuid": null, "instance_info": {"foo": "bar", "image_url": "******", "configdrive": "******"}} PATCH: /v1/nodes/e7e791ab-1da0-41a1-95a7-bc3d39ccb0cf [{'path': '/extra/foo', 'value': 'bar', 'op': 'add'}] GOT:Response: 200 OK Content-Type: application/json Openstack-Request-Id: req-751fee42-064f-4485-83ac-9956f1304c38 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"target_power_state": null, "links": [{"href": "http://localhost/v1/nodes/e7e791ab-1da0-41a1-95a7-bc3d39ccb0cf", "rel": "self"}, {"href": "http://localhost/nodes/e7e791ab-1da0-41a1-95a7-bc3d39ccb0cf", "rel": "bookmark"}], "target_provision_state": "available", "last_error": null, "updated_at": null, "maintenance_reason": null, "provision_state": "inspecting", "uuid": "e7e791ab-1da0-41a1-95a7-bc3d39ccb0cf", "console_enabled": false, "extra": {}, "provision_updated_at": null, "maintenance": false, "power_state": null, "driver": "fake-hardware", "reservation": null, "properties": {"memory_mb": "4096", "cpu_arch": "x86_64", "local_gb": "10", "cpus": "8"}, "instance_uuid": null, "driver_info": {"fake_password": "******", "foo": "bar"}, "created_at": "2019-06-06T07:02:14.963754+00:00", "ports": [{"href": "http://localhost/v1/nodes/e7e791ab-1da0-41a1-95a7-bc3d39ccb0cf/ports", "rel": "self"}, {"href": "http://localhost/nodes/e7e791ab-1da0-41a1-95a7-bc3d39ccb0cf/ports", "rel": "bookmark"}], "chassis_uuid": null, "instance_info": {"foo": "bar", "image_url": "******", "configdrive": "******"}} PATCH: /v1/nodes/2fded908-0b21-47b2-b16b-9c746d8ae2fc [{'path': '/extra/foo', 'value': 'bar', 'op': 'add'}] GOT:Response: 200 OK Content-Type: application/json Openstack-Request-Id: req-d0312edb-4d99-4d7e-8559-d480ec1b1cc2 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"target_power_state": null, "links": [{"href": "http://localhost/v1/nodes/2fded908-0b21-47b2-b16b-9c746d8ae2fc", "rel": "self"}, {"href": "http://localhost/nodes/2fded908-0b21-47b2-b16b-9c746d8ae2fc", "rel": "bookmark"}], "target_provision_state": "available", "last_error": null, "updated_at": null, "maintenance_reason": null, "provision_state": "clean failed", "uuid": "2fded908-0b21-47b2-b16b-9c746d8ae2fc", "console_enabled": false, "extra": {}, "provision_updated_at": null, "maintenance": false, "power_state": null, "driver": "fake-hardware", "reservation": null, "properties": {"memory_mb": "4096", "cpu_arch": "x86_64", "local_gb": "10", "cpus": "8"}, "instance_uuid": null, "driver_info": {"fake_password": "******", "foo": "bar"}, "created_at": "2019-06-06T07:02:15.009613+00:00", "ports": [{"href": "http://localhost/v1/nodes/2fded908-0b21-47b2-b16b-9c746d8ae2fc/ports", "rel": "self"}, {"href": "http://localhost/nodes/2fded908-0b21-47b2-b16b-9c746d8ae2fc/ports", "rel": "bookmark"}], "chassis_uuid": null, "instance_info": {"foo": "bar", "image_url": "******", "configdrive": "******"}} PATCH: /v1/nodes/e6846e9a-657f-49c9-a27b-f797c8927644 [{'path': '/extra/foo', 'value': 'bar', 'op': 'add'}] GOT:Response: 200 OK Content-Type: application/json Openstack-Request-Id: req-a318ea09-4bcf-417a-8959-69b3940dc135 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"target_power_state": null, "links": [{"href": "http://localhost/v1/nodes/e6846e9a-657f-49c9-a27b-f797c8927644", "rel": "self"}, {"href": "http://localhost/nodes/e6846e9a-657f-49c9-a27b-f797c8927644", "rel": "bookmark"}], "target_provision_state": "available", "last_error": null, "updated_at": null, "maintenance_reason": null, "provision_state": "error", "uuid": "e6846e9a-657f-49c9-a27b-f797c8927644", "console_enabled": false, "extra": {}, "provision_updated_at": null, "maintenance": false, "power_state": null, "driver": "fake-hardware", "reservation": null, "properties": {"memory_mb": "4096", "cpu_arch": "x86_64", "local_gb": "10", "cpus": "8"}, "instance_uuid": null, "driver_info": {"fake_password": "******", "foo": "bar"}, "created_at": "2019-06-06T07:02:15.057317+00:00", "ports": [{"href": "http://localhost/v1/nodes/e6846e9a-657f-49c9-a27b-f797c8927644/ports", "rel": "self"}, {"href": "http://localhost/nodes/e6846e9a-657f-49c9-a27b-f797c8927644/ports", "rel": "bookmark"}], "chassis_uuid": null, "instance_info": {"foo": "bar", "image_url": "******", "configdrive": "******"}} PATCH: /v1/nodes/9cc7ae1f-bb7a-4da3-acdf-af2ebf19a2fa [{'path': '/extra/foo', 'value': 'bar', 'op': 'add'}] GOT:Response: 200 OK Content-Type: application/json Openstack-Request-Id: req-a6304bf1-e5f3-45f6-a1a4-86c3c961953f X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"target_power_state": null, "links": [{"href": "http://localhost/v1/nodes/9cc7ae1f-bb7a-4da3-acdf-af2ebf19a2fa", "rel": "self"}, {"href": "http://localhost/nodes/9cc7ae1f-bb7a-4da3-acdf-af2ebf19a2fa", "rel": "bookmark"}], "target_provision_state": "available", "last_error": null, "updated_at": null, "maintenance_reason": null, "provision_state": "verifying", "uuid": "9cc7ae1f-bb7a-4da3-acdf-af2ebf19a2fa", "console_enabled": false, "extra": {}, "provision_updated_at": null, "maintenance": false, "power_state": null, "driver": "fake-hardware", "reservation": null, "properties": {"memory_mb": "4096", "cpu_arch": "x86_64", "local_gb": "10", "cpus": "8"}, "instance_uuid": null, "driver_info": {"fake_password": "******", "foo": "bar"}, "created_at": "2019-06-06T07:02:15.105187+00:00", "ports": [{"href": "http://localhost/v1/nodes/9cc7ae1f-bb7a-4da3-acdf-af2ebf19a2fa/ports", "rel": "self"}, {"href": "http://localhost/nodes/9cc7ae1f-bb7a-4da3-acdf-af2ebf19a2fa/ports", "rel": "bookmark"}], "chassis_uuid": null, "instance_info": {"foo": "bar", "image_url": "******", "configdrive": "******"}} PATCH: /v1/nodes/60175cda-3451-41bd-8c03-05cee12800b6 [{'path': '/extra/foo', 'value': 'bar', 'op': 'add'}] GOT:Response: 200 OK Content-Type: application/json Openstack-Request-Id: req-ed15f9d3-2499-4b33-9239-6aa13f5a8c0a X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"target_power_state": null, "links": [{"href": "http://localhost/v1/nodes/60175cda-3451-41bd-8c03-05cee12800b6", "rel": "self"}, {"href": "http://localhost/nodes/60175cda-3451-41bd-8c03-05cee12800b6", "rel": "bookmark"}], "target_provision_state": "available", "last_error": null, "updated_at": null, "maintenance_reason": null, "provision_state": "adopt failed", "uuid": "60175cda-3451-41bd-8c03-05cee12800b6", "console_enabled": false, "extra": {}, "provision_updated_at": null, "maintenance": false, "power_state": null, "driver": "fake-hardware", "reservation": null, "properties": {"memory_mb": "4096", "cpu_arch": "x86_64", "local_gb": "10", "cpus": "8"}, "instance_uuid": null, "driver_info": {"fake_password": "******", "foo": "bar"}, "created_at": "2019-06-06T07:02:15.152096+00:00", "ports": [{"href": "http://localhost/v1/nodes/60175cda-3451-41bd-8c03-05cee12800b6/ports", "rel": "self"}, {"href": "http://localhost/nodes/60175cda-3451-41bd-8c03-05cee12800b6/ports", "rel": "bookmark"}], "chassis_uuid": null, "instance_info": {"foo": "bar", "image_url": "******", "configdrive": "******"}} PATCH: /v1/nodes/56a74f57-1c3d-4bed-826e-8801287b0d7d [{'path': '/extra/foo', 'value': 'bar', 'op': 'add'}] GOT:Response: 200 OK Content-Type: application/json Openstack-Request-Id: req-4bb3afb7-2e1e-4e9a-9ae0-ddbd0d54e9c7 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"target_power_state": null, "links": [{"href": "http://localhost/v1/nodes/56a74f57-1c3d-4bed-826e-8801287b0d7d", "rel": "self"}, {"href": "http://localhost/nodes/56a74f57-1c3d-4bed-826e-8801287b0d7d", "rel": "bookmark"}], "target_provision_state": "available", "last_error": null, "updated_at": null, "maintenance_reason": null, "provision_state": "rescue failed", "uuid": "56a74f57-1c3d-4bed-826e-8801287b0d7d", "console_enabled": false, "extra": {}, "provision_updated_at": null, "maintenance": false, "power_state": null, "driver": "fake-hardware", "reservation": null, "properties": {"memory_mb": "4096", "cpu_arch": "x86_64", "local_gb": "10", "cpus": "8"}, "instance_uuid": null, "driver_info": {"fake_password": "******", "foo": "bar"}, "created_at": "2019-06-06T07:02:15.199117+00:00", "ports": [{"href": "http://localhost/v1/nodes/56a74f57-1c3d-4bed-826e-8801287b0d7d/ports", "rel": "self"}, {"href": "http://localhost/nodes/56a74f57-1c3d-4bed-826e-8801287b0d7d/ports", "rel": "bookmark"}], "chassis_uuid": null, "instance_info": {"foo": "bar", "image_url": "******", "configdrive": "******"}} PATCH: /v1/nodes/a466e5b0-4dc0-4c4e-863d-d376b24c9e5e [{'path': '/extra/foo', 'value': 'bar', 'op': 'add'}] GOT:Response: 200 OK Content-Type: application/json Openstack-Request-Id: req-ff43dc55-6690-42ae-b88c-d7339efc0309 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"target_power_state": null, "links": [{"href": "http://localhost/v1/nodes/a466e5b0-4dc0-4c4e-863d-d376b24c9e5e", "rel": "self"}, {"href": "http://localhost/nodes/a466e5b0-4dc0-4c4e-863d-d376b24c9e5e", "rel": "bookmark"}], "target_provision_state": "available", "last_error": null, "updated_at": null, "maintenance_reason": null, "provision_state": "unrescue failed", "uuid": "a466e5b0-4dc0-4c4e-863d-d376b24c9e5e", "console_enabled": false, "extra": {}, "provision_updated_at": null, "maintenance": false, "power_state": null, "driver": "fake-hardware", "reservation": null, "properties": {"memory_mb": "4096", "cpu_arch": "x86_64", "local_gb": "10", "cpus": "8"}, "instance_uuid": null, "driver_info": {"fake_password": "******", "foo": "bar"}, "created_at": "2019-06-06T07:02:15.246086+00:00", "ports": [{"href": "http://localhost/v1/nodes/a466e5b0-4dc0-4c4e-863d-d376b24c9e5e/ports", "rel": "self"}, {"href": "http://localhost/nodes/a466e5b0-4dc0-4c4e-863d-d376b24c9e5e/ports", "rel": "bookmark"}], "chassis_uuid": null, "instance_info": {"foo": "bar", "image_url": "******", "configdrive": "******"}} {17} ironic.tests.unit.drivers.modules.irmc.test_management.IRMCManagementTestCase.test_management_interface_get_supported_boot_devices [0.105756s] ... ok {17} ironic.tests.unit.drivers.modules.irmc.test_power.IRMCPowerInternalMethodsTestCase.test__wait_power_state_timeout [2.171060s] ... ok {13} ironic.tests.unit.api.controllers.v1.test_node.TestPatch.test_update_in_UPDATE_ALLOWED_STATES [0.549663s] ... ok {17} ironic.tests.unit.drivers.modules.irmc.test_raid.IRMCRaidConfigurationInternalMethodsTestCase.test__fail_validate_capacity_with_physical_disk [0.023685s] ... ok {17} ironic.tests.unit.drivers.modules.network.test_common.TestNeutronVifPortIDMixin.test_update_portgroup_nostandalone_ports_vif_pxe_ports [0.106391s] ... ok {17} ironic.tests.unit.drivers.modules.network.test_common.TestVifPortIDMixin.test__get_vif_id_by_port_like_obj_in_extra [0.026596s] ... ok {17} ironic.tests.unit.drivers.modules.network.test_common.TestVifPortIDMixin.test_get_current_vif_internal_info_cleaning [0.094840s] ... ok {17} ironic.tests.unit.drivers.modules.network.test_neutron.NeutronInterfaceTestCase.test_add_rescuing_network [0.077493s] ... ok {17} ironic.tests.unit.drivers.modules.network.test_neutron.NeutronInterfaceTestCase.test_add_rescuing_network_with_sg [0.073606s] ... ok {17} ironic.tests.unit.drivers.modules.network.test_neutron.NeutronInterfaceTestCase.test_configure_tenant_networks_multiple_ports_one_vif_id [0.071367s] ... ok {17} ironic.tests.unit.drivers.modules.redfish.test_utils.RedfishUtilsTestCase.test_ensure_basic_session_caching [0.064347s] ... ok {17} ironic.tests.unit.drivers.modules.storage.test_cinder.CinderInterfaceTestCase.test_detach_volumes_failure_raises_exception [0.075440s] ... ok {17} ironic.tests.unit.drivers.modules.test_agent.AgentRAIDTestCase.test_delete_configuration [0.069498s] ... ok {17} ironic.tests.unit.drivers.modules.test_agent.AgentRescueTestCase.test_agent_rescue_with_smartnic_port [0.090705s] ... ok PATCH: /v1/volume/connectors/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 [{'path': '/extra/non-existent', 'op': 'remove'}] GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-00659904-2fa2-42cf-9c7b-eff0389aad8b X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Couldn't apply patch '{'path': '/extra/non-existent', 'op': 'remove'}'. Reason: can't remove non-existent object 'non-existent'\"}"} {17} ironic.tests.unit.drivers.modules.test_agent_base_vendor.HeartbeatMixinTest.test_heartbeat_deploy_done_raises_with_event [0.084193s] ... ok {8} ironic.tests.unit.api.controllers.v1.test_volume_connector.TestPatch.test_remove_non_existent_property_fail [0.068742s] ... ok PUT: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states/power {'target': 'soft power off', 'timeout': 0} GOT:Response: 406 Not Acceptable Content-Type: application/json Openstack-Request-Id: req-8daab8ee-4047-4e24-b8b9-90ec26af661d X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Request not acceptable.\"}"} {22} ironic.tests.unit.api.controllers.v1.test_node.TestPut.test_power_state_soft_power_off_invalid_timeout_no_ver [0.076379s] ... ok {17} ironic.tests.unit.drivers.modules.test_deploy_utils.ISCSISetupAndHandleErrorsTestCase.test_parent_device_yield [0.011670s] ... ok {17} ironic.tests.unit.drivers.modules.test_deploy_utils.ParseInstanceInfoCapabilitiesTestCase.test_get_boot_mode_for_deploy_using_instance_info [0.009890s] ... ok {17} ironic.tests.unit.drivers.modules.test_deploy_utils.ParseInstanceInfoCapabilitiesTestCase.test_validate_trusted_boot_capability [0.009798s] ... ok {17} ironic.tests.unit.drivers.modules.test_deploy_utils.PhysicalWorkTestCase.test_deploy_partition_image_with_cpu_arch [0.028702s] ... ok POST: /v1/ports {'node_uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123', 'uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c781', 'portgroup_uuid': '6eb02b44-18a3-4659-8c0b-8d2802581ae4', 'address': '52:54:00:cf:2d:31'} GOT:Response: 201 Created Content-Type: application/json Location: http://localhost/v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 Openstack-Request-Id: req-a73053de-8659-4024-84cf-7e04a914b203 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"node_uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "links": [{"href": "http://localhost/v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "rel": "self"}, {"href": "http://localhost/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "rel": "bookmark"}], "extra": {}, "created_at": "2019-06-06T07:02:16.344694+00:00", "updated_at": null, "address": "52:54:00:cf:2d:31"} {1} ironic.tests.unit.api.controllers.v1.test_port.TestPost.test_create_port_min_api_version [0.077341s] ... ok {17} ironic.tests.unit.drivers.modules.test_deploy_utils.ValidateImagePropertiesTestCase.test_validate_image_properties_invalid_image_href [0.014020s] ... ok PATCH: /v1/nodes/f53b23e5-793b-47cb-90ec-15dfc2b9bb2d [{'path': '/resource_class', 'value': 'fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff', 'op': 'add'}] GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-c0f4f9d6-6a0a-4605-8d11-06865e4a3681 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.21 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Invalid input for field/attribute resource_class. Value: 'fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff'. Value should have a maximum character requirement of 80\"}"} {14} ironic.tests.unit.api.controllers.v1.test_node.TestPatch.test_update_resource_class_too_long [0.102717s] ... ok {17} ironic.tests.unit.drivers.modules.test_image_cache.TestImageCacheCleanUp.test_cleanup_ordering [0.009632s] ... ok {17} ironic.tests.unit.drivers.modules.test_image_cache.TestImageCacheCleanUp.test_temp_images_not_cleaned [0.013690s] ... ok {17} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolCheckOptionSupportedTestCase.test_check_timing_no_ipmitool [0.012606s] ... ok {17} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolDriverTestCase.test_vendor_passthru_call_bmc_reset_warm [0.718483s] ... ok {17} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolPrivateMethodTestCase.test__exec_ipmitool_IPMI_version_1_5 [0.029316s] ... ok {17} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolPrivateMethodTestCase.test__parse_driver_info_with_dual_bridging_not_supported [0.028548s] ... ok {17} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolPrivateMethodTestCase.test__parse_driver_info_with_single_bridging_missing_parameters [0.027555s] ... ok {17} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolPrivateMethodTestCase.test_exec_ipmitool_exception_retries_exceeded_out_of_space [0.038646s] ... ok {17} ironic.tests.unit.drivers.modules.test_ipxe.iPXEBootTestCase.test_prepare_ramdisk_ipxe_with_copy_file_different [0.133457s] ... ok {17} ironic.tests.unit.drivers.modules.test_ipxe.iPXEBootTestCase.test_validate_fail_missing_image_source [0.054586s] ... ok {17} ironic.tests.unit.drivers.modules.test_iscsi_deploy.ISCSIDeployTestCase.test_prepare_node_deploying [0.104353s] ... ok {17} ironic.tests.unit.drivers.modules.test_iscsi_deploy.IscsiDeployMethodsTestCase.test_get_deploy_info_not_specified [0.021485s] ... ok {17} ironic.tests.unit.drivers.modules.test_pxe.PXEBootTestCase.test_prepare_ramdisk_force_persistent_boot_device_always [0.124109s] ... ok GET: /v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4.json {} GOT:{u'node_uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'uuid': u'6eb02b44-18a3-4659-8c0b-8d2802581ae4', u'links': [{u'href': u'http://localhost/v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4', u'rel': u'self'}, {u'href': u'http://localhost/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4', u'rel': u'bookmark'}], u'extra': {}, u'created_at': u'2019-06-06T07:02:16.530170+00:00', u'updated_at': None, u'properties': {}, u'standalone_ports_supported': True, u'mode': u'active-backup', u'address': u'52:54:00:cf:2d:31', u'internal_info': {u'bar': u'buzz'}, u'ports': [{u'href': u'http://localhost/v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4/ports', u'rel': u'self'}, {u'href': u'http://localhost/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4/ports', u'rel': u'bookmark'}], u'name': u'fooname'} {6} ironic.tests.unit.api.controllers.v1.test_portgroup.TestListPortgroups.test_get_one_with_json [0.083201s] ... ok {17} ironic.tests.unit.drivers.modules.test_pxe.PXERamdiskDeployTestCase.test_prepare_fixes_and_logs_boot_option_warning [0.124166s] ... ok {17} ironic.tests.unit.drivers.modules.test_snmp.SNMPClientTestCase.test_set [0.031000s] ... ok {17} ironic.tests.unit.drivers.modules.test_snmp.SNMPDeviceDriverTestCase.test_cyberpower_snmp_objects [0.016438s] ... ok {17} ironic.tests.unit.drivers.modules.test_snmp.SNMPDeviceDriverTestCase.test_teltronix_power_off [0.017493s] ... ok {17} ironic.tests.unit.drivers.modules.test_snmp.SNMPDriverTestCase.test_set_power_state_off [0.064545s] ... ok {17} ironic.tests.unit.drivers.modules.ucs.test_power.UcsPowerTestCase.test_set_power_state_fail [0.148079s] ... ok {17} ironic.tests.unit.drivers.test_base.DeployStepDecoratorTestCase.test_deploy_step_bad_argsinfo [0.011755s] ... ok {17} ironic.tests.unit.drivers.test_drac.IDRACHardwareTestCase.test_default_interfaces [0.063161s] ... ok {17} ironic.tests.unit.drivers.test_ipmi.IPMIHardwareTestCase.test_override_with_shellinabox [0.058826s] ... ok {17} ironic.tests.unit.objects.test_conductor.TestConductorObject.test_register_with_invalid_group [0.013483s] ... ok {17} ironic.tests.unit.objects.test_fields.TestStringFieldThatAcceptsCallable.test_coerce_default_as_function [0.009279s] ... ok {17} ironic.tests.unit.objects.test_node.TestConvertToVersion.test_description_unsupported_missing [0.013714s] ... ok {17} ironic.tests.unit.objects.test_node.TestConvertToVersion.test_protected_supported_set [0.017003s] ... ok {17} ironic.tests.unit.objects.test_node.TestNodeObject.test_save [0.019962s] ... ok {17} ironic.tests.unit.objects.test_notification.TestNotificationBase.test_no_emit_level_too_low [0.019283s] ... ok {17} ironic.tests.unit.objects.test_objects.TestObject.test_as_dict [0.008907s] ... ok PATCH: /v1/volume/targets/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 [{'path': '/extra/foo', 'value': 'bar', 'op': 'add'}] GOT:Response: 200 OK Content-Type: application/json Openstack-Request-Id: req-ab0c40df-1eac-44d6-b061-7cfe09dc6fd2 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"boot_index": 0, "uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "links": [{"href": "http://localhost/v1/volume/targets/1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "rel": "self"}, {"href": "http://localhost/volume/targets/1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "rel": "bookmark"}], "extra": {"foo": "bar"}, "created_at": "2019-06-06T07:02:17.245802+00:00", "updated_at": null, "volume_type": "iscsi", "node_uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "volume_id": "12345678", "properties": {"target_iqn": "iqn.foo"}} {23} ironic.tests.unit.api.controllers.v1.test_volume_target.TestPatch.test_update_byid [0.117852s] ... ok {23} ironic.tests.unit.api.test_audit.TestAuditMiddleware.test_enable_audit_request [0.034355s] ... ok {17} ironic.tests.unit.objects.test_objects.TestObject.test_get_updates [0.009094s] ... ok {17} ironic.tests.unit.objects.test_objects.TestObjectSerializer.test__process_object_conductor [0.010122s] ... ok {23} ironic.tests.unit.cmd.test_dbsync.OnlineMigrationTestCase.test_check_obj_versions_bad [0.032748s] ... ok {17} ironic.tests.unit.objects.test_objects.TestObjectSerializer.test_deserialize_entity_pin_ignored [0.010352s] ... ok {23} ironic.tests.unit.common.test_cinder.TestCinderActions.test_attach_volumes_client_init_failure [0.121530s] ... ok {17} ironic.tests.unit.objects.test_port.TestConvertToVersion.test_vif_in_extra_not_in_extra [0.012887s] ... ok {23} ironic.tests.unit.common.test_cinder.TestCinderClient.test_get_client [0.039012s] ... ok {23} ironic.tests.unit.common.test_driver_factory.DriverLoadTestCase.test_driver_empty_entry [0.027341s] ... ok {23} ironic.tests.unit.common.test_driver_factory.DriverLoadTestCase.test_no_driver_load_error_if_driver_disabled [0.026366s] ... ok {23} ironic.tests.unit.common.test_driver_factory.HardwareTypeLoadTestCase.test_build_driver_for_task_configured_defaults [0.097844s] ... ok {23} ironic.tests.unit.common.test_driver_factory.HardwareTypeLoadTestCase.test_none_storage_interface [0.035504s] ... ok {23} ironic.tests.unit.common.test_glance_service.TestGlanceSwiftTempURL.test__validate_temp_url_config [0.018044s] ... ok {23} ironic.tests.unit.common.test_image_service.ServiceGetterTestCase.test_get_file_image_service [0.017107s] ... ok {23} ironic.tests.unit.common.test_images.FsImageTestCase.test_create_vfat_image_always_umount [0.031931s] ... ok {23} ironic.tests.unit.common.test_images.FsImageTestCase.test_get_temp_url_for_glance_image [0.066830s] ... ok {23} ironic.tests.unit.common.test_network.TestNetwork.test_get_node_vif_ids_two_ports_extra [0.108474s] ... ok {23} ironic.tests.unit.common.test_neutron.TestNeutronNetworkActions.test_add_network_no_pxe_enabled_ports [0.116218s] ... ok {23} ironic.tests.unit.common.test_neutron.TestNeutronNetworkActions.test_remove_ports_from_network_not_all_pxe_enabled [0.116014s] ... ok {23} ironic.tests.unit.common.test_policy.PolicyTestCase.test_authorize_passes [0.025896s] ... ok {23} ironic.tests.unit.common.test_pxe_utils.PXEInterfacesTestCase.test_build_pxe_config_options_ipxe_swift_wdi [0.160829s] ... ok {23} ironic.tests.unit.common.test_pxe_utils.PXEInterfacesTestCase.test_get_instance_image_info_whole_disk_image [0.082536s] ... ok {23} ironic.tests.unit.common.test_pxe_utils.PXEInterfacesTestCase.test_parse_driver_info_missing_deploy_ramdisk [0.033637s] ... ok {23} ironic.tests.unit.common.test_pxe_utils.TestPXEUtils.test_clean_up_pxe_config [0.113642s] ... ok {23} ironic.tests.unit.common.test_pxe_utils.TestPXEUtils.test_default_ipxe_config [0.091556s] ... ok PUT: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states/provision {'target': 'abort'} GOT:Response: 406 Not Acceptable Content-Type: application/json Openstack-Request-Id: req-858d5990-e941-4cc3-86b6-73b9827a12b4 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.40 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Request not acceptable.\"}"} {23} ironic.tests.unit.common.test_release_mappings.ReleaseMappingsTestCase.test_object_names_are_registered [0.021054s] ... ok {3} ironic.tests.unit.api.controllers.v1.test_node.TestPut.test_inspect_abort_raises_before_1_41 [0.102342s] ... ok {23} ironic.tests.unit.common.test_rpc_service.TestRPCService.test_start [0.072071s] ... ok GET: / {} GOT:{u'default_version': {u'status': u'CURRENT', u'min_version': u'1.1', u'version': u'1.56', u'id': u'v1', u'links': [{u'href': u'http://localhost/v1/', u'rel': u'self'}]}, u'description': u'Ironic is an OpenStack project which aims to provision baremetal machines.', u'name': u'OpenStack Ironic API', u'versions': [{u'status': u'CURRENT', u'min_version': u'1.1', u'version': u'1.56', u'id': u'v1', u'links': [{u'href': u'http://localhost/v1/', u'rel': u'self'}]}]} {23} ironic.tests.unit.common.test_utils.GenericUtilsTestCase.test_warn_about_deprecated_extra_vif_port_id [0.034301s] ... ok {24} ironic.tests.unit.api.test_root.TestRoot.test_get_root [0.044785s] ... ok {23} ironic.tests.unit.conductor.test_allocations.DoAllocateTestCase.test_success [0.144912s] ... ok {23} ironic.tests.unit.conductor.test_manager.DestroyVolumeConnectorTestCase.test_destroy_volume_connector_node_power_on [0.078419s] ... ok {23} ironic.tests.unit.conductor.test_manager.DoNextDeployStepTestCase.test__do_next_deploy_step_last_step_done_with_console [0.441829s] ... ok {23} ironic.tests.unit.conductor.test_manager.DoNodeDeployTestCase.test__do_node_deploy_ok_2 [0.459516s] ... ok {23} ironic.tests.unit.conductor.test_manager.DoNodeVerifyTestCase.test__do_node_verify_get_state_fails [0.287793s] ... ok {23} ironic.tests.unit.conductor.test_manager.ManagerCheckOrphanNodesTestCase.test__check_orphan_nodes_cleaning [0.309772s] ... ok {23} ironic.tests.unit.conductor.test_manager.ManagerCheckOrphanNodesTestCase.test__check_orphan_nodes_release_node_not_locked [0.278779s] ... ok {23} ironic.tests.unit.conductor.test_manager.ManagerDoSyncPowerStateTestCase.test_retry_then_success [0.025657s] ... ok {23} ironic.tests.unit.conductor.test_manager.ManagerDoSyncPowerStateTestCase.test_state_not_set [0.038760s] ... ok {23} ironic.tests.unit.conductor.test_manager.ManagerSyncPowerStatesTestCase.test_node_not_mapped [0.019181s] ... ok {23} ironic.tests.unit.conductor.test_manager.NodeTraitsTestCase.test_remove_node_traits [0.128017s] ... ok {23} ironic.tests.unit.conductor.test_manager.UpdateNodeTestCase.test_update_node_already_locked [0.092087s] ... ok Data migrations have not completed. Please re-run. {24} ironic.tests.unit.cmd.test_dbsync.OnlineMigrationTestCase.test__run_online_data_migrations_notdone [0.026859s] ... ok {23} ironic.tests.unit.conductor.test_manager.UpdateVolumeTargetTestCase.test_update_volume_target_not_found [0.067408s] ... ok {23} ironic.tests.unit.conductor.test_manager.VendorPassthruTestCase.test_vendor_passthru_shared_lock [0.186372s] ... ok {24} ironic.tests.unit.common.test_cinder.TestCinderActions.test_attach_volumes_initialize_connection_failure [0.132849s] ... ok {23} ironic.tests.unit.conductor.test_manager.VifTestCase.test_vif_detach_raises_network_error [0.062314s] ... ok {24} ironic.tests.unit.common.test_cinder.TestCinderActions.test_detach_volumes_detach_failure_errors_not_allowed [0.133457s] ... ok {23} ironic.tests.unit.conductor.test_manager.VifTestCase.test_vif_detach_validate_error [0.073464s] ... ok {24} ironic.tests.unit.common.test_cinder.TestCinderActions.test_detach_volumes_one_detached [0.129333s] ... ok {23} ironic.tests.unit.conductor.test_notification_utils.TestNotificationUtils.test__emit_conductor_node_notification_known_notify_exc [0.026252s] ... ok {24} ironic.tests.unit.common.test_driver_factory.HardwareTypeLoadTestCase.test_enabled_supported_interfaces_non_default [0.034465s] ... ok POST: /v1/portgroups {'node_uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123', 'uuid': '6eb02b44-18a3-4659-8c0b-8d2802581ae4', 'extra': {}, 'standalone_ports_supported': True, 'address': '52-54-00-cf-2d-31', 'name': 'fooname'} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-a978ffa9-22d2-4ef2-ab31-0138e3f498b0 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Expected a MAC address but received 52-54-00-cf-2d-31.\"}"} {23} ironic.tests.unit.conductor.test_rpcapi.RPCAPITestCase.test_get_topic_for_known_driver [0.034271s] ... ok {10} ironic.tests.unit.api.controllers.v1.test_portgroup.TestPost.test_create_portgroup_with_hyphens_delimiter [0.058685s] ... ok {24} ironic.tests.unit.common.test_driver_factory.StorageInterfaceFactoryTestCase.test_build_interface_for_task [0.105515s] ... ok {23} ironic.tests.unit.conductor.test_rpcapi.RPCAPITestCase.test_vif_list [0.016996s] ... ok {23} ironic.tests.unit.conductor.test_utils.ErrorHandlersTestCase.test_abort_on_conductor_take_over_cleaning [0.012626s] ... ok {24} ironic.tests.unit.common.test_glance_service.TestGlanceImageService.test_show_raises_when_no_authtoken_in_the_context [0.016702s] ... ok {23} ironic.tests.unit.conductor.test_utils.ValidatePortPhysnetTestCase.test_validate_port_physnet_empty_portgroup_create_2 [0.067330s] ... ok {24} ironic.tests.unit.common.test_glance_service.TestGlanceSwiftTempURL.test_swift_temp_url_endpoint_with_suffix [0.026351s] ... ok {24} ironic.tests.unit.common.test_glance_service.TestGlanceSwiftTempURL.test_swift_temp_url_no_key_detected [0.044663s] ... ok {23} ironic.tests.unit.db.test_api.UpgradingTestCase.test_check_versions [0.485741s] ... ok {24} ironic.tests.unit.common.test_image_service.HttpImageServiceTestCase.test_show_no_content_length [0.018661s] ... ok {23} ironic.tests.unit.db.test_node_traits.DbNodeTraitTestCase.test_add_node_trait_node_not_exist [0.038543s] ... ok {24} ironic.tests.unit.common.test_neutron.TestNeutronNetworkActions.test_remove_neutron_ports_delete_fail [0.111695s] ... ok {23} ironic.tests.unit.db.test_node_traits.DbNodeTraitTestCase.test_delete_node_trait [0.084866s] ... ok {24} ironic.tests.unit.common.test_neutron.TestNeutronNetworkActions.test_wait_for_host_agent_down_target_state_up [0.060362s] ... ok PATCH: /v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 [{'path': '/extra/foo', 'value': 'bar', 'op': 'add'}] GOT:Response: 409 Conflict Content-Type: application/json Openstack-Request-Id: req-6fdb3732-2ee7-4069-8587-2fc0a281b588 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.39 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Cannot update port \\\"1be26c0b-03f2-4d2e-ae87-c02d7f33c781\\\" on \\\"1be26c0b-03f2-4d2e-ae87-c02d7f33c123\\\" while it is in state \\\"inspecting\\\".\"}"} {23} ironic.tests.unit.db.test_node_traits.DbNodeTraitTestCase.test_set_node_traits_over_limit [0.035002s] ... ok {25} ironic.tests.unit.api.controllers.v1.test_port.TestPatch.test_update_in_inspecting_not_allowed [0.128371s] ... ok {24} ironic.tests.unit.common.test_neutron.TestNeutronNetworkActions.test_wait_for_host_agent_up_target_state_down [0.064312s] ... ok {23} ironic.tests.unit.db.test_ports.DbPortTestCase.test_update_port_uuid [0.029779s] ... ok {25} ironic.tests.unit.api.controllers.v1.test_port.TestPortsController__CheckAllowedPortFields.test__check_allowed_port_fields_allow [0.023913s] ... ok {24} ironic.tests.unit.common.test_pxe_utils.PXEInterfacesTestCase.test__cache_tftp_images_master_path [0.077221s] ... ok {23} ironic.tests.unit.db.test_volume_targets.DbVolumeTargetTestCase.test_get_volume_target_by_uuid [0.032152s] ... ok {24} ironic.tests.unit.common.test_pxe_utils.PXEInterfacesTestCase.test__get_deploy_image_info [0.028630s] ... ok {23} ironic.tests.unit.db.test_volume_targets.DbVolumeTargetTestCase.test_get_volume_target_list [0.052597s] ... ok {24} ironic.tests.unit.common.test_pxe_utils.PXEInterfacesTestCase.test_build_pxe_config_options_ipxe_and_iscsi_boot_from_lists [0.139310s] ... ok {23} ironic.tests.unit.drivers.modules.ansible.test_deploy.TestAnsibleDeploy.test_continue_deploy [0.139849s] ... ok {24} ironic.tests.unit.common.test_pxe_utils.PXEInterfacesTestCase.test_build_pxe_config_options_ipxe_rescue_swift [0.140458s] ... ok {23} ironic.tests.unit.drivers.modules.ansible.test_deploy.TestAnsibleMethods.test__get_python_interpreter [0.034660s] ... ok {24} ironic.tests.unit.common.test_pxe_utils.TestPXEUtils.test_default_elilo_config [0.035857s] ... ok {23} ironic.tests.unit.drivers.modules.cimc.test_power.PowerTestCase.test_get_power_state_fail [0.112077s] ... ok {24} ironic.tests.unit.common.test_pxe_utils.TestPXEUtils.test_default_ipxe_boot_from_volume_config [0.057775s] ... ok {23} ironic.tests.unit.drivers.modules.drac.test_common.DracCommonMethodsTestCase.test_parse_driver_info_missing_host [0.034076s] ... ok {24} ironic.tests.unit.common.test_pxe_utils.TestPXEUtils.test_default_ipxe_boot_script [0.025545s] ... ok {23} ironic.tests.unit.drivers.modules.drac.test_common.DracCommonMethodsTestCase.test_parse_driver_info_missing_password [0.035254s] ... ok {24} ironic.tests.unit.common.test_pxe_utils.TestPXEUtils.test_dhcp_options_for_instance_ipxe_bios [0.068975s] ... ok {23} ironic.tests.unit.drivers.modules.drac.test_management.DracManagementInternalMethodsTestCase.test_set_boot_device [0.051351s] ... ok {24} ironic.tests.unit.common.test_raid.ValidateRaidConfigurationTestCase.test_validate_configuration_invalid_share_physical_disks [0.019130s] ... ok PATCH: /v1/nodes/ec96afee-fe73-4cb8-afe4-c18b98b507ed [{'path': '/owner', 'value': 'meow', 'op': 'replace'}] GOT:Response: 200 OK Content-Type: application/json Openstack-Request-Id: req-2e12d34e-94f6-4f28-b8b7-4427a66bebaf X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.50 {"target_power_state": null, "automated_clean": null, "inspect_interface": null, "links": [{"href": "http://localhost/v1/nodes/ec96afee-fe73-4cb8-afe4-c18b98b507ed", "rel": "self"}, {"href": "http://localhost/nodes/ec96afee-fe73-4cb8-afe4-c18b98b507ed", "rel": "bookmark"}], "target_provision_state": null, "deploy_step": {}, "storage_interface": null, "conductor_group": "", "protected_reason": null, "maintenance_reason": null, "states": [{"href": "http://localhost/v1/nodes/ec96afee-fe73-4cb8-afe4-c18b98b507ed/states", "rel": "self"}, {"href": "http://localhost/nodes/ec96afee-fe73-4cb8-afe4-c18b98b507ed/states", "rel": "bookmark"}], "traits": [], "provision_state": "available", "clean_step": {}, "vendor_interface": null, "uuid": "ec96afee-fe73-4cb8-afe4-c18b98b507ed", "console_enabled": false, "extra": {}, "raid_config": {}, "provision_updated_at": null, "power_state": null, "last_error": null, "target_raid_config": {}, "network_interface": null, "inspection_started_at": null, "inspection_finished_at": null, "maintenance": false, "conductor": null, "power_interface": null, "driver": "fake-hardware", "updated_at": null, "volume": [{"href": "http://localhost/v1/nodes/ec96afee-fe73-4cb8-afe4-c18b98b507ed/volume", "rel": "self"}, {"href": "http://localhost/nodes/ec96afee-fe73-4cb8-afe4-c18b98b507ed/volume", "rel": "bookmark"}], "raid_interface": null, "rescue_interface": null, "boot_interface": null, "reservation": null, "management_interface": null, "properties": {"memory_mb": "4096", "cpu_arch": "x86_64", "local_gb": "10", "cpus": "8"}, "bios_interface": null, "instance_uuid": null, "name": null, "driver_info": {"fake_password": "******", "foo": "bar"}, "resource_class": null, "fault": null, "created_at": "2019-06-06T07:02:16.675769+00:00", "portgroups": [{"href": "http://localhost/v1/nodes/ec96afee-fe73-4cb8-afe4-c18b98b507ed/portgroups", "rel": "self"}, {"href": "http://localhost/nodes/ec96afee-fe73-4cb8-afe4-c18b98b507ed/portgroups", "rel": "bookmark"}], "deploy_interface": null, "ports": [{"href": "http://localhost/v1/nodes/ec96afee-fe73-4cb8-afe4-c18b98b507ed/ports", "rel": "self"}, {"href": "http://localhost/nodes/ec96afee-fe73-4cb8-afe4-c18b98b507ed/ports", "rel": "bookmark"}], "console_interface": null, "protected": false, "driver_internal_info": {"private_state": "secret value"}, "chassis_uuid": null, "owner": null, "instance_info": {"foo": "bar", "image_url": "******", "configdrive": "******"}} {23} ironic.tests.unit.drivers.modules.drac.test_management.DracManagementTestCase.test_set_boot_device_fail [0.100200s] ... ok {24} ironic.tests.unit.common.test_raid.ValidateRaidConfigurationTestCase.test_validate_configuration_no_size_gb [0.018116s] ... ok {16} ironic.tests.unit.api.controllers.v1.test_node.TestPatch.test_update_owner [0.128739s] ... ok GET: /v1/portgroups/detail?sort_key=mode {} GOT:{u'portgroups': [{u'node_uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'uuid': u'05dd19ea-12e2-4de7-8fbb-222174d608b3', u'links': [{u'href': u'http://localhost/v1/portgroups/05dd19ea-12e2-4de7-8fbb-222174d608b3', u'rel': u'self'}, {u'href': u'http://localhost/portgroups/05dd19ea-12e2-4de7-8fbb-222174d608b3', u'rel': u'bookmark'}], u'extra': {}, u'created_at': u'2019-06-06T07:02:16.784937+00:00', u'updated_at': None, u'properties': {}, u'standalone_ports_supported': True, u'mode': u'mode_1', u'address': u'52:54:00:cf:2d:31', u'internal_info': {u'bar': u'buzz'}, u'ports': [{u'href': u'http://localhost/v1/portgroups/05dd19ea-12e2-4de7-8fbb-222174d608b3/ports', u'rel': u'self'}, {u'href': u'http://localhost/portgroups/05dd19ea-12e2-4de7-8fbb-222174d608b3/ports', u'rel': u'bookmark'}], u'name': u'portgroup1'}, {u'node_uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'uuid': u'64748204-92cd-4a10-a593-3bb48cfa8961', u'links': [{u'href': u'http://localhost/v1/portgroups/64748204-92cd-4a10-a593-3bb48cfa8961', u'rel': u'self'}, {u'href': u'http://localhost/portgroups/64748204-92cd-4a10-a593-3bb48cfa8961', u'rel': u'bookmark'}], u'extra': {}, u'created_at': u'2019-06-06T07:02:16.780993+00:00', u'updated_at': None, u'properties': {}, u'standalone_ports_supported': True, u'mode': u'mode_2', u'address': u'52:54:00:cf:2d:32', u'internal_info': {u'bar': u'buzz'}, u'ports': [{u'href': u'http://localhost/v1/portgroups/64748204-92cd-4a10-a593-3bb48cfa8961/ports', u'rel': u'self'}, {u'href': u'http://localhost/portgroups/64748204-92cd-4a10-a593-3bb48cfa8961/ports', u'rel': u'bookmark'}], u'name': u'portgroup2'}, {u'node_uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'uuid': u'7ea45923-8fe4-4554-9064-ece0d9c0f538', u'links': [{u'href': u'http://localhost/v1/portgroups/7ea45923-8fe4-4554-9064-ece0d9c0f538', u'rel': u'self'}, {u'href': u'http://localhost/portgroups/7ea45923-8fe4-4554-9064-ece0d9c0f538', u'rel': u'bookmark'}], u'extra': {}, u'created_at': u'2019-06-06T07:02:16.776921+00:00', u'updated_at': None, u'properties': {}, u'standalone_ports_supported': True, u'mode': u'mode_3', u'address': u'52:54:00:cf:2d:33', u'internal_info': {u'bar': u'buzz'}, u'ports': [{u'href': u'http://localhost/v1/portgroups/7ea45923-8fe4-4554-9064-ece0d9c0f538/ports', u'rel': u'self'}, {u'href': u'http://localhost/portgroups/7ea45923-8fe4-4554-9064-ece0d9c0f538/ports', u'rel': u'bookmark'}], u'name': u'portgroup3'}]} {23} ironic.tests.unit.drivers.modules.drac.test_raid.DracManageVirtualDisksTestCase.test_create_virtual_disk [0.023213s] ... ok {11} ironic.tests.unit.api.controllers.v1.test_portgroup.TestListPortgroups.test_detail_sort_key_allowed [0.123807s] ... ok {24} ironic.tests.unit.common.test_rpc.TestUtils.test_get_sensors_notifier_no_publisher_id [0.011311s] ... ok {23} ironic.tests.unit.drivers.modules.drac.test_raid.DracQueryRaidConfigurationTestCase.test_list_virtual_disks [0.039343s] ... ok {24} ironic.tests.unit.conductor.test_manager.CheckTimeoutsTestCase.test__check_deploy_timeouts [0.352061s] ... ok {23} ironic.tests.unit.drivers.modules.ilo.test_boot.IloVirtualMediaBootTestCase.test_prepare_ramdisk_rescue_glance_image [0.176341s] ... ok {24} ironic.tests.unit.conductor.test_manager.DoNextDeployStepTestCase.test__get_node_next_deploy_steps_unset_deploy_step [0.069998s] ... ok {24} ironic.tests.unit.conductor.test_manager.DoNodeAdoptionTestCase.test_heartbeat [0.317841s] ... ok {23} ironic.tests.unit.drivers.modules.ilo.test_common.IloCommonMethodsTestCase.test_attach_vmedia [0.038579s] ... ok {24} ironic.tests.unit.conductor.test_manager.DoNodeCleanTestCase.test__do_next_clean_step_automated_fail_in_tear_down_cleaning [0.334973s] ... ok PUT: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states/power {'target': 'soft power off', 'timeout': 2} GOT:Response: 406 Not Acceptable Content-Type: application/json Openstack-Request-Id: req-88e7b399-3e7c-4c14-84d3-f46b4ed823f9 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Request not acceptable.\"}"} {24} ironic.tests.unit.conductor.test_manager.DoNodeDeployTestCase.test__do_node_deploy_driver_ironic_exception [0.348182s] ... ok {23} ironic.tests.unit.drivers.modules.ilo.test_common.IloCommonMethodsTestCase.test_setup_vmedia_for_boot_with_swift [0.141676s] ... ok {22} ironic.tests.unit.api.controllers.v1.test_node.TestPut.test_power_state_soft_power_off_valid_timeout_no_ver [0.076655s] ... ok {24} ironic.tests.unit.conductor.test_manager.DoNodeRescueTestCase.test__do_node_rescue_returns_rescuewait [0.290220s] ... ok {23} ironic.tests.unit.drivers.modules.ilo.test_common.IloCommonMethodsTestCase.test_update_boot_mode_capabilities_exist [0.107180s] ... ok {23} ironic.tests.unit.drivers.modules.ilo.test_common.IloCommonMethodsTestCase.test_update_boot_mode_instance_info_exists [0.106546s] ... ok {24} ironic.tests.unit.conductor.test_manager.DoNodeRescueTestCase.test__do_node_unrescue [0.284611s] ... ok {23} ironic.tests.unit.drivers.modules.ilo.test_firmware_processor.FirmwareProcessorTestCase.test__extract_fw_from_file_sets_loc_obj_remove_to_file_if_no_upload [0.058861s] ... ok {23} ironic.tests.unit.drivers.modules.ilo.test_power.IloPowerInternalMethodsTestCase.test__set_power_state_reboot_ok [0.105439s] ... ok {24} ironic.tests.unit.conductor.test_manager.DoNodeRescueTestCase.test_do_node_rescue_when_rescue_validate_fail [0.166446s] ... ok {24} ironic.tests.unit.conductor.test_manager.DoNodeTakeOverTestCase.test__do_takeover_with_console_enabled [0.329999s] ... ok {23} ironic.tests.unit.drivers.modules.ilo.test_raid.Ilo5RAIDTestCase.test_create_configuration_skip_root [0.074841s] ... ok {23} ironic.tests.unit.drivers.modules.irmc.test_bios.IRMCBIOSTestCase.test_factory_reset [0.064156s] ... ok {24} ironic.tests.unit.conductor.test_manager.DoNodeTearDownTestCase.test_do_node_tear_down_invalid_state [0.254159s] ... ok {23} ironic.tests.unit.drivers.modules.irmc.test_boot.IRMCDeployPrivateMethodsTestCase.test__attach_virtual_cd_ok [0.089225s] ... ok {24} ironic.tests.unit.conductor.test_manager.ManagerCheckInspectWaitTimeoutsTestCase.test__check_inspect_timeouts_not_mapped [0.028168s] ... ok {23} ironic.tests.unit.drivers.modules.irmc.test_boot.IRMCDeployPrivateMethodsTestCase.test__prepare_boot_iso_create_ok [0.127514s] ... ok GET: /v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4 {} GOT:{u'node_uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'uuid': u'6eb02b44-18a3-4659-8c0b-8d2802581ae4', u'links': [{u'href': u'http://localhost/v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4', u'rel': u'self'}, {u'href': u'http://localhost/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4', u'rel': u'bookmark'}], u'extra': {}, u'created_at': u'2019-06-06T07:02:16.687582+00:00', u'updated_at': None, u'properties': {}, u'standalone_ports_supported': True, u'mode': u'active-backup', u'address': u'52:54:00:cf:2d:31', u'internal_info': {u'bar': u'buzz'}, u'ports': [{u'href': u'http://localhost/v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4/ports', u'rel': u'self'}, {u'href': u'http://localhost/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4/ports', u'rel': u'bookmark'}], u'name': u'pg.1'} {19} ironic.tests.unit.api.controllers.v1.test_portgroup.TestListPortgroups.test_get_one_with_suffix [0.064066s] ... ok {24} ironic.tests.unit.conductor.test_manager.NmiTestCase.test_inject_nmi_validate_invalid_param [0.084114s] ... ok {23} ironic.tests.unit.drivers.modules.irmc.test_boot.IRMCDeployPrivateMethodsTestCase.test__remove_share_file [0.024999s] ... ok {24} ironic.tests.unit.conductor.test_manager.SensorsTestCase.test___send_sensor_data [0.202236s] ... ok {23} ironic.tests.unit.drivers.modules.irmc.test_boot.IRMCPXEBootBasicTestCase.test_prepare_instance_localboot [0.101402s] ... ok {24} ironic.tests.unit.conductor.test_manager.SensorsTestCase.test_send_sensor_task [0.253202s] ... ok {23} ironic.tests.unit.drivers.modules.irmc.test_boot.IRMCPXEBootBasicTestCase.test_prepare_ramdisk_force_persistent_boot_device_always [0.129006s] ... ok {23} ironic.tests.unit.drivers.modules.irmc.test_boot.IRMCPXEBootBasicTestCase.test_validate_good [0.056808s] ... ok {24} ironic.tests.unit.conductor.test_manager.ServiceDoNodeDeployTestCase.test_do_node_deploy_validate_template_fail [0.129018s] ... ok {23} ironic.tests.unit.drivers.modules.irmc.test_boot.IRMCVirtualMediaBootTestCase.test_clean_up_instance [0.087475s] ... ok {24} ironic.tests.unit.conductor.test_manager.VendorPassthruTestCase.test_get_node_vendor_passthru_methods [0.225551s] ... ok PATCH: /v1/ports/0e1ae68a-b515-4b47-bc44-636afdc638b8 [{'path': '/extra/vif_port_id', 'value': 'foo', 'op': 'add'}, {'path': '/extra/vif_port_id', 'value': 'bar', 'op': 'add'}] GOT:Response: 200 OK Content-Type: application/json Openstack-Request-Id: req-bf966305-1a88-4add-bd8e-deb43fd02cac X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.27 {"local_link_connection": {"switch_info": "switch1", "port_id": "Ethernet3/1", "switch_id": "0a:1b:2c:3d:4e:5f"}, "node_uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "uuid": "0e1ae68a-b515-4b47-bc44-636afdc638b8", "links": [{"href": "http://localhost/v1/ports/0e1ae68a-b515-4b47-bc44-636afdc638b8", "rel": "self"}, {"href": "http://localhost/ports/0e1ae68a-b515-4b47-bc44-636afdc638b8", "rel": "bookmark"}], "extra": {"vif_port_id": "bar"}, "pxe_enabled": true, "portgroup_uuid": null, "updated_at": "2019-06-06T07:02:16.491849+00:00", "address": "52:55:00:cf:2d:31", "internal_info": {"tenant_vif_port_id": "original"}, "created_at": "2019-06-06T07:02:16.425854+00:00"} {23} ironic.tests.unit.drivers.modules.irmc.test_common.IRMCValidateParametersTestCase.test_parse_driver_info [0.022998s] ... ok {24} ironic.tests.unit.conductor.test_rpcapi.RPCAPITestCase.test_get_supported_boot_devices [0.025723s] ... ok {26} ironic.tests.unit.api.controllers.v1.test_port.TestPatch.test_add_extra_vif_port_id_diff_internal [0.135883s] ... ok {23} ironic.tests.unit.drivers.modules.irmc.test_common.IRMCValidateParametersTestCase.test_parse_driver_info_invalid_port [0.022216s] ... ok {24} ironic.tests.unit.conductor.test_task_manager.ProvisionNotifyTestCase.test_notify_no_state_change [0.015473s] ... ok {24} ironic.tests.unit.conductor.test_task_manager.TaskManagerTestCase.test_init_prepares_fsm [0.038891s] ... ok {23} ironic.tests.unit.drivers.modules.irmc.test_common.IRMCValidateParametersTestCase.test_parse_driver_info_invalid_snmp_port [0.022374s] ... ok {23} ironic.tests.unit.drivers.modules.irmc.test_inspect.IRMCInspectInternalMethodsTestCase.test__inspect_hardware [0.056486s] ... ok {24} ironic.tests.unit.conductor.test_utils.FastTrackTestCase.test_is_fast_track_no_heartbeat [0.119883s] ... ok {24} ironic.tests.unit.conductor.test_utils.NodeSetBootDeviceTestCase.test_node_set_boot_device_adopting [0.080283s] ... ok {23} ironic.tests.unit.drivers.modules.irmc.test_inspect.IRMCInspectTestCase.test_inspect_hardware_with_power_off [0.227020s] ... ok {23} ironic.tests.unit.drivers.modules.network.test_common.TestCommonFunctions.test__get_free_portgroups_and_ports_flat [0.086082s] ... ok {24} ironic.tests.unit.conductor.test_utils.ValidatePortPhysnetTestCase.test_validate_port_physnet_no_portgroup_update [0.081307s] ... ok {23} ironic.tests.unit.drivers.modules.network.test_common.TestCommonFunctions.test_get_free_port_like_object_ignores_standalone_portgroup [0.081832s] ... ok {23} ironic.tests.unit.drivers.modules.network.test_common.TestCommonFunctions.test_plug_port_to_tenant_network_no_client [0.073752s] ... ok {24} ironic.tests.unit.db.sqlalchemy.test_migrations.TestMigrationsMySQL.test_walk_versions ... SKIPPED: Backend 'mysql+pymysql' is unavailable: Could not connect {23} ironic.tests.unit.drivers.modules.network.test_common.TestNeutronVifPortIDMixin.test_update_portgroup_nostandalone_ports_novif_pxe_ports [0.072800s] ... ok {24} ironic.tests.unit.db.sqlalchemy.test_migrations.TestMigrationsPostgreSQL.test_upgrade_and_version ... SKIPPED: Backend 'postgresql' is unavailable: Could not connect PATCH: /v1/volume/connectors/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 [{'path': '/node_id', 'value': '1', 'op': 'replace'}] GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-65cae78b-9cd7-4824-8257-e209abfab22d X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Couldn't apply patch '{'path': '/node_id', 'value': u'1', 'op': 'replace'}'. Reason: can't replace non-existent object 'node_id'\"}"} {23} ironic.tests.unit.drivers.modules.network.test_common.TestNeutronVifPortIDMixin.test_vif_attach_with_physnet [0.081698s] ... ok {8} ironic.tests.unit.api.controllers.v1.test_volume_connector.TestPatch.test_replace_node_id [0.069430s] ... ok {24} ironic.tests.unit.db.test_allocations.AllocationsTestCase.test_get_allocation_by_name [0.024209s] ... ok {23} ironic.tests.unit.drivers.modules.network.test_common.TestNeutronVifPortIDMixin.test_vif_detach_active_node [0.086460s] ... ok {24} ironic.tests.unit.db.test_bios_settings.DbBIOSSettingTestCase.test_get_bios_setting_node_not_exist [0.029621s] ... ok {23} ironic.tests.unit.drivers.modules.network.test_flat.TestFlatInterface.test_add_provisioning_network [0.066401s] ... ok {24} ironic.tests.unit.db.test_node_tags.DbNodeTagTestCase.test_node_tag_exists [0.039297s] ... ok {23} ironic.tests.unit.drivers.modules.network.test_flat.TestFlatInterface.test_vif_list [0.068939s] ... ok PUT: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/management/boot_device?persistent=blah {'boot_device': 'pxe'} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-84302a62-3783-4ec5-aaaf-9fc5ac5eb791 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Invalid input for field/attribute persistent. Value: 'blah'. unable to convert to boolean. Error: Unrecognized value 'blah', acceptable values are: '0', '1', 'f', 'false', 'n', 'no', 'off', 'on', 't', 'true', 'y', 'yes'\"}"} {24} ironic.tests.unit.db.test_node_traits.DbNodeTraitTestCase.test_unset_empty_node_traits [0.033749s] ... ok {23} ironic.tests.unit.drivers.modules.test_agent.TestAgentDeploy.test_validate_invalid_root_device_hints [0.061897s] ... ok {7} ironic.tests.unit.api.controllers.v1.test_node.TestPut.test_set_boot_device_persistent_invalid_value [0.066696s] ... ok {24} ironic.tests.unit.db.test_portgroups.DbportgroupTestCase.test_get_portgroup_list_sorted [0.037355s] ... ok {23} ironic.tests.unit.drivers.modules.test_agent_base_vendor.AgentDeployMixinTest.test_continue_cleaning_with_hook_fails [0.079610s] ... ok {24} ironic.tests.unit.db.test_volume_connectors.DbVolumeConnectorTestCase.test_create_volume_connector_duplicated_type_connector_id [0.025311s] ... ok {24} ironic.tests.unit.dhcp.test_factory.TestDHCPFactory.test_dhcp_some_error [0.052131s] ... ok {23} ironic.tests.unit.drivers.modules.test_agent_base_vendor.AgentDeployMixinTest.test_reboot_and_finish_deploy_power_action_oob_power_off_failed [0.087363s] ... ok {24} ironic.tests.unit.dhcp.test_factory.TestDHCPFactory.test_set_neutron_dhcp [0.011788s] ... ok {23} ironic.tests.unit.drivers.modules.test_agent_base_vendor.HeartbeatMixinTest.test_heartbeat_continue_cleaning [0.104588s] ... ok {23} ironic.tests.unit.drivers.modules.test_console_utils.ConsoleUtilsTestCase.test_make_persistent_password_file_fail [0.013962s] ... ok {24} ironic.tests.unit.drivers.modules.ansible.test_deploy.TestAnsibleDeploy.test_prepare_cleaning [0.095566s] ... ok {24} ironic.tests.unit.drivers.modules.cimc.test_management.CIMCManagementTestCase.test_set_boot_device_fail [0.081916s] ... ok {24} ironic.tests.unit.drivers.modules.cimc.test_power.PowerTestCase.test_reboot_off [0.070225s] ... ok {23} ironic.tests.unit.drivers.modules.test_console_utils.ConsoleUtilsTestCase.test_stop_socat_console [0.014116s] ... ok {24} ironic.tests.unit.drivers.modules.cimc.test_power.PowerTestCase.test_set_power_state_off_ok [0.101130s] ... ok PATCH: /v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4 [{'path': '/address', 'value': 'AA:BB:CC:DD:EE:FF', 'op': 'replace'}] GOT:Response: 409 Conflict Content-Type: application/json Openstack-Request-Id: req-bc14da04-8cc0-4f3c-aeec-b8e8fbf8a41a X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.39 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Cannot update portgroup \\\"6eb02b44-18a3-4659-8c0b-8d2802581ae4\\\" on node \\\"1be26c0b-03f2-4d2e-ae87-c02d7f33c123\\\" while it is in state \\\"inspecting\\\".\"}"} {23} ironic.tests.unit.drivers.modules.test_deploy_utils.AgentMethodsTestCase.test_tear_down_inband_cleaning_fast_track [0.064858s] ... ok {6} ironic.tests.unit.api.controllers.v1.test_portgroup.TestPatch.test_update_in_inspecting_not_allowed [0.121614s] ... ok {24} ironic.tests.unit.drivers.modules.drac.test_job.DracJobTestCase.test_validate_job_queue_fail [0.029959s] ... ok {24} ironic.tests.unit.drivers.modules.drac.test_management.DracManagementTestCase.test_get_properties [0.028961s] ... ok {23} ironic.tests.unit.drivers.modules.test_deploy_utils.PhysicalWorkTestCase.test_deploy_partition_image_netboot_uefi [0.025865s] ... ok {23} ironic.tests.unit.drivers.modules.test_image_cache.TestImageCacheCleanUp.test_clean_up_ensure_cache_size_with_amount [0.011954s] ... ok {24} ironic.tests.unit.drivers.modules.drac.test_raid.DracCreateRaidConfigurationHelpersTestCase.test__calculate_spans_for_7_disk_and_raid_level_50 [0.037357s] ... ok {24} ironic.tests.unit.drivers.modules.drac.test_raid.DracQueryRaidConfigurationTestCase.test_list_raid_controllers_fail [0.033320s] ... ok {23} ironic.tests.unit.drivers.modules.test_image_cache.TestUpdateImages.test__delete_dest_path_if_stale_up_to_date [0.010092s] ... ok {23} ironic.tests.unit.drivers.modules.test_inspect_utils.InspectFunctionTestCase.test_create_ports_if_not_exist_attempts_port_creation_blindly [0.154868s] ... ok {24} ironic.tests.unit.drivers.modules.drac.test_raid.DracRaidInterfaceTestCase.test_create_configuration_no_change [0.130695s] ... ok {24} ironic.tests.unit.drivers.modules.ibmc.test_management.IBMCManagementTestCase.test_get_supported_boot_devices [0.081250s] ... ok {23} ironic.tests.unit.drivers.modules.test_inspector.CheckStatusTestCase.test_not_finished [0.016629s] ... ok {23} ironic.tests.unit.drivers.modules.test_inspector.CheckStatusTestCase.test_not_inspector [0.016020s] ... ok {23} ironic.tests.unit.drivers.modules.test_inspector.CheckStatusTestCase.test_status_ok [0.017571s] ... ok POST: /v1/ports {'local_link_connection': {'switch_foo': 'value3', 'port_id': 'Ethernet1/15', 'switch_id': 'value1'}, 'node_uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123', 'uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c781', 'extra': {}, 'pxe_enabled': True, 'portgroup_uuid': '6eb02b44-18a3-4659-8c0b-8d2802581ae4', 'physical_network': None, 'address': '52:54:00:cf:2d:31', 'is_smartnic': False} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-5539bdd7-aa10-4c08-92c7-772743717def X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"set(['switch_foo']) are invalid keys\"}"} {24} ironic.tests.unit.drivers.modules.ilo.test_bios.IloBiosTestCase.test__execute_post_boot_bios_step_invalid [0.086911s] ... ok {23} ironic.tests.unit.drivers.modules.test_inspector.GetClientTestCase.test__get_client_url [0.018892s] ... ok {1} ironic.tests.unit.api.controllers.v1.test_port.TestPost.test_create_port_some_invalid_local_link_connection_key [0.056930s] ... ok {24} ironic.tests.unit.drivers.modules.ilo.test_boot.IloBootPrivateMethodsTestCase.test__validate_driver_info_valid_url [0.088366s] ... ok {23} ironic.tests.unit.drivers.modules.test_inspector.InspectHardwareAbortTestCase.test_abort_error [0.016395s] ... ok {24} ironic.tests.unit.drivers.modules.ilo.test_boot.IloVirtualMediaBootTestCase.test_prepare_ramdisk_glance_image [0.185545s] ... ok {23} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolDriverTestCase.test_set_power_off_ok [0.065961s] ... ok PATCH: /v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4 [{'path': '/extra/foo', 'value': 'bar', 'op': 'add'}] GOT:Response: 404 Not Found Content-Type: application/json {"error_message": "{\"code\": 404, \"description\": \"\", \"title\": \"Not Found\"}"} {24} ironic.tests.unit.drivers.modules.ilo.test_firmware_processor.FirmwareProcessorTestCase.test__extract_fw_from_file_sets_loc_obj_remove_to_swift [0.066064s] ... ok {11} ironic.tests.unit.api.controllers.v1.test_portgroup.TestPatch.test_update_byid_invalid_api_version [0.050275s] ... ok {24} ironic.tests.unit.drivers.modules.ilo.test_management.IloManagementTestCase.test__update_firmware_sum_final_swift_error [0.095910s] ... ok {23} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolDriverTestCase.test_set_power_off_timeout_ok [0.061765s] ... ok PUT: /v1/nodes/node-39/states/power {'target': 'power on'} GOT:Response: 404 Not Found Content-Type: application/json Openstack-Request-Id: req-4de4fbf4-09c0-4eba-af42-d9a3480ed33a X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Node node-39 could not be found.\"}"} {23} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolShellinaboxTestCase.test_console_validate_invalid_port [0.045839s] ... ok {24} ironic.tests.unit.drivers.modules.ilo.test_power.IloPowerInternalMethodsTestCase.test__set_power_state_soft_reboot_ok_initial_power_off [1.081333s] ... ok {3} ironic.tests.unit.api.controllers.v1.test_node.TestPut.test_power_state_by_name_unsupported [0.062107s] ... ok {24} ironic.tests.unit.drivers.modules.ilo.test_raid.Ilo5RAIDTestCase.test_create_configuration_ilo_error [0.098909s] ... ok {23} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolSocatDriverTestCase.test__start_console_fail_nodir [0.059415s] ... ok {23} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolSocatDriverTestCase.test_console_validate_invalid_port [0.046282s] ... ok {24} ironic.tests.unit.drivers.modules.irmc.test_boot.IRMCDeployPrivateMethodsTestCase.test__setup_vmedia_with_file_deploy [0.075103s] ... ok {24} ironic.tests.unit.drivers.modules.irmc.test_boot.IRMCPXEBootBasicTestCase.test_prepare_ramdisk_ipxe_swift_whole_disk_image [0.129097s] ... ok {23} ironic.tests.unit.drivers.modules.test_ipxe.iPXEBootTestCase.test_prepare_ramdisk_ipxe_swift [0.119378s] ... ok {23} ironic.tests.unit.drivers.modules.test_ipxe.iPXEBootTestCase.test_prepare_ramdisk_ipxe_without_copy [0.126284s] ... ok {24} ironic.tests.unit.drivers.modules.irmc.test_boot.IRMCPXEBootBasicTestCase.test_validate_good_whole_disk_image [0.058933s] ... ok {23} ironic.tests.unit.drivers.modules.test_ipxe.iPXEBootTestCase.test_prepare_ramdisk_rescue [0.111858s] ... ok {24} ironic.tests.unit.drivers.modules.irmc.test_boot.IRMCPXEBootBasicTestCase.test_validate_skip_check_write_image_false [0.061213s] ... ok {23} ironic.tests.unit.drivers.modules.test_ipxe.iPXEValidateRescueTestCase.test_validate_rescue [0.684325s] ... ok GET: /v1/volume/targets {} GOT:Response: 404 Not Found Content-Type: application/json {"error_message": "{\"code\": 404, \"description\": \"\", \"title\": \"Not Found\"}"} {23} ironic.tests.unit.drivers.modules.test_iscsi_deploy.ISCSIDeployTestCase.test_get_clean_steps [0.086278s] ... ok {24} ironic.tests.unit.drivers.modules.irmc.test_boot.IsImageHrefOrdinaryFileNameTestCase.test_is_image_href_ordinary_file_name_false [0.010071s] ... ok {8} ironic.tests.unit.api.controllers.v1.test_volume_target.TestListVolumeTargets.test_one_invalid_api_version [0.048232s] ... ok {23} ironic.tests.unit.drivers.modules.test_pxe.PXEBootTestCase.test_prepare_ramdisk_conflicting_boot_modes_set_unsupported [0.142558s] ... ok GET: /v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 {} GOT:{u'local_link_connection': {u'switch_info': u'switch1', u'port_id': u'Ethernet3/1', u'switch_id': u'0a:1b:2c:3d:4e:5f'}, u'node_uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c781', u'links': [{u'href': u'http://localhost/v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781', u'rel': u'self'}, {u'href': u'http://localhost/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781', u'rel': u'bookmark'}], u'extra': {}, u'pxe_enabled': True, u'created_at': u'2019-06-06T07:02:16.667134+00:00', u'updated_at': None, u'address': u'52:54:00:cf:2d:31', u'internal_info': {u'bar': u'buzz'}} GET: /v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 {} GOT:{u'local_link_connection': {u'switch_info': u'switch1', u'port_id': u'Ethernet3/1', u'switch_id': u'0a:1b:2c:3d:4e:5f'}, u'node_uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c781', u'links': [{u'href': u'http://localhost/v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781', u'rel': u'self'}, {u'href': u'http://localhost/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781', u'rel': u'bookmark'}], u'extra': {}, u'pxe_enabled': True, u'portgroup_uuid': u'6eb02b44-18a3-4659-8c0b-8d2802581ae4', u'updated_at': None, u'address': u'52:54:00:cf:2d:31', u'internal_info': {u'bar': u'buzz'}, u'created_at': u'2019-06-06T07:02:16.667134+00:00'} {24} ironic.tests.unit.drivers.modules.irmc.test_inspect.IRMCInspectTestCase.test_inspect_hardware_props_gpu_cpu_fpgas_zero_and_existing_cap [0.059497s] ... ok {23} ironic.tests.unit.drivers.modules.test_pxe.PXEBootTestCase.test_prepare_ramdisk_force_persistent_boot_device_never [0.157535s] ... ok {27} ironic.tests.unit.api.controllers.v1.test_port.TestListPorts.test_hide_fields_in_newer_versions_portgroup_uuid [0.124404s] ... ok {23} ironic.tests.unit.drivers.modules.test_pxe.PXEBootTestCase.test_prepare_ramdisk_force_persistent_boot_device_sloppy_true [0.510127s] ... ok {24} ironic.tests.unit.drivers.modules.irmc.test_management.IRMCManagementTestCase.test_management_interface_get_sensors_data_scci_ng [0.071271s] ... ok {23} ironic.tests.unit.drivers.modules.test_pxe.PXEBootTestCase.test_prepare_ramdisk_set_boot_mode_on_bm [0.107467s] ... ok {24} ironic.tests.unit.drivers.modules.irmc.test_power.IRMCPowerTestCase.test_set_power_state_timeout [0.066558s] ... ok {23} ironic.tests.unit.drivers.modules.test_snmp.SNMPDeviceDriverTestCase.test_auto_power_state_on [0.022703s] ... ok {24} ironic.tests.unit.drivers.modules.network.test_common.TestNeutronVifPortIDMixin.test_update_portgroup_standalone_ports_vif_pxe_ports [0.084814s] ... ok {23} ironic.tests.unit.drivers.modules.test_snmp.SNMPDriverTestCase.test_set_power_state_on_timeout [0.061326s] ... ok {24} ironic.tests.unit.drivers.modules.network.test_common.TestNeutronVifPortIDMixin.test_vif_attach [0.089293s] ... ok {23} ironic.tests.unit.drivers.modules.test_snmp.SNMPValidateParametersTestCase.test__parse_driver_info_apc_masterswitchplus [0.013388s] ... ok {23} ironic.tests.unit.drivers.modules.test_snmp.SNMPValidateParametersTestCase.test__parse_driver_info_snmp_v3 [0.013062s] ... ok {23} ironic.tests.unit.drivers.modules.test_snmp.SNMPValidateParametersTestCase.test__parse_driver_info_snmp_v3_priv_nokey [0.013338s] ... ok {24} ironic.tests.unit.drivers.modules.network.test_common.TestNeutronVifPortIDMixin.test_vif_attach_portgroup_no_address [0.086951s] ... ok {24} ironic.tests.unit.drivers.modules.network.test_noop.NoopInterfaceTestCase.test_remove_cleaning_network [0.069119s] ... ok {23} ironic.tests.unit.drivers.modules.xclarity.test_management.XClarityManagementDriverTestCase.test_get_boot_device_primary_none [0.061532s] ... ok {24} ironic.tests.unit.drivers.modules.network.test_noop.NoopInterfaceTestCase.test_vif_attach [0.108328s] ... ok {23} ironic.tests.unit.drivers.test_fake_hardware.FakeHardwareTestCase.test_power_interface [0.537434s] ... ok {23} ironic.tests.unit.drivers.test_ilo.IloHardwareTestCase.test_override_with_inspector [0.063791s] ... ok {24} ironic.tests.unit.drivers.modules.redfish.test_inspect.RedfishInspectTestCase.test_inspect_hardware_ok [0.081937s] ... ok {23} ironic.tests.unit.drivers.test_utils.MixinVendorInterfaceTestCase.test_vendor_interface_validate_valid_methods [0.068278s] ... ok {23} ironic.tests.unit.objects.test_deploy_template.TestDeployTemplateObject.test_refresh [0.017801s] ... ok {23} ironic.tests.unit.objects.test_node.TestConvertToVersion.test_owner_unsupported_set_no_remove_default [0.015509s] ... ok {23} ironic.tests.unit.objects.test_node.TestConvertToVersion.test_owner_unsupported_set_remove [0.016672s] ... ok {23} ironic.tests.unit.objects.test_node.TestConvertToVersion.test_trait_unsupported_set_no_remove_non_default [0.015804s] ... ok {23} ironic.tests.unit.objects.test_notification.TestNotificationBase.test_event_type_with_status [0.010049s] ... ok {23} ironic.tests.unit.objects.test_notification.TestNotificationBase.test_event_type_without_status_fails [0.010059s] ... ok {23} ironic.tests.unit.objects.test_notification.TestNotificationBase.test_no_emit_schema_not_populated [0.022091s] ... ok {23} ironic.tests.unit.objects.test_objects.TestObject.test_static_result [0.010260s] ... ok {23} ironic.tests.unit.objects.test_objects.TestRegistry.test_hook_chooses_newer_properly [0.115076s] ... ok {23} ironic.tests.unit.objects.test_port.TestConvertToVersion.test_is_smartnic_unsupported [0.018252s] ... ok {23} ironic.tests.unit.objects.test_port.TestPortObject.test_get_by_id [0.018759s] ... ok {23} ironic.tests.unit.objects.test_volume_connector.TestVolumeConnectorObject.test_get_by_uuid [0.018897s] ... ok GET: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123 {} GOT:{u'target_power_state': None, u'automated_clean': None, u'inspect_interface': None, u'links': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'bookmark'}], u'target_provision_state': None, u'deploy_step': {}, u'storage_interface': None, u'conductor_group': u'', u'protected_reason': None, u'maintenance_reason': None, u'states': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states', u'rel': u'bookmark'}], u'traits': [], u'provision_state': u'available', u'clean_step': {}, u'vendor_interface': None, u'uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'console_enabled': False, u'extra': {}, u'raid_config': {}, u'provision_updated_at': None, u'power_state': None, u'last_error': None, u'target_raid_config': {}, u'maintenance': False, u'network_interface': None, u'inspection_started_at': None, u'inspection_finished_at': None, u'description': None, u'conductor': u'fake.conductor', u'driver': u'fake-hardware', u'power_interface': None, u'updated_at': None, u'volume': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/volume', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/volume', u'rel': u'bookmark'}], u'raid_interface': None, u'rescue_interface': None, u'boot_interface': None, u'reservation': None, u'management_interface': None, u'properties': {u'memory_mb': u'4096', u'cpu_arch': u'x86_64', u'local_gb': u'10', u'cpus': u'8'}, u'bios_interface': None, u'instance_uuid': None, u'name': None, u'driver_info': {u'fake_password': u'******', u'foo': u'bar'}, u'resource_class': None, u'fault': None, u'created_at': u'2019-06-06T07:02:15.976664+00:00', u'portgroups': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/portgroups', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/portgroups', u'rel': u'bookmark'}], u'deploy_interface': None, u'instance_info': {u'foo': u'bar', u'image_url': u'******', u'configdrive': u'******'}, u'console_interface': None, u'protected': False, u'driver_internal_info': {u'private_state': u'secret value'}, u'chassis_uuid': None, u'owner': None, u'ports': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'bookmark'}]} {31} ironic.tests.unit.api.controllers.v1.test_node.TestListNodes.test_node_description_null_field [0.099195s] ... ok PATCH: /v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4 [{'path': '/node_id', 'op': 'remove'}] GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-7e6ac9fe-e15b-4f34-b1f6-e8794f087af7 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Couldn't apply patch '{'path': '/node_id', 'op': 'remove'}'. Reason: can't remove non-existent object 'node_id'\"}"} {19} ironic.tests.unit.api.controllers.v1.test_portgroup.TestPatch.test_remove_node_id [0.049757s] ... ok PUT: /v1/nodes/node-39/traits/CUSTOM_3 {} GOT:Response: 404 Not Found Content-Type: application/json Openstack-Request-Id: req-a4e4e92c-3f33-4a32-a311-c169bcf96e6e X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.37 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Node 1be26c0b-03f2-4d2e-ae87-c02d7f33c123 could not be found.\"}"} {7} ironic.tests.unit.api.controllers.v1.test_node.TestTraits.test_add_single_trait_fails_if_node_not_found [0.099175s] ... ok {7} ironic.tests.unit.api.controllers.v1.test_notification_utils.APINotifyTestCase.test_node_maintenance_notification [0.022814s] ... ok PUT: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states/provision {'target': 'deleted', 'configdrive': 'foo'} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-186d447d-d742-40f7-8265-adf6b27adb9e X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"The requested action \\\"deleted\\\" can not be performed on node \\\"1be26c0b-03f2-4d2e-ae87-c02d7f33c123\\\" while it is in state \\\"available\\\".\"}"} {22} ironic.tests.unit.api.controllers.v1.test_node.TestPut.test_provision_with_configdrive_not_active [0.078837s] ... ok POST: /v1/nodes {'instance_uuid': None, 'uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123', 'driver_info': {'fake_password': 'fakepass', 'foo': 'bar'}, 'extra': {}, 'driver': 'fake-hardware', 'properties': {'memory_mb': '4096', 'cpu_arch': 'x86_64', 'local_gb': '10', 'cpus': '8'}, 'maintenance': False, 'chassis_uuid': 'e74c40e0-d825-11e2-a28f-0800200c9a66', 'instance_info': {'foo': 'bar', 'image_url': 'http://example.com/test_image_url', 'configdrive': 'TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQ='}, 'bios_interface': 'foo'} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-722c0bdf-9f4c-4e4c-8485-d90967469fe8 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Could not find the following interface in the 'ironic.hardware.interfaces.bios' entrypoint: foo. Valid interfaces are ['no-bios', 'fake'].\"}"} {14} ironic.tests.unit.api.controllers.v1.test_node.TestPost.test_create_node_invalid_bios_interface [0.082612s] ... ok PUT: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states/provision {'target': 'rebuild'} GOT:Response: 202 Accepted Location: http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states Openstack-Request-Id: req-a17e0695-b5e8-4b42-a8f8-cfa69ac8d47a X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {3} ironic.tests.unit.api.controllers.v1.test_node.TestPut.test_provision_with_rebuild [0.106014s] ... ok GET: /v1/ports?detail=False&fields=internal_info {} GOT:{u'ports': [{u'internal_info': {u'bar': u'buzz'}, u'links': [{u'href': u'http://localhost/v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781', u'rel': u'self'}, {u'href': u'http://localhost/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781', u'rel': u'bookmark'}]}]} {7} ironic.tests.unit.api.controllers.v1.test_port.TestListPorts.test_detail_using_query_false_and_fields [0.099029s] ... ok PATCH: /v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 [{'path': '/node_uuid', 'value': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123', 'op': 'replace'}] GOT:Response: 200 OK Content-Type: application/json Openstack-Request-Id: req-6e19cdff-226f-4dc1-bb9d-1fb003c236dd X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"node_uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "links": [{"href": "http://localhost/v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "rel": "self"}, {"href": "http://localhost/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "rel": "bookmark"}], "extra": {}, "created_at": "2019-06-06T07:02:16.553210+00:00", "updated_at": null, "address": "52:54:00:cf:2d:31"} {26} ironic.tests.unit.api.controllers.v1.test_port.TestPatch.test_replace_node_uuid [0.121533s] ... ok {26} ironic.tests.unit.api.controllers.v1.test_port.TestPortsController__CheckAllowedPortFields.test__check_allowed_port_fields_not_allow [0.026505s] ... ok PUT: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states/provision {'target': 'rebuild', 'configdrive': 'foo'} GOT:Response: 202 Accepted Location: http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states Openstack-Request-Id: req-83f7c709-c7b9-4988-b606-5f0bade92857 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.35 {22} ironic.tests.unit.api.controllers.v1.test_node.TestPut.test_provision_with_rebuild_configdrive [0.114450s] ... ok GET: /v1/portgroups/eeeeeeee-cccc-aaaa-bbbb-cccccccccccc/ports {} GOT:Response: 404 Not Found Content-Type: application/json {"error_message": "{\"code\": 404, \"description\": \"\", \"title\": \"Not Found\"}"} {7} ironic.tests.unit.api.controllers.v1.test_port.TestListPorts.test_portgroups_subresource_node_not_found [0.048853s] ... ok POST: /v1/portgroups {'node_uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123', 'uuid': '6eb02b44-18a3-4659-8c0b-8d2802581ae4', 'standalone_ports_supported': True, 'address': '52:54:00:cf:2d:31', 'name': 'fooname'} GOT:Response: 201 Created Content-Type: application/json Location: http://localhost/v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4 Openstack-Request-Id: req-57cad53a-b51d-4c26-85e8-9a9e56acc719 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"node_uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "uuid": "6eb02b44-18a3-4659-8c0b-8d2802581ae4", "links": [{"href": "http://localhost/v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4", "rel": "self"}, {"href": "http://localhost/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4", "rel": "bookmark"}], "extra": {}, "created_at": "2019-06-06T07:02:17.153178+00:00", "updated_at": null, "ports": [{"href": "http://localhost/v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4/ports", "rel": "self"}, {"href": "http://localhost/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4/ports", "rel": "bookmark"}], "standalone_ports_supported": true, "mode": "active-backup", "address": "52:54:00:cf:2d:31", "internal_info": {}, "properties": {}, "name": "fooname"} {10} ironic.tests.unit.api.controllers.v1.test_portgroup.TestPost.test_create_portgroup_with_no_extra [0.099500s] ... ok {10} ironic.tests.unit.api.controllers.v1.test_types.TestEventType.test_invalid_mac_network_port_event [0.016796s] ... ok {10} ironic.tests.unit.api.controllers.v1.test_types.TestJsonPatchType.test_mandatory_attr [0.040170s] ... ok {10} ironic.tests.unit.api.controllers.v1.test_types.TestJsonPatchType.test_missing_required_fields_path [0.019591s] ... ok {10} ironic.tests.unit.api.controllers.v1.test_types.TestMacAddressType.test_invalid_mac_addr [0.018660s] ... ok {10} ironic.tests.unit.api.controllers.v1.test_utils.TestApiUtils.test_allow_storage_interface [0.017736s] ... ok {10} ironic.tests.unit.api.controllers.v1.test_utils.TestApiUtils.test_check_allow_driver_detail_none [0.016871s] ... ok {10} ironic.tests.unit.api.controllers.v1.test_utils.TestApiUtils.test_check_allowed_fields_network_interface [0.017739s] ... ok {10} ironic.tests.unit.api.controllers.v1.test_utils.TestApiUtils.test_is_path_updated_similar_subpath [0.015942s] ... ok GET: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/traits {} GOT:{u'traits': [u'CUSTOM_1', u'CUSTOM_2']} {22} ironic.tests.unit.api.controllers.v1.test_node.TestTraits.test_get_all_traits [0.099461s] ... ok {22} ironic.tests.unit.api.controllers.v1.test_notification_utils.APINotifyTestCase.test_emit_maintenance_notification [0.019326s] ... ok {10} ironic.tests.unit.api.controllers.v1.test_utils.TestVendorPassthru.test_method_not_specified [0.015900s] ... ok {10} ironic.tests.unit.api.controllers.v1.test_utils.TestVendorPassthru.test_vendor_passthru_attach [0.022885s] ... ok PATCH: /v1/volume/targets/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 [{'path': '/boot_index', 'value': 100, 'op': 'add'}] GOT:Response: 200 OK Content-Type: application/json Openstack-Request-Id: req-88d6f0d0-f93f-4584-8eb6-81e6721cd6aa X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"boot_index": 100, "uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "links": [{"href": "http://localhost/v1/volume/targets/1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "rel": "self"}, {"href": "http://localhost/volume/targets/1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "rel": "bookmark"}], "extra": {}, "created_at": "2019-06-06T07:02:16.885528+00:00", "updated_at": null, "volume_type": "iscsi", "node_uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "volume_id": "12345678", "properties": {"target_iqn": "iqn.foo"}} GET: /v1/ports?sort_key=uuid {} GOT:{u'ports': [{u'uuid': u'1df5f4b6-1d52-4c42-ac82-2103b6bed8d6', u'links': [{u'href': u'http://localhost/v1/ports/1df5f4b6-1d52-4c42-ac82-2103b6bed8d6', u'rel': u'self'}, {u'href': u'http://localhost/ports/1df5f4b6-1d52-4c42-ac82-2103b6bed8d6', u'rel': u'bookmark'}], u'address': u'52:54:00:cf:2d:31'}, {u'uuid': u'75ea366e-5bb6-4ec3-979d-67639b1c490f', u'links': [{u'href': u'http://localhost/v1/ports/75ea366e-5bb6-4ec3-979d-67639b1c490f', u'rel': u'self'}, {u'href': u'http://localhost/ports/75ea366e-5bb6-4ec3-979d-67639b1c490f', u'rel': u'bookmark'}], u'address': u'52:54:00:cf:2d:30'}, {u'uuid': u'975dcfbf-40f4-4030-a3a6-bf2ce5bea5e4', u'links': [{u'href': u'http://localhost/v1/ports/975dcfbf-40f4-4030-a3a6-bf2ce5bea5e4', u'rel': u'self'}, {u'href': u'http://localhost/ports/975dcfbf-40f4-4030-a3a6-bf2ce5bea5e4', u'rel': u'bookmark'}], u'address': u'52:54:00:cf:2d:32'}]} {27} ironic.tests.unit.api.controllers.v1.test_port.TestListPorts.test_sort_key [0.124273s] ... ok {8} ironic.tests.unit.api.controllers.v1.test_volume_target.TestPatch.test_add_root [0.118641s] ... ok PUT: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states/power {'target': 'not-supported'} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-80b498c2-efa8-4491-acd0-e2f1faa24bb4 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"The requested action \\\"not-supported\\\" can not be performed on node \\\"1be26c0b-03f2-4d2e-ae87-c02d7f33c123\\\" while it is in state \\\"None\\\".\"}"} {14} ironic.tests.unit.api.controllers.v1.test_node.TestPut.test_power_invalid_state_request [0.076711s] ... ok PATCH: /v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4 [{'path': '/address', 'value': 'AA:BB:CC:DD:EE:FF', 'op': 'replace'}] GOT:Response: 200 OK Content-Type: application/json Openstack-Request-Id: req-11630e25-5dbb-40ce-97f7-a8e5f68c330a X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.38 {"node_uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "uuid": "6eb02b44-18a3-4659-8c0b-8d2802581ae4", "links": [{"href": "http://localhost/v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4", "rel": "self"}, {"href": "http://localhost/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4", "rel": "bookmark"}], "extra": {}, "created_at": "2019-06-06T07:02:16.952814+00:00", "updated_at": null, "ports": [{"href": "http://localhost/v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4/ports", "rel": "self"}, {"href": "http://localhost/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4/ports", "rel": "bookmark"}], "standalone_ports_supported": true, "mode": "active-backup", "address": "aa:bb:cc:dd:ee:ff", "internal_info": {"bar": "buzz"}, "properties": {}, "name": "pg.1"} {11} ironic.tests.unit.api.controllers.v1.test_portgroup.TestPatch.test_update_in_inspecting_allowed [0.144594s] ... ok PATCH: /v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4 [{'path': '/extra/vif_port_id', 'value': 'foo', 'op': 'add'}, {'path': '/extra/vif_port_id', 'value': 'bar', 'op': 'add'}] GOT:Response: 200 OK Content-Type: application/json Openstack-Request-Id: req-9ae1ebbd-ec84-422a-8e33-4557ec1c94dd X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"node_uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "uuid": "6eb02b44-18a3-4659-8c0b-8d2802581ae4", "links": [{"href": "http://localhost/v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4", "rel": "self"}, {"href": "http://localhost/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4", "rel": "bookmark"}], "extra": {"vif_port_id": "bar"}, "created_at": "2019-06-06T07:02:16.736608+00:00", "updated_at": "2019-06-06T07:02:16.800372+00:00", "ports": [{"href": "http://localhost/v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4/ports", "rel": "self"}, {"href": "http://localhost/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4/ports", "rel": "bookmark"}], "standalone_ports_supported": true, "mode": "active-backup", "address": "52:54:00:cf:2d:31", "internal_info": {"tenant_vif_port_id": "bar", "bar": "buzz"}, "properties": {}, "name": "fooname"} {6} ironic.tests.unit.api.controllers.v1.test_portgroup.TestPatchExtraVifPortId.test_add_extra_vif_port_id_deprecated [0.125813s] ... ok {11} ironic.tests.unit.api.controllers.v1.test_types.TestUuidOrNameType.test_valid_uuid [0.016840s] ... ok {11} ironic.tests.unit.api.controllers.v1.test_utils.TestApiUtils.test_allow_portgroup_mode_properties [0.018462s] ... ok {11} ironic.tests.unit.api.controllers.v1.test_utils.TestApiUtils.test_check_allowed_fields_resource_class [0.017202s] ... ok {11} ironic.tests.unit.api.controllers.v1.test_utils.TestApiUtils.test_get_patch_values_remove [0.015651s] ... ok {11} ironic.tests.unit.api.controllers.v1.test_utils.TestApiUtils.test_is_path_removed_success [0.016193s] ... ok GET: /v1/portgroups/123 123/ports {} GOT:Response: 400 Bad Request Content-Type: application/json {"error_message": "{\"code\": 400, \"description\": \"Expected a logical name or UUID but received 123 123.\", \"title\": \"Bad Request\"}"} {22} ironic.tests.unit.api.controllers.v1.test_port.TestListPorts.test_portgroups_subresource_invalid_ident [0.045130s] ... ok PUT: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states/provision {'target': 'rebuild', 'configdrive': 'foo'} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-3c915108-d3ab-4f0a-a8ef-f70210941862 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Adding a config drive is only supported when setting provision state to active\"}"} {3} ironic.tests.unit.api.controllers.v1.test_node.TestPut.test_provision_with_rebuild_unsupported_configdrive [0.101035s] ... ok GET: /v1/volume/connectors?detail=True {} GOT:Response: 404 Not Found Content-Type: application/json {"error_message": "{\"code\": 404, \"description\": \"\", \"title\": \"Not Found\"}"} {11} ironic.tests.unit.api.controllers.v1.test_volume_connector.TestListVolumeConnectors.test_detail_invalid_api_version [0.049036s] ... ok PATCH: /v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4 [{'path': '/extra/vif_port_id', 'op': 'remove'}] GOT:Response: 200 OK Content-Type: application/json Openstack-Request-Id: req-aeb14375-7ca0-4645-aaac-41f9623ce94a X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.28 {"node_uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "uuid": "6eb02b44-18a3-4659-8c0b-8d2802581ae4", "links": [{"href": "http://localhost/v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4", "rel": "self"}, {"href": "http://localhost/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4", "rel": "bookmark"}], "extra": {}, "created_at": "2019-06-06T07:02:16.815012+00:00", "updated_at": "2019-06-06T07:02:16.885700+00:00", "ports": [{"href": "http://localhost/v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4/ports", "rel": "self"}, {"href": "http://localhost/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4/ports", "rel": "bookmark"}], "standalone_ports_supported": true, "mode": "active-backup", "address": "52:54:00:cf:2d:31", "internal_info": {"tenant_vif_port_id": "bar", "bar": "buzz"}, "properties": {}, "name": "fooname"} {19} ironic.tests.unit.api.controllers.v1.test_portgroup.TestPatchExtraVifPortId.test_remove_extra_vif_port_id_not_same [0.134246s] ... ok POST: /v1/ports {'local_link_connection': {'switch_info': 'switch1', 'port_id': 'Ethernet3/1', 'switch_id': '0a:1b:2c:3d:4e:5f'}, 'node_uuid': 'invalid-format', 'uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c781', 'extra': {}, 'pxe_enabled': True, 'portgroup_uuid': '6eb02b44-18a3-4659-8c0b-8d2802581ae4', 'physical_network': None, 'address': '52:54:00:cf:2d:31', 'is_smartnic': False} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-50d51ac0-6976-4cf2-a9b2-07df77a081d0 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Expected a UUID but received invalid-format.\"}"} {26} ironic.tests.unit.api.controllers.v1.test_port.TestPost.test_create_port_invalid_node_uuid_format [0.069133s] ... ok PATCH: /v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 [{'path': '/portgroup_uuid', 'value': '64592b5e-996e-4674-a79f-eaea7a24d4f9', 'op': 'replace'}] GOT:Response: 406 Not Acceptable Content-Type: application/json Openstack-Request-Id: req-6d985f5d-ea9d-4a0b-b989-fac01e6a31e3 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.15 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Request not acceptable.\"}"} {27} ironic.tests.unit.api.controllers.v1.test_port.TestPatch.test_replace_portgroup_uuid_old_api [0.071494s] ... ok POST: /v1/ports {'local_link_connection': {'switch_info': 'switch1', 'port_id': 'Ethernet3/1', 'switch_id': '0a:1b:2c:3d:4e:5f'}, 'node_uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123', 'uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c781', 'extra': {'vif_port_id': '9a5e36a6-4602-415c-8e3f-615975554657'}, 'pxe_enabled': True, 'portgroup_uuid': '6eb02b44-18a3-4659-8c0b-8d2802581ae4', 'physical_network': None, 'address': '52:54:00:cf:2d:31', 'is_smartnic': False} GOT:Response: 201 Created Content-Type: application/json Location: http://localhost/v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 Openstack-Request-Id: req-47fbe1dd-fb3a-4456-968c-98b5bae93f72 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"local_link_connection": {"switch_info": "switch1", "port_id": "Ethernet3/1", "switch_id": "0a:1b:2c:3d:4e:5f"}, "node_uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "links": [{"href": "http://localhost/v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "rel": "self"}, {"href": "http://localhost/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "rel": "bookmark"}], "extra": {"vif_port_id": "9a5e36a6-4602-415c-8e3f-615975554657"}, "pxe_enabled": true, "portgroup_uuid": "6eb02b44-18a3-4659-8c0b-8d2802581ae4", "updated_at": null, "physical_network": null, "address": "52:54:00:cf:2d:31", "internal_info": {"tenant_vif_port_id": "9a5e36a6-4602-415c-8e3f-615975554657"}, "created_at": "2019-06-06T07:02:16.505177+00:00", "is_smartnic": false} {1} ironic.tests.unit.api.controllers.v1.test_port.TestPost.test_create_port_vif_pxe_portgroup_standalone_ports [0.111668s] ... ok POST: /v1/volume/targets {'boot_index': 0, 'uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c781', 'extra': {}, 'volume_type': 'iscsi', 'node_uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123', 'volume_id': '12345678', 'properties': {'target_iqn': 'iqn.foo'}} GOT:Response: 500 Internal Server Error Content-Type: application/json Openstack-Request-Id: req-be8d798f-16ad-4aca-aa20-2d924e3e9123 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Server\", \"faultstring\": \"\"}"} {8} ironic.tests.unit.api.controllers.v1.test_volume_target.TestPost.test_create_volume_target_error [0.077667s] ... ok PUT: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states/raid {'logical_disks': [{'size_gb': 100, 'raid_level': 1}]} GOT:Response: 406 Not Acceptable Content-Type: application/json Openstack-Request-Id: req-d4a87f4b-3e19-4d65-9a4b-575bce4793ac X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.5 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Request not acceptable.\"}"} {14} ironic.tests.unit.api.controllers.v1.test_node.TestPut.test_put_raid_older_version [0.068823s] ... ok PATCH: /v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 [{'path': '/address', 'value': 'aa:bb:cc:dd:ee:ff', 'op': 'add'}] GOT:Response: 200 OK Content-Type: application/json Openstack-Request-Id: req-625a1aa1-dcff-4b6d-9866-0c5e5d394f9b X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"node_uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "links": [{"href": "http://localhost/v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "rel": "self"}, {"href": "http://localhost/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "rel": "bookmark"}], "extra": {}, "created_at": "2019-06-06T07:02:17.210635+00:00", "updated_at": "2019-06-06T07:02:17.284382+00:00", "address": "aa:bb:cc:dd:ee:ff"} {7} ironic.tests.unit.api.controllers.v1.test_port.TestPatch.test_add_root [0.140368s] ... ok GET: /v1/portgroups/detail {} GOT:Response: 404 Not Found Content-Type: application/json {"error_message": "{\"code\": 404, \"description\": \"\", \"title\": \"Not Found\"}"} {1} ironic.tests.unit.api.controllers.v1.test_portgroup.TestListPortgroups.test_detail_invalid_api_version [0.030871s] ... ok GET: /v1/portgroups/0571e242-7beb-41e0-81ff-10e67340be57/ports {} GOT:{u'ports': [{u'uuid': u'643c493d-99aa-48ca-aff1-0687033322cf', u'links': [{u'href': u'http://localhost/v1/ports/643c493d-99aa-48ca-aff1-0687033322cf', u'rel': u'self'}, {u'href': u'http://localhost/ports/643c493d-99aa-48ca-aff1-0687033322cf', u'rel': u'bookmark'}], u'address': u'52:54:00:cf:2d:30'}, {u'uuid': u'9a90274f-aa3b-44c4-a970-3626a4a2f4c4', u'links': [{u'href': u'http://localhost/v1/ports/9a90274f-aa3b-44c4-a970-3626a4a2f4c4', u'rel': u'self'}, {u'href': u'http://localhost/ports/9a90274f-aa3b-44c4-a970-3626a4a2f4c4', u'rel': u'bookmark'}], u'address': u'52:54:00:cf:2d:31'}]} GET: /v1/portgroups/0571e242-7beb-41e0-81ff-10e67340be57/ports/detail {} GOT:{u'ports': [{u'local_link_connection': {u'switch_info': u'switch1', u'port_id': u'Ethernet3/1', u'switch_id': u'0a:1b:2c:3d:4e:5f'}, u'node_uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'uuid': u'643c493d-99aa-48ca-aff1-0687033322cf', u'links': [{u'href': u'http://localhost/v1/ports/643c493d-99aa-48ca-aff1-0687033322cf', u'rel': u'self'}, {u'href': u'http://localhost/ports/643c493d-99aa-48ca-aff1-0687033322cf', u'rel': u'bookmark'}], u'extra': {}, u'pxe_enabled': True, u'portgroup_uuid': u'0571e242-7beb-41e0-81ff-10e67340be57', u'updated_at': None, u'physical_network': None, u'address': u'52:54:00:cf:2d:30', u'internal_info': {u'bar': u'buzz'}, u'created_at': u'2019-06-06T07:02:16.822125+00:00', u'is_smartnic': False}, {u'local_link_connection': {u'switch_info': u'switch1', u'port_id': u'Ethernet3/1', u'switch_id': u'0a:1b:2c:3d:4e:5f'}, u'node_uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'uuid': u'9a90274f-aa3b-44c4-a970-3626a4a2f4c4', u'links': [{u'href': u'http://localhost/v1/ports/9a90274f-aa3b-44c4-a970-3626a4a2f4c4', u'rel': u'self'}, {u'href': u'http://localhost/ports/9a90274f-aa3b-44c4-a970-3626a4a2f4c4', u'rel': u'bookmark'}], u'extra': {}, u'pxe_enabled': True, u'portgroup_uuid': u'0571e242-7beb-41e0-81ff-10e67340be57', u'updated_at': None, u'physical_network': None, u'address': u'52:54:00:cf:2d:31', u'internal_info': {u'bar': u'buzz'}, u'created_at': u'2019-06-06T07:02:16.826461+00:00', u'is_smartnic': False}]} GET: /v1/portgroups/0571e242-7beb-41e0-81ff-10e67340be57/ports?limit=1 {} GOT:{u'ports': [{u'uuid': u'643c493d-99aa-48ca-aff1-0687033322cf', u'links': [{u'href': u'http://localhost/v1/ports/643c493d-99aa-48ca-aff1-0687033322cf', u'rel': u'self'}, {u'href': u'http://localhost/ports/643c493d-99aa-48ca-aff1-0687033322cf', u'rel': u'bookmark'}], u'address': u'52:54:00:cf:2d:30'}], u'next': u'http://localhost/v1/ports?sort_dir=asc&sort_key=id&limit=1&marker=643c493d-99aa-48ca-aff1-0687033322cf'} GET: /v1/portgroups/0571e242-7beb-41e0-81ff-10e67340be57/ports/268620f1-8b54-4514-9c44-761e9484af32 {} GOT:Response: 404 Not Found Content-Type: application/json {"error_message": "{\"code\": 404, \"description\": \"\", \"title\": \"Not Found\"}"} GET: /v1/portgroups/0571e242-7beb-41e0-81ff-10e67340be57/ports/50223701-687b-4b26-b7a3-4aaef6d25fdc {} GOT:Response: 403 Forbidden Content-Type: application/json Openstack-Request-Id: req-f13a4309-a9a7-4847-a547-2c7f97daef0b X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Operation not permitted.\"}"} {30} ironic.tests.unit.api.controllers.v1.test_portgroup.TestListPortgroups.test_ports_subresource [0.234262s] ... ok PUT: /v1/nodes/node-39/traits/CUSTOM_3 {} GOT:Response: 409 Conflict Content-Type: application/json Openstack-Request-Id: req-8fe5e97b-1fd8-4be7-8bae-215c98521858 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.37 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Node 1be26c0b-03f2-4d2e-ae87-c02d7f33c123 is locked by host host1, please retry after the current operation is completed.\"}"} {3} ironic.tests.unit.api.controllers.v1.test_node.TestTraits.test_add_single_trait_fails_if_node_locked [0.092230s] ... ok GET: /v1/lookup?addresses=11:22:33:44:55:66,66:55:44:33:22:11&node_uuid=28bff183-392e-4712-99ce-fedc98eec914 {} GOT:Response: 404 Not Found Content-Type: application/json Openstack-Request-Id: req-1e9e7205-8925-4b23-821f-e9329e412809 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Resource could not be found.\"}"} {19} ironic.tests.unit.api.controllers.v1.test_ramdisk.TestLookup.test_restrict_lookup [0.084459s] ... ok {19} ironic.tests.unit.api.controllers.v1.test_types.TestEventType.test_event_missing_madatory_field [0.016483s] ... ok {19} ironic.tests.unit.api.controllers.v1.test_types.TestNameType.test_valid_name [0.016866s] ... ok {19} ironic.tests.unit.api.controllers.v1.test_utils.TestApiUtils.test_check_allow_specify_resource_class [0.018085s] ... ok {19} ironic.tests.unit.api.controllers.v1.test_utils.TestApiUtils.test_validate_limit [0.018577s] ... ok {19} ironic.tests.unit.api.controllers.v1.test_utils.TestNodeIdent.test_allow_node_logical_names_pre_name [0.017602s] ... ok {19} ironic.tests.unit.api.controllers.v1.test_utils.TestVendorPassthru.test_vendor_passthru_attach_unicode_to_byte [0.018578s] ... ok GET: /v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4/ports {} GOT:Response: 404 Not Found Content-Type: application/json {"error_message": "{\"code\": 404, \"description\": \"\", \"title\": \"Not Found\"}"} {30} ironic.tests.unit.api.controllers.v1.test_portgroup.TestListPortgroups.test_ports_subresource_not_allowed [0.050213s] ... ok GET: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123 {} GOT:Response: 403 Forbidden Content-Type: application/json Openstack-Request-Id: req-4722f32f-b7d2-48a0-b339-3c604529f0d4 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Access was denied to the following resource: baremetal:node:get\"}"} {8} ironic.tests.unit.api.test_acl.TestACL.test_non_admin [0.073294s] ... ok {8} ironic.tests.unit.api.test_hooks.TestContextHook.test_context_hook_noauth_token_removed [0.029911s] ... ok PATCH: /v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 [{'path': '/address', 'op': 'remove'}] GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-db49c752-45db-4a92-846d-d3fb57752d9e X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"'/address' is a mandatory attribute and can not be removed\"}"} {7} ironic.tests.unit.api.controllers.v1.test_port.TestPatch.test_remove_mandatory_field [0.071797s] ... ok GET: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123 {} GOT:{u'target_power_state': None, u'links': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'bookmark'}], u'target_provision_state': None, u'last_error': None, u'updated_at': None, u'maintenance_reason': None, u'states': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states', u'rel': u'bookmark'}], u'provision_state': u'available', u'clean_step': {}, u'uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'console_enabled': False, u'extra': {}, u'raid_config': {}, u'provision_updated_at': None, u'power_state': None, u'target_raid_config': {}, u'network_interface': None, u'inspection_started_at': None, u'inspection_finished_at': None, u'maintenance': False, u'driver': u'fake-hardware', u'reservation': None, u'properties': {u'memory_mb': u'4096', u'cpu_arch': u'x86_64', u'local_gb': u'10', u'cpus': u'8'}, u'instance_uuid': None, u'name': None, u'driver_info': {u'fake_password': u'******', u'foo': u'bar'}, u'resource_class': None, u'created_at': u'2019-06-06T07:02:16.076902+00:00', u'portgroups': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/portgroups', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/portgroups', u'rel': u'bookmark'}], u'instance_info': {u'foo': u'bar', u'image_url': u'******', u'configdrive': u'******'}, u'driver_internal_info': {u'private_state': u'secret value'}, u'chassis_uuid': None, u'ports': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'bookmark'}]} {31} ironic.tests.unit.api.controllers.v1.test_node.TestListNodes.test_portgroups_subresource_link [0.085070s] ... ok POST: /v1/ports {'local_link_connection': {'switch_info': 'switch1', 'port_id': 'Ethernet3/1', 'switch_id': '0a:1b:2c:3d:4e:5f'}, 'node_uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123', 'uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c781', 'extra': {}, 'pxe_enabled': True, 'portgroup_uuid': '6eb02b44-18a3-4659-8c0b-8d2802581ae4', 'physical_network': None, 'address': '52:54:00:cf:2d:31', 'is_smartnic': False} GOT:Response: 500 Internal Server Error Content-Type: application/json Openstack-Request-Id: req-13558e2a-6ff9-441d-aa9f-44013724954a X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Server\", \"faultstring\": \"\"}"} {27} ironic.tests.unit.api.controllers.v1.test_port.TestPost.test_create_port_error [0.111591s] ... ok GET: /v1/volume/connectors {} GOT:{u'connectors': [{u'node_uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'type': u'iqn', u'uuid': u'379662dc-55d9-4dbc-a9f0-65f5afefa6da', u'links': [{u'href': u'http://localhost/v1/volume/connectors/379662dc-55d9-4dbc-a9f0-65f5afefa6da', u'rel': u'self'}, {u'href': u'http://localhost/volume/connectors/379662dc-55d9-4dbc-a9f0-65f5afefa6da', u'rel': u'bookmark'}], u'connector_id': u'test-connector_id-0'}, {u'node_uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'type': u'iqn', u'uuid': u'7520947d-5f05-406e-8716-aef9ed417540', u'links': [{u'href': u'http://localhost/v1/volume/connectors/7520947d-5f05-406e-8716-aef9ed417540', u'rel': u'self'}, {u'href': u'http://localhost/volume/connectors/7520947d-5f05-406e-8716-aef9ed417540', u'rel': u'bookmark'}], u'connector_id': u'test-connector_id-1'}, {u'node_uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'type': u'iqn', u'uuid': u'06a5b7f2-ee63-4c9b-ae0c-64fffe0d7db1', u'links': [{u'href': u'http://localhost/v1/volume/connectors/06a5b7f2-ee63-4c9b-ae0c-64fffe0d7db1', u'rel': u'self'}, {u'href': u'http://localhost/volume/connectors/06a5b7f2-ee63-4c9b-ae0c-64fffe0d7db1', u'rel': u'bookmark'}], u'connector_id': u'test-connector_id-2'}], u'next': u'http://localhost/v1/volume/connectors?sort_key=id&sort_dir=asc&limit=3&marker=06a5b7f2-ee63-4c9b-ae0c-64fffe0d7db1'} {10} ironic.tests.unit.api.controllers.v1.test_volume_connector.TestListVolumeConnectors.test_collection_links_default_limit [0.135411s] ... ok GET: / {} GOT:Response: 500 Internal Server Error Content-Type: application/json Openstack-Request-Id: req-17661a4f-2cd6-4ab7-b9a3-e5cf4a243069 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Server\", \"faultstring\": \"Error message without traceback \\n but \\n multiline\"}"} {8} ironic.tests.unit.api.test_hooks.TestNoExceptionTracebackHook.test_hook_without_traceback_debug [0.045318s] ... ok {8} ironic.tests.unit.common.test_cinder.TestCinderActions.test_attach_volumes [0.145889s] ... ok {8} ironic.tests.unit.common.test_driver_factory.CheckAndUpdateNodeInterfacesTestCase.test_no_network_interface_default_from_conf [0.038428s] ... ok {8} ironic.tests.unit.common.test_exception.TestIronicException.test___str__non_string [0.016695s] ... ok {8} ironic.tests.unit.common.test_glance_service.TestGlanceSwiftTempURL.test__validate_temp_url_no_key_no_exception [0.016256s] ... ok {8} ironic.tests.unit.common.test_glance_service.TestGlanceSwiftTempURL.test_swift_temp_url_account_detected [0.025964s] ... ok {8} ironic.tests.unit.common.test_image_service.HttpImageServiceTestCase.test_show_rfc_850 [0.029114s] ... ok {8} ironic.tests.unit.common.test_images.FsImageTestCase.test__mount_deploy_iso_fail_with_ExecutionError [0.019098s] ... ok {8} ironic.tests.unit.common.test_images.FsImageTestCase.test_create_isolinux_image_for_bios_conf_ldlinux [0.032310s] ... ok {8} ironic.tests.unit.common.test_json_rpc.TestService.test_success_no_result [0.049149s] ... ok POST: /v1/ports {'local_link_connection': {'switch_info': 'switch1', 'port_id': 'Ethernet3/1', 'switch_id': '0a:1b:2c:3d:4e:5f'}, 'node_uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123', 'uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c781', 'extra': {}, 'pxe_enabled': True, 'portgroup_uuid': '1a1a1a1a-2b2b-3c3c-4d4d-5e5e5e5e5e5e', 'physical_network': None, 'address': '52:54:00:cf:2d:31', 'is_smartnic': False} GOT:Response: 406 Not Acceptable Content-Type: application/json Openstack-Request-Id: req-f33c73f4-26bb-4839-a3b7-5c7a8a8ef422 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Request not acceptable.\"}"} {8} ironic.tests.unit.common.test_neutron.TestGetPhysnetsByPortUUID.test_get_physnets_by_port_uuid_multiple_segments_no_physnet [0.025294s] ... ok {26} ironic.tests.unit.api.controllers.v1.test_port.TestPost.test_create_port_portgroup_uuid_not_found_old_api_version [0.080661s] ... ok PUT: /v1/nodes/node-39/traits/CUSTOM_3 {'traits': ['CUSTOM_3']} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-f5bb5d80-4f67-4483-8f4f-edb8a8d98a12 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.37 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"A single node trait may be added via PUT /v1/nodes//traits/ with no body, or all node traits may be replaced via PUT /v1/nodes//traits with the list of traits specified in the request body.\"}"} {8} ironic.tests.unit.common.test_neutron.TestNeutronNetworkActions.test_remove_ports_from_network [0.105754s] ... ok {14} ironic.tests.unit.api.controllers.v1.test_node.TestTraits.test_no_add_single_trait_via_body_2 [0.089219s] ... ok {8} ironic.tests.unit.common.test_neutron.TestNeutronNetworkActions.test_validate_port_info_neutron_interface_missed_info [0.076486s] ... ok {8} ironic.tests.unit.common.test_pxe_utils.PXEInterfacesTestCase.test__get_deploy_image_info_deploy_ramdisk [0.031559s] ... ok {8} ironic.tests.unit.common.test_pxe_utils.PXEInterfacesTestCase.test__get_deploy_image_info_ipxe [0.031132s] ... ok {8} ironic.tests.unit.common.test_raid.RaidPublicMethodsTestCase.test_update_raid_info_okay [0.072860s] ... ok PATCH: /v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4 [{'path': '/extra/vif_port_id', 'value': 'foo', 'op': 'add'}, {'path': '/extra/vif_port_id', 'value': 'bar', 'op': 'add'}] GOT:Response: 200 OK Content-Type: application/json Openstack-Request-Id: req-bb315fb8-0127-4587-83bc-4f1f99fa244c X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.27 {"node_uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "uuid": "6eb02b44-18a3-4659-8c0b-8d2802581ae4", "links": [{"href": "http://localhost/v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4", "rel": "self"}, {"href": "http://localhost/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4", "rel": "bookmark"}], "extra": {"vif_port_id": "bar"}, "created_at": "2019-06-06T07:02:16.868542+00:00", "updated_at": "2019-06-06T07:02:16.942507+00:00", "ports": [{"href": "http://localhost/v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4/ports", "rel": "self"}, {"href": "http://localhost/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4/ports", "rel": "bookmark"}], "standalone_ports_supported": true, "mode": "active-backup", "address": "52:54:00:cf:2d:31", "internal_info": {"tenant_vif_port_id": "original"}, "properties": {}, "name": "fooname"} {6} ironic.tests.unit.api.controllers.v1.test_portgroup.TestPatchExtraVifPortId.test_add_extra_vif_port_id_diff_internal [0.141872s] ... ok {6} ironic.tests.unit.api.controllers.v1.test_root.TestCheckVersions.test_check_version_invalid_major_version [0.019568s] ... ok {8} ironic.tests.unit.common.test_release_mappings.ReleaseMappingsTestCase.test_contains_all_db_objects [0.012272s] ... ok {6} ironic.tests.unit.api.controllers.v1.test_root.TestCheckVersions.test_check_version_too_low [0.016964s] ... ok {8} ironic.tests.unit.common.test_utils.GenericUtilsTestCase.test__get_hash_object_throws_for_invalid_or_unsupported_hash_name [0.012363s] ... ok {6} ironic.tests.unit.api.controllers.v1.test_types.TestJsonPatchType.test_invalid_op [0.038857s] ... ok {8} ironic.tests.unit.common.test_utils.JinjaTemplatingTestCase.test_render_string [0.024282s] ... ok {8} ironic.tests.unit.common.test_utils.TempFilesTestCase.test_check_dir_ok [0.024312s] ... ok {6} ironic.tests.unit.api.controllers.v1.test_types.TestLocalLinkConnectionType.test_local_link_connection_type [0.015499s] ... ok {8} ironic.tests.unit.common.test_wsgi_service.TestWSGIService.test_workers_set_correct_setting [0.077000s] ... ok POST: /v1/nodes {'instance_uuid': None, 'uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123', 'driver_info': {'fake_password': 'fakepass', 'foo': 'bar'}, 'extra': {}, 'driver': 'fake-hardware', 'properties': {'none': None, 'int': 123, 'float': 0.1, 'list': [1, 2], 'bool': True, 'str': 'foo', 'dict': {'cat': 'meow'}}, 'maintenance': False, 'chassis_uuid': 'e74c40e0-d825-11e2-a28f-0800200c9a66', 'instance_info': {'foo': 'bar', 'image_url': 'http://example.com/test_image_url', 'configdrive': 'TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQ='}} GOT:Response: 201 Created Content-Type: application/json Location: http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123 Openstack-Request-Id: req-27cc50e6-00a7-4694-9c52-42b101654077 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"target_power_state": null, "links": [{"href": "http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "rel": "self"}, {"href": "http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "rel": "bookmark"}], "target_provision_state": null, "last_error": null, "updated_at": null, "maintenance_reason": null, "provision_state": null, "uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "console_enabled": false, "extra": {}, "provision_updated_at": null, "maintenance": false, "power_state": null, "driver": "fake-hardware", "reservation": null, "properties": {"none": null, "int": 123, "float": 0.1, "list": [1, 2], "dict": {"cat": "meow"}, "str": "foo", "bool": true}, "instance_uuid": null, "driver_info": {"fake_password": "******", "foo": "bar"}, "created_at": "2019-06-06T07:02:16.075642+00:00", "ports": [{"href": "http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports", "rel": "self"}, {"href": "http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports", "rel": "bookmark"}], "chassis_uuid": "e74c40e0-d825-11e2-a28f-0800200c9a66", "instance_info": {"foo": "bar", "image_url": "******", "configdrive": "******"}} GET: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123 {} GOT:{u'target_power_state': None, u'links': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'bookmark'}], u'target_provision_state': None, u'last_error': None, u'updated_at': None, u'maintenance_reason': None, u'provision_state': None, u'uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'console_enabled': False, u'extra': {}, u'provision_updated_at': None, u'maintenance': False, u'power_state': None, u'driver': u'fake-hardware', u'reservation': None, u'properties': {u'none': None, u'int': 123, u'float': 0.1, u'list': [1, 2], u'bool': True, u'str': u'foo', u'dict': {u'cat': u'meow'}}, u'instance_uuid': None, u'driver_info': {u'fake_password': u'******', u'foo': u'bar'}, u'created_at': u'2019-06-06T07:02:16.075642+00:00', u'ports': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'bookmark'}], u'chassis_uuid': u'e74c40e0-d825-11e2-a28f-0800200c9a66', u'instance_info': {u'foo': u'bar', u'image_url': u'******', u'configdrive': u'******'}} {6} ironic.tests.unit.api.controllers.v1.test_utils.TestApiUtils.test_allow_dynamic_drivers [0.016725s] ... ok {29} ironic.tests.unit.api.controllers.v1.test_node.TestPost.test_create_node_valid_properties [0.136193s] ... ok {8} ironic.tests.unit.conductor.test_manager.ConsoleTestCase.test_set_console_mode_start_fail [0.328953s] ... ok {6} ironic.tests.unit.api.controllers.v1.test_utils.TestApiUtils.test_allow_links_node_states_and_driver_properties [0.017906s] ... ok {6} ironic.tests.unit.api.controllers.v1.test_utils.TestApiUtils.test_check_allowed_portgroup_fields_mode_properties [0.016891s] ... ok {8} ironic.tests.unit.conductor.test_manager.ContinueNodeDeployTestCase.test_continue_node_deploy_wrong_state [0.255125s] ... ok {8} ironic.tests.unit.conductor.test_manager.DoNodeCleanTestCase.test__do_next_clean_step_manual_last_step_noop [0.306711s] ... ok {6} ironic.tests.unit.api.controllers.v1.test_utils.TestApiUtils.test_validate_sort_dir [0.015797s] ... ok {8} ironic.tests.unit.conductor.test_manager.DoNodeCleanTestCase.test__do_node_clean_automated_power_validate_fail [0.139556s] ... ok {8} ironic.tests.unit.conductor.test_manager.DoNodeCleanTestCase.test__do_node_clean_manual_power_validate_fail [0.166268s] ... ok {8} ironic.tests.unit.conductor.test_manager.DoNodeCleanTestCase.test_do_next_clean_step_automated_first_step_async [0.299757s] ... ok DELETE: /v1/nodes/node-39/traits/CUSTOM_1 GOT:Response: 409 Conflict Content-Type: application/json Openstack-Request-Id: req-79147b1f-b668-4193-b674-67c12faef814 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.37 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Node 1be26c0b-03f2-4d2e-ae87-c02d7f33c123 is locked by host host1, please retry after the current operation is completed.\"}"} {8} ironic.tests.unit.conductor.test_manager.DoNodeRescueTestCase.test__do_node_rescue_bad_state [0.271584s] ... ok {3} ironic.tests.unit.api.controllers.v1.test_node.TestTraits.test_delete_trait_fails_if_node_locked [0.092615s] ... ok {8} ironic.tests.unit.conductor.test_manager.DoNodeRescueTestCase.test__do_node_unrescue_bad_state [0.225431s] ... ok {8} ironic.tests.unit.conductor.test_manager.NmiTestCase.test_inject_nmi_validate_missing_param [0.065309s] ... ok {8} ironic.tests.unit.conductor.test_manager.RaidHardwareTypeTestCases.test_set_target_raid_config_empty [0.129947s] ... ok PATCH: /v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4 [{'path': '/extra/foo1', 'op': 'remove'}] GOT:Response: 200 OK Content-Type: application/json Openstack-Request-Id: req-cde80471-c744-449c-876b-f22291d9ebde X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"node_uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "uuid": "6eb02b44-18a3-4659-8c0b-8d2802581ae4", "links": [{"href": "http://localhost/v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4", "rel": "self"}, {"href": "http://localhost/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4", "rel": "bookmark"}], "extra": {"foo2": "bar2", "foo3": "bar3"}, "created_at": "2019-06-06T07:02:16.456050+00:00", "updated_at": "2019-06-06T07:02:16.467627+00:00", "ports": [{"href": "http://localhost/v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4/ports", "rel": "self"}, {"href": "http://localhost/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4/ports", "rel": "bookmark"}], "standalone_ports_supported": true, "mode": "active-backup", "address": "52:54:00:cf:2d:31", "internal_info": {"bar": "buzz"}, "properties": {}, "name": "pg.1"} PATCH: /v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4 [{'path': '/extra', 'op': 'remove'}] GOT:Response: 200 OK Content-Type: application/json Openstack-Request-Id: req-3da074b0-05b4-44b5-949f-f9118edf1b09 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"node_uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "uuid": "6eb02b44-18a3-4659-8c0b-8d2802581ae4", "links": [{"href": "http://localhost/v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4", "rel": "self"}, {"href": "http://localhost/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4", "rel": "bookmark"}], "extra": {}, "created_at": "2019-06-06T07:02:16.456050+00:00", "updated_at": "2019-06-06T07:02:16.467627+00:00", "ports": [{"href": "http://localhost/v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4/ports", "rel": "self"}, {"href": "http://localhost/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4/ports", "rel": "bookmark"}], "standalone_ports_supported": true, "mode": "active-backup", "address": "52:54:00:cf:2d:31", "internal_info": {"bar": "buzz"}, "properties": {}, "name": "pg.1"} {25} ironic.tests.unit.api.controllers.v1.test_portgroup.TestPatch.test_remove_multi [0.186655s] ... ok {8} ironic.tests.unit.conductor.test_manager.SensorsTestCase.test_send_sensor_task_maintenance [0.160047s] ... ok {8} ironic.tests.unit.conductor.test_manager.ServiceDoNodeDeployTestCase.test_do_node_deploy_rebuild_error_state [0.305839s] ... ok {8} ironic.tests.unit.conductor.test_manager.UpdateNodeTestCase.test_update_resource_class_allowed_state [0.383855s] ... ok {8} ironic.tests.unit.conductor.test_manager.UpdateVolumeTargetTestCase.test_update_volume_target_uuid [0.096200s] ... ok {8} ironic.tests.unit.conductor.test_manager.VendorPassthruTestCase.test_vendor_passthru_node_already_locked [0.189135s] ... ok {8} ironic.tests.unit.conductor.test_manager.VifTestCase.test_vif_attach_validate_error [0.068823s] ... ok GET: /v1/volume/connectors {} GOT:{u'connectors': []} {6} ironic.tests.unit.api.controllers.v1.test_volume_connector.TestListVolumeConnectors.test_empty [0.065012s] ... ok {8} ironic.tests.unit.conductor.test_rpcapi.RPCAPITestCase.test_get_random_topic_no_conductors [0.018308s] ... ok {8} ironic.tests.unit.conductor.test_rpcapi.RPCAPITestCase.test_object_backport_versions [0.016610s] ... ok {8} ironic.tests.unit.conductor.test_steps.NodeCleaningStepsTestCase.test__validate_user_clean_steps_no_steps [0.071075s] ... ok {8} ironic.tests.unit.conductor.test_steps.NodeDeployStepsTestCase.test__get_all_deployment_steps_disable_core_steps [0.072642s] ... ok {8} ironic.tests.unit.conductor.test_steps.ValidateDeployTemplatesTestCase.test_ok [0.073900s] ... ok {8} ironic.tests.unit.conductor.test_task_manager.ExclusiveLockDecoratorTestCase.test_with_excl_lock_task_second_arg [0.010991s] ... ok {8} ironic.tests.unit.conductor.test_task_manager.ProvisionNotifyTestCase.test_notify_stable_to_stable [0.012396s] ... ok {8} ironic.tests.unit.conductor.test_utils.ErrorHandlersTestCase.test_cleaning_error_handler_manual [0.011747s] ... ok {8} ironic.tests.unit.conductor.test_utils.MiscTestCase.test_notify_conductor_resume_deploy [0.068360s] ... ok {8} ironic.tests.unit.conductor.test_utils.NodeSetBootModeTestCase.test_node_set_boot_mode_adopting [0.062972s] ... ok {8} ironic.tests.unit.conductor.test_utils.ValidatePortPhysnetTestCase.test_validate_port_physnet_2_port_portgroup_w_physnet_update_1 [0.077819s] ... ok {8} ironic.tests.unit.conductor.test_utils.ValidatePortPhysnetTestCase.test_validate_port_physnet_empty_portgroup_update_2 [0.076642s] ... ok {8} ironic.tests.unit.db.sqlalchemy.test_models.TestGetClass.test_get_class_bad [0.013769s] ... ok {8} ironic.tests.unit.db.test_allocations.AllocationsTestCase.test_get_allocation_by_id [0.022043s] ... ok {8} ironic.tests.unit.db.test_allocations.AllocationsTestCase.test_get_allocation_by_uuid_that_does_not_exist [0.028009s] ... ok {8} ironic.tests.unit.db.test_allocations.AllocationsTestCase.test_take_over_success [0.037034s] ... ok {8} ironic.tests.unit.db.test_api.UpdateToLatestVersionsTestCase.test_one_node [0.222438s] ... ok {8} ironic.tests.unit.db.test_api.UpgradingTestCase.test_check_versions_ignore_node [0.316660s] ... ok {8} ironic.tests.unit.db.test_conductor.DbConductorTestCase.test_register_conductor_hardware_interfaces [0.027018s] ... ok {8} ironic.tests.unit.db.test_deploy_templates.DbDeployTemplateTestCase.test_create_invalid_step_no_interface [0.028353s] ... ok {8} ironic.tests.unit.db.test_node_tags.DbNodeTagTestCase.test_set_node_tags_duplicate [0.028005s] ... ok GET: /v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4?fields=address,extra {} GOT:{u'address': u'52:54:00:cf:2d:31', u'links': [{u'href': u'http://localhost/v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4', u'rel': u'self'}, {u'href': u'http://localhost/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4', u'rel': u'bookmark'}], u'extra': {}} {7} ironic.tests.unit.api.controllers.v1.test_portgroup.TestListPortgroups.test_get_one_custom_fields [0.095036s] ... ok {8} ironic.tests.unit.db.test_node_traits.DbNodeTraitTestCase.test_set_node_traits_node_not_exist [0.024975s] ... ok {8} ironic.tests.unit.db.test_nodes.DbNodeTestCase.test_reservation_of_reserved_node_fails [0.063522s] ... ok {8} ironic.tests.unit.db.test_ports.DbPortTestCase.test_get_port_by_address [0.024743s] ... ok {8} ironic.tests.unit.db.test_volume_connectors.DbVolumeConnectorTestCase.test_update_volume_connector_duplicated_type_connector_id [0.027393s] ... ok {8} ironic.tests.unit.drivers.modules.ansible.test_deploy.TestAnsibleMethods.test__parse_partitioning_info_root_msdos [0.021159s] ... ok {8} ironic.tests.unit.drivers.modules.drac.test_common.DracCommonMethodsTestCase.test_parse_driver_info_missing_path [0.029451s] ... ok {8} ironic.tests.unit.drivers.modules.drac.test_management.DracManagementInternalMethodsTestCase.test__flexibly_program_boot_order_for_disk_and_bios [0.026246s] ... ok {8} ironic.tests.unit.drivers.modules.drac.test_management.DracManagementInternalMethodsTestCase.test_set_boot_device_called_with_unknown_boot_mode [0.040906s] ... ok {8} ironic.tests.unit.drivers.modules.ibmc.test_management.IBMCManagementTestCase.test_validate [0.054244s] ... ok {8} ironic.tests.unit.drivers.modules.ibmc.test_utils.IBMCUtilsTestCase.test_parse_driver_info_valid_string_value_verify_ca [0.021746s] ... ok {8} ironic.tests.unit.drivers.modules.ilo.test_boot.IloBootPrivateMethodsTestCase.test__validate_glance_partition_image [0.080267s] ... ok {8} ironic.tests.unit.drivers.modules.ilo.test_boot.IloVirtualMediaBootTestCase.test_clean_up_instance_rescuing [0.107156s] ... ok {8} ironic.tests.unit.drivers.modules.ilo.test_boot.IloVirtualMediaBootTestCase.test_prepare_instance_boot_from_volume [0.134551s] ... ok {8} ironic.tests.unit.drivers.modules.ilo.test_firmware_processor.FirmwareProcessorTestCase.test_get_and_validate_firmware_image_info [0.016624s] ... ok {8} ironic.tests.unit.drivers.modules.ilo.test_inspect.TestInspectPrivateMethods.test__get_capabilities_ok [0.027734s] ... ok {8} ironic.tests.unit.drivers.modules.ilo.test_management.IloManagementTestCase.test__execute_ilo_clean_step_ok [0.025657s] ... ok {8} ironic.tests.unit.drivers.modules.ilo.test_management.IloManagementTestCase.test_clear_iscsi_boot_target [0.079253s] ... ok {8} ironic.tests.unit.drivers.modules.ilo.test_management.IloManagementTestCase.test_get_boot_device_fail [0.073287s] ... ok {8} ironic.tests.unit.drivers.modules.ilo.test_management.IloManagementTestCase.test_get_supported_boot_devices [0.064545s] ... ok {8} ironic.tests.unit.drivers.modules.ilo.test_management.IloManagementTestCase.test_set_boot_device_persistent_true [0.071101s] ... ok {8} ironic.tests.unit.drivers.modules.irmc.test_boot.IRMCDeployPrivateMethodsTestCase.test__parse_config_option [0.023407s] ... ok {8} ironic.tests.unit.drivers.modules.irmc.test_boot.IRMCPXEBootBasicTestCase.test_prepare_instance_netboot_missing_root_uuid [0.101800s] ... ok {8} ironic.tests.unit.drivers.modules.irmc.test_boot.IRMCPXEBootBasicTestCase.test_prepare_ramdisk_force_persistent_boot_device_true [0.166705s] ... ok {8} ironic.tests.unit.drivers.modules.irmc.test_boot.IRMCPXEBootTestCase.test_clean_up_instance_secure_boot_false [0.092393s] ... ok {8} ironic.tests.unit.drivers.modules.irmc.test_boot.IRMCPXEBootTestCase.test_clean_up_instance_with_secure_boot [0.082786s] ... ok {8} ironic.tests.unit.drivers.modules.irmc.test_boot.IRMCVirtualMediaBootTestCase.test_validate_whole_disk_image [0.085372s] ... ok {8} ironic.tests.unit.drivers.modules.irmc.test_boot.IRMCVirtualMediaBootWithVolumeTestCase.test_validate_invalid_physical_id_in_lan_port [0.128576s] ... ok {8} ironic.tests.unit.drivers.modules.irmc.test_common.IRMCCommonMethodsTestCase.test_out_range_port [0.025059s] ... ok {8} ironic.tests.unit.drivers.modules.irmc.test_inspect.IRMCInspectTestCase.test_inspect_hardware_existing_cap_in_props [0.064459s] ... ok {8} ironic.tests.unit.drivers.modules.irmc.test_management.IRMCManagementTestCase.test_management_interface_inject_nmi_ok [0.069901s] ... ok {8} ironic.tests.unit.drivers.modules.irmc.test_management.IRMCManagementTestCase.test_management_interface_set_boot_device_ok_bios [0.304030s] ... ok {8} ironic.tests.unit.drivers.modules.irmc.test_raid.IRMCRaidConfigurationInternalMethodsTestCase.test__fail_validate_capacity_raid_0 [0.021372s] ... ok {8} ironic.tests.unit.drivers.modules.network.test_common.TestCommonFunctions.test_get_free_port_like_object_no_matching_physnets [0.075895s] ... ok {8} ironic.tests.unit.drivers.modules.network.test_common.TestNeutronVifPortIDMixin.test_update_portgroup_nostandalone_ports_novif_nopxe_ports [0.071184s] ... ok PUT: /v1/nodes/node-39/traits {'traits': ['CUSTOM_3']} GOT:Response: 204 No Content Openstack-Request-Id: req-4eb5b9a1-92e2-4ca6-9365-2569f28a1b6c X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.37 {3} ironic.tests.unit.api.controllers.v1.test_node.TestTraits.test_set_all_traits_with_chassis [0.121898s] ... ok {8} ironic.tests.unit.drivers.modules.network.test_flat.TestFlatInterface.test__unbind_flat_ports_portgroup [0.068618s] ... ok {8} ironic.tests.unit.drivers.modules.network.test_noop.NoopInterfaceTestCase.test_port_changed [0.066329s] ... ok {8} ironic.tests.unit.drivers.modules.redfish.test_bios.RedfishBiosTestCase.test_apply_configuration_fail [0.067274s] ... ok {8} ironic.tests.unit.drivers.modules.redfish.test_management.RedfishManagementTestCase.test_loading_error [0.021580s] ... ok PATCH: /v1/nodes/190d6813-1242-4aef-b637-bf2e2b12a962 [{'path': '/instance_uuid', 'op': 'remove'}] GOT:Response: 409 Conflict Content-Type: application/json Openstack-Request-Id: req-1fb52fde-0acb-462e-aec2-4436f7245fe7 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.39 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Cannot update node \\\"190d6813-1242-4aef-b637-bf2e2b12a962\\\" while it is in state \\\"inspecting\\\".\"}"} {31} ironic.tests.unit.api.controllers.v1.test_node.TestPatch.test_update_in_inspecting_not_allowed [0.106380s] ... ok {8} ironic.tests.unit.drivers.modules.redfish.test_management.RedfishManagementTestCase.test_set_boot_device [0.070031s] ... ok {8} ironic.tests.unit.drivers.modules.redfish.test_power.RedfishPowerTestCase.test_loading_error [0.020858s] ... ok {8} ironic.tests.unit.drivers.modules.redfish.test_utils.RedfishUtilsTestCase.test_get_system [0.061384s] ... ok {8} ironic.tests.unit.drivers.modules.redfish.test_utils.RedfishUtilsTestCase.test_get_system_resource_connection_error_retry [1.615300s] ... ok {8} ironic.tests.unit.drivers.modules.test_agent.AgentRAIDTestCase.test__delete_configuration_final [0.150571s] ... ok {8} ironic.tests.unit.drivers.modules.test_agent.AgentRescueTestCase.test_agent_rescue_validate_fails_no_rescue_password [0.127286s] ... ok {8} ironic.tests.unit.drivers.modules.test_agent.TestAgentDeploy.test_prepare_rescue_states [0.223661s] ... ok {8} ironic.tests.unit.drivers.modules.test_agent_base_vendor.HeartbeatMixinTest.test_heartbeat_resume_clean [0.133505s] ... ok {8} ironic.tests.unit.drivers.modules.test_agent_client.TestAgentClientAttempts.test__command_succeed_after_two_timeouts [0.012773s] ... ok {8} ironic.tests.unit.drivers.modules.test_deploy_utils.AgentMethodsTestCase.test_execute_clean_step_running [0.086756s] ... ok {8} ironic.tests.unit.drivers.modules.test_deploy_utils.InstanceImageCacheTestCase.test_without_master_path [0.020983s] ... ok {8} ironic.tests.unit.drivers.modules.test_deploy_utils.OtherFunctionTestCase.test_get_ironic_api_url_fail [0.025578s] ... ok {8} ironic.tests.unit.drivers.modules.test_deploy_utils.PhysicalWorkTestCase.test_deploy_partition_image_with_ephemeral [0.027954s] ... ok PATCH: /v1/volume/connectors/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 [{'path': '/uuid', 'op': 'remove'}] GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-7f9597b5-0239-4abd-9296-905ceffa5a73 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"'/uuid' is an internal attribute and can not be updated\"}"} {8} ironic.tests.unit.drivers.modules.test_deploy_utils.PhysicalWorkTestCase.test_verify_iscsi_connection [0.011888s] ... ok {10} ironic.tests.unit.api.controllers.v1.test_volume_connector.TestPatch.test_remove_uuid [0.063789s] ... ok {8} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolCheckOptionSupportedTestCase.test_check_dual_bridge_no_ipmitool [0.013380s] ... ok {8} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolPrivateMethodTestCase.test__exec_ipmitool_with_empty_username [0.028905s] ... ok {8} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolPrivateMethodTestCase.test_exec_ipmitool_exception_retries_exceeded_timeout [0.031964s] ... ok {8} ironic.tests.unit.drivers.modules.test_ipxe.iPXEBootTestCase.test_prepare_ramdisk_force_persistent_boot_device_bool_true [0.131160s] ... ok PATCH: /v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4 [{'path': '/mode', 'value': '802.3ad', 'op': 'add'}, {'path': '/properties/bond_param', 'value': '100', 'op': 'add'}] GOT:Response: 200 OK Content-Type: application/json Openstack-Request-Id: req-662885b9-149b-492c-ac3e-236babd17706 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"node_uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "uuid": "6eb02b44-18a3-4659-8c0b-8d2802581ae4", "links": [{"href": "http://localhost/v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4", "rel": "self"}, {"href": "http://localhost/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4", "rel": "bookmark"}], "extra": {}, "created_at": "2019-06-06T07:02:16.590199+00:00", "updated_at": null, "ports": [{"href": "http://localhost/v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4/ports", "rel": "self"}, {"href": "http://localhost/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4/ports", "rel": "bookmark"}], "standalone_ports_supported": true, "mode": "802.3ad", "address": "52:54:00:cf:2d:31", "internal_info": {"bar": "buzz"}, "properties": {"bond_param": "100"}, "name": "pg.1"} {1} ironic.tests.unit.api.controllers.v1.test_portgroup.TestPatch.test_update_portgroup_mode_properties [0.092525s] ... ok {8} ironic.tests.unit.drivers.modules.test_ipxe.iPXEBootTestCase.test_prepare_ramdisk_set_boot_mode_not_called [0.138280s] ... ok {8} ironic.tests.unit.drivers.modules.test_iscsi_deploy.IscsiDeployMethodsTestCase.test_continue_deploy [0.125118s] ... ok {8} ironic.tests.unit.drivers.modules.test_pxe.PXEBootTestCase.test_prepare_ramdisk [0.125282s] ... ok {8} ironic.tests.unit.drivers.modules.test_pxe.PXEBootTestCase.test_prepare_ramdisk_ipxe_without_copy [0.125303s] ... ok {8} ironic.tests.unit.drivers.modules.test_pxe.PXEBootTestCase.test_prepare_ramdisk_uefi [0.712337s] ... ok {8} ironic.tests.unit.drivers.modules.test_snmp.SNMPDeviceDriverTestCase.test_apc_rackpdu_power_state_off [0.016533s] ... ok {8} ironic.tests.unit.drivers.modules.test_snmp.SNMPDeviceDriverTestCase.test_auto_power_on_cached_driver [0.018650s] ... ok {8} ironic.tests.unit.drivers.modules.test_snmp.SNMPDeviceDriverTestCase.test_cyberpower_power_state_off [0.017401s] ... ok {8} ironic.tests.unit.drivers.modules.test_snmp.SNMPDeviceDriverTestCase.test_power_off_timeout [4.034518s] ... ok {8} ironic.tests.unit.drivers.modules.test_snmp.SNMPDeviceDriverTestCase.test_power_on [0.016035s] ... ok {8} ironic.tests.unit.drivers.modules.test_snmp.SNMPDriverTestCase.test_get_power_state_error [0.059003s] ... ok {8} ironic.tests.unit.drivers.modules.ucs.test_helper.UcsCommonMethodsTestcase.test_requires_ucs_client_ok_logout [0.137302s] ... ok GET: /v1/volume/connectors {} GOT:{u'connectors': [{u'node_uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'type': u'iqn', u'uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c781', u'links': [{u'href': u'http://localhost/v1/volume/connectors/1be26c0b-03f2-4d2e-ae87-c02d7f33c781', u'rel': u'self'}, {u'href': u'http://localhost/volume/connectors/1be26c0b-03f2-4d2e-ae87-c02d7f33c781', u'rel': u'bookmark'}], u'connector_id': u'iqn.2012-06.com.example:initiator'}]} {8} ironic.tests.unit.drivers.modules.ucs.test_management.UcsManagementTestCase.test_get_sensors_data [0.019544s] ... ok {6} ironic.tests.unit.api.controllers.v1.test_volume_connector.TestListVolumeConnectors.test_one [0.083616s] ... ok {8} ironic.tests.unit.drivers.modules.ucs.test_power.UcsPowerTestCase.test_reboot_fail [0.143680s] ... ok {8} ironic.tests.unit.drivers.modules.ucs.test_power.UcsPowerTestCase.test_set_power_state_invalid_state [0.125085s] ... ok {8} ironic.tests.unit.drivers.modules.ucs.test_power.UcsPowerTestCase.test_validate_fail [0.049055s] ... ok {8} ironic.tests.unit.drivers.test_base.CleanStepDecoratorTestCase.test__validate_argsinfo_arg_not_dict [0.009555s] ... ok {8} ironic.tests.unit.drivers.test_base.PassthruDecoratorTestCase.test_passthru_nonironicexception [0.019700s] ... ok {8} ironic.tests.unit.drivers.test_base.TestBIOSInterface.test_factory_reset_wrapper [0.010951s] ... ok {8} ironic.tests.unit.drivers.test_generic.ManualManagementHardwareTestCase.test_default_interfaces [0.056723s] ... ok {8} ironic.tests.unit.objects.test_conductor.TestConductorObject.test_register_into_group_uppercased [0.015480s] ... ok {8} ironic.tests.unit.objects.test_objects.TestObject.test__from_db_object_map_version_bad [0.008862s] ... ok {8} ironic.tests.unit.objects.test_objects.TestObject.test_hydration_type_error [0.008387s] ... ok {8} ironic.tests.unit.objects.test_objects.TestObject.test_refresh_object [0.008469s] ... ok {8} ironic.tests.unit.objects.test_objects.TestObjectSerializer.test__process_object_convert_conductor [0.011060s] ... ok {8} ironic.tests.unit.objects.test_port.TestPortObject.test_save_after_refresh [0.033839s] ... ok {8} ironic.tests.unit.objects.test_volume_target.TestVolumeTargetObject.test_list_none [0.017580s] ... ok POST: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/volume/connectors {'node_uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123', 'extra': {}, 'type': 'iqn', 'uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c781', 'connector_id': 'iqn.2012-06.com.example:initiator'} GOT:Response: 403 Forbidden Content-Type: application/json Openstack-Request-Id: req-17e71ad6-67ef-49e6-9c5b-3995fc67b552 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Operation not permitted.\"}"} {29} ironic.tests.unit.api.controllers.v1.test_node.TestPost.test_post_volume_connectors_subresource [0.083037s] ... ok PATCH: /v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4 [{'path': '/extra/vif_port_id', 'op': 'remove'}] GOT:Response: 200 OK Content-Type: application/json Openstack-Request-Id: req-ce1f2d40-59ab-40a8-a395-4f6263e599c7 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.27 {"node_uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "uuid": "6eb02b44-18a3-4659-8c0b-8d2802581ae4", "links": [{"href": "http://localhost/v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4", "rel": "self"}, {"href": "http://localhost/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4", "rel": "bookmark"}], "extra": {}, "created_at": "2019-06-06T07:02:17.104059+00:00", "updated_at": "2019-06-06T07:02:17.175825+00:00", "ports": [{"href": "http://localhost/v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4/ports", "rel": "self"}, {"href": "http://localhost/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4/ports", "rel": "bookmark"}], "standalone_ports_supported": true, "mode": "active-backup", "address": "52:54:00:cf:2d:31", "internal_info": {"bar": "buzz"}, "properties": {}, "name": "fooname"} {30} ironic.tests.unit.api.controllers.v1.test_portgroup.TestPatchExtraVifPortId.test_remove_extra_vif_port_id [0.133648s] ... ok GET: /v1/volume/connectors/93a3e638-9df0-4733-9967-58d4d47eafd8 {} GOT:{u'node_uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'uuid': u'93a3e638-9df0-4733-9967-58d4d47eafd8', u'links': [{u'href': u'http://localhost/v1/volume/connectors/93a3e638-9df0-4733-9967-58d4d47eafd8', u'rel': u'self'}, {u'href': u'http://localhost/volume/connectors/93a3e638-9df0-4733-9967-58d4d47eafd8', u'rel': u'bookmark'}], u'extra': {}, u'created_at': u'2019-06-06T07:02:17.237735+00:00', u'updated_at': None, u'connector_id': u'iqn.2012-06.com.example:initiator', u'type': u'iqn'} GET: /v1/volume/connectors/93a3e638-9df0-4733-9967-58d4d47eafd8 {} GOT:{u'node_uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'uuid': u'93a3e638-9df0-4733-9967-58d4d47eafd8', u'links': [{u'href': u'http://localhost/v1/volume/connectors/93a3e638-9df0-4733-9967-58d4d47eafd8', u'rel': u'self'}, {u'href': u'http://localhost/volume/connectors/93a3e638-9df0-4733-9967-58d4d47eafd8', u'rel': u'bookmark'}], u'extra': {}, u'created_at': u'2019-06-06T07:02:17.237735+00:00', u'updated_at': None, u'connector_id': u'iqn.2012-06.com.example:initiator', u'type': u'iqn'} GET: /volume/connectors/93a3e638-9df0-4733-9967-58d4d47eafd8 {} GOT:{u'node_uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'uuid': u'93a3e638-9df0-4733-9967-58d4d47eafd8', u'links': [{u'href': u'http://localhost/v1/volume/connectors/93a3e638-9df0-4733-9967-58d4d47eafd8', u'rel': u'self'}, {u'href': u'http://localhost/volume/connectors/93a3e638-9df0-4733-9967-58d4d47eafd8', u'rel': u'bookmark'}], u'extra': {}, u'created_at': u'2019-06-06T07:02:17.237735+00:00', u'updated_at': None, u'connector_id': u'iqn.2012-06.com.example:initiator', u'type': u'iqn'} {11} ironic.tests.unit.api.controllers.v1.test_volume_connector.TestListVolumeConnectors.test_links [0.141963s] ... ok PATCH: /v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4 [{'path': '/node_id', 'value': '1', 'op': 'replace'}] GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-797dae07-10ee-4e11-a632-63710ffba602 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Couldn't apply patch '{'path': '/node_id', 'value': u'1', 'op': 'replace'}'. Reason: can't replace non-existent object 'node_id'\"}"} {7} ironic.tests.unit.api.controllers.v1.test_portgroup.TestPatch.test_replace_node_id [0.064872s] ... ok PATCH: /v1/nodes/40a67f06-9a29-4c99-95f9-3c68bda9884e [{'path': '/traits', 'value': ['CUSTOM_1'], 'op': 'add'}] GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-c415a269-e050-4a0a-bcff-04873e6e1d1a X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Cannot update node traits via node patch. Node traits should be updated via the node traits API.\"}"} {31} ironic.tests.unit.api.controllers.v1.test_node.TestPatch.test_update_traits [0.085380s] ... ok POST: /v1/ports {'local_link_connection': {'switch_info': 'switch1', 'port_id': 'Ethernet3/1', 'switch_id': '0a:1b:2c:3d:4e:5f'}, 'node_uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123', 'uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c781', 'extra': {}, 'pxe_enabled': True, 'portgroup_uuid': '6eb02b44-18a3-4659-8c0b-8d2802581ae4', 'physical_network': None, 'address': '52:54:00:cf:2d:31', 'is_smartnic': False} GOT:Response: 201 Created Content-Type: application/json Location: http://localhost/v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 Openstack-Request-Id: req-71713a1d-f013-4571-8cdb-fa59f13c83ec X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"local_link_connection": {"switch_info": "switch1", "port_id": "Ethernet3/1", "switch_id": "0a:1b:2c:3d:4e:5f"}, "node_uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "links": [{"href": "http://localhost/v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "rel": "self"}, {"href": "http://localhost/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "rel": "bookmark"}], "extra": {}, "pxe_enabled": true, "portgroup_uuid": "6eb02b44-18a3-4659-8c0b-8d2802581ae4", "updated_at": null, "physical_network": null, "address": "52:54:00:cf:2d:31", "internal_info": {}, "created_at": "2000-01-01T00:00:00+00:00", "is_smartnic": false} GET: /v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 {} GOT:{u'local_link_connection': {u'switch_info': u'switch1', u'port_id': u'Ethernet3/1', u'switch_id': u'0a:1b:2c:3d:4e:5f'}, u'node_uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c781', u'links': [{u'href': u'http://localhost/v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781', u'rel': u'self'}, {u'href': u'http://localhost/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781', u'rel': u'bookmark'}], u'extra': {}, u'pxe_enabled': True, u'portgroup_uuid': u'6eb02b44-18a3-4659-8c0b-8d2802581ae4', u'updated_at': None, u'physical_network': None, u'address': u'52:54:00:cf:2d:31', u'internal_info': {}, u'created_at': u'2000-01-01T00:00:00+00:00', u'is_smartnic': False} {22} ironic.tests.unit.api.controllers.v1.test_port.TestPost.test_create_port [0.148091s] ... ok GET: /v1/ports/?limit=3 {} GOT:{u'ports': [{u'uuid': u'3cb158d3-b4fd-4e94-b44a-3f9450bed92c', u'links': [{u'href': u'http://localhost/v1/ports/3cb158d3-b4fd-4e94-b44a-3f9450bed92c', u'rel': u'self'}, {u'href': u'http://localhost/ports/3cb158d3-b4fd-4e94-b44a-3f9450bed92c', u'rel': u'bookmark'}], u'address': u'52:54:00:cf:2d:30'}, {u'uuid': u'afa97632-fe7f-46d2-886c-e19dfe534947', u'links': [{u'href': u'http://localhost/v1/ports/afa97632-fe7f-46d2-886c-e19dfe534947', u'rel': u'self'}, {u'href': u'http://localhost/ports/afa97632-fe7f-46d2-886c-e19dfe534947', u'rel': u'bookmark'}], u'address': u'52:54:00:cf:2d:31'}, {u'uuid': u'4bc14284-505f-407b-97d1-74a518fee7eb', u'links': [{u'href': u'http://localhost/v1/ports/4bc14284-505f-407b-97d1-74a518fee7eb', u'rel': u'self'}, {u'href': u'http://localhost/ports/4bc14284-505f-407b-97d1-74a518fee7eb', u'rel': u'bookmark'}], u'address': u'52:54:00:cf:2d:32'}], u'next': u'http://localhost/v1/ports?sort_dir=asc&sort_key=id&limit=3&marker=4bc14284-505f-407b-97d1-74a518fee7eb'} {14} ironic.tests.unit.api.controllers.v1.test_port.TestListPorts.test_collection_links [0.133934s] ... ok PATCH: /v1/volume/connectors/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 [{'path': '/value', 'op': 'remove'}] GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-eaebc5ac-ede1-4752-9f12-2079ad16ffd2 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Couldn't apply patch '{'path': '/value', 'op': 'remove'}'. Reason: can't remove non-existent object 'value'\"}"} {6} ironic.tests.unit.api.controllers.v1.test_volume_connector.TestPatch.test_remove_mandatory_field [0.069740s] ... ok POST: /v1/nodes/volume/connectors {'node_uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123', 'extra': {}, 'type': 'iqn', 'uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c781', 'connector_id': 'iqn.2012-06.com.example:initiator'} GOT:Response: 404 Not Found Content-Type: application/json {"error_message": "{\"code\": 404, \"description\": \"\", \"title\": \"Not Found\"}"} {29} ironic.tests.unit.api.controllers.v1.test_node.TestPost.test_post_volume_connectors_subresource_no_node_id [0.049971s] ... ok POST: /v1/portgroups {'node_uuid': '1a1a1a1a-2b2b-3c3c-4d4d-5e5e5e5e5e5e', 'uuid': '6eb02b44-18a3-4659-8c0b-8d2802581ae4', 'extra': {}, 'standalone_ports_supported': True, 'address': '52:54:00:cf:2d:31', 'name': 'fooname'} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-1ac6fdea-33d0-4331-9153-d30984c3093e X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Node 1a1a1a1a-2b2b-3c3c-4d4d-5e5e5e5e5e5e could not be found.\"}"} {1} ironic.tests.unit.api.controllers.v1.test_portgroup.TestPost.test_create_portgroup_node_uuid_not_found [0.072673s] ... ok GET: / {} GOT:Response: 500 Internal Server Error Content-Type: application/json Openstack-Request-Id: req-4af2b99e-dd12-4c0c-a15b-3c4491ab87c6 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Server\", \"faultstring\": \"Error message without traceback \\n but \\n multiline\"}"} {11} ironic.tests.unit.api.test_hooks.TestNoExceptionTracebackHook.test_hook_without_traceback_debug_tracebacks [0.047745s] ... ok {11} ironic.tests.unit.api.test_ospmiddleware.TestOsprofilerWsgiMiddleware.test_disable_osp_wsgi_request [0.033469s] ... ok {11} ironic.tests.unit.cmd.test_conductor.ConductorStartTestCase.test_warn_about_unsafe_shred_parameters_defaults [0.040882s] ... ok PATCH: /v1/volume/connectors/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 [{'path': '/connector_id', 'value': 'test-connector-id-123', 'op': 'replace'}] GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-317b6b92-5d2f-4e25-bc52-585746fca86c X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"The requested action \\\"volume connector update\\\" can not be performed on node \\\"1be26c0b-03f2-4d2e-ae87-c02d7f33c123\\\" while it is in state \\\"power on\\\".\"}"} {11} ironic.tests.unit.common.test_cinder.TestCinderUtils.test__create_metadata_dictionary [0.039050s] ... ok {10} ironic.tests.unit.api.controllers.v1.test_volume_connector.TestPatch.test_replace_invalid_power_state [0.099198s] ... ok {11} ironic.tests.unit.common.test_driver_factory.HardwareTypeLoadTestCase.test_build_driver_for_task_not_fake [0.105340s] ... ok {11} ironic.tests.unit.common.test_driver_factory.NetworkInterfaceFactoryTestCase.test_build_driver_for_task_unknown_network_interface [0.091439s] ... ok {11} ironic.tests.unit.common.test_hash_ring.HashRingManagerWithGroupsTestCase.test_hash_ring_manager_driver_not_found [0.081809s] ... ok {11} ironic.tests.unit.common.test_hash_ring.HashRingManagerWithGroupsTestCase.test_hash_ring_manager_reset_interval [0.052317s] ... ok {11} ironic.tests.unit.common.test_json_rpc.TestClient.test_call_success_with_version [0.021508s] ... ok {11} ironic.tests.unit.common.test_json_rpc.TestClient.test_call_unexpected_failure [0.022053s] ... ok {11} ironic.tests.unit.common.test_neutron.TestGetNetworkByUUIDOrName.test__get_network_by_uuid_or_name_duplicate [0.018210s] ... ok {11} ironic.tests.unit.common.test_neutron.TestNeutronClient.test_get_neutron_client_with_context [0.031633s] ... ok POST: /v1/ports {'local_link_connection': {'port_id': 'Ethernet1/15', 'switch_id': '0a:1b:2c:3d:4e:5f'}, 'node_uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123', 'uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c781', 'extra': {}, 'pxe_enabled': True, 'portgroup_uuid': '6eb02b44-18a3-4659-8c0b-8d2802581ae4', 'physical_network': None, 'address': '52:54:00:cf:2d:31', 'is_smartnic': False} GOT:Response: 201 Created Content-Type: application/json Location: http://localhost/v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 Openstack-Request-Id: req-4d763cf5-7afc-40b2-8213-86c3b32ddf17 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"local_link_connection": {"port_id": "Ethernet1/15", "switch_id": "0a:1b:2c:3d:4e:5f"}, "node_uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "links": [{"href": "http://localhost/v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "rel": "self"}, {"href": "http://localhost/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "rel": "bookmark"}], "extra": {}, "pxe_enabled": true, "portgroup_uuid": "6eb02b44-18a3-4659-8c0b-8d2802581ae4", "updated_at": null, "physical_network": null, "address": "52:54:00:cf:2d:31", "internal_info": {}, "created_at": "2019-06-06T07:02:17.156894+00:00", "is_smartnic": false} {11} ironic.tests.unit.common.test_neutron.TestNeutronNetworkActions.test_add_network_create_some_ports_fail [0.142737s] ... ok {27} ironic.tests.unit.api.controllers.v1.test_port.TestPost.test_create_port_local_link_connection_missing_optional [0.130532s] ... ok {11} ironic.tests.unit.common.test_neutron.TestNeutronNetworkActions.test_get_local_group_information [0.120975s] ... ok {11} ironic.tests.unit.common.test_pxe_utils.PXEInterfacesTestCase.test_build_pxe_config_options_ipxe_swift_partition [0.157780s] ... ok {11} ironic.tests.unit.common.test_pxe_utils.TestPXEUtils.test__write_mac_ipxe_configs [0.129046s] ... ok {11} ironic.tests.unit.common.test_pxe_utils.TestPXEUtils.test_clean_up_pxe_config_uefi_instance_info [0.105156s] ... ok {11} ironic.tests.unit.common.test_raid.ValidateRaidConfigurationTestCase.test_validate_configuration_max_size_gb [0.017689s] ... ok {11} ironic.tests.unit.common.test_utils.GenericUtilsTestCase.test_is_valid_datapath_id [0.012257s] ... ok {11} ironic.tests.unit.common.test_utils.GetUpdatedCapabilitiesTestCase.test_get_updated_capabilities_multiple_keys [0.015528s] ... ok {11} ironic.tests.unit.common.test_utils.GetUpdatedCapabilitiesTestCase.test_validate_network_port [0.013411s] ... ok {11} ironic.tests.unit.conductor.test_base_manager.StartConsolesTestCase.test__start_consoles [0.500209s] ... ok {11} ironic.tests.unit.conductor.test_manager.DestroyVolumeTargetTestCase.test_destroy_volume_target_node_locked [0.045423s] ... ok {11} ironic.tests.unit.conductor.test_manager.DoNodeCleanTestCase.test__do_node_clean_manual_steps_fail [0.254397s] ... ok {11} ironic.tests.unit.conductor.test_manager.DoNodeDeployTestCase.test__do_node_deploy_ok_2_old [0.301406s] ... ok {11} ironic.tests.unit.conductor.test_manager.DoNodeDeployTestCase.test__do_node_deploy_ok_old [0.266173s] ... ok {11} ironic.tests.unit.conductor.test_manager.ManagerCheckOrphanNodesTestCase.test__check_orphan_nodes_maintenance [0.191710s] ... ok GET: /v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781?fields=uuid,is_smartnic {} GOT:Response: 406 Not Acceptable Content-Type: application/json Openstack-Request-Id: req-e453f5dc-70e7-4044-a6ae-88be82d188b2 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.52 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Request not acceptable.\"}"} GET: /v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781?fields=uuid,is_smartnic {} GOT:{u'uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c781', u'links': [{u'href': u'http://localhost/v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781', u'rel': u'self'}, {u'href': u'http://localhost/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781', u'rel': u'bookmark'}], u'is_smartnic': True} {3} ironic.tests.unit.api.controllers.v1.test_port.TestListPorts.test_get_custom_fields_is_smartnic [0.098267s] ... ok {11} ironic.tests.unit.conductor.test_manager.ManagerDoSyncPowerStateTestCase.test_state_unchanged [0.021952s] ... ok {11} ironic.tests.unit.conductor.test_manager.ManagerSyncPowerStatesTestCase.test_node_in_power_transition_on_acquire [0.019431s] ... ok {11} ironic.tests.unit.conductor.test_manager.MiscTestCase.test__mapped_to_this_conductor [0.180038s] ... ok {11} ironic.tests.unit.conductor.test_manager.NodeTraitsTestCase.test_add_node_traits_invalid_parameter_value [0.091264s] ... ok {11} ironic.tests.unit.conductor.test_manager.RaidHardwareTypeTestCases.test_get_raid_logical_disk_properties [0.250388s] ... ok GET: /v1/volume/connectors?detail=True&limit=3 {} GOT:{u'connectors': [{u'node_uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'uuid': u'22c45856-d3d7-4fa6-b799-514601c6249d', u'links': [{u'href': u'http://localhost/v1/volume/connectors/22c45856-d3d7-4fa6-b799-514601c6249d', u'rel': u'self'}, {u'href': u'http://localhost/volume/connectors/22c45856-d3d7-4fa6-b799-514601c6249d', u'rel': u'bookmark'}], u'extra': {}, u'created_at': u'2019-06-06T07:02:17.144762+00:00', u'updated_at': None, u'connector_id': u'test-connector_id-0', u'type': u'iqn'}, {u'node_uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'uuid': u'9eac4b63-7826-4de2-8d3f-0430c7fc71b4', u'links': [{u'href': u'http://localhost/v1/volume/connectors/9eac4b63-7826-4de2-8d3f-0430c7fc71b4', u'rel': u'self'}, {u'href': u'http://localhost/volume/connectors/9eac4b63-7826-4de2-8d3f-0430c7fc71b4', u'rel': u'bookmark'}], u'extra': {}, u'created_at': u'2019-06-06T07:02:17.149248+00:00', u'updated_at': None, u'connector_id': u'test-connector_id-1', u'type': u'iqn'}, {u'node_uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'uuid': u'7d3546c5-7e25-44b5-bbeb-fd081d558bac', u'links': [{u'href': u'http://localhost/v1/volume/connectors/7d3546c5-7e25-44b5-bbeb-fd081d558bac', u'rel': u'self'}, {u'href': u'http://localhost/volume/connectors/7d3546c5-7e25-44b5-bbeb-fd081d558bac', u'rel': u'bookmark'}], u'extra': {}, u'created_at': u'2019-06-06T07:02:17.152729+00:00', u'updated_at': None, u'connector_id': u'test-connector_id-2', u'type': u'iqn'}], u'next': u'http://localhost/v1/volume/connectors?sort_key=id&sort_dir=asc&detail=True&limit=3&marker=7d3546c5-7e25-44b5-bbeb-fd081d558bac'} {19} ironic.tests.unit.api.controllers.v1.test_volume_connector.TestListVolumeConnectors.test_collection_links_detail [0.134613s] ... ok {11} ironic.tests.unit.conductor.test_manager.ServiceDoNodeDeployTestCase.test_do_node_deploy_invalid_state [0.260433s] ... ok {11} ironic.tests.unit.conductor.test_manager.ServiceDoNodeDeployTestCase.test_do_node_deploy_rebuild_deployfail_state_old [0.278210s] ... ok {11} ironic.tests.unit.conductor.test_manager.TestIndirectionApiConductor.test_object_action [0.016319s] ... ok {11} ironic.tests.unit.conductor.test_manager.UpdatePortTestCase.test_update_port_portgroup_active_node [0.080889s] ... ok {11} ironic.tests.unit.conductor.test_manager.UpdatePortTestCase.test_update_port_portgroup_enroll_node [0.079275s] ... ok {11} ironic.tests.unit.conductor.test_manager.UpdatePortgroupTestCase.test_update_portgroup_to_node_in_active_state_and_maintenance [0.215733s] ... ok {11} ironic.tests.unit.conductor.test_manager.UpdateVolumeTargetTestCase.test_update_volume_target [0.079204s] ... ok {11} ironic.tests.unit.conductor.test_manager.VifTestCase.test_vif_attach_raises_network_error [0.072737s] ... ok PATCH: /v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4 [{'path': '/address', 'value': 'AA:BB:CC:DD:EE:FF', 'op': 'replace'}] GOT:Response: 200 OK Content-Type: application/json Openstack-Request-Id: req-aa3e1157-3ca5-44dc-a86e-67fdad5aa5e2 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"node_uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "uuid": "6eb02b44-18a3-4659-8c0b-8d2802581ae4", "links": [{"href": "http://localhost/v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4", "rel": "self"}, {"href": "http://localhost/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4", "rel": "bookmark"}], "extra": {}, "created_at": "2019-06-06T07:02:16.642306+00:00", "updated_at": null, "ports": [{"href": "http://localhost/v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4/ports", "rel": "self"}, {"href": "http://localhost/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4/ports", "rel": "bookmark"}], "standalone_ports_supported": true, "mode": "active-backup", "address": "aa:bb:cc:dd:ee:ff", "internal_info": {"bar": "buzz"}, "properties": {}, "name": "pg.1"} {25} ironic.tests.unit.api.controllers.v1.test_portgroup.TestPatch.test_update_portgroup_address_normalized [0.117735s] ... ok {11} ironic.tests.unit.conductor.test_rpcapi.RPCAPITestCase.test_can_send_create_port_False [0.021782s] ... ok {11} ironic.tests.unit.conductor.test_steps.NodeDeployStepsTestCase.test__get_deployment_templates [0.077786s] ... ok {25} ironic.tests.unit.api.controllers.v1.test_types.TestJsonType.test_valid_values [0.015937s] ... ok {11} ironic.tests.unit.conductor.test_task_manager.TaskManagerTestCase.test_excl_lock_get_portgroups_exception [0.033245s] ... ok {25} ironic.tests.unit.api.controllers.v1.test_utils.TestApiUtils.test_allow_rescue_interface [0.017268s] ... ok {11} ironic.tests.unit.conductor.test_task_manager.TaskManagerTestCase.test_shared_lock_get_portgroups_exception [0.023775s] ... ok {11} ironic.tests.unit.conductor.test_utils.MiscTestCase.test_remove_node_rescue_password_save_true [0.043529s] ... ok {25} ironic.tests.unit.api.controllers.v1.test_utils.TestApiUtils.test_validate_trait [0.020543s] ... ok {25} ironic.tests.unit.api.controllers.v1.test_versions.TestMaxVersionString.test_max_version_pinned [0.019158s] ... ok {11} ironic.tests.unit.conductor.test_utils.NodeGetBootModeTestCase.test_node_get_boot_mode_valid [0.078981s] ... ok {25} ironic.tests.unit.api.controllers.v1.test_versions.TestVersionConstants.test_name_value_match [0.017487s] ... ok {11} ironic.tests.unit.conductor.test_utils.NodePowerActionTestCase.test__can_skip_state_change_failed_getting_state_notify [0.099311s] ... ok PATCH: /v1/volume/connectors/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 [{'path': '/extra/foo', 'value': 'bar', 'op': 'add'}] GOT:Response: 404 Not Found Content-Type: application/json {"error_message": "{\"code\": 404, \"description\": \"\", \"title\": \"Not Found\"}"} {11} ironic.tests.unit.conductor.test_utils.ValidatePortPhysnetTestCase.test_validate_port_physnet_1_port_portgroup_w_physnet_update_add_3 [0.078484s] ... ok {11} ironic.tests.unit.conf.test_auth.AuthConfTestCase.test_add_auth_opts [0.023085s] ... ok {11} ironic.tests.unit.db.sqlalchemy.test_models.TestGetClass.test_get_class [0.015569s] ... ok {6} ironic.tests.unit.api.controllers.v1.test_volume_connector.TestPatch.test_update_invalid_api_version [0.053691s] ... ok {11} ironic.tests.unit.db.test_allocations.AllocationsTestCase.test_destroy_allocation_uuid [0.041550s] ... ok {11} ironic.tests.unit.db.test_allocations.AllocationsTestCase.test_get_allocation_list_filter_by_conductor_affinity [0.066080s] ... ok POST: /v1/portgroups {'node_uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123', 'uuid': '6eb02b44-18a3-4659-8c0b-8d2802581ae4', 'extra': {}, 'standalone_ports_supported': True, 'address': 'AA:AA:AA:11:22:33', 'name': 'aa:bb_cc'} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-ee6af777-687e-4a86-8f9f-c40dba6cfdd9 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Cannot create portgroup with invalid name 'aa:bb_cc'\"}"} {30} ironic.tests.unit.api.controllers.v1.test_portgroup.TestPost.test_create_portgroup_name_invalid [0.075811s] ... ok {11} ironic.tests.unit.db.test_bios_settings.DbBIOSSettingTestCase.test_update_bios_setting_list [0.065331s] ... ok {30} ironic.tests.unit.api.controllers.v1.test_types.TestEventType.test_invalid_event_type [0.016272s] ... ok {11} ironic.tests.unit.db.test_node_traits.DbNodeTraitTestCase.test_set_node_traits_at_limit [0.065955s] ... ok {30} ironic.tests.unit.api.controllers.v1.test_types.TestUuidType.test_valid_uuid [0.015446s] ... ok {11} ironic.tests.unit.db.test_nodes.DbNodeTestCase.test_create_node_name_duplicate [0.037840s] ... ok {30} ironic.tests.unit.api.controllers.v1.test_utils.TestApiUtils.test_allow_port_physical_network_no_pin [0.017986s] ... ok {11} ironic.tests.unit.db.test_nodes.DbNodeTestCase.test_get_node_list_description [0.068392s] ... ok {30} ironic.tests.unit.api.controllers.v1.test_utils.TestApiUtils.test_check_allow_abort_verbs [0.016560s] ... ok {11} ironic.tests.unit.db.test_portgroups.DbportgroupTestCase.test_get_portgroup_by_name [0.037453s] ... ok {30} ironic.tests.unit.api.controllers.v1.test_utils.TestNodeIdent.test_is_valid_node_name [0.017399s] ... ok {11} ironic.tests.unit.db.test_portgroups.DbportgroupTestCase.test_get_portgroups_by_node_id_that_does_not_exist [0.039175s] ... ok {30} ironic.tests.unit.api.controllers.v1.test_versions.TestVersionConstants.test_min_ver_str [0.016018s] ... ok {11} ironic.tests.unit.dhcp.test_neutron.TestNeutron.test__get_port_ip_address_cleaning [0.116319s] ... ok {11} ironic.tests.unit.drivers.modules.ansible.test_deploy.TestAnsibleDeploy.test_reboot_and_finish_deploy_with_smartnic_port [0.114768s] ... ok {11} ironic.tests.unit.drivers.modules.cimc.test_management.CIMCManagementTestCase.test_get_boot_device [0.075611s] ... ok {11} ironic.tests.unit.drivers.modules.cimc.test_power.PowerTestCase.test_get_power_state [0.104386s] ... ok POST: /v1/heartbeat/1be26c0b-03f2-4d2e-ae87-c02d7f33c123 {'callback_url': 'url', 'agent_version': '1.4.1'} GOT:Response: 202 Accepted Openstack-Request-Id: req-1386b633-c5b5-48b7-9655-ce97f5f256b4 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {1} ironic.tests.unit.api.controllers.v1.test_ramdisk.TestHeartbeat.test_ok_agent_version [0.080409s] ... ok {11} ironic.tests.unit.drivers.modules.cimc.test_power.PowerTestCase.test_set_power_state_invalid_state [0.110673s] ... ok {11} ironic.tests.unit.drivers.modules.drac.test_common.DracCommonMethodsTestCase.test_parse_driver_info_missing_protocol [0.033696s] ... ok {11} ironic.tests.unit.drivers.modules.drac.test_inspect.DracInspectionTestCase.test_inspect_hardware [0.142497s] ... ok {1} ironic.tests.unit.api.controllers.v1.test_types.TestEventType.test_simple_event_type [0.015882s] ... ok {11} ironic.tests.unit.drivers.modules.drac.test_job.DracVendorPassthruJobTestCase.test_list_unfinished_jobs [0.908097s] ... ok {1} ironic.tests.unit.api.controllers.v1.test_utils.TestApiUtils.test_allow_port_internal_info [0.016845s] ... ok {1} ironic.tests.unit.api.controllers.v1.test_utils.TestApiUtils.test_check_allow_adopt_verbs [0.018142s] ... ok {11} ironic.tests.unit.drivers.modules.drac.test_management.DracManagementInternalMethodsTestCase.test__get_boot_device_not_persistent [0.050726s] ... ok {1} ironic.tests.unit.api.controllers.v1.test_utils.TestApiUtils.test_check_allow_configdrive [0.040729s] ... ok {1} ironic.tests.unit.api.controllers.v1.test_utils.TestApiUtils.test_check_allow_filter_by_conductor_group [0.017002s] ... ok {11} ironic.tests.unit.drivers.modules.ibmc.test_management.IBMCManagementTestCase.test_inject_nmi_fail [0.101955s] ... ok {11} ironic.tests.unit.drivers.modules.ilo.test_bios.IloBiosTestCase.test__execute_post_boot_bios_get_settings_failed [0.084390s] ... ok GET: /v1/volume/connectors/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 {} GOT:Response: 404 Not Found Content-Type: application/json {"error_message": "{\"code\": 404, \"description\": \"\", \"title\": \"Not Found\"}"} {19} ironic.tests.unit.api.controllers.v1.test_volume_connector.TestListVolumeConnectors.test_get_one_invalid_api_version [0.048006s] ... ok {11} ironic.tests.unit.drivers.modules.ilo.test_bios.IloBiosTestCase.test_apply_configuration_post_boot [0.071630s] ... ok POST: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/vendor_passthru/test {'foo': 'bar'} GOT:Response: 200 OK Content-Type: application/json Openstack-Request-Id: req-c5925311-17d3-4242-9436-bda732c5060c X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"cat": "meow"} {11} ironic.tests.unit.drivers.modules.ilo.test_boot.IloBootPrivateMethodsTestCase.test_prepare_node_for_deploy_sec_boot_on [0.088462s] ... ok {29} ironic.tests.unit.api.controllers.v1.test_node.TestPost.test_vendor_passthru_sync [0.076927s] ... ok {11} ironic.tests.unit.drivers.modules.ilo.test_boot.IloVirtualMediaBootTestCase.test_validate_ramdisk_boot_option_webserver_exc [0.087004s] ... ok {11} ironic.tests.unit.drivers.modules.ilo.test_firmware_processor.FirmwareProcessorTestCase.test_get_and_validate_firmware_image_info_sum_invalid_component [0.010927s] ... ok {11} ironic.tests.unit.drivers.modules.ilo.test_inspect.IloInspectTestCase.test_inspect_ok_gen8 [0.094128s] ... ok {11} ironic.tests.unit.drivers.modules.ilo.test_management.IloManagementTestCase.test_set_iscsi_boot_target_missed_properties [0.110126s] ... ok {11} ironic.tests.unit.drivers.modules.ilo.test_power.IloPowerInternalMethodsTestCase.test__set_power_state_soft_power_off_fail [0.084703s] ... ok {11} ironic.tests.unit.drivers.modules.ilo.test_power.IloPowerInternalMethodsTestCase.test__set_power_state_soft_reboot_timeout [3.082224s] ... ok {11} ironic.tests.unit.drivers.modules.irmc.test_bios.IRMCBIOSTestCase.test_cache_bios_settings [0.079937s] ... ok {11} ironic.tests.unit.drivers.modules.irmc.test_boot.IRMCDeployPrivateMethodsTestCase.test__attach_virtual_fd_ok [0.071869s] ... ok {11} ironic.tests.unit.drivers.modules.irmc.test_boot.IRMCDeployPrivateMethodsTestCase.test__prepare_boot_iso_fetch_ok [0.104601s] ... ok {11} ironic.tests.unit.drivers.modules.irmc.test_boot.IRMCPXEBootBasicTestCase.test_validate_fail_glance_conn_problem [0.099261s] ... ok {11} ironic.tests.unit.drivers.modules.irmc.test_boot.IRMCVirtualMediaBootTestCase.test_prepare_instance_whole_disk_image [0.083655s] ... ok {11} ironic.tests.unit.drivers.modules.irmc.test_boot.IRMCVirtualMediaBootTestCase.test_validate_rescue_no_rescue_ramdisk [0.068566s] ... ok {11} ironic.tests.unit.drivers.modules.irmc.test_boot.IRMCVirtualMediaBootTestCase.test_validate_rescue_ramdisk_not_exist [0.077794s] ... ok {11} ironic.tests.unit.drivers.modules.irmc.test_boot.IRMCVirtualMediaBootWithVolumeTestCase.test_validate_iscsi [0.122526s] ... ok {11} ironic.tests.unit.drivers.modules.irmc.test_common.IRMCValidateParametersTestCase.test_parse_driver_info_invalid_auth_method [0.021839s] ... ok {11} ironic.tests.unit.drivers.modules.irmc.test_common.IRMCValidateParametersTestCase.test_parse_driver_info_invalid_snmp_security [0.021836s] ... ok {11} ironic.tests.unit.drivers.modules.irmc.test_common.IRMCValidateParametersTestCase.test_parse_driver_info_invalid_snmp_version [0.031563s] ... ok {11} ironic.tests.unit.drivers.modules.irmc.test_raid.IRMCRaidConfigurationInternalMethodsTestCase.test__fail_validate_capacity_raid_5 [0.021607s] ... ok {11} ironic.tests.unit.drivers.modules.network.test_common.TestNeutronVifPortIDMixin.test_update_portgroup_address [0.080144s] ... ok {11} ironic.tests.unit.drivers.modules.network.test_neutron.NeutronInterfaceTestCase.test_configure_tenant_networks_with_client_id [0.093132s] ... ok {11} ironic.tests.unit.drivers.modules.network.test_neutron.NeutronInterfaceTestCase.test_remove_provisioning_network_from_node [0.091215s] ... ok {11} ironic.tests.unit.drivers.modules.redfish.test_bios.RedfishBiosTestCase.test_check_bios_attrs [0.094946s] ... ok {11} ironic.tests.unit.drivers.modules.redfish.test_power.RedfishPowerTestCase.test_get_power_state [0.056102s] ... ok {11} ironic.tests.unit.drivers.modules.redfish.test_power.RedfishPowerTestCase.test_set_power_state_not_reached [13.043896s] ... ok {11} ironic.tests.unit.drivers.modules.test_agent.AgentRAIDTestCase.test__create_configuration_final_bad_command_result [0.081110s] ... ok {11} ironic.tests.unit.drivers.modules.test_agent.TestAgentDeploy.test_continue_deploy_image_source_is_url [0.128878s] ... ok {11} ironic.tests.unit.drivers.modules.test_agent.TestAgentDeploy.test_deploy_fast_track [0.161180s] ... ok {11} ironic.tests.unit.drivers.modules.test_agent.TestAgentMethods.test_check_image_size_without_memory_mb [0.070758s] ... ok {11} ironic.tests.unit.drivers.modules.test_agent_base_vendor.AgentDeployMixinTest.test_continue_cleaning_automated_clean_version_mismatch [0.081619s] ... ok {11} ironic.tests.unit.drivers.modules.test_agent_client.TestAgentClient.test_power_off [0.011174s] ... ok {11} ironic.tests.unit.drivers.modules.test_deploy_utils.AgentMethodsTestCase.test_agent_add_clean_params [0.082130s] ... ok {11} ironic.tests.unit.drivers.modules.test_deploy_utils.AgentMethodsTestCase.test_execute_clean_step_version_mismatch [0.065354s] ... ok {11} ironic.tests.unit.drivers.modules.test_deploy_utils.PhysicalWorkTestCase.test_force_iscsi_lun_update [0.011507s] ... ok {11} ironic.tests.unit.drivers.modules.test_deploy_utils.ValidateImagePropertiesTestCase.test_validate_image_properties_glance_image_not_authorized [0.015877s] ... ok {11} ironic.tests.unit.drivers.modules.test_deploy_utils.ValidateParametersTestCase.test__get_img_instance_info_non_glance_image_missing_ramdisk [0.020651s] ... ok {11} ironic.tests.unit.drivers.modules.test_image_cache.CleanupImageCacheTestCase.test_no_clean_up [0.016552s] ... ok {11} ironic.tests.unit.drivers.modules.test_image_cache.TestImageCacheFetch.test_fetch_image_dest_out_of_date [0.017695s] ... ok {11} ironic.tests.unit.drivers.modules.test_inspector.InspectHardwareTestCase.test_error [0.022483s] ... ok {11} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolCheckOptionSupportedTestCase.test_check_all_options_pass [0.017098s] ... ok {11} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolDriverTestCase.test_get_power_state_exception [0.601804s] ... ok {11} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolDriverTestCase.test_management_interface_get_boot_device_unknown_dev [0.066284s] ... ok {11} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolDriverTestCase.test_management_interface_no_force_set_boot_device [0.070490s] ... ok {11} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolDriverTestCase.test_set_soft_reboot_ok [0.069222s] ... ok {11} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolPrivateMethodTestCase.test_exec_ipmitool_exception_non_retryable_failure_insufficient_resources_for_session [0.040130s] ... ok {11} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolShellinaboxTestCase.test__get_ipmi_cmd_without_user [0.065797s] ... ok {11} ironic.tests.unit.drivers.modules.test_ipxe.iPXEBootTestCase.test_prepare_instance_netboot_iscsi [0.097197s] ... ok {11} ironic.tests.unit.drivers.modules.test_iscsi_deploy.ISCSIDeployTestCase.test_continue_deploy_localboot_uefi [0.110062s] ... ok {11} ironic.tests.unit.drivers.modules.test_iscsi_deploy.IscsiDeployMethodsTestCase.test_validate_good_api_url [0.049763s] ... ok {11} ironic.tests.unit.drivers.modules.test_pxe.PXEBootTestCase.test_prepare_instance_netboot_active [0.101886s] ... ok {11} ironic.tests.unit.drivers.modules.test_pxe.PXEBootTestCase.test_prepare_ramdisk_force_persistent_boot_device_sloppy_false [0.542601s] ... ok {11} ironic.tests.unit.drivers.modules.test_snmp.SNMPDeviceDriverTestCase.test_apc_masterswitch_power_reset [0.017960s] ... ok {11} ironic.tests.unit.drivers.modules.test_snmp.SNMPDeviceDriverTestCase.test_apc_masterswitch_power_state_on [0.015695s] ... ok {11} ironic.tests.unit.drivers.modules.test_snmp.SNMPDeviceDriverTestCase.test_apc_masterswitchplus_power_state_on [0.015548s] ... ok {11} ironic.tests.unit.drivers.modules.test_snmp.SNMPDeviceDriverTestCase.test_auto_power_on [0.026748s] ... ok {11} ironic.tests.unit.drivers.modules.test_snmp.SNMPDeviceDriverTestCase.test_power_reset_on_delay [1.024836s] ... ok POST: /v1/nodes {'instance_uuid': None, 'description': '1234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678last weed', 'driver_info': {'fake_password': 'fakepass', 'foo': 'bar'}, 'extra': {}, 'driver': 'fake-hardware', 'properties': {'memory_mb': '4096', 'cpu_arch': 'x86_64', 'local_gb': '10', 'cpus': '8'}, 'maintenance': False, 'chassis_uuid': 'e74c40e0-d825-11e2-a28f-0800200c9a66', 'instance_info': {'foo': 'bar', 'image_url': 'http://example.com/test_image_url', 'configdrive': 'TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQ='}, 'uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123'} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-50e593a7-eab2-4ced-a073-5e377b0c9b7a X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Cannot create node with description exceeding 4096 characters\"}"} {20} ironic.tests.unit.api.controllers.v1.test_node.TestPost.test_create_node_description_oversize [0.059197s] ... ok POST: /v1/ports {'local_link_connection': {'switch_info': 'switch1', 'port_id': 'Ethernet3/1', 'switch_id': '0a:1b:2c:3d:4e:5f'}, 'node_uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123', 'uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c781', 'extra': {}, 'pxe_enabled': True, 'portgroup_uuid': '6eb02b44-18a3-4659-8c0b-8d2802581ae4', 'physical_network': None, 'address': '52:54:00:cf:2d:31', 'is_smartnic': True} GOT:Response: 406 Not Acceptable Content-Type: application/json Openstack-Request-Id: req-272a81f6-52c1-497d-baef-882e2a2ffacd X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.52 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Request not acceptable.\"}"} {22} ironic.tests.unit.api.controllers.v1.test_port.TestPost.test_create_port_with_is_smartnic_old_api_version [0.086141s] ... ok POST: /v1/volume/connectors {'node_uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123', 'extra': {}, 'type': 'iqn', 'uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c781', 'connector_id': 'iqn.2012-06.com.example:initiator'} GOT:Response: 404 Not Found Content-Type: application/json {"error_message": "{\"code\": 404, \"description\": \"\", \"title\": \"Not Found\"}"} {19} ironic.tests.unit.api.controllers.v1.test_volume_connector.TestPost.test_create_volume_connector_invalid_api_version [0.046253s] ... ok GET: /v1/portgroups?sort_key=foo {} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-ee7e51a6-7e0e-4dc7-9973-048964b38c03 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"The sort_key value \\\"foo\\\" is an invalid field for sorting\"}"} GET: /v1/portgroups?sort_key=extra {} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-4942ef0b-5d3b-46c0-93bc-47b04b255bab X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"The sort_key value extra is an invalid field for sorting\"}"} GET: /v1/portgroups?sort_key=internal_info {} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-94ff9ed9-1532-4dd4-8413-8dffbc1f3b96 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"The sort_key value internal_info is an invalid field for sorting\"}"} GET: /v1/portgroups?sort_key=properties {} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-7c55f62f-8d40-459f-ad40-4f6cb6c15a9e X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"The sort_key value properties is an invalid field for sorting\"}"} {26} ironic.tests.unit.api.controllers.v1.test_portgroup.TestListPortgroups.test_sort_key_invalid [0.082571s] ... ok GET: /v1/volume/ {} GOT:Response: 404 Not Found Content-Type: application/json Openstack-Request-Id: req-a77ecea6-2260-4c45-bce0-fe05b27a814a X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Resource could not be found.\"}"} {1} ironic.tests.unit.api.controllers.v1.test_volume.TestGetVolume.test_get_volume_invalid_api_version [0.046519s] ... ok POST: /v1/nodes {'instance_uuid': None, 'name': '', 'driver_info': {'fake_password': 'fakepass', 'foo': 'bar'}, 'extra': {}, 'driver': 'fake-hardware', 'properties': {'memory_mb': '4096', 'cpu_arch': 'x86_64', 'local_gb': '10', 'cpus': '8'}, 'maintenance': False, 'chassis_uuid': 'e74c40e0-d825-11e2-a28f-0800200c9a66', 'instance_info': {'foo': 'bar', 'image_url': 'http://example.com/test_image_url', 'configdrive': 'TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQ='}, 'uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123'} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-0c6528c3-8f26-4098-81e7-bd78c3fb696d X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.10 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Cannot create node with invalid name ''\"}"} {31} ironic.tests.unit.api.controllers.v1.test_node.TestPost.test_create_node_name_empty_invalid [0.059005s] ... ok POST: /v1/nodes {'instance_uuid': None, 'uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123', 'driver_info': {'fake_password': 'fakepass', 'foo': 'bar'}, 'extra': {}, 'driver': 'fake-hardware', 'properties': {'memory_mb': '4096', 'cpu_arch': 'x86_64', 'local_gb': '10', 'cpus': '8'}, 'maintenance': False, 'chassis_uuid': 'e74c40e0-d825-11e2-a28f-0800200c9a66', 'instance_info': {'foo': 'bar', 'image_url': 'http://example.com/test_image_url', 'configdrive': 'TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQ='}} GOT:Response: 201 Created Content-Type: application/json Location: http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123 Openstack-Request-Id: req-0ebc18e9-cab7-43be-ba5e-46c6a1fbe721 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.10 {"target_power_state": null, "links": [{"href": "http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "rel": "self"}, {"href": "http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "rel": "bookmark"}], "extra": {}, "last_error": null, "updated_at": null, "maintenance_reason": null, "provision_state": "available", "clean_step": {}, "uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "console_enabled": false, "target_provision_state": null, "provision_updated_at": null, "power_state": null, "inspection_started_at": null, "inspection_finished_at": null, "maintenance": false, "driver": "fake-hardware", "reservation": null, "properties": {"memory_mb": "4096", "cpu_arch": "x86_64", "local_gb": "10", "cpus": "8"}, "instance_uuid": null, "name": null, "driver_info": {"fake_password": "******", "foo": "bar"}, "created_at": "2019-06-06T07:02:16.832713+00:00", "ports": [{"href": "http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports", "rel": "self"}, {"href": "http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports", "rel": "bookmark"}], "driver_internal_info": {}, "chassis_uuid": "e74c40e0-d825-11e2-a28f-0800200c9a66", "instance_info": {"foo": "bar", "image_url": "******", "configdrive": "******"}} GET: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123 {} GOT:{u'target_power_state': None, u'links': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'bookmark'}], u'target_provision_state': None, u'last_error': None, u'updated_at': None, u'maintenance_reason': None, u'provision_state': None, u'uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'console_enabled': False, u'extra': {}, u'provision_updated_at': None, u'maintenance': False, u'power_state': None, u'driver': u'fake-hardware', u'reservation': None, u'properties': {u'memory_mb': u'4096', u'cpu_arch': u'x86_64', u'local_gb': u'10', u'cpus': u'8'}, u'instance_uuid': None, u'driver_info': {u'fake_password': u'******', u'foo': u'bar'}, u'created_at': u'2019-06-06T07:02:16.832713+00:00', u'ports': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'bookmark'}], u'chassis_uuid': u'e74c40e0-d825-11e2-a28f-0800200c9a66', u'instance_info': {u'foo': u'bar', u'image_url': u'******', u'configdrive': u'******'}} GET: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123 {} GOT:{u'target_power_state': None, u'links': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'bookmark'}], u'extra': {}, u'last_error': None, u'updated_at': None, u'maintenance_reason': None, u'provision_state': u'available', u'clean_step': {}, u'uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'console_enabled': False, u'target_provision_state': None, u'provision_updated_at': None, u'power_state': None, u'inspection_started_at': None, u'inspection_finished_at': None, u'maintenance': False, u'driver': u'fake-hardware', u'reservation': None, u'properties': {u'memory_mb': u'4096', u'cpu_arch': u'x86_64', u'local_gb': u'10', u'cpus': u'8'}, u'instance_uuid': None, u'name': None, u'driver_info': {u'fake_password': u'******', u'foo': u'bar'}, u'created_at': u'2019-06-06T07:02:16.832713+00:00', u'instance_info': {u'foo': u'bar', u'image_url': u'******', u'configdrive': u'******'}, u'driver_internal_info': {}, u'chassis_uuid': u'e74c40e0-d825-11e2-a28f-0800200c9a66', u'ports': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'bookmark'}]} {16} ironic.tests.unit.api.controllers.v1.test_node.TestPost.test_create_node_default_state_none [0.175876s] ... ok GET: /v1/ports?node=test-node {} GOT:{u'ports': [{u'uuid': u'1afeea60-6444-4334-b455-2d942121ea40', u'links': [{u'href': u'http://localhost/v1/ports/1afeea60-6444-4334-b455-2d942121ea40', u'rel': u'self'}, {u'href': u'http://localhost/ports/1afeea60-6444-4334-b455-2d942121ea40', u'rel': u'bookmark'}], u'address': u'52:54:00:cf:2d:30'}, {u'uuid': u'63d8cd88-5865-4527-83ae-191212c758d8', u'links': [{u'href': u'http://localhost/v1/ports/63d8cd88-5865-4527-83ae-191212c758d8', u'rel': u'self'}, {u'href': u'http://localhost/ports/63d8cd88-5865-4527-83ae-191212c758d8', u'rel': u'bookmark'}], u'address': u'52:54:00:cf:2d:31'}, {u'uuid': u'497252b8-c4f8-41d6-bfcf-448716f185d4', u'links': [{u'href': u'http://localhost/v1/ports/497252b8-c4f8-41d6-bfcf-448716f185d4', u'rel': u'self'}, {u'href': u'http://localhost/ports/497252b8-c4f8-41d6-bfcf-448716f185d4', u'rel': u'bookmark'}], u'address': u'52:54:00:cf:2d:32'}]} {14} ironic.tests.unit.api.controllers.v1.test_port.TestListPorts.test_get_all_by_node_name_ok [0.133095s] ... ok PUT: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states/power {'target': 'power on', 'timeout': 2} GOT:Response: 406 Not Acceptable Content-Type: application/json Openstack-Request-Id: req-9e51def0-3b5e-4ac7-a169-ff29b2a5ff12 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Request not acceptable.\"}"} {29} ironic.tests.unit.api.controllers.v1.test_node.TestPut.test_power_state_power_on_valid_timeout_no_ver [0.077296s] ... ok GET: /v1/volume/connectors?detail=True&node=test-node {} GOT:{u'connectors': [{u'node_uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c781', u'links': [{u'href': u'http://localhost/v1/volume/connectors/1be26c0b-03f2-4d2e-ae87-c02d7f33c781', u'rel': u'self'}, {u'href': u'http://localhost/volume/connectors/1be26c0b-03f2-4d2e-ae87-c02d7f33c781', u'rel': u'bookmark'}], u'extra': {}, u'created_at': u'2019-06-06T07:02:17.421264+00:00', u'updated_at': None, u'connector_id': u'iqn.2012-06.com.example:initiator', u'type': u'iqn'}]} {30} ironic.tests.unit.api.controllers.v1.test_volume_connector.TestListVolumeConnectors.test_detail_by_node_name_ok [0.087040s] ... ok POST: /v1/ports {'local_link_connection': {'switch_info': 'switch1', 'port_id': 'Ethernet3/1', 'switch_id': '0a:1b:2c:3d:4e:5f'}, 'node_uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123', 'uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c781', 'extra': {}, 'pxe_enabled': True, 'portgroup_uuid': '6eb02b44-18a3-4659-8c0b-8d2802581ae4', 'physical_network': None, 'is_smartnic': False} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-f553289d-9f0e-4a39-89b8-2b7d8ced1b86 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Invalid input for field/attribute address. Value: 'None'. Mandatory field missing.\"}"} {3} ironic.tests.unit.api.controllers.v1.test_port.TestPost.test_create_port_no_mandatory_field_address [0.068762s] ... ok POST: /v1/ports {'local_link_connection': {'switch_info': 'switch1', 'port_id': 'Ethernet3/1', 'switch_id': '0a:1b:2c:3d:4e:5f'}, 'node_uuid': '1a1a1a1a-2b2b-3c3c-4d4d-5e5e5e5e5e5e', 'uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c781', 'extra': {}, 'pxe_enabled': True, 'portgroup_uuid': '6eb02b44-18a3-4659-8c0b-8d2802581ae4', 'physical_network': None, 'address': '52:54:00:cf:2d:31', 'is_smartnic': False} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-53fdf56d-0958-43a5-979b-989545cc6e66 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Node 1a1a1a1a-2b2b-3c3c-4d4d-5e5e5e5e5e5e could not be found.\"}"} {27} ironic.tests.unit.api.controllers.v1.test_port.TestPost.test_create_port_node_uuid_not_found [0.077063s] ... ok DELETE: /v1/volume/targets/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 GOT:Response: 204 No Content Openstack-Request-Id: req-93e2c0b9-8894-4376-a773-e21027b86352 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {19} ironic.tests.unit.api.controllers.v1.test_volume_target.TestDelete.test_delete_volume_target_byid [0.088593s] ... ok DELETE: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/vendor_passthru/do_test GOT:Response: 202 Accepted Content-Type: application/json Openstack-Request-Id: req-0d071924-a154-47e2-abf4-cc010f5bf8be X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 null {31} ironic.tests.unit.api.controllers.v1.test_node.TestPost.test_vendor_passthru_delete [0.076130s] ... ok PUT: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states/power {'target': 'soft power off'} GOT:Response: 406 Not Acceptable Content-Type: application/json Openstack-Request-Id: req-8325368c-a61a-485f-8bae-17ba548821cd X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Request not acceptable.\"}"} {29} ironic.tests.unit.api.controllers.v1.test_node.TestPut.test_power_state_soft_power_off_no_timeout_no_ver [0.079935s] ... ok POST: /v1/volume/connectors {'node_uuid': 123, 'extra': {}, 'type': 'iqn', 'uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c781', 'connector_id': 'iqn.2012-06.com.example:initiator'} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-6dad21a8-6921-4ec8-972d-73e93ddc3ffc X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Expected a UUID but received 123.\"}"} {1} ironic.tests.unit.api.controllers.v1.test_volume_connector.TestPost.test_create_volume_connector_invalid_node_uuid_format [0.053573s] ... ok GET: /v1/volume/targets {} GOT:{u'targets': [{u'boot_index': 0, u'uuid': u'169f61d8-037f-441b-b444-1a5e25fbc92d', u'links': [{u'href': u'http://localhost/v1/volume/targets/169f61d8-037f-441b-b444-1a5e25fbc92d', u'rel': u'self'}, {u'href': u'http://localhost/volume/targets/169f61d8-037f-441b-b444-1a5e25fbc92d', u'rel': u'bookmark'}], u'volume_type': u'iscsi', u'node_uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'volume_id': u'12345678'}, {u'boot_index': 1, u'uuid': u'060458c3-7f40-42b0-a197-fdd12b54218d', u'links': [{u'href': u'http://localhost/v1/volume/targets/060458c3-7f40-42b0-a197-fdd12b54218d', u'rel': u'self'}, {u'href': u'http://localhost/volume/targets/060458c3-7f40-42b0-a197-fdd12b54218d', u'rel': u'bookmark'}], u'volume_type': u'iscsi', u'node_uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'volume_id': u'12345678'}, {u'boot_index': 2, u'uuid': u'1f1ee9df-311a-4aba-83b5-8bd9e14019ac', u'links': [{u'href': u'http://localhost/v1/volume/targets/1f1ee9df-311a-4aba-83b5-8bd9e14019ac', u'rel': u'self'}, {u'href': u'http://localhost/volume/targets/1f1ee9df-311a-4aba-83b5-8bd9e14019ac', u'rel': u'bookmark'}], u'volume_type': u'iscsi', u'node_uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'volume_id': u'12345678'}], u'next': u'http://localhost/v1/volume/targets?sort_key=id&sort_dir=asc&limit=3&marker=1f1ee9df-311a-4aba-83b5-8bd9e14019ac'} {10} ironic.tests.unit.api.controllers.v1.test_volume_target.TestListVolumeTargets.test_collection_links_default_limit [0.136719s] ... ok POST: /v1/nodes {'instance_uuid': None, 'automated_clean': True, 'uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123', 'driver_info': {'fake_password': 'fakepass', 'foo': 'bar'}, 'extra': {}, 'driver': 'fake-hardware', 'properties': {'memory_mb': '4096', 'cpu_arch': 'x86_64', 'local_gb': '10', 'cpus': '8'}, 'maintenance': False, 'chassis_uuid': 'e74c40e0-d825-11e2-a28f-0800200c9a66', 'instance_info': {'foo': 'bar', 'image_url': 'http://example.com/test_image_url', 'configdrive': 'TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQ='}} GOT:Response: 201 Created Content-Type: application/json Location: http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123 Openstack-Request-Id: req-72330c10-10ef-4598-a079-ab97b25e854c X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"target_power_state": null, "automated_clean": true, "inspect_interface": "fake", "links": [{"href": "http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "rel": "self"}, {"href": "http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "rel": "bookmark"}], "target_provision_state": null, "deploy_step": {}, "storage_interface": "noop", "conductor_group": "", "protected_reason": null, "maintenance_reason": null, "states": [{"href": "http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states", "rel": "self"}, {"href": "http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states", "rel": "bookmark"}], "traits": [], "provision_state": "enroll", "clean_step": {}, "vendor_interface": "fake", "description": null, "uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "console_enabled": false, "extra": {}, "raid_config": {}, "provision_updated_at": null, "power_state": null, "last_error": null, "target_raid_config": {}, "network_interface": "flat", "inspection_started_at": null, "inspection_finished_at": null, "maintenance": false, "conductor": null, "power_interface": "fake", "driver": "fake-hardware", "updated_at": null, "volume": [{"href": "http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/volume", "rel": "self"}, {"href": "http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/volume", "rel": "bookmark"}], "raid_interface": "fake", "rescue_interface": "fake", "boot_interface": "fake", "reservation": null, "management_interface": "fake", "properties": {"memory_mb": "4096", "cpu_arch": "x86_64", "local_gb": "10", "cpus": "8"}, "bios_interface": "fake", "instance_uuid": null, "name": null, "driver_info": {"fake_password": "******", "foo": "bar"}, "resource_class": null, "fault": null, "created_at": "2019-06-06T07:02:16.362163+00:00", "portgroups": [{"href": "http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/portgroups", "rel": "self"}, {"href": "http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/portgroups", "rel": "bookmark"}], "deploy_interface": "fake", "ports": [{"href": "http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports", "rel": "self"}, {"href": "http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports", "rel": "bookmark"}], "console_interface": "fake", "protected": false, "driver_internal_info": {}, "chassis_uuid": "e74c40e0-d825-11e2-a28f-0800200c9a66", "owner": null, "instance_info": {"foo": "bar", "image_url": "******", "configdrive": "******"}, "allocation_uuid": null} GET: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123 {} GOT:{u'target_power_state': None, u'automated_clean': True, u'inspect_interface': u'fake', u'links': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'bookmark'}], u'target_provision_state': None, u'deploy_step': {}, u'storage_interface': u'noop', u'conductor_group': u'', u'protected_reason': None, u'maintenance_reason': None, u'states': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states', u'rel': u'bookmark'}], u'traits': [], u'provision_state': u'enroll', u'clean_step': {}, u'vendor_interface': u'fake', u'uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'console_enabled': False, u'extra': {}, u'raid_config': {}, u'provision_updated_at': None, u'power_state': None, u'last_error': None, u'target_raid_config': {}, u'maintenance': False, u'network_interface': u'flat', u'inspection_started_at': None, u'inspection_finished_at': None, u'description': None, u'conductor': None, u'driver': u'fake-hardware', u'power_interface': u'fake', u'updated_at': None, u'volume': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/volume', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/volume', u'rel': u'bookmark'}], u'raid_interface': u'fake', u'rescue_interface': u'fake', u'boot_interface': u'fake', u'reservation': None, u'management_interface': u'fake', u'properties': {u'memory_mb': u'4096', u'cpu_arch': u'x86_64', u'local_gb': u'10', u'cpus': u'8'}, u'bios_interface': u'fake', u'instance_uuid': None, u'name': None, u'driver_info': {u'fake_password': u'******', u'foo': u'bar'}, u'resource_class': None, u'fault': None, u'created_at': u'2019-06-06T07:02:16.362163+00:00', u'portgroups': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/portgroups', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/portgroups', u'rel': u'bookmark'}], u'deploy_interface': u'fake', u'instance_info': {u'foo': u'bar', u'image_url': u'******', u'configdrive': u'******'}, u'console_interface': u'fake', u'protected': False, u'driver_internal_info': {}, u'chassis_uuid': u'e74c40e0-d825-11e2-a28f-0800200c9a66', u'owner': None, u'ports': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'bookmark'}], u'allocation_uuid': None} {15} ironic.tests.unit.api.controllers.v1.test_node.TestPost.test_create_node_automated_clean [0.240472s] ... ok GET: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/vendor_passthru/do_test {} GOT:foo {15} ironic.tests.unit.api.controllers.v1.test_node.TestPost.test_vendor_passthru_get [0.057930s] ... ok GET: /v1/ports?sort_key=pxe_enabled {} GOT:{u'ports': [{u'uuid': u'50837992-458a-4793-a930-28c0b986fdde', u'links': [{u'href': u'http://localhost/v1/ports/50837992-458a-4793-a930-28c0b986fdde', u'rel': u'self'}, {u'href': u'http://localhost/ports/50837992-458a-4793-a930-28c0b986fdde', u'rel': u'bookmark'}], u'address': u'52:54:00:cf:2d:30'}, {u'uuid': u'60afb9c1-ae09-40cf-bab8-8a5143282492', u'links': [{u'href': u'http://localhost/v1/ports/60afb9c1-ae09-40cf-bab8-8a5143282492', u'rel': u'self'}, {u'href': u'http://localhost/ports/60afb9c1-ae09-40cf-bab8-8a5143282492', u'rel': u'bookmark'}], u'address': u'52:54:00:cf:2d:31'}]} PUT: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states/provision {'target': 'adopt'} GOT:Response: 202 Accepted Location: http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states Openstack-Request-Id: req-796104de-a7b6-4841-90ae-9675525dcc95 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.17 {14} ironic.tests.unit.api.controllers.v1.test_port.TestListPorts.test_sort_key_allowed [0.107465s] ... ok {31} ironic.tests.unit.api.controllers.v1.test_node.TestPut.test_adopt_from_manage [0.102950s] ... ok GET: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123 {} GOT:Response: 401 Unauthorized Content-Type: application/json Www-Authenticate: Keystone uri="https://127.0.0.1:35357" {"error": {"message": "The request you have made requires authentication.", "code": 401, "title": "Unauthorized"}} {1} ironic.tests.unit.api.test_acl.TestACL.test_non_authenticated [0.045364s] ... ok {1} ironic.tests.unit.common.test_context.RequestContextTestCase.test_to_policy_values [0.013824s] ... ok {1} ironic.tests.unit.common.test_driver_factory.DefaultInterfaceTestCase.test_from_additional_defaults [0.026794s] ... ok {1} ironic.tests.unit.common.test_driver_factory.HardwareTypeLoadTestCase.test_get_hardware_type_missing [0.031152s] ... ok {1} ironic.tests.unit.common.test_exception.TestIronicException.test___init___string_serializable [0.021034s] ... ok {1} ironic.tests.unit.common.test_glance_service.TestGlanceImageService.test_client_httpforbidden_converts_to_imagenotauthed [0.017673s] ... ok {1} ironic.tests.unit.common.test_images.IronicImagesTestCase.test_converted_size [0.021690s] ... ok {1} ironic.tests.unit.common.test_policy.PolicyInCodeTestCase.test_node_create [0.030192s] ... ok {1} ironic.tests.unit.common.test_pxe_utils.PXEInterfacesTestCase.test_build_pxe_config_options_ipxe_rescue [0.192341s] ... ok {1} ironic.tests.unit.common.test_pxe_utils.PXEInterfacesTestCase.test_validate_boot_parameters_for_trusted_boot_one [0.038472s] ... ok {1} ironic.tests.unit.common.test_pxe_utils.TestPXEUtils.test_get_kernel_ramdisk_info_ipxe [0.029842s] ... ok {1} ironic.tests.unit.common.test_raid.ValidateRaidConfigurationTestCase.test_validate_configuration_invalid_is_root_volume [0.020238s] ... ok POST: /v1/volume/targets {'uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c781', 'extra': {}, 'volume_type': 'iscsi', 'node_uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123', 'volume_id': '12345678', 'properties': {'target_iqn': 'iqn.foo'}} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-f99d7aff-5b04-482b-b679-1d5509095642 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Invalid input for field/attribute boot_index. Value: 'None'. Mandatory field missing.\"}"} {19} ironic.tests.unit.api.controllers.v1.test_volume_target.TestPost.test_create_volume_target_no_mandatory_field_value [0.060074s] ... ok {1} ironic.tests.unit.common.test_release_mappings.ReleaseMappingsTestCase.test_rpc_and_objects_versions_supported [0.014528s] ... ok {1} ironic.tests.unit.common.test_rpc.TestUtils.test_get_versioned_notifier_no_publisher_id [0.014385s] ... ok {19} ironic.tests.unit.api.test_hooks.TestContextHook.test_context_hook_admin [0.030368s] ... ok {1} ironic.tests.unit.common.test_utils.GetUpdatedCapabilitiesTestCase.test_validate_network_port_fail [0.021288s] ... ok {19} ironic.tests.unit.common.test_driver_factory.DriverLoadTestCase.test_wrap_in_driver_load_error_if_driver_enabled [0.022911s] ... ok {1} ironic.tests.unit.common.test_utils.TempFilesTestCase.test_check_dir_free_space_raises [0.013442s] ... ok {19} ironic.tests.unit.common.test_driver_factory.HardwareTypeLoadTestCase.test_invalid_rescue_interface [0.043307s] ... ok {19} ironic.tests.unit.common.test_driver_factory.NetworkInterfaceFactoryTestCase.test_build_driver_for_task_default_is_flat [0.102596s] ... ok {19} ironic.tests.unit.common.test_glance_service.TestServiceUtils.test_get_glance_api_server_fail [0.016444s] ... ok {1} ironic.tests.unit.conductor.test_base_manager.StartStopTestCase.test_stop_unregisters_conductor [0.229774s] ... ok {1} ironic.tests.unit.conductor.test_manager.ConsoleTestCase.test_set_console_mode_worker_pool_full [0.336689s] ... ok {19} ironic.tests.unit.common.test_glance_service.TestServiceUtils.test_parse_image_id_from_uuid [0.015621s] ... ok {1} ironic.tests.unit.conductor.test_manager.DestroyNodeTestCase.test_destroy_node_adopt_failed_no_power_change [0.334746s] ... ok {19} ironic.tests.unit.common.test_images.FsImageTestCase.test_create_boot_iso_for_uefi_esp_image [0.037643s] ... ok {1} ironic.tests.unit.conductor.test_manager.DoNextDeployStepTestCase.test_do_next_deploy_step_execute_ironic_exception [0.360137s] ... ok {19} ironic.tests.unit.common.test_images.FsImageTestCase.test_create_isolinux_image_for_bios_default_ldlinux [0.034507s] ... ok {19} ironic.tests.unit.common.test_images.FsImageTestCase.test_get_glance_image_properties_no_such_prop [0.020201s] ... ok {1} ironic.tests.unit.conductor.test_manager.DoNodeAdoptionTestCase.test__do_adoption_with_takeover [0.289848s] ... ok {19} ironic.tests.unit.common.test_json_rpc.TestService.test_invalid_requests [0.054811s] ... ok {19} ironic.tests.unit.common.test_neutron.TestNeutronNetworkActions.test_validate_agent_up [0.039673s] ... ok {1} ironic.tests.unit.conductor.test_manager.DoNodeAdoptionTestCase.test_heartbeat_agent_version [0.378396s] ... ok {1} ironic.tests.unit.conductor.test_manager.DoNodeCleanTestCase.test_continue_node_clean_skip_step [0.347956s] ... ok {1} ironic.tests.unit.conductor.test_manager.DoNodeDeployTestCase.test_do_node_deploy_steps [0.338219s] ... ok {19} ironic.tests.unit.common.test_neutron.TestNeutronNetworkActions.test_validate_port_info_neutron_interface_with_client_id [0.085738s] ... ok {1} ironic.tests.unit.conductor.test_manager.DoNodeRescueTestCase.test_do_node_unrescue_maintenance [0.068934s] ... ok {19} ironic.tests.unit.common.test_policy.PolicyInCodeTestCaseNegative.test_admin_api [0.026319s] ... ok {1} ironic.tests.unit.conductor.test_manager.MiscTestCase.test_iter_nodes [0.141950s] ... ok {19} ironic.tests.unit.common.test_raid.RaidPublicMethodsTestCase.test_filter_target_raid_config [0.033017s] ... ok {19} ironic.tests.unit.common.test_raid.ValidateRaidConfigurationTestCase.test_validate_configuration_zero_size_gb [0.031193s] ... ok {1} ironic.tests.unit.conductor.test_manager.MiscTestCase.test_validate_dynamic_driver_interfaces [0.064112s] ... ok PUT: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states/power {'target': 'soft power off', 'timeout': 2} GOT:Response: 202 Accepted Location: http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states Openstack-Request-Id: req-08f6b0cb-bd6c-4156-bbe8-ad5dcc045eb2 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.27 {29} ironic.tests.unit.api.controllers.v1.test_node.TestPut.test_power_state_soft_power_off_valid_timeout_valid_soft_ver [0.076382s] ... ok {1} ironic.tests.unit.conductor.test_manager.ParallelPowerSyncTestCase.test__sync_power_states_9_nodes_8_workers [0.017313s] ... ok {19} ironic.tests.unit.common.test_release_mappings.GetObjectVersionsTestCase.test_get_object_versions_releases [0.015941s] ... ok {1} ironic.tests.unit.conductor.test_manager.TestIndirectionApiConductor.test_object_action_copies_object [0.027056s] ... ok {19} ironic.tests.unit.common.test_rpc.TestUtils.test_get_versioned_notifier_no_notifier [0.016681s] ... ok {1} ironic.tests.unit.conductor.test_manager.UpdateNodeTestCase.test_associate_node_powered_on [0.092599s] ... ok {19} ironic.tests.unit.common.test_swift.SwiftTestCase.test_create_object [0.124644s] ... ok {19} ironic.tests.unit.common.test_utils.GenericUtilsTestCase.test_file_has_content_equal_not_binary [0.021978s] ... ok {1} ironic.tests.unit.conductor.test_manager.UpdateNodeTestCase.test_update_node_deleting_allocation_in_maintenance [0.132038s] ... ok {1} ironic.tests.unit.conductor.test_manager.UpdateNodeTestCase.test_update_node_maintenance_set_false [0.079482s] ... ok {19} ironic.tests.unit.common.test_utils.GenericUtilsTestCase.test_validate_and_normalize_mac [0.018761s] ... ok {19} ironic.tests.unit.common.test_utils.TempFilesTestCase.test__check_dir_writable_not_writable [0.018960s] ... ok {19} ironic.tests.unit.common.test_utils.TempFilesTestCase.test_check_dir_no_dir [0.023716s] ... ok {1} ironic.tests.unit.conductor.test_manager.UpdateNodeTestCase.test_update_node_protected_unset [0.199940s] ... ok {19} ironic.tests.unit.conductor.test_allocations.AllocationTestCase.test_resume_allocations [0.213748s] ... ok {19} ironic.tests.unit.conductor.test_manager.ConsoleTestCase.test_disable_console_already_disabled [0.307864s] ... ok {1} ironic.tests.unit.conductor.test_manager.UpdatePortTestCase.test_update_port_address_active_node [0.073084s] ... ok {1} ironic.tests.unit.conductor.test_manager.UpdatePortgroupTestCase.test_update_portgroup_node_locked [0.049886s] ... ok {19} ironic.tests.unit.conductor.test_manager.DestroyVolumeTargetTestCase.test_destroy_volume_target_node_gone [0.153288s] ... ok {1} ironic.tests.unit.conductor.test_manager.VendorPassthruTestCase.test_driver_vendor_passthru_driver_not_found [0.111880s] ... ok {19} ironic.tests.unit.conductor.test_manager.DoNodeCleanTestCase.test__do_next_clean_step_manual_fail_in_tear_down_cleaning [0.410571s] ... ok {1} ironic.tests.unit.conductor.test_rpcapi.RPCAPITestCase.test_can_send_create_port_True [0.021457s] ... ok {19} ironic.tests.unit.conductor.test_manager.DoNodeCleanTestCase.test__do_node_clean_automated_disabled [0.374333s] ... ok {1} ironic.tests.unit.conductor.test_steps.NodeCleaningStepsTestCase.test_set_node_cleaning_steps_automated [0.088247s] ... ok {19} ironic.tests.unit.conductor.test_manager.DoNodeCleanTestCase.test_do_node_clean_maintenance [0.285139s] ... ok {1} ironic.tests.unit.conductor.test_steps.NodeDeployStepsTestCase.test__get_deployment_templates_no_traits [0.065015s] ... ok {19} ironic.tests.unit.conductor.test_manager.DoNodeDeployTestCase.test_do_node_deploy_steps_old_rpc [0.385978s] ... ok {1} ironic.tests.unit.conductor.test_task_manager.ProvisionNotifyTestCase.test_notify_unstable_to_stable [0.013646s] ... ok {19} ironic.tests.unit.conductor.test_manager.DoNodeRescueTestCase.test_do_node_rescue_invalid_state [0.363514s] ... ok {1} ironic.tests.unit.conductor.test_utils.ValidatePortPhysnetTestCase.test_validate_port_physnet_1_port_portgroup_no_physnet_create_2 [0.079487s] ... ok {1} ironic.tests.unit.conductor.test_utils.ValidatePortPhysnetTestCase.test_validate_port_physnet_1_port_portgroup_no_physnet_update_add_1 [0.088697s] ... ok {19} ironic.tests.unit.conductor.test_manager.DoNodeTearDownTestCase.test_do_node_tear_down_driver_raises_error [0.248892s] ... ok {1} ironic.tests.unit.db.test_allocations.AllocationsTestCase.test_create_allocation_duplicated_name [0.024083s] ... ok {19} ironic.tests.unit.conductor.test_manager.ManagerCheckDeployTimeoutsTestCase.test_exiting_no_worker_avail [0.016983s] ... ok {1} ironic.tests.unit.db.test_allocations.AllocationsTestCase.test_take_over_conflict [0.040916s] ... ok {19} ironic.tests.unit.conductor.test_manager.ManagerDoSyncPowerStateTestCase.test_state_changed_sync [0.028840s] ... ok {1} ironic.tests.unit.db.test_api.UpdateToLatestVersionsTestCase.test_max_count_zero [0.139553s] ... ok {19} ironic.tests.unit.conductor.test_manager.NodeTraitsTestCase.test_add_node_traits_node_not_found [0.075389s] ... ok {19} ironic.tests.unit.conductor.test_manager.UpdateNodeTestCase.test_update_node_from_invalid_driver [0.117082s] ... ok {1} ironic.tests.unit.db.test_api.UpdateToLatestVersionsTestCase.test_old_version_max_count_same_nodes [0.275957s] ... ok {19} ironic.tests.unit.conductor.test_manager.UpdatePortTestCase.test_update_port_node_active_state_and_maintenance [0.117592s] ... ok {1} ironic.tests.unit.db.test_chassis.DbChassisTestCase.test_destroy_chassis_with_nodes [0.036484s] ... ok {19} ironic.tests.unit.conductor.test_manager.UpdatePortgroupTestCase.test_update_portgroup_association_with_ports [0.241541s] ... ok {1} ironic.tests.unit.db.test_deploy_templates.DbDeployTemplateTestCase.test_get_deploy_template_list_by_names_no_match [0.031442s] ... ok {19} ironic.tests.unit.conductor.test_notification_utils.ProvisionNotifyTestCase.test_emit_notification [0.020710s] ... ok {1} ironic.tests.unit.db.test_nodes.DbNodeTestCase.test_create_node_with_traits [0.015048s] ... ok PATCH: /v1/volume/targets/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 [{'path': '/boot_index', 'op': 'remove'}] GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-5f73396f-dc88-40bc-b0be-132a8f187a6f X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"'/boot_index' is a mandatory attribute and can not be removed\"}"} {19} ironic.tests.unit.conductor.test_rpcapi.RPCAPITestCase.test_do_node_rescue [0.025279s] ... ok {10} ironic.tests.unit.api.controllers.v1.test_volume_target.TestPatch.test_remove_mandatory_field [0.066432s] ... ok {19} ironic.tests.unit.conductor.test_rpcapi.RPCAPITestCase.test_get_driver_properties [0.017770s] ... ok {1} ironic.tests.unit.db.test_nodes.DbNodeTestCase.test_touch_node_provisioning_not_found [0.018334s] ... ok {19} ironic.tests.unit.conductor.test_steps.NodeCleaningStepsTestCase.test__validate_user_clean_steps_invalid_arg [0.071543s] ... ok {1} ironic.tests.unit.db.test_nodes.DbNodeTestCase.test_update_node_inspection_started_at [0.037922s] ... ok POST: /v1/volume/connectors {'node_uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123', 'extra': {'foo': 123}, 'type': 'iqn', 'uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c781', 'connector_id': 'iqn.2012-06.com.example:initiator'} GOT:Response: 201 Created Content-Type: application/json Location: http://localhost/v1/volume/connectors/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 Openstack-Request-Id: req-b0cc1b16-48fe-42bf-b6c1-0fe273a817a5 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"node_uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "links": [{"href": "http://localhost/v1/volume/connectors/1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "rel": "self"}, {"href": "http://localhost/volume/connectors/1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "rel": "bookmark"}], "extra": {"foo": 123}, "created_at": "2019-06-06T07:02:17.476369+00:00", "updated_at": null, "connector_id": "iqn.2012-06.com.example:initiator", "type": "iqn"} GET: /v1/volume/connectors/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 {} GOT:{u'node_uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c781', u'links': [{u'href': u'http://localhost/v1/volume/connectors/1be26c0b-03f2-4d2e-ae87-c02d7f33c781', u'rel': u'self'}, {u'href': u'http://localhost/volume/connectors/1be26c0b-03f2-4d2e-ae87-c02d7f33c781', u'rel': u'bookmark'}], u'extra': {u'foo': 123}, u'created_at': u'2019-06-06T07:02:17.476369+00:00', u'updated_at': None, u'connector_id': u'iqn.2012-06.com.example:initiator', u'type': u'iqn'} {6} ironic.tests.unit.api.controllers.v1.test_volume_connector.TestPost.test_create_volume_connector_doesnt_contain_id [0.102137s] ... ok {19} ironic.tests.unit.conductor.test_task_manager.ProvisionNotifyTestCase.test_notify_resource_released [0.021811s] ... ok {1} ironic.tests.unit.db.test_nodes.DbNodeTestCase.test_update_node_not_found [0.018801s] ... ok {19} ironic.tests.unit.conductor.test_utils.ErrorHandlersTestCase.test_rescuing_error_handler_bad_state [0.021051s] ... ok {1} ironic.tests.unit.db.test_volume_connectors.DbVolumeConnectorTestCase.test_get_volume_connector_list [0.037792s] ... ok {1} ironic.tests.unit.db.test_volume_connectors.DbVolumeConnectorTestCase.test_update_volume_connector_fails_invalid_id [0.041707s] ... ok {19} ironic.tests.unit.conductor.test_utils.MiscTestCase.test_power_on_node_if_needed_true [0.102140s] ... ok {1} ironic.tests.unit.db.test_volume_targets.DbVolumeTargetTestCase.test_create_volume_target [0.025788s] ... ok {19} ironic.tests.unit.conductor.test_utils.NodeSoftPowerActionTestCase.test_node_power_action_power_soft_reboot_timeout [0.165974s] ... ok {1} ironic.tests.unit.db.test_volume_targets.DbVolumeTargetTestCase.test_create_volume_target_duplicated_nodeid_and_bootindex [0.023824s] ... ok {19} ironic.tests.unit.conductor.test_utils.ValidateInstanceInfoTraitsTestCase.test_validate_instance_info_traits_invalid_trait_type [0.017100s] ... ok {19} ironic.tests.unit.conductor.test_utils.ValidateInstanceInfoTraitsTestCase.test_validate_instance_info_traits_missing [0.016839s] ... ok {1} ironic.tests.unit.dhcp.test_neutron.TestNeutron.test__get_ip_addresses_ports_int_info [0.089576s] ... ok {1} ironic.tests.unit.dhcp.test_neutron.TestNeutron.test_update_dhcp_some_failures [0.092242s] ... ok {19} ironic.tests.unit.conductor.test_utils.ValidatePortPhysnetTestCase.test_validate_port_physnet_1_port_portgroup_w_physnet_create_1 [0.097257s] ... ok {1} ironic.tests.unit.drivers.modules.ansible.test_deploy.TestAnsibleDeploy.test_prepare [0.121823s] ... ok {1} ironic.tests.unit.drivers.modules.ansible.test_deploy.TestAnsibleMethods.test__parse_root_device_hints_fail_advanced [0.082045s] ... ok {19} ironic.tests.unit.db.sqlalchemy.test_migrations.TestWalkVersions.test_migrate_up_with_data [0.018098s] ... ok {1} ironic.tests.unit.drivers.modules.ansible.test_deploy.TestAnsibleMethods.test__prepare_extra_vars [0.019698s] ... ok {1} ironic.tests.unit.drivers.modules.cimc.test_common.ParseDriverInfoTestCase.test_parse_driver_info_missing_address [0.022341s] ... ok {19} ironic.tests.unit.db.test_allocations.AllocationsTestCase.test_get_allocation_by_id_that_does_not_exist [0.022884s] ... ok {1} ironic.tests.unit.drivers.modules.drac.test_bios.DracBIOSConfigurationTestCase.test_set_config_fail [0.093022s] ... ok {19} ironic.tests.unit.db.test_allocations.AllocationsTestCase.test_update_allocation_with_node_id [0.054517s] ... ok {1} ironic.tests.unit.drivers.modules.ilo.test_bios.IloBiosTestCase.test__execute_post_boot_bios_step_factory_reset [0.108782s] ... ok {19} ironic.tests.unit.db.test_api.UpdateToLatestVersionsTestCase.test_old_version_max_count_1 [0.143771s] ... ok {1} ironic.tests.unit.drivers.modules.ilo.test_boot.IloBootPrivateMethodsTestCase.test__clean_up_boot_iso_for_instance_no_boot_iso [0.032755s] ... ok {1} ironic.tests.unit.drivers.modules.ilo.test_boot.IloBootPrivateMethodsTestCase.test__get_boot_iso_glance_image [0.092361s] ... ok {19} ironic.tests.unit.db.test_node_tags.DbNodeTagTestCase.test_add_node_tag [0.029360s] ... ok {1} ironic.tests.unit.drivers.modules.ilo.test_boot.IloPXEBootTestCase.test_prepare_instance_boot_from_volume [0.099115s] ... ok {19} ironic.tests.unit.db.test_node_tags.DbNodeTagTestCase.test_unset_node_tags [0.048465s] ... ok {1} ironic.tests.unit.drivers.modules.ilo.test_boot.IloVirtualMediaBootTestCase.test_clean_up_instance_boot_from_volume_bios [0.093535s] ... ok {19} ironic.tests.unit.db.test_nodes.DbNodeTestCase.test_create_node [0.018228s] ... ok {1} ironic.tests.unit.drivers.modules.ilo.test_firmware_processor.FirmwareProcessorTestCase.test__extract_fw_from_file_uploads_firmware_to_swift [0.039218s] ... ok {19} ironic.tests.unit.db.test_nodes.DbNodeTestCase.test_release_reservation [0.043585s] ... ok {19} ironic.tests.unit.db.test_volume_targets.DbVolumeTargetTestCase.test_get_volume_target_by_id [0.030009s] ... ok {1} ironic.tests.unit.drivers.modules.ilo.test_inspect.TestInspectPrivateMethods.test__get_essential_properties_ok [0.021322s] ... ok {19} ironic.tests.unit.db.test_volume_targets.DbVolumeTargetTestCase.test_get_volume_targets_by_volume_id_that_does_not_exist [0.026003s] ... ok {1} ironic.tests.unit.drivers.modules.ilo.test_management.IloManagementTestCase.test_set_boot_device_ok [0.067904s] ... ok {1} ironic.tests.unit.drivers.modules.ilo.test_management.IloManagementTestCase.test_update_firmware_sum_mode_without_component [0.084129s] ... ok {1} ironic.tests.unit.drivers.modules.irmc.test_boot.IRMCPXEBootBasicTestCase.test_prepare_ramdisk_force_persistent_boot_device_false [0.137797s] ... ok {19} ironic.tests.unit.dhcp.test_neutron.TestNeutron.test_update_dhcp_unset_sleep_and_fake [0.108779s] ... ok {1} ironic.tests.unit.drivers.modules.irmc.test_boot.IRMCVirtualMediaBootWithVolumeTestCase.test__configure_boot_from_volume_multi_lan_ports [0.162891s] ... ok {19} ironic.tests.unit.drivers.modules.cimc.test_power.PowerTestCase.test_validate [0.065817s] ... ok {19} ironic.tests.unit.drivers.modules.drac.test_common.DracCommonMethodsTestCase.test_parse_driver_info_missing_port [0.020841s] ... ok {1} ironic.tests.unit.drivers.modules.irmc.test_management.IRMCManagementFunctionsTestCase.test__restore_bios_config_corrupted [0.112847s] ... ok {19} ironic.tests.unit.drivers.modules.drac.test_inspect.DracInspectionTestCase.test__calculate_cpus [0.061056s] ... ok {1} ironic.tests.unit.drivers.modules.irmc.test_management.IRMCManagementTestCase.test_validate_fail [0.052045s] ... ok {19} ironic.tests.unit.drivers.modules.drac.test_inspect.DracInspectionTestCase.test__get_pxe_dev_nics_with_BIOS_boot_mode [0.064268s] ... ok {1} ironic.tests.unit.drivers.modules.irmc.test_raid.IRMCRaidConfigurationInternalMethodsTestCase.test__fail_validation_with_difference_physical_disks_type [0.056395s] ... ok {1} ironic.tests.unit.drivers.modules.irmc.test_raid.IRMCRaidConfigurationInternalMethodsTestCase.test__fail_validation_with_physical_disk_outside_valid_disks_1 [0.056172s] ... ok {19} ironic.tests.unit.drivers.modules.drac.test_management.DracManagementTestCase.test_get_boot_device [0.054930s] ... ok {1} ironic.tests.unit.drivers.modules.network.test_common.TestCommonFunctions.test__get_free_portgroups_and_ports_all_physnets [0.109461s] ... ok {19} ironic.tests.unit.drivers.modules.drac.test_raid.DracQueryRaidConfigurationTestCase.test_list_physical_disks_fail [0.023159s] ... ok {1} ironic.tests.unit.drivers.modules.network.test_common.TestCommonFunctions.test__get_free_portgroups_and_ports_physnet1 [0.107499s] ... ok {1} ironic.tests.unit.drivers.modules.network.test_common.TestCommonFunctions.test_get_free_port_like_object_nothing_free [0.076320s] ... ok {19} ironic.tests.unit.drivers.modules.ilo.test_bios.IloBiosTestCase.test__execute_pre_boot_bios_step_factory_reset [0.076012s] ... ok {1} ironic.tests.unit.drivers.modules.network.test_common.TestCommonFunctions.test_plug_port_to_tenant_network_client [0.077580s] ... ok POST: /v1/portgroups {'node_uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123', 'uuid': '6eb02b44-18a3-4659-8c0b-8d2802581ae4', 'extra': {'foo': 123}, 'standalone_ports_supported': True, 'address': '52:54:00:cf:2d:31', 'name': 'fooname'} GOT:Response: 201 Created Content-Type: application/json Location: http://localhost/v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4 Openstack-Request-Id: req-455c7021-3188-43bd-98a8-7a39768a6e81 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"node_uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "uuid": "6eb02b44-18a3-4659-8c0b-8d2802581ae4", "links": [{"href": "http://localhost/v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4", "rel": "self"}, {"href": "http://localhost/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4", "rel": "bookmark"}], "extra": {"foo": 123}, "created_at": "2019-06-06T07:02:17.592797+00:00", "updated_at": null, "ports": [{"href": "http://localhost/v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4/ports", "rel": "self"}, {"href": "http://localhost/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4/ports", "rel": "bookmark"}], "standalone_ports_supported": true, "mode": "active-backup", "address": "52:54:00:cf:2d:31", "internal_info": {}, "properties": {}, "name": "fooname"} GET: /v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4 {} GOT:{u'node_uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'uuid': u'6eb02b44-18a3-4659-8c0b-8d2802581ae4', u'links': [{u'href': u'http://localhost/v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4', u'rel': u'self'}, {u'href': u'http://localhost/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4', u'rel': u'bookmark'}], u'extra': {u'foo': 123}, u'created_at': u'2019-06-06T07:02:17.592797+00:00', u'updated_at': None, u'properties': {}, u'standalone_ports_supported': True, u'mode': u'active-backup', u'address': u'52:54:00:cf:2d:31', u'internal_info': {}, u'ports': [{u'href': u'http://localhost/v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4/ports', u'rel': u'self'}, {u'href': u'http://localhost/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4/ports', u'rel': u'bookmark'}], u'name': u'fooname'} {19} ironic.tests.unit.drivers.modules.ilo.test_boot.IloVirtualMediaBootTestCase.test_prepare_ramdisk_not_a_glance_image_cleaning [0.116142s] ... ok {7} ironic.tests.unit.api.controllers.v1.test_portgroup.TestPost.test_create_portgroup_doesnt_contain_id [0.082962s] ... ok {1} ironic.tests.unit.drivers.modules.network.test_common.TestNeutronVifPortIDMixin.test_port_changed_message_format_failure [0.075606s] ... ok {19} ironic.tests.unit.drivers.modules.ilo.test_inspect.IloInspectTestCase.test_inspect_essential_ok [0.092232s] ... ok {1} ironic.tests.unit.drivers.modules.network.test_common.TestNeutronVifPortIDMixin.test_port_changed_novif_nopxe_portgroup_standalone_ports [0.191879s] ... ok PUT: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states/provision {'target': 'rescue'} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-26794b55-a764-45b9-b2e8-9951fae06c72 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.38 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"A non-empty \\\"rescue_password\\\" is required when setting target provision state to rescue\"}"} {19} ironic.tests.unit.drivers.modules.ilo.test_inspect.IloInspectTestCase.test_validate [0.097224s] ... ok {15} ironic.tests.unit.api.controllers.v1.test_node.TestPut.test_provision_rescue_no_password [0.069263s] ... ok {19} ironic.tests.unit.drivers.modules.ilo.test_management.IloManagementTestCase.test__update_firmware_sum_final_unknown_exception [0.083769s] ... ok {1} ironic.tests.unit.drivers.modules.network.test_common.TestNeutronVifPortIDMixin.test_update_portgroup_remove_address [0.074681s] ... ok {19} ironic.tests.unit.drivers.modules.ilo.test_management.IloManagementTestCase.test_set_boot_device_persistent_fail [0.062160s] ... ok {1} ironic.tests.unit.drivers.modules.network.test_common.TestVifPortIDMixin.test__get_port_like_obj_by_vif_id_not_attached [0.072381s] ... ok {19} ironic.tests.unit.drivers.modules.ilo.test_power.IloPowerTestCase.test_set_power_state_no_timeout [0.061870s] ... ok {19} ironic.tests.unit.drivers.modules.ilo.test_raid.Ilo5RAIDTestCase.test__prepare_for_read_raid_create_raid [0.103876s] ... ok {1} ironic.tests.unit.drivers.modules.network.test_flat.TestFlatInterface.test_init_no_cleaning_network [0.028178s] ... ok {19} ironic.tests.unit.drivers.modules.irmc.test_boot.IRMCDeployPrivateMethodsTestCase.test__parse_driver_info_not_in_share [0.021542s] ... ok {1} ironic.tests.unit.drivers.modules.network.test_flat.TestFlatInterface.test_vif_port_changed [0.067746s] ... ok {19} ironic.tests.unit.drivers.modules.irmc.test_boot.IRMCPXEBootBasicTestCase.test_prepare_instance_whole_disk_image_missing_root_uuid [0.089086s] ... ok GET: /v1/volume/targets/7eb10c1e-cb6a-4662-80cf-3104721d6f16 {} GOT:{u'boot_index': 0, u'uuid': u'7eb10c1e-cb6a-4662-80cf-3104721d6f16', u'links': [{u'href': u'http://localhost/v1/volume/targets/7eb10c1e-cb6a-4662-80cf-3104721d6f16', u'rel': u'self'}, {u'href': u'http://localhost/volume/targets/7eb10c1e-cb6a-4662-80cf-3104721d6f16', u'rel': u'bookmark'}], u'extra': {}, u'created_at': u'2019-06-06T07:02:16.858098+00:00', u'updated_at': None, u'volume_type': u'iscsi', u'node_uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'volume_id': u'12345678', u'properties': {u'target_iqn': u'iqn.foo'}} GET: /v1/volume/targets/7eb10c1e-cb6a-4662-80cf-3104721d6f16 {} GOT:{u'boot_index': 0, u'uuid': u'7eb10c1e-cb6a-4662-80cf-3104721d6f16', u'links': [{u'href': u'http://localhost/v1/volume/targets/7eb10c1e-cb6a-4662-80cf-3104721d6f16', u'rel': u'self'}, {u'href': u'http://localhost/volume/targets/7eb10c1e-cb6a-4662-80cf-3104721d6f16', u'rel': u'bookmark'}], u'extra': {}, u'created_at': u'2019-06-06T07:02:16.858098+00:00', u'updated_at': None, u'volume_type': u'iscsi', u'node_uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'volume_id': u'12345678', u'properties': {u'target_iqn': u'iqn.foo'}} GET: /volume/targets/7eb10c1e-cb6a-4662-80cf-3104721d6f16 {} GOT:{u'boot_index': 0, u'uuid': u'7eb10c1e-cb6a-4662-80cf-3104721d6f16', u'links': [{u'href': u'http://localhost/v1/volume/targets/7eb10c1e-cb6a-4662-80cf-3104721d6f16', u'rel': u'self'}, {u'href': u'http://localhost/volume/targets/7eb10c1e-cb6a-4662-80cf-3104721d6f16', u'rel': u'bookmark'}], u'extra': {}, u'created_at': u'2019-06-06T07:02:16.858098+00:00', u'updated_at': None, u'volume_type': u'iscsi', u'node_uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'volume_id': u'12345678', u'properties': {u'target_iqn': u'iqn.foo'}} {25} ironic.tests.unit.api.controllers.v1.test_volume_target.TestListVolumeTargets.test_links [0.142045s] ... ok {19} ironic.tests.unit.drivers.modules.irmc.test_common.IRMCCommonMethodsTestCase.test_get_irmc_client [0.022993s] ... ok {1} ironic.tests.unit.drivers.modules.network.test_noop.NoopInterfaceTestCase.test_configure_tenant_networks [0.066282s] ... ok {19} ironic.tests.unit.drivers.modules.irmc.test_power.IRMCPowerInternalMethodsTestCase.test__set_power_state_soft_power_off_ok [0.052588s] ... ok {1} ironic.tests.unit.drivers.modules.network.test_noop.NoopInterfaceTestCase.test_get_current_vif [0.066394s] ... ok {19} ironic.tests.unit.drivers.modules.irmc.test_power.IRMCPowerTestCase.test_reboot_power_on_timeout [0.067074s] ... ok {1} ironic.tests.unit.drivers.modules.storage.test_cinder.CinderInterfaceTestCase.test_validate_failure_if_iscsi_boot_no_connectors [0.094455s] ... ok {19} ironic.tests.unit.drivers.modules.irmc.test_power.IRMCPowerTestCase.test_validate [0.049916s] ... ok PUT: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states/provision {'target': 'active'} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-014fa9f0-cf70-4d9b-a429-aaf37cd77f7b X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"The requested action \\\"active\\\" can not be performed on node \\\"1be26c0b-03f2-4d2e-ae87-c02d7f33c123\\\" while it is in state \\\"active\\\".\"}"} {1} ironic.tests.unit.drivers.modules.storage.test_cinder.CinderInterfaceTestCase.test_validate_success_connectors_and_boot [0.111608s] ... ok {31} ironic.tests.unit.api.controllers.v1.test_node.TestPut.test_provision_already_in_state [0.104705s] ... ok {19} ironic.tests.unit.drivers.modules.irmc.test_raid.IRMCRaidConfigurationTestCase.test_fail_create_raid_without_target_raid_config [0.048396s] ... ok {1} ironic.tests.unit.drivers.modules.test_agent.AgentRAIDTestCase.test_create_configuration [0.065767s] ... ok {31} ironic.tests.unit.api.controllers.v1.test_notification_utils.APINotifyTestCase.test_port_notification [0.019009s] ... ok {1} ironic.tests.unit.drivers.modules.test_agent.AgentRAIDTestCase.test_create_configuration_skip_nonroot [0.086640s] ... ok {19} ironic.tests.unit.drivers.modules.network.test_common.TestVifPortIDMixin.test_get_current_vif_internal_info_tenant_vif [0.065898s] ... ok {19} ironic.tests.unit.drivers.modules.redfish.test_inspect.RedfishInspectTestCase.test_inspect_hardware_fail_missing_memory_mb [0.056467s] ... ok {19} ironic.tests.unit.drivers.modules.redfish.test_utils.RedfishUtilsTestCase.test_parse_driver_info_path_verify_ca [0.021832s] ... ok {1} ironic.tests.unit.drivers.modules.test_agent.AgentRescueTestCase.test_agent_rescue_no_manage_agent_boot [0.145792s] ... ok {19} ironic.tests.unit.drivers.modules.redfish.test_utils.RedfishUtilsTestCase.test_parse_driver_info_valid_string_value_verify_ca [2.763587s] ... ok {19} ironic.tests.unit.drivers.modules.test_agent.AgentRAIDTestCase.test_get_clean_steps [0.062185s] ... ok {1} ironic.tests.unit.drivers.modules.test_agent.TestAgentDeploy.test_prepare_with_smartnic_port [0.170234s] ... ok {19} ironic.tests.unit.drivers.modules.test_agent.TestAgentDeploy.test_prepare [0.136221s] ... ok {1} ironic.tests.unit.drivers.modules.test_agent_base_vendor.AgentDeployMixinTest.test__get_post_clean_step_hook [0.034052s] ... ok PATCH: /v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4 [{'path': '/extra/foo1', 'value': 'bar1x', 'op': 'replace'}, {'path': '/extra/foo2', 'value': 'bar2x', 'op': 'replace'}, {'path': '/extra/foo3', 'value': 'bar3x', 'op': 'replace'}] GOT:Response: 200 OK Content-Type: application/json Openstack-Request-Id: req-cbe4e985-ec33-4607-8153-cd6237283b8a X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"node_uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "uuid": "6eb02b44-18a3-4659-8c0b-8d2802581ae4", "links": [{"href": "http://localhost/v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4", "rel": "self"}, {"href": "http://localhost/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4", "rel": "bookmark"}], "extra": {"foo1": "bar1x", "foo2": "bar2x", "foo3": "bar3x"}, "created_at": "2019-06-06T07:02:16.938247+00:00", "updated_at": "2019-06-06T07:02:16.948663+00:00", "ports": [{"href": "http://localhost/v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4/ports", "rel": "self"}, {"href": "http://localhost/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4/ports", "rel": "bookmark"}], "standalone_ports_supported": true, "mode": "active-backup", "address": "52:54:00:cf:2d:31", "internal_info": {"bar": "buzz"}, "properties": {}, "name": "pg.1"} {26} ironic.tests.unit.api.controllers.v1.test_portgroup.TestPatch.test_replace_multi [0.130944s] ... ok {1} ironic.tests.unit.drivers.modules.test_agent_base_vendor.AgentDeployMixinTest.test_prepare_instance_to_boot_localboot [0.075465s] ... ok {19} ironic.tests.unit.drivers.modules.test_agent.TestAgentDeploy.test_prepare_cleaning_manage_agent_boot_false [0.071132s] ... ok {19} ironic.tests.unit.drivers.modules.test_agent.TestAgentMethods.test_check_image_size_fail [0.068249s] ... ok {19} ironic.tests.unit.drivers.modules.test_agent_base_vendor.AgentDeployMixinTest.test__get_post_clean_step_hook_no_hook_registered [0.037253s] ... ok {1} ironic.tests.unit.drivers.modules.test_deploy_utils.AgentMethodsTestCase.test_execute_clean_step [0.059789s] ... ok {19} ironic.tests.unit.drivers.modules.test_agent_base_vendor.AgentDeployMixinTest.test_reboot_and_finish_deploy_with_smartnic_port [0.074936s] ... ok {1} ironic.tests.unit.drivers.modules.test_deploy_utils.AgentMethodsTestCase.test_get_clean_steps_override_priorities [0.062136s] ... ok {19} ironic.tests.unit.drivers.modules.test_agent_client.TestAgentClient.test__command_error_code [0.011109s] ... ok {19} ironic.tests.unit.drivers.modules.test_deploy_utils.InstanceInfoTestCase.test_parse_instance_info_good [0.020150s] ... ok {1} ironic.tests.unit.drivers.modules.test_deploy_utils.AgentMethodsTestCase.test_prepare_inband_cleaning_manage_boot_false [0.078790s] ... ok {1} ironic.tests.unit.drivers.modules.test_deploy_utils.GetPxeBootConfigTestCase.test_get_pxe_boot_file_bios_without_by_arch [0.013260s] ... ok {19} ironic.tests.unit.drivers.modules.test_deploy_utils.InstanceInfoTestCase.test_parse_instance_info_valid_ephemeral_gb [0.020733s] ... ok POST: /v1/ports {'local_link_connection': {'switch_info': 'switch1', 'port_id': 'Ethernet3/1', 'switch_id': '0a:1b:2c:3d:4e:5f'}, 'node_uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123', 'uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c781', 'extra': {}, 'pxe_enabled': True, 'portgroup_uuid': '6eb02b44-18a3-4659-8c0b-8d2802581ae4', 'physical_network': None, 'address': '52:54:00:cf:2d:31', 'is_smartnic': False} GOT:Response: 201 Created Content-Type: application/json Location: http://localhost/v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 Openstack-Request-Id: req-5b1ce8c8-50c7-49f6-9b5a-a0d1988cd7e4 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"local_link_connection": {"switch_info": "switch1", "port_id": "Ethernet3/1", "switch_id": "0a:1b:2c:3d:4e:5f"}, "node_uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "links": [{"href": "http://localhost/v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "rel": "self"}, {"href": "http://localhost/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "rel": "bookmark"}], "extra": {}, "pxe_enabled": true, "portgroup_uuid": "6eb02b44-18a3-4659-8c0b-8d2802581ae4", "updated_at": null, "physical_network": null, "address": "52:54:00:cf:2d:31", "internal_info": {}, "created_at": "2019-06-06T07:02:17.041521+00:00", "is_smartnic": false} {1} ironic.tests.unit.drivers.modules.test_deploy_utils.GetSingleNicTestCase.test_get_single_nic_with_vif_port_id_extra [0.060084s] ... ok {22} ironic.tests.unit.api.controllers.v1.test_port.TestPost.test_node_uuid_to_node_id_mapping [0.136096s] ... ok {19} ironic.tests.unit.drivers.modules.test_deploy_utils.InstanceInfoTestCase.test_parse_instance_info_valid_ephemeral_missing_format [0.019853s] ... ok {1} ironic.tests.unit.drivers.modules.test_deploy_utils.OtherFunctionTestCase.test_get_ironic_api_url_from_keystone [0.021705s] ... ok GET: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/traits {} GOT:Response: 406 Not Acceptable Content-Type: application/json Openstack-Request-Id: req-e2d66342-52aa-44e9-9e57-ee83f786bba4 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.36 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Request not acceptable.\"}"} {19} ironic.tests.unit.drivers.modules.test_deploy_utils.ParseInstanceInfoCapabilitiesTestCase.test_all_supported_capabilities [0.009567s] ... ok {1} ironic.tests.unit.drivers.modules.test_deploy_utils.ParseInstanceInfoCapabilitiesTestCase.test_get_boot_mode_for_deploy_using_instance_info_cap [0.009619s] ... ok {29} ironic.tests.unit.api.controllers.v1.test_node.TestTraits.test_get_all_traits_fails_with_bad_version [0.088224s] ... ok {1} ironic.tests.unit.drivers.modules.test_deploy_utils.SwitchPxeConfigTestCase.test_switch_uefi_elilo_config_whole_disk_image [0.023628s] ... ok {19} ironic.tests.unit.drivers.modules.test_deploy_utils.ParseInstanceInfoCapabilitiesTestCase.test_is_trusted_boot_requested_invalid [0.010172s] ... ok {1} ironic.tests.unit.drivers.modules.test_image_cache.TestImageCacheCleanUp.test_temp_dir_exception [0.014579s] ... ok {19} ironic.tests.unit.drivers.modules.test_deploy_utils.ParseInstanceInfoCapabilitiesTestCase.test_validate_boot_mode_capability_instance_info_with_exc [0.009671s] ... ok {1} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolCheckInitTestCase.test_power_init_calls_raises_3 [0.016621s] ... ok {19} ironic.tests.unit.drivers.modules.test_deploy_utils.SwitchPxeConfigTestCase.test_switch_ipxe_config_whole_disk_image [0.026557s] ... ok {19} ironic.tests.unit.drivers.modules.test_deploy_utils.TestBuildInstanceInfoForDeploy.test_build_instance_info_for_deploy_glance_image [0.111492s] ... ok {1} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolDriverTestCase.test__parse_ipmi_sensor_data_ok [2.569991s] ... ok {19} ironic.tests.unit.drivers.modules.test_deploy_utils.TrySetBootDeviceTestCase.test_try_set_boot_device_ipmifailure_uefi [0.099517s] ... ok {1} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolDriverTestCase.test_management_interface_set_boot_device_exec_failed [0.061824s] ... ok {19} ironic.tests.unit.drivers.modules.test_deploy_utils.ValidateImagePropertiesTestCase.test_validate_image_properties_glance_image_missing_prop [0.024696s] ... ok {19} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolCheckOptionSupportedTestCase.test_check_dual_bridge_pass [0.014303s] ... ok POST: /v1/ports {'local_link_connection': {'switch_info': 'switch1', 'port_id': 'Ethernet3/1', 'switch_id': '0a:1b:2c:3d:4e:5f'}, 'node_uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123', 'uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c781', 'extra': {}, 'pxe_enabled': False, 'physical_network': None, 'address': '52:54:00:cf:2d:31', 'is_smartnic': False} GOT:Response: 201 Created Content-Type: application/json Location: http://localhost/v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 Openstack-Request-Id: req-79022835-c0f7-426c-892b-656f4f603267 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"local_link_connection": {"switch_info": "switch1", "port_id": "Ethernet3/1", "switch_id": "0a:1b:2c:3d:4e:5f"}, "node_uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "links": [{"href": "http://localhost/v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "rel": "self"}, {"href": "http://localhost/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "rel": "bookmark"}], "extra": {}, "pxe_enabled": false, "portgroup_uuid": null, "updated_at": null, "physical_network": null, "address": "52:54:00:cf:2d:31", "internal_info": {}, "created_at": "2019-06-06T07:02:17.357218+00:00", "is_smartnic": false} {1} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolDriverTestCase.test_vendor_passthru_driver_routes [0.048016s] ... ok {19} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolDriverTestCase.test__parse_ipmi_sensor_data_failed [0.023233s] ... ok {27} ironic.tests.unit.api.controllers.v1.test_port.TestPost.test_create_port_novif_nopxe_noportgroup [0.116704s] ... ok {1} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolPrivateMethodTestCase.test___set_and_wait_no_needless_status_polling [0.067099s] ... ok {19} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolDriverTestCase.test_management_interface_set_boot_device_without_timeout_2 [0.071673s] ... ok {1} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolPrivateMethodTestCase.test__parse_driver_info_ipmi_prot_version_1_5 [0.022661s] ... ok {19} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolDriverTestCase.test_reboot_timeout_fail [0.072524s] ... ok {19} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolDriverTestCase.test_vendor_passthru_validate__send_raw_bytes_fail [0.068132s] ... ok {1} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolPrivateMethodTestCase.test_exec_ipmitool_exception_retry_node_busy [0.029717s] ... ok {19} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolPrivateMethodTestCase.test__exec_ipmitool_first_call_to_address [0.029322s] ... ok {1} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolShellinaboxTestCase.test__get_ipmi_cmd [0.059837s] ... ok {1} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolShellinaboxTestCase.test__start_console_fail_nodir [0.063118s] ... ok {19} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolPrivateMethodTestCase.test__exec_ipmitool_with_dual_bridging [0.032221s] ... ok {1} ironic.tests.unit.drivers.modules.test_ipxe.iPXEBootTestCase.test_prepare_ramdisk_set_default_boot_mode_on_ironic_uefi [0.697925s] ... ok POST: /v1/nodes {'instance_uuid': None, 'uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123', 'driver_info': {'fake_password': 'fakepass', 'foo': 'bar'}, 'resource_class': 'foo', 'extra': {}, 'driver': 'fake-hardware', 'properties': {'memory_mb': '4096', 'cpu_arch': 'x86_64', 'local_gb': '10', 'cpus': '8'}, 'maintenance': False, 'chassis_uuid': 'e74c40e0-d825-11e2-a28f-0800200c9a66', 'instance_info': {'foo': 'bar', 'image_url': 'http://example.com/test_image_url', 'configdrive': 'TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQ='}} GOT:Response: 201 Created Content-Type: application/json Location: http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123 Openstack-Request-Id: req-68257829-9cb8-40b4-8433-7962482bcb10 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"target_power_state": null, "automated_clean": null, "inspect_interface": "fake", "links": [{"href": "http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "rel": "self"}, {"href": "http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "rel": "bookmark"}], "target_provision_state": null, "deploy_step": {}, "storage_interface": "noop", "conductor_group": "", "protected_reason": null, "maintenance_reason": null, "states": [{"href": "http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states", "rel": "self"}, {"href": "http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states", "rel": "bookmark"}], "traits": [], "provision_state": "enroll", "clean_step": {}, "vendor_interface": "fake", "description": null, "uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "console_enabled": false, "extra": {}, "raid_config": {}, "provision_updated_at": null, "power_state": null, "last_error": null, "target_raid_config": {}, "network_interface": "flat", "inspection_started_at": null, "inspection_finished_at": null, "maintenance": false, "conductor": null, "power_interface": "fake", "driver": "fake-hardware", "updated_at": null, "volume": [{"href": "http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/volume", "rel": "self"}, {"href": "http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/volume", "rel": "bookmark"}], "raid_interface": "fake", "rescue_interface": "fake", "boot_interface": "fake", "reservation": null, "management_interface": "fake", "properties": {"memory_mb": "4096", "cpu_arch": "x86_64", "local_gb": "10", "cpus": "8"}, "bios_interface": "fake", "instance_uuid": null, "name": null, "driver_info": {"fake_password": "******", "foo": "bar"}, "resource_class": "foo", "fault": null, "created_at": "2019-06-06T07:02:15.383188+00:00", "portgroups": [{"href": "http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/portgroups", "rel": "self"}, {"href": "http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/portgroups", "rel": "bookmark"}], "deploy_interface": "fake", "ports": [{"href": "http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports", "rel": "self"}, {"href": "http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports", "rel": "bookmark"}], "console_interface": "fake", "protected": false, "driver_internal_info": {}, "chassis_uuid": "e74c40e0-d825-11e2-a28f-0800200c9a66", "owner": null, "instance_info": {"foo": "bar", "image_url": "******", "configdrive": "******"}, "allocation_uuid": null} GET: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123 {} GOT:{u'target_power_state': None, u'automated_clean': None, u'inspect_interface': u'fake', u'links': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'bookmark'}], u'target_provision_state': None, u'deploy_step': {}, u'storage_interface': u'noop', u'conductor_group': u'', u'protected_reason': None, u'maintenance_reason': None, u'states': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states', u'rel': u'bookmark'}], u'traits': [], u'provision_state': u'enroll', u'clean_step': {}, u'vendor_interface': u'fake', u'uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'console_enabled': False, u'extra': {}, u'raid_config': {}, u'provision_updated_at': None, u'power_state': None, u'last_error': None, u'target_raid_config': {}, u'maintenance': False, u'network_interface': u'flat', u'inspection_started_at': None, u'inspection_finished_at': None, u'description': None, u'conductor': None, u'driver': u'fake-hardware', u'power_interface': u'fake', u'updated_at': None, u'volume': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/volume', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/volume', u'rel': u'bookmark'}], u'raid_interface': u'fake', u'rescue_interface': u'fake', u'boot_interface': u'fake', u'reservation': None, u'management_interface': u'fake', u'properties': {u'memory_mb': u'4096', u'cpu_arch': u'x86_64', u'local_gb': u'10', u'cpus': u'8'}, u'bios_interface': u'fake', u'instance_uuid': None, u'name': None, u'driver_info': {u'fake_password': u'******', u'foo': u'bar'}, u'resource_class': u'foo', u'fault': None, u'created_at': u'2019-06-06T07:02:15.383188+00:00', u'portgroups': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/portgroups', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/portgroups', u'rel': u'bookmark'}], u'deploy_interface': u'fake', u'instance_info': {u'foo': u'bar', u'image_url': u'******', u'configdrive': u'******'}, u'console_interface': u'fake', u'protected': False, u'driver_internal_info': {}, u'chassis_uuid': u'e74c40e0-d825-11e2-a28f-0800200c9a66', u'owner': None, u'ports': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'bookmark'}], u'allocation_uuid': None} {13} ironic.tests.unit.api.controllers.v1.test_node.TestPost.test_create_node_resource_class [0.222658s] ... ok {19} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolPrivateMethodTestCase.test__make_password_file_write_exception [0.025139s] ... ok {1} ironic.tests.unit.drivers.modules.test_ipxe.iPXEBootTestCase.test_validate_fail_glance_image_doesnt_exists [0.069334s] ... ok {1} ironic.tests.unit.drivers.modules.test_iscsi_deploy.ISCSIDeployTestCase.test_prepare_node_deploying_storage_should_write_false [0.155115s] ... ok {19} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolPrivateMethodTestCase.test_exec_ipmitool_exception_non_retryable_failure_out_of_space [0.026117s] ... ok {1} ironic.tests.unit.drivers.modules.test_iscsi_deploy.IscsiDeployMethodsTestCase.test_check_image_size_whole_disk_image_no_root [0.094392s] ... ok {19} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolSocatDriverTestCase.test__start_console_fail [0.065061s] ... ok {19} ironic.tests.unit.drivers.modules.test_ipxe.iPXEBootTestCase.test_clean_up_ramdisk [0.076982s] ... ok {1} ironic.tests.unit.drivers.modules.test_pxe.PXEBootTestCase.test_clean_up_ramdisk [0.124965s] ... ok {19} ironic.tests.unit.drivers.modules.test_ipxe.iPXEBootTestCase.test_clean_up_ramdisk_rescue [0.075970s] ... ok {19} ironic.tests.unit.drivers.modules.test_iscsi_deploy.IscsiDeployPrivateMethodsTestCase.test__get_image_file_path [0.019052s] ... ok {1} ironic.tests.unit.drivers.modules.test_pxe.PXEBootTestCase.test_prepare_ramdisk_ipxe_with_copy_file_different [0.149335s] ... ok POST: /v1/ports {'local_link_connection': {'switch_info': 'switch1', 'port_id': 'Ethernet3/1', 'switch_id': '0a:1b:2c:3d:4e:5f'}, 'node_uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123', 'uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c781', 'extra': {}, 'pxe_enabled': True, 'portgroup_uuid': '6eb02b44-18a3-4659-8c0b-8d2802581ae4', 'physical_network': None, 'address': '52:54:00:cf:2d:31', 'is_smartnic': False} GOT:Response: 201 Created Content-Type: application/json Location: http://localhost/v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 Openstack-Request-Id: req-337464cc-0ec7-4246-a54d-c1ef16504cc2 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"local_link_connection": {"switch_info": "switch1", "port_id": "Ethernet3/1", "switch_id": "0a:1b:2c:3d:4e:5f"}, "node_uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "links": [{"href": "http://localhost/v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "rel": "self"}, {"href": "http://localhost/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "rel": "bookmark"}], "extra": {}, "pxe_enabled": true, "portgroup_uuid": "6eb02b44-18a3-4659-8c0b-8d2802581ae4", "updated_at": null, "physical_network": null, "address": "52:54:00:cf:2d:31", "internal_info": {}, "created_at": "2019-06-06T07:02:16.881081+00:00", "is_smartnic": false} {3} ironic.tests.unit.api.controllers.v1.test_port.TestPost.test_create_port_portgroup [0.137725s] ... ok {1} ironic.tests.unit.drivers.modules.test_snmp.SNMPDeviceDriverTestCase.test_aten_snmp_objects [0.015198s] ... ok {19} ironic.tests.unit.drivers.modules.test_pxe.PXEBootTestCase.test_prepare_instance_localboot_active [0.105033s] ... ok {1} ironic.tests.unit.drivers.modules.test_snmp.SNMPValidateParametersTestCase.test__parse_driver_info_missing_user [0.014159s] ... ok {19} ironic.tests.unit.drivers.modules.test_pxe.PXEValidateRescueTestCase.test_validate_rescue_no_rescue_ramdisk [0.070156s] ... ok {1} ironic.tests.unit.drivers.modules.test_snmp.SNMPValidateParametersTestCase.test__parse_driver_info_teltronix [0.014541s] ... ok {1} ironic.tests.unit.drivers.modules.ucs.test_management.UcsManagementTestCase.test_get_properties [0.032801s] ... ok {19} ironic.tests.unit.drivers.modules.test_snmp.SNMPClientTestCase.test_get_err_engine [0.026765s] ... ok {19} ironic.tests.unit.drivers.modules.test_snmp.SNMPDeviceDriverTestCase.test_apc_masterswitch_snmp_objects [0.015593s] ... ok {1} ironic.tests.unit.drivers.modules.xclarity.test_common.XClarityCommonTestCase.test_get_xclarity_client [0.034052s] ... ok {19} ironic.tests.unit.drivers.modules.test_snmp.SNMPValidateParametersTestCase.test__parse_driver_info_aten [0.013226s] ... ok {1} ironic.tests.unit.drivers.modules.xclarity.test_power.XClarityPowerDriverTestCase.test_reboot [0.069358s] ... ok {19} ironic.tests.unit.drivers.modules.ucs.test_power.UcsPowerTestCase.test_set_power_state [0.143728s] ... ok {19} ironic.tests.unit.drivers.modules.ucs.test_power.UcsPowerTestCase.test_validate [0.598851s] ... ok {1} ironic.tests.unit.drivers.test_fake_hardware.FakeHardwareTestCase.test_management_interface_set_boot_device_fail [0.057760s] ... ok {19} ironic.tests.unit.drivers.test_fake_hardware.FakeHardwareTestCase.test_console_interface [0.056262s] ... ok {1} ironic.tests.unit.drivers.test_ilo.IloHardwareTestCase.test_override_with_pxe [0.063151s] ... ok {19} ironic.tests.unit.drivers.test_irmc.IRMCHardwareTestCase.test_override_with_bios_configuration [0.059215s] ... ok {19} ironic.tests.unit.drivers.test_utils.UtilsTestCase.test_capabilities_to_dict [0.019727s] ... ok {19} ironic.tests.unit.drivers.test_utils.UtilsTestCase.test_capabilities_to_dict_with_incorrect_format_fail [0.020175s] ... ok {1} ironic.tests.unit.drivers.test_utils.UtilsTestCase.test_normalize_mac_string [0.022108s] ... ok {19} ironic.tests.unit.objects.test_allocation.TestAllocationObject.test_payload_schemas [0.013877s] ... ok {1} ironic.tests.unit.drivers.test_xclarity.XClarityHardwareTestCase.test_default_interfaces [0.067636s] ... ok {19} ironic.tests.unit.objects.test_deploy_template.TestDeployTemplateObject.test_create [0.015105s] ... ok {1} ironic.tests.unit.objects.test_conductor.TestConductorObject.test_load [0.018119s] ... ok {19} ironic.tests.unit.objects.test_objects.TestObject.test_as_dict_with_nested_object [0.009178s] ... ok {1} ironic.tests.unit.objects.test_deploy_template.TestDeployTemplateObject.test_get_by_id [0.018782s] ... ok {19} ironic.tests.unit.objects.test_objects.TestObject.test_do_version_changes_for_db_downgrade [0.010685s] ... ok {1} ironic.tests.unit.objects.test_deploy_template.TestDeployTemplateObject.test_get_by_uuid [0.021262s] ... ok {19} ironic.tests.unit.objects.test_objects.TestObject.test_get_target_version_pinned [0.010395s] ... ok {19} ironic.tests.unit.objects.test_portgroup.TestConvertToVersion.test_vif_in_extra_not_in_extra [0.013541s] ... ok {1} ironic.tests.unit.objects.test_node.TestConvertToVersion.test_allocation_id_supported_missing [0.016140s] ... ok {1} ironic.tests.unit.objects.test_node.TestConvertToVersion.test_automated_clean_supported_missing [0.016654s] ... ok {19} ironic.tests.unit.objects.test_volume_connector.TestVolumeConnectorObject.test_list [0.016766s] ... ok {19} ironic.tests.unit.objects.test_volume_connector.TestVolumeConnectorObject.test_list_by_node_id [1.328439s] ... ok {1} ironic.tests.unit.objects.test_node.TestConvertToVersion.test_fault_unsupported_missing [0.016384s] ... ok {1} ironic.tests.unit.objects.test_node.TestNodeObject.test_create_with_invalid_properties [0.016620s] ... ok {1} ironic.tests.unit.objects.test_port.TestConvertToVersion.test_is_smartnic_supported [0.015028s] ... ok {1} ironic.tests.unit.objects.test_portgroup.TestMigrateVifPortId.test_migrate_vif_port_id_one [0.033037s] ... ok {1} ironic.tests.unit.objects.test_volume_target.TestVolumeTargetObject.test_destroy [0.019549s] ... ok PUT: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states/provision {'target': 'deleted'} GOT:Response: 202 Accepted Location: http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states Openstack-Request-Id: req-14fd2c62-d8a0-4633-8226-e693bd5c8269 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {15} ironic.tests.unit.api.controllers.v1.test_node.TestPut.test_provision_with_tear_down [0.286131s] ... ok DELETE: /v1/portgroups/pg.1 GOT:Response: 204 No Content Openstack-Request-Id: req-829e067d-f856-448f-9464-5c34425aa806 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {22} ironic.tests.unit.api.controllers.v1.test_portgroup.TestDelete.test_delete_portgroup_byname [0.086218s] ... ok GET: /v1/volume/targets?detail=True&node=test-node {} GOT:{u'targets': [{u'boot_index': 0, u'uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c781', u'links': [{u'href': u'http://localhost/v1/volume/targets/1be26c0b-03f2-4d2e-ae87-c02d7f33c781', u'rel': u'self'}, {u'href': u'http://localhost/volume/targets/1be26c0b-03f2-4d2e-ae87-c02d7f33c781', u'rel': u'bookmark'}], u'extra': {}, u'created_at': u'2019-06-06T07:02:17.531897+00:00', u'updated_at': None, u'volume_type': u'iscsi', u'node_uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'volume_id': u'12345678', u'properties': {u'target_iqn': u'iqn.foo'}}]} {6} ironic.tests.unit.api.controllers.v1.test_volume_target.TestListVolumeTargets.test_detail_by_node_name_ok [0.074512s] ... ok GET: /v1/ports/detail?node=test-node {} GOT:Response: 406 Not Acceptable Content-Type: application/json Openstack-Request-Id: req-8ab04825-96d5-4aa5-aead-0e4572e80c7a X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Request not acceptable.\"}"} {31} ironic.tests.unit.api.controllers.v1.test_port.TestListPorts.test_detail_by_node_name_not_supported [0.067080s] ... ok POST: /v1/volume/connectors {'node_uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123', 'extra': {}, 'type': 'iqn', 'uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c781', 'connector_id': 'test-connector-id-456'} GOT:Response: 201 Created Content-Type: application/json Location: http://localhost/v1/volume/connectors/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 Openstack-Request-Id: req-7607d75b-2f23-4371-a61d-a2a55364064c X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"node_uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "links": [{"href": "http://localhost/v1/volume/connectors/1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "rel": "self"}, {"href": "http://localhost/volume/connectors/1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "rel": "bookmark"}], "extra": {}, "created_at": "2019-06-06T07:02:17.541035+00:00", "updated_at": null, "connector_id": "test-connector-id-456", "type": "iqn"} POST: /v1/volume/connectors {'node_uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123', 'extra': {}, 'type': 'iqn', 'uuid': '42bc6c1d-232d-400d-a38a-c46492ae9743', 'connector_id': 'test-connector-id-456'} GOT:Response: 409 Conflict Content-Type: application/json Openstack-Request-Id: req-a0f02d75-8945-451c-9c20-ebc82667ab37 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"A volume connector with type iqn and connector ID test-connector-id-456 already exists.\"}"} {30} ironic.tests.unit.api.controllers.v1.test_volume_connector.TestPost.test_create_volume_connector_type_value_already_exist [0.122851s] ... ok PATCH: /v1/volume/targets/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 [{'path': '/foo', 'value': 'bar', 'op': 'add'}] GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-0524b33c-8cbf-4b19-82cc-909ebea9a201 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Adding a new attribute (/foo) to the root of the resource is not allowed\"}"} {25} ironic.tests.unit.api.controllers.v1.test_volume_target.TestPatch.test_add_root_non_existent [0.069881s] ... ok {25} ironic.tests.unit.api.test_healthcheck.TestHealthcheckMiddleware.test_disable [0.033672s] ... ok GET: /v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781/detail {} GOT:Response: 404 Not Found Content-Type: application/json Openstack-Request-Id: req-193cade0-d303-4daf-bf5d-4e24c5d2d40a X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Resource could not be found.\"}"} {29} ironic.tests.unit.api.controllers.v1.test_port.TestListPorts.test_detail_against_single [0.073012s] ... ok PATCH: /v1/ports/533182d6-b8a6-4f8d-bc7e-ea793015c7c1 [{'path': '/extra/vif_port_id', 'value': 'foo', 'op': 'add'}, {'path': '/extra/vif_port_id', 'value': 'bar', 'op': 'add'}] GOT:Response: 200 OK Content-Type: application/json Openstack-Request-Id: req-4a069850-1fb2-4a02-af05-db81bc279d33 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.27 {"local_link_connection": {"switch_info": "switch1", "port_id": "Ethernet3/1", "switch_id": "0a:1b:2c:3d:4e:5f"}, "node_uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "uuid": "533182d6-b8a6-4f8d-bc7e-ea793015c7c1", "links": [{"href": "http://localhost/v1/ports/533182d6-b8a6-4f8d-bc7e-ea793015c7c1", "rel": "self"}, {"href": "http://localhost/ports/533182d6-b8a6-4f8d-bc7e-ea793015c7c1", "rel": "bookmark"}], "extra": {"vif_port_id": "bar"}, "pxe_enabled": true, "portgroup_uuid": null, "updated_at": "2019-06-06T07:02:17.138425+00:00", "address": "52:55:00:cf:2d:31", "internal_info": {"tenant_vif_port_id": "bar", "bar": "buzz"}, "created_at": "2019-06-06T07:02:17.078782+00:00"} {25} ironic.tests.unit.cmd.test_dbsync.OnlineMigrationTestCase.test__run_migration_functions_exception [0.027181s] ... ok {14} ironic.tests.unit.api.controllers.v1.test_port.TestPatch.test_add_extra_vif_port_id_no_internal [0.130558s] ... ok {25} ironic.tests.unit.cmd.test_dbsync.OnlineMigrationTestCase.test_check_obj_versions [0.032627s] ... ok {25} ironic.tests.unit.common.test_cinder.TestCinderUtils.test_is_volume_attached [0.034594s] ... ok {25} ironic.tests.unit.common.test_fsm.FSMTest.test_initialize [0.016251s] ... ok {25} ironic.tests.unit.common.test_fsm.FSMTest.test_is_stable [0.016722s] ... ok {25} ironic.tests.unit.common.test_glance_service.TestSwiftTempUrlCache.test_remove_expired_items_from_cache [0.016749s] ... ok {25} ironic.tests.unit.common.test_images.FsImageTestCase.test__create_root_fs [0.038535s] ... ok PUT: /v1/nodes/node-39/traits {'traits': ['CUSTOM_3']} GOT:Response: 204 No Content Openstack-Request-Id: req-129a81ee-b6cb-4a0c-aedd-86dc820daf06 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.37 {15} ironic.tests.unit.api.controllers.v1.test_node.TestTraits.test_set_all_traits [0.093440s] ... ok {25} ironic.tests.unit.common.test_images.IronicImagesTestCase.test_image_to_raw [0.025356s] ... ok {25} ironic.tests.unit.common.test_images.IronicImagesTestCase.test_is_whole_disk_image_whole_disk_image [0.022334s] ... ok PATCH: /v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4 [{'path': '/address', 'value': 'invalid-format', 'op': 'replace'}] GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-ad1cb8bb-f797-48d6-a8e0-8d8561eae02c X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Expected a MAC address but received invalid-format.\"}"} {26} ironic.tests.unit.api.controllers.v1.test_portgroup.TestPatch.test_update_address_invalid_format [0.069443s] ... ok {25} ironic.tests.unit.common.test_json_rpc.TestClient.test_can_send_version [0.018028s] ... ok {25} ironic.tests.unit.common.test_neutron.TestGetNetworkByUUIDOrName.test__get_network_by_uuid_or_name_uuid [0.016838s] ... ok {25} ironic.tests.unit.common.test_neutron.TestNeutronNetworkActions.test_remove_neutron_ports_list_fail [0.119313s] ... ok {25} ironic.tests.unit.common.test_neutron.TestNeutronNetworkActions.test_validate_port_info_flat_interface_with_client_id [0.072736s] ... ok {25} ironic.tests.unit.common.test_neutron.TestUnbindPort.test_unbind_neutron_port_not_found [0.038250s] ... ok {25} ironic.tests.unit.common.test_neutron.TestValidateNetwork.test_duplicate [0.022669s] ... ok {25} ironic.tests.unit.common.test_policy.PolicyInCodeTestCaseNegative.test_public_api [0.025904s] ... ok {25} ironic.tests.unit.common.test_policy.PolicyTestCase.test_get_oslo_policy_enforcer_no_args [0.112605s] ... ok {25} ironic.tests.unit.common.test_pxe_utils.PXEInterfacesTestCase.test_cache_ramdisk_kernel_ipxe [0.086915s] ... ok {25} ironic.tests.unit.common.test_pxe_utils.TestPXEUtils.test_create_pxe_config_set_dir_permission [0.118156s] ... ok {25} ironic.tests.unit.common.test_pxe_utils.TestPXEUtils.test_default_ipxe_boot_from_volume_config_no_extra_volumes [0.092049s] ... ok {25} ironic.tests.unit.common.test_pxe_utils.TestPXEUtils.test_default_pxe_config [0.053105s] ... ok {25} ironic.tests.unit.common.test_raid.RaidPublicMethodsTestCase.test_get_logical_disk_properties_custom_schema [0.033700s] ... ok {25} ironic.tests.unit.common.test_utils.BareMetalUtilsTestCase.test_create_link [0.016580s] ... ok {25} ironic.tests.unit.common.test_utils.GenericUtilsTestCase.test_is_valid_no_proxy [0.016417s] ... ok {25} ironic.tests.unit.common.test_utils.GenericUtilsTestCase.test_validate_and_normalize_mac_invalid_format [0.018609s] ... ok {25} ironic.tests.unit.common.test_utils.TempFilesTestCase.test__check_dir_writable_ok [0.016648s] ... ok {25} ironic.tests.unit.conductor.test_manager.BootDeviceTestCase.test_get_boot_device_node_locked [0.065715s] ... ok {25} ironic.tests.unit.conductor.test_manager.BootDeviceTestCase.test_set_boot_device_validate_fail [0.104309s] ... ok {25} ironic.tests.unit.conductor.test_manager.DestroyNodeTestCase.test_destroy_node_protected_provision_state_available [0.332509s] ... ok {25} ironic.tests.unit.conductor.test_manager.DoNextDeployStepTestCase.test__get_node_next_steps_exception [0.100611s] ... ok {25} ironic.tests.unit.conductor.test_manager.DoNodeCleanTestCase.test__do_next_clean_step_automated_no_steps [0.731548s] ... ok GET: /v1/volume/targets?detail=True {} GOT:Response: 404 Not Found Content-Type: application/json {"error_message": "{\"code\": 404, \"description\": \"\", \"title\": \"Not Found\"}"} {25} ironic.tests.unit.conductor.test_manager.DoNodeCleanTestCase.test__do_node_clean_automated_enabled_individual_none [0.387981s] ... ok {30} ironic.tests.unit.api.controllers.v1.test_volume_target.TestListVolumeTargets.test_detail_invalid_api_version [0.050444s] ... ok {25} ironic.tests.unit.conductor.test_manager.DoNodeCleanTestCase.test__do_node_clean_automated_prepare_clean_fail [0.149473s] ... ok {25} ironic.tests.unit.conductor.test_manager.DoNodeCleanTestCase.test_do_node_clean_ok [0.233052s] ... ok {25} ironic.tests.unit.conductor.test_manager.DoNodeDeployTestCase.test__do_node_deploy_ok_configdrive_old [0.290334s] ... ok {25} ironic.tests.unit.conductor.test_manager.DoNodeInspectAbortTestCase.test_do_inspect_abort_interface_not_support [0.214510s] ... ok {25} ironic.tests.unit.conductor.test_manager.DoNodeRescueTestCase.test__do_node_rescue_abort_clean_up_fail [0.103522s] ... ok {25} ironic.tests.unit.conductor.test_manager.DoNodeRescueTestCase.test_do_node_rescue [0.161184s] ... ok {25} ironic.tests.unit.conductor.test_manager.DoNodeTearDownTestCase.test__do_node_tear_down_ok_without_console [0.253972s] ... ok {25} ironic.tests.unit.conductor.test_manager.DoProvisioningActionTestCase.test_do_provisioning_action_worker_pool_full [0.253767s] ... ok {25} ironic.tests.unit.conductor.test_manager.ManagerCheckDeployTimeoutsTestCase.test_maintenance_after_lock [0.017578s] ... ok {25} ironic.tests.unit.conductor.test_manager.NodeInspectHardware.test_inspect_hardware_ok [0.308917s] ... ok {25} ironic.tests.unit.conductor.test_manager.ServiceDoNodeDeployTestCase.test_do_node_deploy_maintenance [0.075493s] ... ok {25} ironic.tests.unit.conductor.test_manager.TestIndirectionApiConductor.test_object_class_action [0.016139s] ... ok {25} ironic.tests.unit.conductor.test_manager.UpdatePortTestCase.test_update_port_physnet_node_deleting_state [0.070517s] ... ok {25} ironic.tests.unit.conductor.test_manager.UpdatePortgroupTestCase.test_update_portgroup_failure [0.075287s] ... ok {25} ironic.tests.unit.conductor.test_manager.UpdatePortgroupTestCase.test_update_portgroup_to_node_in_deleting_state [0.111232s] ... ok {25} ironic.tests.unit.conductor.test_manager.UpdateVolumeConnectorTestCase.test_update_volume_connector_uuid [0.082043s] ... ok {25} ironic.tests.unit.conductor.test_manager.UpdateVolumeTargetTestCase.test_update_volume_target_node_locked [0.074892s] ... ok {25} ironic.tests.unit.conductor.test_manager.VendorPassthruTestCase.test_vendor_passthru_worker_pool_full [0.230010s] ... ok GET: /v1/lookup?addresses=11:22:33:44:55:66,66:55:44:33:22:11&node_uuid=e7d6a02e-7a0a-4a8d-b06c-e765a3c8aeb2 {} GOT:{u'node': {u'instance_info': {u'foo': u'bar', u'image_url': u'******', u'configdrive': u'******'}, u'uuid': u'e7d6a02e-7a0a-4a8d-b06c-e765a3c8aeb2', u'driver_internal_info': {u'private_state': u'secret value'}, u'links': [{u'href': u'http://localhost/v1/nodes/e7d6a02e-7a0a-4a8d-b06c-e765a3c8aeb2', u'rel': u'self'}, {u'href': u'http://localhost/nodes/e7d6a02e-7a0a-4a8d-b06c-e765a3c8aeb2', u'rel': u'bookmark'}], u'properties': {u'memory_mb': u'4096', u'cpu_arch': u'x86_64', u'local_gb': u'10', u'cpus': u'8'}}, u'config': {u'metrics': {u'prepend_host': False, u'prepend_uuid': False, u'backend': u'statsd', u'prepend_host_reverse': True, u'global_prefix': None}, u'heartbeat_timeout': 300, u'metrics_statsd': {u'statsd_port': 8125, u'statsd_host': u'localhost'}}} {7} ironic.tests.unit.api.controllers.v1.test_ramdisk.TestLookup.test_found_by_uuid [0.074715s] ... ok {25} ironic.tests.unit.conductor.test_rpcapi.RPCAPITestCase.test_get_topic_for_driver_known_driver [0.030159s] ... ok {25} ironic.tests.unit.conductor.test_task_manager.TaskManagerStateModelTestCases.test_process_event_no_callback_notify [0.013128s] ... ok {7} ironic.tests.unit.api.controllers.v1.test_types.TestUuidOrNameType.test_valid_name [0.016660s] ... ok {25} ironic.tests.unit.conductor.test_task_manager.TaskManagerTestCase.test_spawn_after_on_error_hook_exception [0.032406s] ... ok {25} ironic.tests.unit.conductor.test_utils.ErrorHandlersTestCase.test_rescuing_error_handler_set_failed_state_false [0.016740s] ... ok {7} ironic.tests.unit.api.controllers.v1.test_types.TestVifType.test_vif_type_optional_key [0.017851s] ... ok {25} ironic.tests.unit.conductor.test_utils.MiscTestCase.test_power_on_node_if_needed_false_no_need [0.087346s] ... ok {7} ironic.tests.unit.api.controllers.v1.test_utils.TestPortgroupIdent.test_get_rpc_portgroup_name [0.019025s] ... ok {25} ironic.tests.unit.conductor.test_utils.NodeSetBootModeTestCase.test_node_set_boot_mode_valid [0.084479s] ... ok {25} ironic.tests.unit.db.sqlalchemy.test_migrations.ModelsMigrationsSyncPostgres.test_models_sync ... SKIPPED: Backend 'postgresql' is unavailable: Could not connect {25} ironic.tests.unit.db.test_allocations.AllocationsTestCase.test_get_allocation_list_sorted [0.041865s] ... ok {25} ironic.tests.unit.db.test_bios_settings.DbBIOSSettingTestCase.test_update_bios_setting_list_setting_not_exist [0.039813s] ... ok {25} ironic.tests.unit.db.test_deploy_templates.DbDeployTemplateTestCase.test_destroy [0.027626s] ... ok {25} ironic.tests.unit.db.test_nodes.DbNodeTestCase.test_get_node_by_instance_wrong_uuid [0.039291s] ... ok {25} ironic.tests.unit.db.test_nodes.DbNodeTestCase.test_get_nodeinfo_list_with_filters [0.068789s] ... ok {25} ironic.tests.unit.db.test_nodes.DbNodeTestCase.test_volume_connector_get_destroyed_after_destroying_a_node_uuid [0.039701s] ... ok {25} ironic.tests.unit.db.test_portgroups.DbportgroupTestCase.test_get_portgroups_by_node_id [0.032301s] ... ok {25} ironic.tests.unit.db.test_volume_targets.DbVolumeTargetTestCase.test_update_volume_target_duplicated_nodeid_and_bootindex [0.030853s] ... ok {25} ironic.tests.unit.drivers.modules.ansible.test_deploy.TestAnsibleDeploy.test_tear_down_cleaning_with_smartnic_port [0.065427s] ... ok {25} ironic.tests.unit.drivers.modules.ansible.test_deploy.TestAnsibleDeploy.test_tear_down_with_smartnic_port [0.073128s] ... ok PUT: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/traits {'traits': []} GOT:Response: 405 Method Not Allowed Allow: DELETE, GET, PATCH, POST Content-Type: application/json {"error_message": "{\"code\": 405, \"description\": \"\", \"title\": \"Method Not Allowed\"}"} {15} ironic.tests.unit.api.controllers.v1.test_node.TestTraits.test_set_all_traits_fails_with_bad_version [0.057574s] ... ok {25} ironic.tests.unit.drivers.modules.ansible.test_deploy.TestAnsibleMethods.test__get_clean_steps [0.043665s] ... ok {25} ironic.tests.unit.drivers.modules.ansible.test_deploy.TestAnsibleMethods.test__validate_clean_steps_names_not_unique [0.024534s] ... ok {25} ironic.tests.unit.drivers.modules.cimc.test_power.PowerTestCase.test_set_power_state_reboot_ok [0.072538s] ... ok {25} ironic.tests.unit.drivers.modules.drac.test_job.DracJobTestCase.test_validate_job_queue [0.042602s] ... ok {25} ironic.tests.unit.drivers.modules.drac.test_management.DracManagementInternalMethodsTestCase.test__get_next_persistent_boot_mode_list_boot_modes_fail [0.037732s] ... ok {25} ironic.tests.unit.drivers.modules.drac.test_management.DracManagementInternalMethodsTestCase.test_set_boot_device_with_invalid_job_queue [0.030267s] ... ok {25} ironic.tests.unit.drivers.modules.drac.test_periodic_task.DracPeriodicTaskTestCase.test__check_node_raid_jobs_with_completed_job_already_failed [0.114732s] ... ok {25} ironic.tests.unit.drivers.modules.drac.test_raid.DracRaidInterfaceTestCase.test_create_configuration_with_multiple_controllers [0.109009s] ... ok {25} ironic.tests.unit.drivers.modules.ilo.test_boot.IloBootPrivateMethodsTestCase.test__clean_up_boot_iso_for_instance_on_webserver [0.042262s] ... ok {25} ironic.tests.unit.drivers.modules.ilo.test_boot.IloBootPrivateMethodsTestCase.test__get_boot_iso_object_name [0.033232s] ... ok {25} ironic.tests.unit.drivers.modules.ilo.test_boot.IloPXEBootTestCase.test_prepare_ramdisk_in_cleaning [0.103563s] ... ok {25} ironic.tests.unit.drivers.modules.ilo.test_boot.IloVirtualMediaBootTestCase.test_prepare_instance_boot_ramdisk [0.101590s] ... ok {25} ironic.tests.unit.drivers.modules.ilo.test_boot.IloVirtualMediaBootTestCase.test_prepare_instance_partition_image [0.093338s] ... ok {25} ironic.tests.unit.drivers.modules.ilo.test_common.IloCommonMethodsTestCase.test_setup_vmedia_for_boot_with_url [0.075062s] ... ok {25} ironic.tests.unit.drivers.modules.ilo.test_power.IloPowerInternalMethodsTestCase.test__set_power_state_invalid_state [0.088321s] ... ok {25} ironic.tests.unit.drivers.modules.ilo.test_power.IloPowerTestCase.test_set_power_state_timeout [0.085266s] ... ok GET: /v1/ports?node=test-node {} GOT:Response: 406 Not Acceptable Content-Type: application/json Openstack-Request-Id: req-f3915faa-8543-49c6-aba5-0f9a4e44ce7c X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Request not acceptable.\"}"} PATCH: /v1/volume/targets/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 [{'path': '/node_id', 'op': 'remove'}] GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-e0f8caca-1804-4a4d-8cb5-3693846bf141 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Couldn't apply patch '{'path': '/node_id', 'op': 'remove'}'. Reason: can't remove non-existent object 'node_id'\"}"} {29} ironic.tests.unit.api.controllers.v1.test_port.TestListPorts.test_get_all_by_node_name_not_supported [0.076281s] ... ok {6} ironic.tests.unit.api.controllers.v1.test_volume_target.TestPatch.test_remove_node_id [0.061033s] ... ok {25} ironic.tests.unit.drivers.modules.ilo.test_raid.Ilo5RAIDTestCase.test_create_configuration_skip_root_skip_non_root [0.073056s] ... ok POST: /v1/ports {'local_link_connection': {'switch_info': 'switch1', 'port_id': 'Ethernet3/1', 'switch_id': '0a:1b:2c:3d:4e:5f'}, 'node_uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123', 'uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c781', 'extra': {}, 'pxe_enabled': True, 'portgroup_uuid': '1a1a1a1a-2b2b-3c3c-4d4d-5e5e5e5e5e5e', 'physical_network': None, 'address': '52:54:00:cf:2d:31', 'is_smartnic': False} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-457deaf8-6d61-4180-9b05-605c9db26463 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Portgroup 1a1a1a1a-2b2b-3c3c-4d4d-5e5e5e5e5e5e could not be found.\"}"} {6} ironic.tests.unit.api.test_audit.TestAuditMiddleware.test_disable_audit_request [0.034244s] ... ok {3} ironic.tests.unit.api.controllers.v1.test_port.TestPost.test_create_port_portgroup_uuid_not_found [0.083675s] ... ok {25} ironic.tests.unit.drivers.modules.irmc.test_boot.IRMCDeployPrivateMethodsTestCase.test__attach_virtual_cd_fail [0.067002s] ... ok {25} ironic.tests.unit.drivers.modules.irmc.test_boot.IRMCDeployPrivateMethodsTestCase.test__setup_vmedia_for_boot_without_parameters [0.072047s] ... ok {25} ironic.tests.unit.drivers.modules.irmc.test_boot.IRMCPXEBootBasicTestCase.test_validate_fail_no_port [0.061315s] ... ok {25} ironic.tests.unit.drivers.modules.irmc.test_boot.IRMCPXEBootTestCase.test_clean_up_instance_without_secure_boot [0.085584s] ... ok {25} ironic.tests.unit.drivers.modules.irmc.test_common.IRMCCommonMethodsTestCase.test_out_range_sensor_method [0.023019s] ... ok {25} ironic.tests.unit.drivers.modules.irmc.test_common.IRMCCommonMethodsTestCase.test_set_secure_boot_mode_disable [0.022716s] ... ok {25} ironic.tests.unit.drivers.modules.irmc.test_inspect.IRMCInspectTestCase.test__init_fail_invalid_gpu_ids_input [0.027313s] ... ok {25} ironic.tests.unit.drivers.modules.irmc.test_inspect.IRMCInspectTestCase.test_validate_fail [0.078027s] ... ok {25} ironic.tests.unit.drivers.modules.irmc.test_power.IRMCPowerTestCase.test_get_power_state [0.093944s] ... ok {25} ironic.tests.unit.drivers.modules.irmc.test_raid.IRMCRaidConfigurationInternalMethodsTestCase.test__fail_validate_capacity_raid_50 [0.026161s] ... ok {25} ironic.tests.unit.drivers.modules.irmc.test_raid.IRMCRaidConfigurationTestCase.test_delete_raid_configuration [0.091744s] ... ok {25} ironic.tests.unit.drivers.modules.network.test_common.TestNeutronVifPortIDMixin.test_port_changed_extra_add_new_key [0.102282s] ... ok {25} ironic.tests.unit.drivers.modules.network.test_common.TestNeutronVifPortIDMixin.test_port_changed_vif_pxe_portgroup_standalone_ports [0.230631s] ... ok {25} ironic.tests.unit.drivers.modules.network.test_common.TestVifPortIDMixin.test_get_current_vif_internal_info_rescuing [0.087593s] ... ok {25} ironic.tests.unit.drivers.modules.network.test_flat.TestFlatInterface.test__bind_flat_ports_set_binding_host_id_portgroup [0.087097s] ... ok {25} ironic.tests.unit.drivers.modules.network.test_noop.NoopInterfaceTestCase.test_get_properties [0.026219s] ... ok {25} ironic.tests.unit.drivers.modules.redfish.test_power.RedfishPowerTestCase.test_reboot_fail [0.122427s] ... ok {25} ironic.tests.unit.drivers.modules.storage.test_cinder.CinderInterfaceTestCase.test__generate_connector_iscsi_and_unknown [0.090835s] ... ok {25} ironic.tests.unit.drivers.modules.test_agent.AgentRescueTestCase.test_agent_rescue_validate [0.066625s] ... ok {25} ironic.tests.unit.drivers.modules.test_agent.TestAgentDeploy.test_prepare_with_neutron_net_exc_reraise [0.099065s] ... ok {25} ironic.tests.unit.drivers.modules.test_agent.TestAgentDeploy.test_reboot_to_instance_partition_image [0.138401s] ... ok {25} ironic.tests.unit.drivers.modules.test_agent.TestAgentMethods.test_validate_http_provisioning_not_glance [0.027654s] ... ok {25} ironic.tests.unit.drivers.modules.test_agent_client.TestAgentClient.test_start_iscsi_target [0.012373s] ... ok {25} ironic.tests.unit.drivers.modules.test_console_utils.ConsoleUtilsTestCase.test__stop_console_forced_kill [0.825106s] ... ok {25} ironic.tests.unit.drivers.modules.test_console_utils.ConsoleUtilsTestCase.test_stop_shellinabox_console_fail_nopid [0.026981s] ... ok {25} ironic.tests.unit.drivers.modules.test_deploy_utils.GetPxeBootConfigTestCase.test_get_pxe_config_template_uefi_without_by_arch [0.029206s] ... ok {25} ironic.tests.unit.drivers.modules.test_deploy_utils.PhysicalWorkTestCase.test_deploy_partition_image_localboot_uefi [0.039699s] ... ok {25} ironic.tests.unit.drivers.modules.test_deploy_utils.PhysicalWorkTestCase.test_deploy_partition_image_preserve_ephemeral [0.024012s] ... ok {25} ironic.tests.unit.drivers.modules.test_deploy_utils.TestStorageInterfaceUtils.test_is_iscsi_boot_exception [0.059135s] ... ok {25} ironic.tests.unit.drivers.modules.test_image_cache.TestUpdateImages.test__delete_master_path_if_stale_no_updated_at [0.012612s] ... ok {25} ironic.tests.unit.drivers.modules.test_inspector.CheckStatusTestCase.test_exception_ignored [0.018934s] ... ok {25} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolDriverTestCase.test__bmc_reset_cold [0.061934s] ... ok {25} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolDriverTestCase.test_reboot_timeout_ok [0.073082s] ... ok {25} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolPrivateMethodTestCase.test__parse_driver_info_ipmi_port_valid [0.023441s] ... ok {25} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolPrivateMethodTestCase.test__parse_driver_info_with_invalid_bridging_type [0.023560s] ... ok {25} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolPrivateMethodTestCase.test_exec_ipmitool_exception_non_retryable_failure_node_busy [0.026141s] ... ok {25} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolShellinaboxTestCase.test__start_console_empty_password [0.077553s] ... ok GET: /v1/bad/path {} GOT:Response: 404 Not Found Content-Type: application/json {"error_message": "{\"code\": 404, \"description\": \"\", \"title\": \"Not Found\"}"} {25} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolShellinaboxTestCase.test_console_validate_wrong_ipmi_protocol_version [0.433404s] ... ok {6} ironic.tests.unit.api.test_hooks.TestContextHook.test_context_hook_after_miss_context [0.033366s] ... ok {25} ironic.tests.unit.drivers.modules.test_ipxe.iPXEBootTestCase.test_prepare_ramdisk_force_persistent_boot_device_always [0.115112s] ... ok {25} ironic.tests.unit.drivers.modules.test_pxe.PXEBootTestCase.test_validate_fail_missing_deploy_ramdisk [0.048588s] ... ok {25} ironic.tests.unit.drivers.modules.test_snmp.SNMPClientTestCase.test___init__ [0.028445s] ... ok {25} ironic.tests.unit.drivers.modules.test_snmp.SNMPClientTestCase.test__get_auth_v3 [0.027367s] ... ok {25} ironic.tests.unit.drivers.modules.test_snmp.SNMPClientTestCase.test_get_next_err_engine [0.026811s] ... ok {25} ironic.tests.unit.drivers.modules.test_snmp.SNMPDeviceDriverTestCase.test_aten_power_off [0.016126s] ... ok {25} ironic.tests.unit.drivers.modules.test_snmp.SNMPDeviceDriverTestCase.test_auto_power_state_pdu_discovery_failure [0.014981s] ... ok {25} ironic.tests.unit.drivers.modules.test_snmp.SNMPValidateParametersTestCase.test__parse_driver_info_missing_address [0.012775s] ... ok {25} ironic.tests.unit.drivers.modules.test_snmp.SNMPValidateParametersTestCase.test__parse_driver_info_missing_driver [0.015713s] ... ok {25} ironic.tests.unit.drivers.modules.test_snmp.SNMPValidateParametersTestCase.test__parse_driver_info_missing_outlet [0.013399s] ... ok {25} ironic.tests.unit.drivers.test_base.CleanStepDecoratorTestCase.test__validate_argsinfo [0.008675s] ... ok {25} ironic.tests.unit.drivers.test_base.CleanStepDecoratorTestCase.test__validate_argsinfo_arg_missing_description [0.009036s] ... ok {25} ironic.tests.unit.drivers.test_base.CleanStepDecoratorTestCase.test_clean_step_all_args [0.008579s] ... ok {25} ironic.tests.unit.drivers.test_base.TestManagementInterface.test_get_supported_boot_modes_default_impl [0.011877s] ... ok {25} ironic.tests.unit.drivers.test_irmc.IRMCHardwareTestCase.test_override_with_inspector [0.061108s] ... ok {25} ironic.tests.unit.drivers.test_utils.UtilsRamdiskLogsTestCase.test_collect_ramdisk_logs [0.012544s] ... ok {25} ironic.tests.unit.drivers.test_utils.UtilsTestCase.test_add_node_capability [2.807473s] ... ok {25} ironic.tests.unit.objects.test_node.TestConvertToVersion.test_conductor_group_supported_unset [0.014745s] ... ok {25} ironic.tests.unit.objects.test_node.TestConvertToVersion.test_conductor_group_unsupported_unset [0.014253s] ... ok {25} ironic.tests.unit.objects.test_node.TestNodeObject.test_as_dict_secure [0.014336s] ... ok {25} ironic.tests.unit.objects.test_objects.TestMisc.test_max_version [0.008916s] ... ok {25} ironic.tests.unit.objects.test_objects.TestObject.test_changed_1 [0.010019s] ... ok {25} ironic.tests.unit.objects.test_objects.TestObject.test_orphaned_object [0.008912s] ... ok {25} ironic.tests.unit.objects.test_objects.TestObjectSerializer.test_deserialize_entity_newer_revision_does_not_backport [0.010056s] ... ok {25} ironic.tests.unit.objects.test_port.TestPortObject.test_get_by_address [0.030978s] ... ok {25} ironic.tests.unit.objects.test_portgroup.TestPortgroupObject.test_list_by_node_id [0.018025s] ... ok GET: /v1/portgroups?detail=True {} GOT:{u'portgroups': [{u'node_uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'uuid': u'6eb02b44-18a3-4659-8c0b-8d2802581ae4', u'links': [{u'href': u'http://localhost/v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4', u'rel': u'self'}, {u'href': u'http://localhost/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4', u'rel': u'bookmark'}], u'extra': {}, u'created_at': u'2019-06-06T07:02:17.200647+00:00', u'updated_at': None, u'properties': {}, u'standalone_ports_supported': True, u'mode': u'active-backup', u'address': u'52:54:00:cf:2d:31', u'internal_info': {u'bar': u'buzz'}, u'ports': [{u'href': u'http://localhost/v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4/ports', u'rel': u'self'}, {u'href': u'http://localhost/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4/ports', u'rel': u'bookmark'}], u'name': u'fooname'}]} {22} ironic.tests.unit.api.controllers.v1.test_portgroup.TestListPortgroups.test_detail_query [0.085879s] ... ok POST: /v1/volume/targets {'boot_index': 0, 'extra': {}, 'volume_type': 'iscsi', 'node_uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123', 'volume_id': '12345678', 'properties': {'target_iqn': 'iqn.foo'}} GOT:Response: 201 Created Content-Type: application/json Location: http://localhost/v1/volume/targets/96b23ead-aece-4a5f-a964-e6bce80b7a13 Openstack-Request-Id: req-af0f27a8-e8e4-4781-90f8-935a89db5342 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"boot_index": 0, "uuid": "96b23ead-aece-4a5f-a964-e6bce80b7a13", "links": [{"href": "http://localhost/v1/volume/targets/96b23ead-aece-4a5f-a964-e6bce80b7a13", "rel": "self"}, {"href": "http://localhost/volume/targets/96b23ead-aece-4a5f-a964-e6bce80b7a13", "rel": "bookmark"}], "extra": {}, "created_at": "2019-06-06T07:02:17.976267+00:00", "updated_at": null, "volume_type": "iscsi", "node_uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "volume_id": "12345678", "properties": {"target_iqn": "iqn.foo"}} GET: /v1/volume/targets/96b23ead-aece-4a5f-a964-e6bce80b7a13 {} GOT:{u'boot_index': 0, u'uuid': u'96b23ead-aece-4a5f-a964-e6bce80b7a13', u'links': [{u'href': u'http://localhost/v1/volume/targets/96b23ead-aece-4a5f-a964-e6bce80b7a13', u'rel': u'self'}, {u'href': u'http://localhost/volume/targets/96b23ead-aece-4a5f-a964-e6bce80b7a13', u'rel': u'bookmark'}], u'extra': {}, u'created_at': u'2019-06-06T07:02:17.976267+00:00', u'updated_at': None, u'volume_type': u'iscsi', u'node_uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'volume_id': u'12345678', u'properties': {u'target_iqn': u'iqn.foo'}} {10} ironic.tests.unit.api.controllers.v1.test_volume_target.TestPost.test_create_volume_target_generate_uuid [0.135669s] ... ok PATCH: /v1/ports/cc8659f4-1743-4644-b253-fefe4574490f [{'path': '/extra/vif_port_id', 'op': 'remove'}] GOT:Response: 200 OK Content-Type: application/json Openstack-Request-Id: req-e024e999-c566-4ef1-a2d5-b0887c5b73cb X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.28 {"local_link_connection": {"switch_info": "switch1", "port_id": "Ethernet3/1", "switch_id": "0a:1b:2c:3d:4e:5f"}, "node_uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "uuid": "cc8659f4-1743-4644-b253-fefe4574490f", "links": [{"href": "http://localhost/v1/ports/cc8659f4-1743-4644-b253-fefe4574490f", "rel": "self"}, {"href": "http://localhost/ports/cc8659f4-1743-4644-b253-fefe4574490f", "rel": "bookmark"}], "extra": {}, "pxe_enabled": true, "portgroup_uuid": null, "updated_at": "2019-06-06T07:02:17.268335+00:00", "address": "52:55:00:cf:2d:31", "internal_info": {"foo": "bar"}, "created_at": "2019-06-06T07:02:17.209333+00:00"} {14} ironic.tests.unit.api.controllers.v1.test_port.TestPatch.test_remove_extra_vif_port_id_not_internal [0.129708s] ... ok PATCH: /v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4 [{'path': '/node_id', 'value': '1', 'op': 'add'}] GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-0d1df6ff-b013-45df-9285-5e4c7238752d X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Adding a new attribute (/node_id) to the root of the resource is not allowed\"}"} {3} ironic.tests.unit.api.controllers.v1.test_portgroup.TestPatch.test_add_node_id [0.073128s] ... ok POST: /v1/ports {'local_link_connection': {'switch_info': 'switch1', 'port_id': 'Ethernet3/1', 'switch_id': '0a:1b:2c:3d:4e:5f'}, 'node_uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123', 'uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c781', 'extra': {}, 'pxe_enabled': True, 'portgroup_uuid': '6eb02b44-18a3-4659-8c0b-8d2802581ae4', 'physical_network': None, 'address': '52:54:00:cf:2d:31', 'is_smartnic': False} GOT:Response: 201 Created Content-Type: application/json Location: http://localhost/v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 Openstack-Request-Id: req-47f09444-3367-430e-8d2d-573095cf1a61 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"local_link_connection": {"switch_info": "switch1", "port_id": "Ethernet3/1", "switch_id": "0a:1b:2c:3d:4e:5f"}, "node_uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "links": [{"href": "http://localhost/v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "rel": "self"}, {"href": "http://localhost/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "rel": "bookmark"}], "extra": {}, "pxe_enabled": true, "portgroup_uuid": "6eb02b44-18a3-4659-8c0b-8d2802581ae4", "updated_at": null, "physical_network": null, "address": "52:54:00:cf:2d:31", "internal_info": {}, "created_at": "2019-06-06T07:02:17.490194+00:00", "is_smartnic": false} {27} ironic.tests.unit.api.controllers.v1.test_port.TestPost.test_create_port_novif_pxe_portgroup_standalone_ports [0.138282s] ... ok PATCH: /v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4 [{'path': '/mode', 'value': '802.3ad', 'op': 'add'}] GOT:Response: 406 Not Acceptable Content-Type: application/json Openstack-Request-Id: req-f71872c3-68c4-434e-999b-7b1462a3f7f7 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.25 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Request not acceptable.\"}"} PATCH: /v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4 [{'path': '/properties/abc', 'value': 123, 'op': 'add'}] GOT:Response: 406 Not Acceptable Content-Type: application/json Openstack-Request-Id: req-6b6b8a9a-498d-4ef1-960b-1baedbcf1c17 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.25 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Request not acceptable.\"}"} {26} ironic.tests.unit.api.controllers.v1.test_portgroup.TestPatch.test_update_portgroup_mode_properties_bad_api_version [0.072007s] ... ok PATCH: /v1/ports/53cdaca2-42bd-4ca7-b20b-5d282e6d4614 [{'path': '/extra/vif_port_id', 'value': 'foo', 'op': 'add'}, {'path': '/extra/vif_port_id', 'value': 'bar', 'op': 'add'}] GOT:Response: 200 OK Content-Type: application/json Openstack-Request-Id: req-628a8a40-4f79-4d57-90a8-9fe11c0d29ef X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.34 {"local_link_connection": {"switch_info": "switch1", "port_id": "Ethernet3/1", "switch_id": "0a:1b:2c:3d:4e:5f"}, "node_uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "uuid": "53cdaca2-42bd-4ca7-b20b-5d282e6d4614", "links": [{"href": "http://localhost/v1/ports/53cdaca2-42bd-4ca7-b20b-5d282e6d4614", "rel": "self"}, {"href": "http://localhost/ports/53cdaca2-42bd-4ca7-b20b-5d282e6d4614", "rel": "bookmark"}], "extra": {"vif_port_id": "bar"}, "pxe_enabled": true, "portgroup_uuid": null, "updated_at": "2019-06-06T07:02:16.866023+00:00", "physical_network": null, "address": "52:55:00:cf:2d:31", "internal_info": {"tenant_vif_port_id": "bar", "bar": "buzz"}, "created_at": "2019-06-06T07:02:16.801660+00:00"} {31} ironic.tests.unit.api.controllers.v1.test_port.TestPatch.test_add_extra_vif_port_id_deprecated [0.133999s] ... ok GET: /v1/volume/connectors?fields=uuid,extra {} GOT:{u'connectors': [{u'uuid': u'3cf40667-469a-4fb1-a1b7-7566573fe85c', u'links': [{u'href': u'http://localhost/v1/volume/connectors/3cf40667-469a-4fb1-a1b7-7566573fe85c', u'rel': u'self'}, {u'href': u'http://localhost/volume/connectors/3cf40667-469a-4fb1-a1b7-7566573fe85c', u'rel': u'bookmark'}], u'extra': {}}, {u'uuid': u'98494c53-68b1-408b-8040-280390b81765', u'links': [{u'href': u'http://localhost/v1/volume/connectors/98494c53-68b1-408b-8040-280390b81765', u'rel': u'self'}, {u'href': u'http://localhost/volume/connectors/98494c53-68b1-408b-8040-280390b81765', u'rel': u'bookmark'}], u'extra': {}}, {u'uuid': u'3a31fe1c-71ba-420b-bd90-ead050dd754b', u'links': [{u'href': u'http://localhost/v1/volume/connectors/3a31fe1c-71ba-420b-bd90-ead050dd754b', u'rel': u'self'}, {u'href': u'http://localhost/volume/connectors/3a31fe1c-71ba-420b-bd90-ead050dd754b', u'rel': u'bookmark'}], u'extra': {}}]} {7} ironic.tests.unit.api.controllers.v1.test_volume_connector.TestListVolumeConnectors.test_get_collection_custom_fields [0.135565s] ... ok GET: /v1/ports?fields=uuid,extra {} GOT:{u'ports': [{u'uuid': u'7598f74a-4158-4456-9237-effc8261a7ba', u'links': [{u'href': u'http://localhost/v1/ports/7598f74a-4158-4456-9237-effc8261a7ba', u'rel': u'self'}, {u'href': u'http://localhost/ports/7598f74a-4158-4456-9237-effc8261a7ba', u'rel': u'bookmark'}], u'extra': {}}, {u'uuid': u'7bbd8137-ccfd-42de-b86d-aeaa86e502d6', u'links': [{u'href': u'http://localhost/v1/ports/7bbd8137-ccfd-42de-b86d-aeaa86e502d6', u'rel': u'self'}, {u'href': u'http://localhost/ports/7bbd8137-ccfd-42de-b86d-aeaa86e502d6', u'rel': u'bookmark'}], u'extra': {}}, {u'uuid': u'879ebc70-d0d9-4127-ac59-cc02ec8f5a54', u'links': [{u'href': u'http://localhost/v1/ports/879ebc70-d0d9-4127-ac59-cc02ec8f5a54', u'rel': u'self'}, {u'href': u'http://localhost/ports/879ebc70-d0d9-4127-ac59-cc02ec8f5a54', u'rel': u'bookmark'}], u'extra': {}}]} {29} ironic.tests.unit.api.controllers.v1.test_port.TestListPorts.test_get_collection_custom_fields [0.139067s] ... ok POST: /v1/volume/targets {'boot_index': 0, 'uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c781', 'extra': {}, 'volume_type': 'iscsi', 'node_uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123', 'volume_id': '12345678', 'properties': {'target_iqn': 'iqn.foo'}} GOT:Response: 404 Not Found Content-Type: application/json {"error_message": "{\"code\": 404, \"description\": \"\", \"title\": \"Not Found\"}"} {10} ironic.tests.unit.api.controllers.v1.test_volume_target.TestPost.test_create_volume_target_invalid_api_version [0.044938s] ... ok PATCH: /v1/nodes/43b850be-4ad6-4c98-b05f-e5505a090dc7 [{'path': '/boot_interface', 'op': 'remove'}] GOT:Response: 200 OK Content-Type: application/json Openstack-Request-Id: req-c620d3e2-4347-48a3-9618-eaec33071394 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"target_power_state": null, "automated_clean": null, "inspect_interface": null, "links": [{"href": "http://localhost/v1/nodes/43b850be-4ad6-4c98-b05f-e5505a090dc7", "rel": "self"}, {"href": "http://localhost/nodes/43b850be-4ad6-4c98-b05f-e5505a090dc7", "rel": "bookmark"}], "target_provision_state": null, "deploy_step": {}, "storage_interface": null, "conductor_group": "", "protected_reason": null, "maintenance_reason": null, "states": [{"href": "http://localhost/v1/nodes/43b850be-4ad6-4c98-b05f-e5505a090dc7/states", "rel": "self"}, {"href": "http://localhost/nodes/43b850be-4ad6-4c98-b05f-e5505a090dc7/states", "rel": "bookmark"}], "traits": [], "provision_state": "available", "clean_step": {}, "vendor_interface": null, "description": null, "uuid": "43b850be-4ad6-4c98-b05f-e5505a090dc7", "console_enabled": false, "extra": {}, "raid_config": {}, "provision_updated_at": null, "power_state": null, "last_error": null, "target_raid_config": {}, "network_interface": null, "inspection_started_at": null, "inspection_finished_at": null, "maintenance": false, "conductor": null, "power_interface": null, "driver": "fake-hardware", "updated_at": null, "volume": [{"href": "http://localhost/v1/nodes/43b850be-4ad6-4c98-b05f-e5505a090dc7/volume", "rel": "self"}, {"href": "http://localhost/nodes/43b850be-4ad6-4c98-b05f-e5505a090dc7/volume", "rel": "bookmark"}], "raid_interface": null, "rescue_interface": null, "boot_interface": null, "reservation": null, "management_interface": null, "properties": {"memory_mb": "4096", "cpu_arch": "x86_64", "local_gb": "10", "cpus": "8"}, "bios_interface": null, "instance_uuid": null, "name": null, "driver_info": {"fake_password": "******", "foo": "bar"}, "resource_class": null, "fault": null, "created_at": "2019-06-06T07:02:15.722683+00:00", "portgroups": [{"href": "http://localhost/v1/nodes/43b850be-4ad6-4c98-b05f-e5505a090dc7/portgroups", "rel": "self"}, {"href": "http://localhost/nodes/43b850be-4ad6-4c98-b05f-e5505a090dc7/portgroups", "rel": "bookmark"}], "deploy_interface": null, "ports": [{"href": "http://localhost/v1/nodes/43b850be-4ad6-4c98-b05f-e5505a090dc7/ports", "rel": "self"}, {"href": "http://localhost/nodes/43b850be-4ad6-4c98-b05f-e5505a090dc7/ports", "rel": "bookmark"}], "console_interface": null, "protected": false, "driver_internal_info": {"private_state": "secret value"}, "chassis_uuid": null, "owner": null, "instance_info": {"foo": "bar", "image_url": "******", "configdrive": "******"}, "allocation_uuid": null} PATCH: /v1/nodes/43b850be-4ad6-4c98-b05f-e5505a090dc7 [{'path': '/console_interface', 'op': 'remove'}] GOT:Response: 200 OK Content-Type: application/json Openstack-Request-Id: req-4d9647b2-1b94-41e2-bc0e-75bdfe1b6f7b X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"target_power_state": null, "automated_clean": null, "inspect_interface": null, "links": [{"href": "http://localhost/v1/nodes/43b850be-4ad6-4c98-b05f-e5505a090dc7", "rel": "self"}, {"href": "http://localhost/nodes/43b850be-4ad6-4c98-b05f-e5505a090dc7", "rel": "bookmark"}], "target_provision_state": null, "deploy_step": {}, "storage_interface": null, "conductor_group": "", "protected_reason": null, "maintenance_reason": null, "states": [{"href": "http://localhost/v1/nodes/43b850be-4ad6-4c98-b05f-e5505a090dc7/states", "rel": "self"}, {"href": "http://localhost/nodes/43b850be-4ad6-4c98-b05f-e5505a090dc7/states", "rel": "bookmark"}], "traits": [], "provision_state": "available", "clean_step": {}, "vendor_interface": null, "description": null, "uuid": "43b850be-4ad6-4c98-b05f-e5505a090dc7", "console_enabled": false, "extra": {}, "raid_config": {}, "provision_updated_at": null, "power_state": null, "last_error": null, "target_raid_config": {}, "network_interface": null, "inspection_started_at": null, "inspection_finished_at": null, "maintenance": false, "conductor": null, "power_interface": null, "driver": "fake-hardware", "updated_at": null, "volume": [{"href": "http://localhost/v1/nodes/43b850be-4ad6-4c98-b05f-e5505a090dc7/volume", "rel": "self"}, {"href": "http://localhost/nodes/43b850be-4ad6-4c98-b05f-e5505a090dc7/volume", "rel": "bookmark"}], "raid_interface": null, "rescue_interface": null, "boot_interface": null, "reservation": null, "management_interface": null, "properties": {"memory_mb": "4096", "cpu_arch": "x86_64", "local_gb": "10", "cpus": "8"}, "bios_interface": null, "instance_uuid": null, "name": null, "driver_info": {"fake_password": "******", "foo": "bar"}, "resource_class": null, "fault": null, "created_at": "2019-06-06T07:02:15.722683+00:00", "portgroups": [{"href": "http://localhost/v1/nodes/43b850be-4ad6-4c98-b05f-e5505a090dc7/portgroups", "rel": "self"}, {"href": "http://localhost/nodes/43b850be-4ad6-4c98-b05f-e5505a090dc7/portgroups", "rel": "bookmark"}], "deploy_interface": null, "ports": [{"href": "http://localhost/v1/nodes/43b850be-4ad6-4c98-b05f-e5505a090dc7/ports", "rel": "self"}, {"href": "http://localhost/nodes/43b850be-4ad6-4c98-b05f-e5505a090dc7/ports", "rel": "bookmark"}], "console_interface": null, "protected": false, "driver_internal_info": {"private_state": "secret value"}, "chassis_uuid": null, "owner": null, "instance_info": {"foo": "bar", "image_url": "******", "configdrive": "******"}, "allocation_uuid": null} PATCH: /v1/nodes/43b850be-4ad6-4c98-b05f-e5505a090dc7 [{'path': '/deploy_interface', 'op': 'remove'}] GOT:Response: 200 OK Content-Type: application/json Openstack-Request-Id: req-8d659535-9c91-4032-8f66-81612eec8394 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"target_power_state": null, "automated_clean": null, "inspect_interface": null, "links": [{"href": "http://localhost/v1/nodes/43b850be-4ad6-4c98-b05f-e5505a090dc7", "rel": "self"}, {"href": "http://localhost/nodes/43b850be-4ad6-4c98-b05f-e5505a090dc7", "rel": "bookmark"}], "target_provision_state": null, "deploy_step": {}, "storage_interface": null, "conductor_group": "", "protected_reason": null, "maintenance_reason": null, "states": [{"href": "http://localhost/v1/nodes/43b850be-4ad6-4c98-b05f-e5505a090dc7/states", "rel": "self"}, {"href": "http://localhost/nodes/43b850be-4ad6-4c98-b05f-e5505a090dc7/states", "rel": "bookmark"}], "traits": [], "provision_state": "available", "clean_step": {}, "vendor_interface": null, "description": null, "uuid": "43b850be-4ad6-4c98-b05f-e5505a090dc7", "console_enabled": false, "extra": {}, "raid_config": {}, "provision_updated_at": null, "power_state": null, "last_error": null, "target_raid_config": {}, "network_interface": null, "inspection_started_at": null, "inspection_finished_at": null, "maintenance": false, "conductor": null, "power_interface": null, "driver": "fake-hardware", "updated_at": null, "volume": [{"href": "http://localhost/v1/nodes/43b850be-4ad6-4c98-b05f-e5505a090dc7/volume", "rel": "self"}, {"href": "http://localhost/nodes/43b850be-4ad6-4c98-b05f-e5505a090dc7/volume", "rel": "bookmark"}], "raid_interface": null, "rescue_interface": null, "boot_interface": null, "reservation": null, "management_interface": null, "properties": {"memory_mb": "4096", "cpu_arch": "x86_64", "local_gb": "10", "cpus": "8"}, "bios_interface": null, "instance_uuid": null, "name": null, "driver_info": {"fake_password": "******", "foo": "bar"}, "resource_class": null, "fault": null, "created_at": "2019-06-06T07:02:15.722683+00:00", "portgroups": [{"href": "http://localhost/v1/nodes/43b850be-4ad6-4c98-b05f-e5505a090dc7/portgroups", "rel": "self"}, {"href": "http://localhost/nodes/43b850be-4ad6-4c98-b05f-e5505a090dc7/portgroups", "rel": "bookmark"}], "deploy_interface": null, "ports": [{"href": "http://localhost/v1/nodes/43b850be-4ad6-4c98-b05f-e5505a090dc7/ports", "rel": "self"}, {"href": "http://localhost/nodes/43b850be-4ad6-4c98-b05f-e5505a090dc7/ports", "rel": "bookmark"}], "console_interface": null, "protected": false, "driver_internal_info": {"private_state": "secret value"}, "chassis_uuid": null, "owner": null, "instance_info": {"foo": "bar", "image_url": "******", "configdrive": "******"}, "allocation_uuid": null} PATCH: /v1/nodes/43b850be-4ad6-4c98-b05f-e5505a090dc7 [{'path': '/inspect_interface', 'op': 'remove'}] GOT:Response: 200 OK Content-Type: application/json Openstack-Request-Id: req-edfe74c2-d696-43b0-869c-13d2179eee65 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"target_power_state": null, "automated_clean": null, "inspect_interface": null, "links": [{"href": "http://localhost/v1/nodes/43b850be-4ad6-4c98-b05f-e5505a090dc7", "rel": "self"}, {"href": "http://localhost/nodes/43b850be-4ad6-4c98-b05f-e5505a090dc7", "rel": "bookmark"}], "target_provision_state": null, "deploy_step": {}, "storage_interface": null, "conductor_group": "", "protected_reason": null, "maintenance_reason": null, "states": [{"href": "http://localhost/v1/nodes/43b850be-4ad6-4c98-b05f-e5505a090dc7/states", "rel": "self"}, {"href": "http://localhost/nodes/43b850be-4ad6-4c98-b05f-e5505a090dc7/states", "rel": "bookmark"}], "traits": [], "provision_state": "available", "clean_step": {}, "vendor_interface": null, "description": null, "uuid": "43b850be-4ad6-4c98-b05f-e5505a090dc7", "console_enabled": false, "extra": {}, "raid_config": {}, "provision_updated_at": null, "power_state": null, "last_error": null, "target_raid_config": {}, "network_interface": null, "inspection_started_at": null, "inspection_finished_at": null, "maintenance": false, "conductor": null, "power_interface": null, "driver": "fake-hardware", "updated_at": null, "volume": [{"href": "http://localhost/v1/nodes/43b850be-4ad6-4c98-b05f-e5505a090dc7/volume", "rel": "self"}, {"href": "http://localhost/nodes/43b850be-4ad6-4c98-b05f-e5505a090dc7/volume", "rel": "bookmark"}], "raid_interface": null, "rescue_interface": null, "boot_interface": null, "reservation": null, "management_interface": null, "properties": {"memory_mb": "4096", "cpu_arch": "x86_64", "local_gb": "10", "cpus": "8"}, "bios_interface": null, "instance_uuid": null, "name": null, "driver_info": {"fake_password": "******", "foo": "bar"}, "resource_class": null, "fault": null, "created_at": "2019-06-06T07:02:15.722683+00:00", "portgroups": [{"href": "http://localhost/v1/nodes/43b850be-4ad6-4c98-b05f-e5505a090dc7/portgroups", "rel": "self"}, {"href": "http://localhost/nodes/43b850be-4ad6-4c98-b05f-e5505a090dc7/portgroups", "rel": "bookmark"}], "deploy_interface": null, "ports": [{"href": "http://localhost/v1/nodes/43b850be-4ad6-4c98-b05f-e5505a090dc7/ports", "rel": "self"}, {"href": "http://localhost/nodes/43b850be-4ad6-4c98-b05f-e5505a090dc7/ports", "rel": "bookmark"}], "console_interface": null, "protected": false, "driver_internal_info": {"private_state": "secret value"}, "chassis_uuid": null, "owner": null, "instance_info": {"foo": "bar", "image_url": "******", "configdrive": "******"}, "allocation_uuid": null} PATCH: /v1/nodes/43b850be-4ad6-4c98-b05f-e5505a090dc7 [{'path': '/management_interface', 'op': 'remove'}] GOT:Response: 200 OK Content-Type: application/json Openstack-Request-Id: req-8cce1084-e228-49df-8bd0-1608e15e9a11 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"target_power_state": null, "automated_clean": null, "inspect_interface": null, "links": [{"href": "http://localhost/v1/nodes/43b850be-4ad6-4c98-b05f-e5505a090dc7", "rel": "self"}, {"href": "http://localhost/nodes/43b850be-4ad6-4c98-b05f-e5505a090dc7", "rel": "bookmark"}], "target_provision_state": null, "deploy_step": {}, "storage_interface": null, "conductor_group": "", "protected_reason": null, "maintenance_reason": null, "states": [{"href": "http://localhost/v1/nodes/43b850be-4ad6-4c98-b05f-e5505a090dc7/states", "rel": "self"}, {"href": "http://localhost/nodes/43b850be-4ad6-4c98-b05f-e5505a090dc7/states", "rel": "bookmark"}], "traits": [], "provision_state": "available", "clean_step": {}, "vendor_interface": null, "description": null, "uuid": "43b850be-4ad6-4c98-b05f-e5505a090dc7", "console_enabled": false, "extra": {}, "raid_config": {}, "provision_updated_at": null, "power_state": null, "last_error": null, "target_raid_config": {}, "network_interface": null, "inspection_started_at": null, "inspection_finished_at": null, "maintenance": false, "conductor": null, "power_interface": null, "driver": "fake-hardware", "updated_at": null, "volume": [{"href": "http://localhost/v1/nodes/43b850be-4ad6-4c98-b05f-e5505a090dc7/volume", "rel": "self"}, {"href": "http://localhost/nodes/43b850be-4ad6-4c98-b05f-e5505a090dc7/volume", "rel": "bookmark"}], "raid_interface": null, "rescue_interface": null, "boot_interface": null, "reservation": null, "management_interface": null, "properties": {"memory_mb": "4096", "cpu_arch": "x86_64", "local_gb": "10", "cpus": "8"}, "bios_interface": null, "instance_uuid": null, "name": null, "driver_info": {"fake_password": "******", "foo": "bar"}, "resource_class": null, "fault": null, "created_at": "2019-06-06T07:02:15.722683+00:00", "portgroups": [{"href": "http://localhost/v1/nodes/43b850be-4ad6-4c98-b05f-e5505a090dc7/portgroups", "rel": "self"}, {"href": "http://localhost/nodes/43b850be-4ad6-4c98-b05f-e5505a090dc7/portgroups", "rel": "bookmark"}], "deploy_interface": null, "ports": [{"href": "http://localhost/v1/nodes/43b850be-4ad6-4c98-b05f-e5505a090dc7/ports", "rel": "self"}, {"href": "http://localhost/nodes/43b850be-4ad6-4c98-b05f-e5505a090dc7/ports", "rel": "bookmark"}], "console_interface": null, "protected": false, "driver_internal_info": {"private_state": "secret value"}, "chassis_uuid": null, "owner": null, "instance_info": {"foo": "bar", "image_url": "******", "configdrive": "******"}, "allocation_uuid": null} PATCH: /v1/nodes/43b850be-4ad6-4c98-b05f-e5505a090dc7 [{'path': '/power_interface', 'op': 'remove'}] GOT:Response: 200 OK Content-Type: application/json Openstack-Request-Id: req-9e2caade-77a9-4557-9ef3-2db37263eed4 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"target_power_state": null, "automated_clean": null, "inspect_interface": null, "links": [{"href": "http://localhost/v1/nodes/43b850be-4ad6-4c98-b05f-e5505a090dc7", "rel": "self"}, {"href": "http://localhost/nodes/43b850be-4ad6-4c98-b05f-e5505a090dc7", "rel": "bookmark"}], "target_provision_state": null, "deploy_step": {}, "storage_interface": null, "conductor_group": "", "protected_reason": null, "maintenance_reason": null, "states": [{"href": "http://localhost/v1/nodes/43b850be-4ad6-4c98-b05f-e5505a090dc7/states", "rel": "self"}, {"href": "http://localhost/nodes/43b850be-4ad6-4c98-b05f-e5505a090dc7/states", "rel": "bookmark"}], "traits": [], "provision_state": "available", "clean_step": {}, "vendor_interface": null, "description": null, "uuid": "43b850be-4ad6-4c98-b05f-e5505a090dc7", "console_enabled": false, "extra": {}, "raid_config": {}, "provision_updated_at": null, "power_state": null, "last_error": null, "target_raid_config": {}, "network_interface": null, "inspection_started_at": null, "inspection_finished_at": null, "maintenance": false, "conductor": null, "power_interface": null, "driver": "fake-hardware", "updated_at": null, "volume": [{"href": "http://localhost/v1/nodes/43b850be-4ad6-4c98-b05f-e5505a090dc7/volume", "rel": "self"}, {"href": "http://localhost/nodes/43b850be-4ad6-4c98-b05f-e5505a090dc7/volume", "rel": "bookmark"}], "raid_interface": null, "rescue_interface": null, "boot_interface": null, "reservation": null, "management_interface": null, "properties": {"memory_mb": "4096", "cpu_arch": "x86_64", "local_gb": "10", "cpus": "8"}, "bios_interface": null, "instance_uuid": null, "name": null, "driver_info": {"fake_password": "******", "foo": "bar"}, "resource_class": null, "fault": null, "created_at": "2019-06-06T07:02:15.722683+00:00", "portgroups": [{"href": "http://localhost/v1/nodes/43b850be-4ad6-4c98-b05f-e5505a090dc7/portgroups", "rel": "self"}, {"href": "http://localhost/nodes/43b850be-4ad6-4c98-b05f-e5505a090dc7/portgroups", "rel": "bookmark"}], "deploy_interface": null, "ports": [{"href": "http://localhost/v1/nodes/43b850be-4ad6-4c98-b05f-e5505a090dc7/ports", "rel": "self"}, {"href": "http://localhost/nodes/43b850be-4ad6-4c98-b05f-e5505a090dc7/ports", "rel": "bookmark"}], "console_interface": null, "protected": false, "driver_internal_info": {"private_state": "secret value"}, "chassis_uuid": null, "owner": null, "instance_info": {"foo": "bar", "image_url": "******", "configdrive": "******"}, "allocation_uuid": null} PATCH: /v1/nodes/43b850be-4ad6-4c98-b05f-e5505a090dc7 [{'path': '/raid_interface', 'op': 'remove'}] GOT:Response: 200 OK Content-Type: application/json Openstack-Request-Id: req-48921ebf-778f-4ceb-8e2e-d35e6d4a8e99 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"target_power_state": null, "automated_clean": null, "inspect_interface": null, "links": [{"href": "http://localhost/v1/nodes/43b850be-4ad6-4c98-b05f-e5505a090dc7", "rel": "self"}, {"href": "http://localhost/nodes/43b850be-4ad6-4c98-b05f-e5505a090dc7", "rel": "bookmark"}], "target_provision_state": null, "deploy_step": {}, "storage_interface": null, "conductor_group": "", "protected_reason": null, "maintenance_reason": null, "states": [{"href": "http://localhost/v1/nodes/43b850be-4ad6-4c98-b05f-e5505a090dc7/states", "rel": "self"}, {"href": "http://localhost/nodes/43b850be-4ad6-4c98-b05f-e5505a090dc7/states", "rel": "bookmark"}], "traits": [], "provision_state": "available", "clean_step": {}, "vendor_interface": null, "description": null, "uuid": "43b850be-4ad6-4c98-b05f-e5505a090dc7", "console_enabled": false, "extra": {}, "raid_config": {}, "provision_updated_at": null, "power_state": null, "last_error": null, "target_raid_config": {}, "network_interface": null, "inspection_started_at": null, "inspection_finished_at": null, "maintenance": false, "conductor": null, "power_interface": null, "driver": "fake-hardware", "updated_at": null, "volume": [{"href": "http://localhost/v1/nodes/43b850be-4ad6-4c98-b05f-e5505a090dc7/volume", "rel": "self"}, {"href": "http://localhost/nodes/43b850be-4ad6-4c98-b05f-e5505a090dc7/volume", "rel": "bookmark"}], "raid_interface": null, "rescue_interface": null, "boot_interface": null, "reservation": null, "management_interface": null, "properties": {"memory_mb": "4096", "cpu_arch": "x86_64", "local_gb": "10", "cpus": "8"}, "bios_interface": null, "instance_uuid": null, "name": null, "driver_info": {"fake_password": "******", "foo": "bar"}, "resource_class": null, "fault": null, "created_at": "2019-06-06T07:02:15.722683+00:00", "portgroups": [{"href": "http://localhost/v1/nodes/43b850be-4ad6-4c98-b05f-e5505a090dc7/portgroups", "rel": "self"}, {"href": "http://localhost/nodes/43b850be-4ad6-4c98-b05f-e5505a090dc7/portgroups", "rel": "bookmark"}], "deploy_interface": null, "ports": [{"href": "http://localhost/v1/nodes/43b850be-4ad6-4c98-b05f-e5505a090dc7/ports", "rel": "self"}, {"href": "http://localhost/nodes/43b850be-4ad6-4c98-b05f-e5505a090dc7/ports", "rel": "bookmark"}], "console_interface": null, "protected": false, "driver_internal_info": {"private_state": "secret value"}, "chassis_uuid": null, "owner": null, "instance_info": {"foo": "bar", "image_url": "******", "configdrive": "******"}, "allocation_uuid": null} PATCH: /v1/nodes/43b850be-4ad6-4c98-b05f-e5505a090dc7 [{'path': '/vendor_interface', 'op': 'remove'}] GOT:Response: 200 OK Content-Type: application/json Openstack-Request-Id: req-052efaaa-7ceb-4ec5-a2c9-ceff8e83f062 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"target_power_state": null, "automated_clean": null, "inspect_interface": null, "links": [{"href": "http://localhost/v1/nodes/43b850be-4ad6-4c98-b05f-e5505a090dc7", "rel": "self"}, {"href": "http://localhost/nodes/43b850be-4ad6-4c98-b05f-e5505a090dc7", "rel": "bookmark"}], "target_provision_state": null, "deploy_step": {}, "storage_interface": null, "conductor_group": "", "protected_reason": null, "maintenance_reason": null, "states": [{"href": "http://localhost/v1/nodes/43b850be-4ad6-4c98-b05f-e5505a090dc7/states", "rel": "self"}, {"href": "http://localhost/nodes/43b850be-4ad6-4c98-b05f-e5505a090dc7/states", "rel": "bookmark"}], "traits": [], "provision_state": "available", "clean_step": {}, "vendor_interface": null, "description": null, "uuid": "43b850be-4ad6-4c98-b05f-e5505a090dc7", "console_enabled": false, "extra": {}, "raid_config": {}, "provision_updated_at": null, "power_state": null, "last_error": null, "target_raid_config": {}, "network_interface": null, "inspection_started_at": null, "inspection_finished_at": null, "maintenance": false, "conductor": null, "power_interface": null, "driver": "fake-hardware", "updated_at": null, "volume": [{"href": "http://localhost/v1/nodes/43b850be-4ad6-4c98-b05f-e5505a090dc7/volume", "rel": "self"}, {"href": "http://localhost/nodes/43b850be-4ad6-4c98-b05f-e5505a090dc7/volume", "rel": "bookmark"}], "raid_interface": null, "rescue_interface": null, "boot_interface": null, "reservation": null, "management_interface": null, "properties": {"memory_mb": "4096", "cpu_arch": "x86_64", "local_gb": "10", "cpus": "8"}, "bios_interface": null, "instance_uuid": null, "name": null, "driver_info": {"fake_password": "******", "foo": "bar"}, "resource_class": null, "fault": null, "created_at": "2019-06-06T07:02:15.722683+00:00", "portgroups": [{"href": "http://localhost/v1/nodes/43b850be-4ad6-4c98-b05f-e5505a090dc7/portgroups", "rel": "self"}, {"href": "http://localhost/nodes/43b850be-4ad6-4c98-b05f-e5505a090dc7/portgroups", "rel": "bookmark"}], "deploy_interface": null, "ports": [{"href": "http://localhost/v1/nodes/43b850be-4ad6-4c98-b05f-e5505a090dc7/ports", "rel": "self"}, {"href": "http://localhost/nodes/43b850be-4ad6-4c98-b05f-e5505a090dc7/ports", "rel": "bookmark"}], "console_interface": null, "protected": false, "driver_internal_info": {"private_state": "secret value"}, "chassis_uuid": null, "owner": null, "instance_info": {"foo": "bar", "image_url": "******", "configdrive": "******"}, "allocation_uuid": null} {4} ironic.tests.unit.api.controllers.v1.test_node.TestPatch.test_reset_interface_fields [0.613592s] ... ok PUT: /v1/nodes/node-39/traits {'traits': ['CUSTOM_3', 'CUSTOM_TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT']} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-fe8aabce-8e7d-4621-99aa-0ea02e9c9537 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.37 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Invalid trait. A valid trait must be no longer than 255 characters. Standard traits are defined in the os_traits library. A custom trait must start with the prefix CUSTOM_ and use the following characters: A-Z, 0-9 and _\"}"} {15} ironic.tests.unit.api.controllers.v1.test_node.TestTraits.test_set_all_traits_rejects_too_long_trait [0.090045s] ... ok {11} ironic.tests.unit.drivers.modules.test_snmp.SNMPDeviceDriverTestCase.test_power_reset_on_timeout [9.039445s] ... ok {11} ironic.tests.unit.drivers.modules.test_snmp.SNMPDeviceDriverTestCase.test_teltronix_power_state_off [0.016733s] ... ok GET: / {} GOT:Response: 500 Internal Server Error Content-Type: application/json Openstack-Request-Id: req-687597e0-d991-4328-adfd-7608712b123d {"error_message": "{\"debuginfo\":null,\"faultcode\":\"Server\",\"faultstring\":\"Test exception message.\"}"} {10} ironic.tests.unit.api.test_hooks.TestNoExceptionTracebackHook.test_hook_on_serverfault [0.045844s] ... ok {10} ironic.tests.unit.cmd.test_dbsync.DbSyncTestCase.test_upgrade_and_version [0.077265s] ... ok {10} ironic.tests.unit.common.test_cinder.TestCinderActions.test_attach_volumes_one_attached [0.144500s] ... ok {10} ironic.tests.unit.common.test_exception.TestIronicException.test___init___json_serializable [0.016047s] ... ok {10} ironic.tests.unit.common.test_glance_service.TestServiceUtils.test_is_glance_image [0.016086s] ... ok {10} ironic.tests.unit.common.test_image_service.HttpImageServiceTestCase.test_show_ansi_c [0.033586s] ... ok {10} ironic.tests.unit.common.test_images.FsImageTestCase.test_create_boot_iso_for_bios_with_no_boot_mode [0.028387s] ... ok {10} ironic.tests.unit.common.test_images.FsImageTestCase.test_create_boot_iso_for_uefi_esp_image_for_hrefs [0.029177s] ... ok {10} ironic.tests.unit.common.test_images.IronicImagesTestCase.test_image_to_raw_already_raw_format [0.020783s] ... ok {10} ironic.tests.unit.common.test_images.IronicImagesTestCase.test_image_to_raw_backing_file_present [0.019674s] ... ok {10} ironic.tests.unit.common.test_images.IronicImagesTestCase.test_image_to_raw_no_file_format [0.019191s] ... ok {10} ironic.tests.unit.common.test_json_rpc.TestClient.test_call_failure_with_version_and_cap [0.019397s] ... ok {10} ironic.tests.unit.common.test_network.GetPhysnetsByPortgroupID.test_two_ports [0.128925s] ... ok {10} ironic.tests.unit.common.test_network.GetPhysnetsByPortgroupID.test_two_ports_inconsistent [0.127908s] ... ok {10} ironic.tests.unit.common.test_neutron.TestGetPhysnetsByPortUUID.test_get_physnets_by_port_uuid_multiple_segments [0.024022s] ... ok {10} ironic.tests.unit.common.test_neutron.TestNeutronNetworkActions.test_rollback_ports [0.111500s] ... ok {10} ironic.tests.unit.common.test_neutron.TestNeutronNetworkActions.test_validate_port_info_neutron_with_smartnic_and_link_info [0.088203s] ... ok {11} ironic.tests.unit.drivers.modules.ucs.test_power.UcsPowerTestCase.test_get_power_state_up [0.126117s] ... ok {10} ironic.tests.unit.common.test_neutron.TestNeutronNetworkActions.test_verify_sec_groups_no_sg_from_neutron [0.043060s] ... ok {10} ironic.tests.unit.common.test_pxe_utils.TestPXEUtils.test_get_root_dir_ipxe [0.034393s] ... ok {10} ironic.tests.unit.common.test_raid.RaidPublicMethodsTestCase.test_filter_target_raid_config_empty_target_raid_config [0.057647s] ... ok {10} ironic.tests.unit.common.test_utils.ExecuteTestCase.test_execute_use_standard_locale_with_env_variables [0.024388s] ... ok {10} ironic.tests.unit.conductor.test_base_manager.StartConsolesTestCase.test__start_consoles_node_locked [0.361723s] ... ok {10} ironic.tests.unit.conductor.test_base_manager.StartStopTestCase.test_start_registers_conductor [0.245294s] ... ok {11} ironic.tests.unit.drivers.modules.xclarity.test_common.XClarityCommonTestCase.test_parse_driver_info [0.019393s] ... ok {10} ironic.tests.unit.conductor.test_manager.CreatePortTestCase.test_create_port_node_locked [0.072391s] ... ok {10} ironic.tests.unit.conductor.test_manager.DoNextDeployStepTestCase.test_do_next_deploy_step_bad_step_return_value [0.409581s] ... ok {10} ironic.tests.unit.conductor.test_manager.DoNodeCleanTestCase.test__get_node_next_clean_steps [0.065945s] ... ok {10} ironic.tests.unit.conductor.test_manager.DoNodeTakeOverTestCase.test__do_takeover [0.225728s] ... ok {10} ironic.tests.unit.conductor.test_manager.ManagerCheckInspectWaitTimeoutsTestCase.test__check_inspect_timeout [0.017224s] ... ok {10} ironic.tests.unit.conductor.test_manager.ManagerPowerRecoveryTestCase.test_node_disappears_on_acquire [0.016869s] ... ok {10} ironic.tests.unit.conductor.test_manager.ManagerSyncLocalStateTestCase.test_node_locked [0.017460s] ... ok {10} ironic.tests.unit.conductor.test_manager.ServiceDoNodeDeployTestCase.test_do_node_deploy_validate_fail [0.094836s] ... ok {10} ironic.tests.unit.conductor.test_rpcapi.RPCAPITestCase.test_destroy_allocation [0.025583s] ... ok {10} ironic.tests.unit.conductor.test_rpcapi.RPCAPITestCase.test_destroy_volume_connector [0.026307s] ... ok {10} ironic.tests.unit.conductor.test_rpcapi.RPCAPITestCase.test_vif_detach [0.025227s] ... ok {10} ironic.tests.unit.conductor.test_steps.NodeDeployStepsTestCase.test__validate_user_deploy_steps_override_core [0.095665s] ... ok {10} ironic.tests.unit.conductor.test_steps.NodeDeployStepsTestCase.test_set_node_deployment_steps [0.090841s] ... ok {10} ironic.tests.unit.conductor.test_steps.ValidateDeployTemplatesTestCase.test_error [0.083755s] ... ok {10} ironic.tests.unit.conductor.test_task_manager.TaskManagerTestCase.test_excl_lock_exception_no_retries [0.035377s] ... ok {10} ironic.tests.unit.conductor.test_task_manager.TaskManagerTestCase.test_shared_lock_node_get_exception [0.024902s] ... ok {10} ironic.tests.unit.conductor.test_utils.MiscTestCase.test__notify_conductor_resume_operation [0.070167s] ... ok {10} ironic.tests.unit.db.test_allocations.AllocationsTestCase.test_update_allocation [0.038656s] ... ok {10} ironic.tests.unit.db.test_allocations.AllocationsTestCase.test_update_allocation_not_found [0.043574s] ... ok {10} ironic.tests.unit.db.test_bios_settings.DbBIOSSettingTestCase.test_get_bios_setting_setting_not_exist [0.055356s] ... ok {10} ironic.tests.unit.db.test_deploy_templates.DbDeployTemplateTestCase.test_create [0.028186s] ... ok {10} ironic.tests.unit.db.test_nodes.DbNodeTestCase.test_volume_target_gets_destroyed_after_destroying_a_node [0.053393s] ... ok {10} ironic.tests.unit.db.test_ports.DbPortTestCase.test_get_port_by_uuid [0.038801s] ... ok {11} ironic.tests.unit.drivers.test_irmc.IRMCHardwareTestCase.test_override_with_agent_rescue [0.056437s] ... ok {10} ironic.tests.unit.dhcp.test_neutron.TestNeutron.test_update_port_dhcp_opts [0.111348s] ... ok {10} ironic.tests.unit.dhcp.test_neutron.TestNeutron.test_update_port_dhcp_opts_with_exception [0.073525s] ... ok {10} ironic.tests.unit.drivers.modules.ansible.test_deploy.TestAnsibleDeploy.test_prepare_cleaning_callback_no_steps [0.093541s] ... ok POST: /v1/nodes {'instance_uuid': None, 'uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123', 'driver_info': {'fake_password': 'fakepass', 'foo': 'bar'}, 'extra': {'none': None, 'int': 123, 'float': 0.1, 'list': [1, 2], 'bool': True, 'str': 'foo', 'dict': {'cat': 'meow'}}, 'driver': 'fake-hardware', 'properties': {'memory_mb': '4096', 'cpu_arch': 'x86_64', 'local_gb': '10', 'cpus': '8'}, 'maintenance': False, 'chassis_uuid': 'e74c40e0-d825-11e2-a28f-0800200c9a66', 'instance_info': {'foo': 'bar', 'image_url': 'http://example.com/test_image_url', 'configdrive': 'TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQ='}} GOT:Response: 201 Created Content-Type: application/json Location: http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123 Openstack-Request-Id: req-bf634e18-34d9-4dd0-bba4-2af581699462 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"target_power_state": null, "links": [{"href": "http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "rel": "self"}, {"href": "http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "rel": "bookmark"}], "target_provision_state": null, "last_error": null, "updated_at": null, "maintenance_reason": null, "provision_state": null, "uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "console_enabled": false, "extra": {"none": null, "int": 123, "float": 0.1, "list": [1, 2], "dict": {"cat": "meow"}, "str": "foo", "bool": true}, "provision_updated_at": null, "maintenance": false, "power_state": null, "driver": "fake-hardware", "reservation": null, "properties": {"memory_mb": "4096", "cpu_arch": "x86_64", "local_gb": "10", "cpus": "8"}, "instance_uuid": null, "driver_info": {"fake_password": "******", "foo": "bar"}, "created_at": "2019-06-06T07:02:16.998179+00:00", "ports": [{"href": "http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports", "rel": "self"}, {"href": "http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports", "rel": "bookmark"}], "chassis_uuid": "e74c40e0-d825-11e2-a28f-0800200c9a66", "instance_info": {"foo": "bar", "image_url": "******", "configdrive": "******"}} GET: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123 {} GOT:{u'target_power_state': None, u'links': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'bookmark'}], u'target_provision_state': None, u'last_error': None, u'updated_at': None, u'maintenance_reason': None, u'provision_state': None, u'uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'console_enabled': False, u'extra': {u'none': None, u'int': 123, u'float': 0.1, u'list': [1, 2], u'bool': True, u'str': u'foo', u'dict': {u'cat': u'meow'}}, u'provision_updated_at': None, u'maintenance': False, u'power_state': None, u'driver': u'fake-hardware', u'reservation': None, u'properties': {u'memory_mb': u'4096', u'cpu_arch': u'x86_64', u'local_gb': u'10', u'cpus': u'8'}, u'instance_uuid': None, u'driver_info': {u'fake_password': u'******', u'foo': u'bar'}, u'created_at': u'2019-06-06T07:02:16.998179+00:00', u'ports': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'bookmark'}], u'chassis_uuid': u'e74c40e0-d825-11e2-a28f-0800200c9a66', u'instance_info': {u'foo': u'bar', u'image_url': u'******', u'configdrive': u'******'}} {10} ironic.tests.unit.drivers.modules.ansible.test_deploy.TestAnsibleMethods.test__parse_partitioning_info_all_gpt [0.057114s] ... ok {16} ironic.tests.unit.api.controllers.v1.test_node.TestPost.test_create_node_valid_extra [0.134067s] ... ok {10} ironic.tests.unit.drivers.modules.drac.test_inspect.DracInspectionTestCase.test__calculate_cpus_without_ht_enabled [0.097556s] ... ok {10} ironic.tests.unit.drivers.modules.drac.test_inspect.DracInspectionTestCase.test_inspect_hardware_no_virtual_disk [0.101849s] ... ok {10} ironic.tests.unit.drivers.modules.drac.test_management.DracManagementInternalMethodsTestCase.test_set_boot_device_called_with_not_flexibly_programmable [0.049974s] ... ok {10} ironic.tests.unit.drivers.modules.drac.test_raid.DracManageVirtualDisksTestCase.test_delete_virtual_disk_fail [0.038963s] ... ok {10} ironic.tests.unit.drivers.modules.drac.test_raid.DracRaidInterfaceTestCase.test_create_configuration_with_max_size [0.199068s] ... ok {10} ironic.tests.unit.drivers.modules.ibmc.test_power.IBMCPowerTestCase.test_get_properties [0.054496s] ... ok {10} ironic.tests.unit.drivers.modules.ibmc.test_power.IBMCPowerTestCase.test_get_supported_power_states [0.072684s] ... ok {10} ironic.tests.unit.drivers.modules.ilo.test_boot.IloBootPrivateMethodsTestCase.test__clean_up_boot_iso_for_instance_exc [0.052402s] ... ok {10} ironic.tests.unit.drivers.modules.ilo.test_boot.IloVirtualMediaBootTestCase.test__configure_vmedia_boot_without_boot_iso [0.074366s] ... ok {10} ironic.tests.unit.drivers.modules.ilo.test_common.IloCommonMethodsTestCase.test_get_ilo_object_cafile [0.224436s] ... ok {10} ironic.tests.unit.drivers.modules.ilo.test_common.IloCommonMethodsTestCase.test_get_secure_boot_mode_bios [0.086533s] ... ok {10} ironic.tests.unit.drivers.modules.ilo.test_common.IloValidateParametersTestCase.test_parse_driver_info_snmp_inspection_true_raises [0.031899s] ... ok {10} ironic.tests.unit.drivers.modules.ilo.test_common.IloValidateParametersTestCase.test_parse_driver_info_snmp_true_invalid_auth_protocol [0.030263s] ... ok {10} ironic.tests.unit.drivers.modules.ilo.test_firmware_processor.FirmwareProcessorTestCase.test__download_swift_based_fw_to_calls__download_http_based_fw_to [0.052343s] ... ok {10} ironic.tests.unit.drivers.modules.ilo.test_inspect.TestInspectPrivateMethods.test__get_essential_properties_hardware_port_empty [0.028050s] ... ok {10} ironic.tests.unit.drivers.modules.ilo.test_management.IloManagementTestCase.test__execute_ilo_clean_step_not_supported [0.043859s] ... ok {10} ironic.tests.unit.drivers.modules.ilo.test_management.IloManagementTestCase.test_activate_license [0.094044s] ... ok GET: /v1/volume/connectors?fields=connector_id&limit=2 {} GOT:{u'connectors': [{u'links': [{u'href': u'http://localhost/v1/volume/connectors/8517b4a9-252d-4b8a-93a5-1e17695ed84c', u'rel': u'self'}, {u'href': u'http://localhost/volume/connectors/8517b4a9-252d-4b8a-93a5-1e17695ed84c', u'rel': u'bookmark'}], u'connector_id': u'test-connector_id-0'}, {u'links': [{u'href': u'http://localhost/v1/volume/connectors/9ac4a1c5-007e-49bd-87ee-5904e7477725', u'rel': u'self'}, {u'href': u'http://localhost/volume/connectors/9ac4a1c5-007e-49bd-87ee-5904e7477725', u'rel': u'bookmark'}], u'connector_id': u'test-connector_id-1'}], u'next': u'http://localhost/v1/volume/connectors?sort_key=id&sort_dir=asc&limit=2&marker=9ac4a1c5-007e-49bd-87ee-5904e7477725'} {7} ironic.tests.unit.api.controllers.v1.test_volume_connector.TestListVolumeConnectors.test_get_collection_pagination_no_uuid [0.113805s] ... ok {10} ironic.tests.unit.drivers.modules.ilo.test_management.IloManagementTestCase.test_update_firmware_cleans_all_files_if_exc_thrown [0.100691s] ... ok {10} ironic.tests.unit.drivers.modules.ilo.test_power.IloPowerInternalMethodsTestCase.test__get_power_state_fail [0.047092s] ... ok {10} ironic.tests.unit.drivers.modules.ilo.test_vendor.VendorPassthruTestCase.test_boot_into_iso [0.114274s] ... ok {10} ironic.tests.unit.drivers.modules.irmc.test_boot.IRMCDeployPrivateMethodsTestCase.test__get_floppy_image_name [0.035005s] ... ok GET: /v1/ {} GOT:{u'media_types': [{u'base': u'application/json', u'type': u'application/vnd.openstack.ironic.v1+json'}], u'links': [{u'href': u'http://localhost/v1/', u'rel': u'self'}, {u'href': u'https://docs.openstack.org//ironic/latest/contributor//webapi.html', u'type': u'text/html', u'rel': u'describedby'}], u'drivers': [{u'href': u'http://localhost/v1/drivers/', u'rel': u'self'}, {u'href': u'http://localhost/drivers/', u'rel': u'bookmark'}], u'id': u'v1', u'version': {u'status': u'CURRENT', u'min_version': u'1.1', u'version': u'1.56', u'id': u'v1', u'links': [{u'href': u'http://localhost/v1/', u'rel': u'self'}]}, u'lookup': [{u'href': u'http://localhost/v1/lookup/', u'rel': u'self'}, {u'href': u'http://localhost/lookup/', u'rel': u'bookmark'}], u'heartbeat': [{u'href': u'http://localhost/v1/heartbeat/', u'rel': u'self'}, {u'href': u'http://localhost/heartbeat/', u'rel': u'bookmark'}], u'nodes': [{u'href': u'http://localhost/v1/nodes/', u'rel': u'self'}, {u'href': u'http://localhost/nodes/', u'rel': u'bookmark'}], u'ports': [{u'href': u'http://localhost/v1/ports/', u'rel': u'self'}, {u'href': u'http://localhost/ports/', u'rel': u'bookmark'}], u'chassis': [{u'href': u'http://localhost/v1/chassis/', u'rel': u'self'}, {u'href': u'http://localhost/chassis/', u'rel': u'bookmark'}]} {6} ironic.tests.unit.api.test_root.TestV1Root.test_get_v1_22_root [0.051079s] ... ok {10} ironic.tests.unit.drivers.modules.irmc.test_boot.IRMCDeployPrivateMethodsTestCase.test__parse_instance_info_with_boot_iso_http_ok [0.036253s] ... ok {11} ironic.tests.unit.drivers.test_irmc.IRMCHardwareTestCase.test_override_with_raid_configuration [0.067638s] ... ok {10} ironic.tests.unit.drivers.modules.irmc.test_boot.IRMCDeployPrivateMethodsTestCase.test__setup_vmedia_with_file_rescue [0.113589s] ... ok {10} ironic.tests.unit.drivers.modules.irmc.test_boot.IRMCPXEBootBasicTestCase.test_clean_up_ramdisk_rescue [0.100583s] ... ok {10} ironic.tests.unit.drivers.modules.irmc.test_boot.IRMCPXEBootBasicTestCase.test_validate_fail_glance_image_doesnt_exists [0.067322s] ... ok PATCH: /v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4 [{'path': '/node_uuid', 'value': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123', 'op': 'add'}] GOT:Response: 200 OK Content-Type: application/json Openstack-Request-Id: req-111f6c40-e034-463b-a3d6-5b5c1a0a6794 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"node_uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "uuid": "6eb02b44-18a3-4659-8c0b-8d2802581ae4", "links": [{"href": "http://localhost/v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4", "rel": "self"}, {"href": "http://localhost/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4", "rel": "bookmark"}], "extra": {}, "created_at": "2019-06-06T07:02:17.287341+00:00", "updated_at": null, "ports": [{"href": "http://localhost/v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4/ports", "rel": "self"}, {"href": "http://localhost/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4/ports", "rel": "bookmark"}], "standalone_ports_supported": true, "mode": "active-backup", "address": "52:54:00:cf:2d:31", "internal_info": {"bar": "buzz"}, "properties": {}, "name": "pg.1"} {22} ironic.tests.unit.api.controllers.v1.test_portgroup.TestPatch.test_add_node_uuid [0.115699s] ... ok {10} ironic.tests.unit.drivers.modules.irmc.test_boot.IRMCVirtualMediaBootTestCase.test_prepare_ramdisk_glance_image_rescuing [0.107767s] ... ok {10} ironic.tests.unit.drivers.modules.irmc.test_boot.IRMCVirtualMediaBootWithVolumeTestCase.test_validate_no_physical_id_in_lan_port [0.118627s] ... ok {10} ironic.tests.unit.drivers.modules.irmc.test_management.IRMCManagementFunctionsTestCase.test_backup_bios_config_failed [0.070294s] ... ok {11} ironic.tests.unit.drivers.test_utils.MixinVendorInterfaceTestCase.test_vendor_interface_get_properties [0.020666s] ... ok {10} ironic.tests.unit.drivers.modules.irmc.test_periodic_task.iRMCPeriodicTaskTestCase.test__query_raid_config_fgi_status_with_two_nodes_with_fgi_status_none [0.069108s] ... ok {10} ironic.tests.unit.drivers.modules.irmc.test_power.IRMCPowerInternalMethodsTestCase.test__wait_power_state_soft_power_off [2.098741s] ... ok {10} ironic.tests.unit.drivers.modules.irmc.test_raid.IRMCRaidConfigurationInternalMethodsTestCase.test__fail_validation_with_duplicated_physical_disks [0.054910s] ... ok {10} ironic.tests.unit.drivers.modules.network.test_common.TestNeutronVifPortIDMixin.test_update_portgroup_standalone_ports_novif_nopxe_ports [0.071338s] ... ok {11} ironic.tests.unit.drivers.test_utils.UtilsRamdiskLogsTestCase.test_collect_ramdisk_logs_storage_fail_fs [0.015804s] ... ok Running batches of 50 until migrations have been completed. {6} ironic.tests.unit.cmd.test_dbsync.OnlineMigrationTestCase.test__run_online_data_migrations_exception [0.030858s] ... ok {10} ironic.tests.unit.drivers.modules.redfish.test_utils.RedfishUtilsTestCase.test_parse_driver_info_invalid_system_id [0.020305s] ... ok {10} ironic.tests.unit.drivers.modules.storage.test_cinder.CinderInterfaceTestCase.test__generate_connector_raises_with_insufficent_data [0.072435s] ... ok {10} ironic.tests.unit.drivers.modules.storage.test_cinder.CinderInterfaceTestCase.test_should_write_image [0.108727s] ... ok {6} ironic.tests.unit.common.test_glance_service.TestGlanceImageService.test_client_notfound_converts_to_imagenotfound [0.017274s] ... ok {10} ironic.tests.unit.drivers.modules.storage.test_cinder.CinderInterfaceTestCase.test_validate_success_iscsi_targets [0.093352s] ... ok {6} ironic.tests.unit.common.test_glance_service.TestGlanceSwiftTempURL.test__validate_temp_url_multiple_containers [0.017113s] ... ok {6} ironic.tests.unit.common.test_image_service.FileImageServiceTestCase.test_download_copy [0.031585s] ... ok {10} ironic.tests.unit.drivers.modules.test_agent.AgentRAIDTestCase.test_create_configuration_empty_target_raid_config [0.077489s] ... ok {6} ironic.tests.unit.common.test_network.TestNetwork.test_get_node_vif_ids_during_cleaning [0.119105s] ... ok {6} ironic.tests.unit.common.test_neutron.TestNeutronNetworkActions.test_validate_port_info_neutron_interface [0.164776s] ... ok {11} ironic.tests.unit.objects.test_chassis.TestChassisObject.test_save [0.017573s] ... ok {10} ironic.tests.unit.drivers.modules.test_agent.AgentRescueTestCase.test_agent_rescue_clean_up_smartnic [0.084449s] ... ok {6} ironic.tests.unit.common.test_neutron.TestNeutronNetworkActions.test_verify_sec_groups_less_than_configured [0.041823s] ... ok {10} ironic.tests.unit.drivers.modules.test_agent.TestAgentDeploy.test_deploy_is_done_still_running [0.650005s] ... ok {10} ironic.tests.unit.drivers.modules.test_agent.TestAgentMethods.test_validate_http_provisioning_not_http [0.026389s] ... ok {6} ironic.tests.unit.common.test_policy.PolicyTestCase.test_authorize_policy_not_registered [0.016421s] ... ok {10} ironic.tests.unit.drivers.modules.test_agent_base_vendor.AgentDeployMixinTest.test_configure_local_boot_with_prep [0.077487s] ... ok {6} ironic.tests.unit.common.test_pxe_utils.TestPXEUtils.test_dhcp_options_for_instance_ipxe_uefi [0.096452s] ... ok {10} ironic.tests.unit.drivers.modules.test_agent_base_vendor.HeartbeatMixinTest.test_heartbeat_deploy_done_fails [0.104926s] ... ok {11} ironic.tests.unit.objects.test_node.TestConvertToVersion.test_automated_clean_unsupported_missing [0.013510s] ... ok {6} ironic.tests.unit.common.test_utils.GenericUtilsTestCase.test_safe_rstrip [0.016741s] ... ok {6} ironic.tests.unit.conductor.test_manager.ConsoleTestCase.test_enable_console_already_enabled [0.362994s] ... ok {10} ironic.tests.unit.drivers.modules.test_agent_base_vendor.HeartbeatMixinTest.test_heartbeat_noops_in_wrong_state [0.643792s] ... ok {6} ironic.tests.unit.conductor.test_manager.ConsoleTestCase.test_get_console [0.095583s] ... ok POST: /v1/ports {'local_link_connection': {'switch_info': 'switch1', 'port_id': 'Ethernet3/1', 'switch_id': '0a:1b:2c:3d:4e:5f'}, 'node_uuid': 'cc6bad56-5ffc-48fe-8d5e-afc730831f0b', 'uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c781', 'extra': {}, 'pxe_enabled': True, 'portgroup_uuid': '6eb02b44-18a3-4659-8c0b-8d2802581ae4', 'physical_network': None, 'address': '52:54:00:cf:2d:31', 'is_smartnic': False} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-b9f20156-928c-420c-9ba2-74f807c53fb2 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Node cc6bad56-5ffc-48fe-8d5e-afc730831f0b could not be found.\"}"} {31} ironic.tests.unit.api.controllers.v1.test_port.TestPost.test_create_port_portgroup_different_nodes [0.082530s] ... ok {10} ironic.tests.unit.drivers.modules.test_agent_client.TestAgentClient.test_finalize_rescue_exc [0.010101s] ... ok {6} ironic.tests.unit.conductor.test_manager.CreatePortTestCase.test_create_port_physnet_validation_failure_conflict [0.114962s] ... ok {11} ironic.tests.unit.objects.test_node.TestNodePayloads.test_node_crud_payload [0.013949s] ... ok {6} ironic.tests.unit.conductor.test_manager.DestroyVolumeTargetTestCase.test_destroy_volume_target [0.117392s] ... ok {10} ironic.tests.unit.drivers.modules.test_agent_client.TestAgentClient.test_start_iscsi_target_wipe_disk_metadata [0.010393s] ... ok {6} ironic.tests.unit.conductor.test_manager.DestroyVolumeTargetTestCase.test_destroy_volume_target_node_power_on [0.110815s] ... ok {10} ironic.tests.unit.drivers.modules.test_console_utils.ConsoleUtilsTestCase.test_get_shellinabox_console_url [0.012968s] ... ok {11} ironic.tests.unit.objects.test_objects.TestObject.test_load [0.009088s] ... ok {6} ironic.tests.unit.conductor.test_manager.DoNodeCleanTestCase.test__do_node_clean_manual_cache_bios [0.171853s] ... ok {10} ironic.tests.unit.drivers.modules.test_deploy_utils.ParseInstanceInfoCapabilitiesTestCase.test_is_trusted_boot_requested_false [0.008902s] ... ok {6} ironic.tests.unit.conductor.test_manager.DoNodeDeployTestCase.test_do_node_deploy_deprecated [0.228482s] ... ok {10} ironic.tests.unit.drivers.modules.test_deploy_utils.ParseInstanceInfoCapabilitiesTestCase.test_validate_boot_mode_capability [0.008845s] ... ok {10} ironic.tests.unit.drivers.modules.test_deploy_utils.PhysicalWorkTestCase.test_check_file_system_for_iscsi_device_raises [0.010846s] ... ok {6} ironic.tests.unit.conductor.test_manager.ManagerCheckDeployTimeoutsTestCase.test_worker_limit [0.022250s] ... ok {10} ironic.tests.unit.drivers.modules.test_deploy_utils.PhysicalWorkTestCase.test_deploy_whole_disk_image [0.017435s] ... ok {6} ironic.tests.unit.conductor.test_manager.NodeTraitsTestCase.test_add_node_traits_replace [0.141268s] ... ok {10} ironic.tests.unit.drivers.modules.test_deploy_utils.TrySetBootDeviceTestCase.test_try_set_boot_device_okay [0.059827s] ... ok {6} ironic.tests.unit.conductor.test_manager.NodeTraitsTestCase.test_remove_node_traits_all [0.095473s] ... ok {11} ironic.tests.unit.objects.test_port.TestPortObject.test_refresh [0.018642s] ... ok {6} ironic.tests.unit.conductor.test_manager.NodeTraitsTestCase.test_remove_node_traits_node_not_found [0.087616s] ... ok {10} ironic.tests.unit.drivers.modules.test_image_cache.CleanupImageCacheTestCase.test_both_clean_up [0.020477s] ... ok {6} ironic.tests.unit.conductor.test_manager.RaidHardwareTypeTestCases.test_set_target_raid_config_iface_not_supported [0.083942s] ... ok {6} ironic.tests.unit.conductor.test_manager.ServiceDoNodeDeployTestCase.test_do_node_deploy_rebuild_active_state_done_old [0.302892s] ... ok {10} ironic.tests.unit.drivers.modules.test_image_cache.TestImageCacheCleanUp.test_clean_up_amount_not_satisfied [0.014166s] ... ok {6} ironic.tests.unit.conductor.test_manager.UpdateNodeTestCase.test_associate_node_powered_off [0.144625s] ... ok POST: /v1/ports {'local_link_connection': {'switch_info': 'switch1', 'port_id': 'Ethernet3/1', 'switch_id': '0a:1b:2c:3d:4e:5f'}, 'node_uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123', 'uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c781', 'extra': {'vif_port_id': '903fa0cf-9f52-4b8a-a34b-3b06a9bf20e9'}, 'pxe_enabled': False, 'portgroup_uuid': '6eb02b44-18a3-4659-8c0b-8d2802581ae4', 'physical_network': None, 'address': '52:54:00:cf:2d:31', 'is_smartnic': False} GOT:Response: 409 Conflict Content-Type: application/json Openstack-Request-Id: req-5358268d-a46f-4f60-b6af-96e8743f7e2d X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Port group 6eb02b44-18a3-4659-8c0b-8d2802581ae4 doesn't support standalone ports. This port cannot be created as a member of that port group because either 'extra/vif_port_id' was specified or 'pxe_enabled' was set to True.\"}"} {27} ironic.tests.unit.api.controllers.v1.test_port.TestPost.test_create_port_vif_nopxe_portgroup_nostandalone_ports [0.097967s] ... ok {10} ironic.tests.unit.drivers.modules.test_image_cache.TestImageCacheFetch.test_fetch_image_no_master_dir [0.013787s] ... ok {6} ironic.tests.unit.conductor.test_manager.UpdateNodeTestCase.test_update_node_interface_in_maintenance [0.700392s] ... ok {11} ironic.tests.unit.objects.test_volume_connector.TestVolumeConnectorObject.test_refresh [0.015432s] ... ok {10} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolCheckInitTestCase.test_management_init_calls_already_checked [1.878924s] ... ok {6} ironic.tests.unit.conductor.test_manager.UpdatePortTestCase.test_update_port_physnet_validation_failure_inconsistent [0.085601s] ... ok {10} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolCheckInitTestCase.test_power_init_calls [0.022864s] ... ok {10} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolCheckOptionSupportedTestCase.test_check_dual_bridge_fail [0.021404s] ... ok {6} ironic.tests.unit.conductor.test_notification_utils.TestNotificationUtils.test__emit_conductor_node_notification_known_payload_exc [0.025183s] ... ok {10} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolPrivateMethodTestCase.test__exec_ipmitool_without_timing [0.038922s] ... ok {10} ironic.tests.unit.drivers.modules.test_ipxe.iPXEBootTestCase.test_prepare_ramdisk_force_persistent_boot_device_sloppy_true [0.508818s] ... ok {10} ironic.tests.unit.drivers.modules.test_iscsi_deploy.ISCSIDeployTestCase.test_deploy_fast_track [0.110166s] ... ok {6} ironic.tests.unit.conductor.test_steps.NodeDeployStepsTestCase.test__get_all_deployment_steps_override_driver_steps [0.088173s] ... ok {10} ironic.tests.unit.drivers.modules.test_iscsi_deploy.ISCSIDeployTestCase.test_validate [0.053672s] ... ok {6} ironic.tests.unit.conductor.test_task_manager.ExclusiveLockDecoratorTestCase.test_with_shared_lock_task_first_arg [0.017555s] ... ok {11} ironic.tests.unit.objects.test_volume_target.TestVolumeTargetObject.test_get_by_uuid [0.015418s] ... ok {6} ironic.tests.unit.conductor.test_task_manager.TaskManagerTestCase.test_spawn_after_link_fails [0.044617s] ... ok {10} ironic.tests.unit.drivers.modules.test_noop_mgmt.TestNoopManagement.test_dummy_methods [0.009405s] ... ok {10} ironic.tests.unit.drivers.modules.test_snmp.SNMPDeviceDriverTestCase.test_baytech_mrp27_power_state_on [0.018710s] ... ok {6} ironic.tests.unit.conductor.test_utils.ErrorHandlersTestCase.test_cleaning_error_handler_tear_down_error [0.021441s] ... ok {6} ironic.tests.unit.conductor.test_utils.MiscTestCase.test_power_on_node_if_needed_false_power_on [0.118025s] ... ok {10} ironic.tests.unit.drivers.modules.test_snmp.SNMPDeviceDriverTestCase.test_power_off_snmp_get_failure [0.016884s] ... ok PATCH: /v1/volume/targets/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 [{'path': '/extra/foo1', 'op': 'remove'}] GOT:Response: 200 OK Content-Type: application/json Openstack-Request-Id: req-c7f67e6e-5884-4886-91ed-cd243e85a7bb X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"boot_index": 0, "uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "links": [{"href": "http://localhost/v1/volume/targets/1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "rel": "self"}, {"href": "http://localhost/volume/targets/1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "rel": "bookmark"}], "extra": {"foo2": "bar2", "foo3": "bar3"}, "created_at": "2019-06-06T07:02:17.682581+00:00", "updated_at": "2019-06-06T07:02:17.691905+00:00", "volume_type": "iscsi", "node_uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "volume_id": "12345678", "properties": {"target_iqn": "iqn.foo"}} PATCH: /v1/volume/targets/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 [{'path': '/extra', 'op': 'remove'}] GOT:Response: 200 OK Content-Type: application/json Openstack-Request-Id: req-d357aba4-9e83-4e83-9024-33628a748313 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"boot_index": 0, "uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "links": [{"href": "http://localhost/v1/volume/targets/1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "rel": "self"}, {"href": "http://localhost/volume/targets/1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "rel": "bookmark"}], "extra": {}, "created_at": "2019-06-06T07:02:17.682581+00:00", "updated_at": "2019-06-06T07:02:17.691905+00:00", "volume_type": "iscsi", "node_uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "volume_id": "12345678", "properties": {"target_iqn": "iqn.foo"}} {6} ironic.tests.unit.conductor.test_utils.NodeSoftPowerActionTestCase.test_node_power_action_power_soft_reboot [0.164986s] ... ok {10} ironic.tests.unit.drivers.modules.test_snmp.SNMPValidateParametersTestCase.test__parse_driver_info_missing_community_snmp_v2c [0.013271s] ... ok {30} ironic.tests.unit.api.controllers.v1.test_volume_target.TestPatch.test_remove_multi [0.190688s] ... ok {6} ironic.tests.unit.conductor.test_utils.ValidatePortPhysnetTestCase.test_validate_port_physnet_2_port_portgroup_w_physnet_update_3 [0.115625s] ... ok {10} ironic.tests.unit.drivers.test_drac.IDRACHardwareTestCase.test_override_with_inspector [0.059910s] ... ok {10} ironic.tests.unit.drivers.test_fake_hardware.FakeHardwareTestCase.test_get_properties [0.058143s] ... ok {6} ironic.tests.unit.db.sqlalchemy.test_types.SqlAlchemyCustomTypesTestCase.test_JSONEncodedList_default_value [0.040355s] ... ok {6} ironic.tests.unit.db.test_allocations.AllocationsTestCase.test_create_allocation_duplicated_uuid [0.040276s] ... ok {10} ironic.tests.unit.objects.test_allocation.TestAllocationObject.test_get_bad_id_and_uuid_and_name [0.013406s] ... ok {6} ironic.tests.unit.db.test_allocations.AllocationsTestCase.test_get_allocation_by_uuid [0.037112s] ... ok {10} ironic.tests.unit.objects.test_conductor.TestConductorObject.test_unregister_all_hardware_interfaces [0.017335s] ... ok {6} ironic.tests.unit.db.test_allocations.AllocationsTestCase.test_take_over_allocation_not_found [0.039379s] ... ok {10} ironic.tests.unit.objects.test_deploy_template.TestDeployTemplateObject.test_save [0.015449s] ... ok {10} ironic.tests.unit.objects.test_fields.TestNotificationLevelField.test_coerce_good_value [0.008515s] ... ok {6} ironic.tests.unit.db.test_conductor.DbConductorTestCase.test_unregister_conductor_hardware_interfaces [0.038837s] ... ok {10} ironic.tests.unit.objects.test_node.TestNodePayloads.test_node_payload_traits_is_none [1.764298s] ... ok {6} ironic.tests.unit.db.test_deploy_templates.DbDeployTemplateTestCase.test_update_not_found [0.027290s] ... ok {6} ironic.tests.unit.db.test_nodes.DbNodeTestCase.test_update_node_with_traits [0.058059s] ... ok {10} ironic.tests.unit.objects.test_notification.TestNotificationBase.test_populate_schema_no_object_field [0.008680s] ... ok POST: /v1/heartbeat/test.1 {'callback_url': 'url'} GOT:Response: 202 Accepted Openstack-Request-Id: req-f5a03e33-f2bf-482d-b1f4-c8bec4f22a37 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {6} ironic.tests.unit.db.test_portgroups.DbportgroupTestCase.test_create_portgroup_no_mode [0.045206s] ... ok {10} ironic.tests.unit.objects.test_objects.TestObject.test_contains [0.009096s] ... ok {22} ironic.tests.unit.api.controllers.v1.test_ramdisk.TestHeartbeat.test_ok_by_name [0.075825s] ... ok {6} ironic.tests.unit.db.test_portgroups.DbportgroupTestCase.test_get_portgroup_by_address [0.036842s] ... ok {22} ironic.tests.unit.api.controllers.v1.test_utils.TestApiUtils.test_apply_jsonpatch_no_add_root_attr [0.016267s] ... ok {10} ironic.tests.unit.objects.test_objects.TestObject.test_get_changes [0.008580s] ... ok {6} ironic.tests.unit.db.test_portgroups.DbportgroupTestCase.test_get_portgroup_by_uuid [0.038343s] ... ok {22} ironic.tests.unit.api.controllers.v1.test_utils.TestApiUtils.test_check_for_invalid_fields_fail [0.018759s] ... ok {6} ironic.tests.unit.db.test_volume_connectors.DbVolumeConnectorTestCase.test_get_volume_connector_by_uuid [0.040942s] ... ok {10} ironic.tests.unit.objects.test_objects.TestObject.test_with_alternate_context [0.008505s] ... ok {22} ironic.tests.unit.api.controllers.v1.test_utils.TestApiUtils.test_is_path_removed_replace [0.015966s] ... ok {10} ironic.tests.unit.objects.test_objects.TestObjectSerializer.test__process_object_convert_api [0.010764s] ... ok {6} ironic.tests.unit.drivers.modules.ansible.test_deploy.TestAnsibleDeploy.test_get_clean_steps [0.088308s] ... ok {22} ironic.tests.unit.api.controllers.v1.test_utils.TestNodeIdent.test_get_rpc_node_by_uuid_no_logical_name [0.019144s] ... ok {10} ironic.tests.unit.objects.test_port.TestConvertToVersion.test_physnet_unsupported_set_remove [0.012332s] ... ok {6} ironic.tests.unit.drivers.modules.ansible.test_deploy.TestAnsibleDeploy.test_validate_not_iwdi_netboot [0.079814s] ... ok {10} ironic.tests.unit.objects.test_port.TestMigrateVifPortId.test_migrate_vif_port_id_one [0.029715s] ... ok {10} ironic.tests.unit.objects.test_port.TestPortObject.test_supports_is_smartnic_supported [0.012820s] ... ok {6} ironic.tests.unit.drivers.modules.ansible.test_deploy.TestAnsibleMethods.test__parse_ansible_driver_info_no_playbook [0.021283s] ... ok {22} ironic.tests.unit.api.controllers.v1.test_utils.TestPortgroupIdent.test_get_rpc_portgroup_invalid_name [0.016087s] ... ok {10} ironic.tests.unit.objects.test_volume_connector.TestVolumeConnectorObject.test_destroy [0.016590s] ... ok {6} ironic.tests.unit.drivers.modules.ansible.test_deploy.TestAnsibleMethods.test__validate_clean_steps [0.021973s] ... ok {10} ironic.tests.unit.objects.test_volume_connector.TestVolumeConnectorObject.test_get [0.014491s] ... ok {6} ironic.tests.unit.drivers.modules.cimc.test_power.PowerTestCase.test_reboot_on [0.072674s] ... ok PUT: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states/provision {'target': 'adopt'} GOT:Response: 406 Not Acceptable Content-Type: application/json Openstack-Request-Id: req-9cdfb305-8966-4680-a8b3-be9913d7208a X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.16 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Request not acceptable.\"}"} {6} ironic.tests.unit.drivers.modules.drac.test_common.DracCommonMethodsTestCase.test_parse_driver_info_invalid_protocol [0.021389s] ... ok {16} ironic.tests.unit.api.controllers.v1.test_node.TestPut.test_adopt_raises_error_before_1_17 [0.064492s] ... ok {6} ironic.tests.unit.drivers.modules.drac.test_inspect.DracInspectionTestCase.test_get_properties [0.029735s] ... ok {6} ironic.tests.unit.drivers.modules.drac.test_power.DracPowerTestCase.test_reboot_while_powered_on [0.074257s] ... ok {6} ironic.tests.unit.drivers.modules.drac.test_raid.DracCreateRaidConfigurationHelpersTestCase.test__filter_logical_disks_excelude_all [0.036776s] ... ok {6} ironic.tests.unit.drivers.modules.drac.test_raid.DracManageVirtualDisksTestCase.test_abandon_config_fail [0.023342s] ... ok {6} ironic.tests.unit.drivers.modules.drac.test_raid.DracRaidInterfaceTestCase.test_create_configuration [0.111508s] ... ok {6} ironic.tests.unit.drivers.modules.ibmc.test_management.IBMCManagementTestCase.test_get_boot_mode [3.921246s] ... ok {6} ironic.tests.unit.drivers.modules.ilo.test_bios.IloBiosTestCase.test__execute_post_boot_bios_step_iloobj_failed [0.083991s] ... ok {6} ironic.tests.unit.drivers.modules.ilo.test_common.IloCommonMethodsTestCase.test_remove_image_from_swift_suppresses_operror_exc [0.050562s] ... ok {6} ironic.tests.unit.drivers.modules.ilo.test_firmware_processor.FirmwareProcessorTestCase.test__download_swift_based_fw_to_creates_temp_url [0.043036s] ... ok {6} ironic.tests.unit.drivers.modules.ilo.test_firmware_processor.FirmwareProcessorTestCase.test__extract_fw_from_file_calls_process_firmware_image [0.036380s] ... ok {6} ironic.tests.unit.drivers.modules.ilo.test_firmware_processor.FirmwareProcessorTestCase.test__extract_fw_from_file_uploads_firmware_to_webserver [0.036558s] ... ok {6} ironic.tests.unit.drivers.modules.ilo.test_management.IloManagementTestCase.test_clear_secure_boot_keys [0.068898s] ... ok {6} ironic.tests.unit.drivers.modules.ilo.test_management.IloManagementTestCase.test_reset_ilo_credential_ok [0.094937s] ... ok {6} ironic.tests.unit.drivers.modules.ilo.test_management.IloManagementTestCase.test_validate [0.067399s] ... ok {6} ironic.tests.unit.drivers.modules.ilo.test_power.IloPowerInternalMethodsTestCase.test__get_power_state [0.030075s] ... ok {6} ironic.tests.unit.drivers.modules.ilo.test_power.IloPowerInternalMethodsTestCase.test__set_power_state_off_fail [0.066154s] ... ok {6} ironic.tests.unit.drivers.modules.irmc.test_boot.IRMCPXEBootBasicTestCase.test_prepare_ramdisk_force_persistent_boot_device_bool_true [0.129535s] ... ok {6} ironic.tests.unit.drivers.modules.irmc.test_boot.IRMCVirtualMediaBootWithVolumeTestCase.test__configure_boot_from_volume_iscsi [0.134757s] ... ok {6} ironic.tests.unit.drivers.modules.irmc.test_boot.IRMCVirtualMediaBootWithVolumeTestCase.test__configure_boot_from_volume_iscsi_chap [0.135133s] ... ok {6} ironic.tests.unit.drivers.modules.irmc.test_boot.IRMCVirtualMediaBootWithVolumeTestCase.test_validate_iscsi_connector_too_large_netmask [0.154016s] ... ok {6} ironic.tests.unit.drivers.modules.irmc.test_inspect.IRMCInspectTestCase.test_inspect_hardware_props_gpu_and_cpu_fpgas_results_are_different [0.069436s] ... ok DELETE: /v1/portgroups/pg.1.json GOT:Response: 204 No Content Openstack-Request-Id: req-9d694403-9105-43b9-b921-0f9f6c0b625b X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {27} ironic.tests.unit.api.controllers.v1.test_portgroup.TestDelete.test_delete_portgroup_byname_with_json [0.084140s] ... ok {6} ironic.tests.unit.drivers.modules.irmc.test_management.IRMCManagementTestCase.test_management_interface_get_sensors_data_scci_ok [0.083017s] ... ok {6} ironic.tests.unit.drivers.modules.irmc.test_management.IRMCManagementTestCase.test_validate [0.067895s] ... ok {6} ironic.tests.unit.drivers.modules.irmc.test_periodic_task.iRMCPeriodicTaskTestCase.test__query_raid_config_fgi_status_with_clean_fail [0.076755s] ... ok {6} ironic.tests.unit.drivers.modules.network.test_common.TestCommonFunctions.test_get_free_port_like_object_portgroup_physnet_match_first [0.092442s] ... ok PATCH: /v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 [{'path': '/extra/foo', 'value': 'bar', 'op': 'add'}] GOT:Response: 200 OK Content-Type: application/json Openstack-Request-Id: req-ee2024bd-1bd7-4be0-9d5c-d24e47e4d728 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.38 {"local_link_connection": {"switch_info": "switch1", "port_id": "Ethernet3/1", "switch_id": "0a:1b:2c:3d:4e:5f"}, "node_uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "links": [{"href": "http://localhost/v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "rel": "self"}, {"href": "http://localhost/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "rel": "bookmark"}], "extra": {"foo": "bar"}, "pxe_enabled": true, "portgroup_uuid": null, "updated_at": "2019-06-06T07:02:17.106787+00:00", "physical_network": null, "address": "52:54:00:cf:2d:31", "internal_info": {"bar": "buzz"}, "created_at": "2019-06-06T07:02:17.003625+00:00"} {29} ironic.tests.unit.api.controllers.v1.test_port.TestPatch.test_update_in_inspecting_allowed [0.171430s] ... ok {6} ironic.tests.unit.drivers.modules.network.test_common.TestVifPortIDMixin.test__get_vif_id_by_port_like_obj_in_internal_info [0.031919s] ... ok {29} ironic.tests.unit.api.controllers.v1.test_port.TestPortsController__CheckAllowedPortFields.test__check_allowed_port_fields_portgroup_allow [0.382223s] ... ok {6} ironic.tests.unit.drivers.modules.network.test_neutron.NeutronInterfaceTestCase.test_configure_tenant_networks_no_vif_id [0.082012s] ... ok {6} ironic.tests.unit.drivers.modules.network.test_neutron.NeutronInterfaceTestCase.test_vif_list [0.074945s] ... ok {6} ironic.tests.unit.drivers.modules.redfish.test_power.RedfishPowerTestCase.test_set_power_state_fail [0.111773s] ... ok {6} ironic.tests.unit.drivers.modules.redfish.test_utils.RedfishUtilsTestCase.test_auth_session [0.068673s] ... ok {6} ironic.tests.unit.drivers.modules.storage.test_cinder.CinderInterfaceTestCase.test_validate_success_iscsi_connector [0.089598s] ... ok {6} ironic.tests.unit.drivers.modules.test_agent.AgentRescueTestCase.test_agent_unrescue_power_on [0.110674s] ... ok {6} ironic.tests.unit.drivers.modules.test_agent.TestAgentDeploy.test_tear_down [0.141565s] ... ok {6} ironic.tests.unit.drivers.modules.test_agent_base_vendor.AgentDeployMixinTest.test_configure_local_boot_enforce_persistent_boot_device_default [0.065443s] ... ok {6} ironic.tests.unit.drivers.modules.test_agent_base_vendor.AgentDeployMixinTest.test_continue_cleaning_after_reboot [0.095900s] ... ok {6} ironic.tests.unit.drivers.modules.test_agent_base_vendor.AgentDeployMixinTest.test_prepare_instance_to_boot_configure_fails [0.083948s] ... ok {6} ironic.tests.unit.drivers.modules.test_agent_base_vendor.AgentDeployMixinTest.test_reboot_and_finish_deploy_soft_poweroff_doesnt_complete [0.091073s] ... ok {6} ironic.tests.unit.drivers.modules.test_agent_base_vendor.AgentRescueTests.test__finalize_rescue_with_smartnic_port [0.085276s] ... ok {6} ironic.tests.unit.drivers.modules.test_console_utils.ConsoleUtilsTestCase.test_stop_socat_console_fail_nopid [0.019032s] ... ok {6} ironic.tests.unit.drivers.modules.test_deploy_utils.AgentMethodsTestCase.test_get_clean_steps_custom_interface [0.066203s] ... ok {6} ironic.tests.unit.drivers.modules.test_deploy_utils.GetPxeBootConfigTestCase.test_get_pxe_config_template_bios_without_by_arch [0.014665s] ... ok {6} ironic.tests.unit.drivers.modules.test_deploy_utils.OtherFunctionTestCase.test_fetch_images [0.024617s] ... ok {6} ironic.tests.unit.drivers.modules.test_deploy_utils.PhysicalWorkTestCase.test_deploy_partition_image_with_configdrive [0.025900s] ... ok {6} ironic.tests.unit.drivers.modules.test_deploy_utils.PhysicalWorkTestCase.test_deploy_whole_disk_image_with_config_drive [0.022697s] ... ok {6} ironic.tests.unit.drivers.modules.test_deploy_utils.TestBuildInstanceInfoForHttpProvisioning.test_build_instance_info_force_raw_new_fields_is_md5 [0.116742s] ... ok {6} ironic.tests.unit.drivers.modules.test_deploy_utils.TestStorageInterfaceUtils.test_get_remote_boot_volume [0.105829s] ... ok {6} ironic.tests.unit.drivers.modules.test_deploy_utils.TrySetBootDeviceTestCase.test_try_set_boot_device_ipmifailure_bios [0.067714s] ... ok {6} ironic.tests.unit.drivers.modules.test_image_cache.TestImageCacheFetch.test_fetch_image_both_master_and_dest_out_of_date [0.018047s] ... ok {6} ironic.tests.unit.drivers.modules.test_image_cache.TestImageCacheFetch.test_fetch_image_master_out_of_date [0.017489s] ... ok {6} ironic.tests.unit.drivers.modules.test_image_cache.TestUpdateImages.test__delete_master_path_if_stale_glance_img [0.013468s] ... ok {6} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolCheckInitTestCase.test_power_init_calls_already_checked [0.018415s] ... ok {6} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolCheckOptionSupportedTestCase.test_check_single_bridge_pass [0.013594s] ... ok PATCH: /v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 [{'path': '/extra/foo1', 'op': 'remove'}] GOT:Response: 200 OK Content-Type: application/json Openstack-Request-Id: req-2749145a-d58d-4504-a637-7fbd263622ba X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"node_uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "links": [{"href": "http://localhost/v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "rel": "self"}, {"href": "http://localhost/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "rel": "bookmark"}], "extra": {"foo2": "bar2", "foo3": "bar3"}, "created_at": "2019-06-06T07:02:17.329736+00:00", "updated_at": "2019-06-06T07:02:17.402606+00:00", "address": "52:54:00:cf:2d:31"} PATCH: /v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 [{'path': '/extra', 'op': 'remove'}] GOT:Response: 200 OK Content-Type: application/json Openstack-Request-Id: req-c1225b49-352d-47c4-b095-54a30cee624f X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"node_uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "links": [{"href": "http://localhost/v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "rel": "self"}, {"href": "http://localhost/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "rel": "bookmark"}], "extra": {}, "created_at": "2019-06-06T07:02:17.329736+00:00", "updated_at": "2019-06-06T07:02:17.466969+00:00", "address": "52:54:00:cf:2d:31"} {6} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolDriverTestCase.test__parse_ipmi_sensor_data_debug [0.026825s] ... ok {14} ironic.tests.unit.api.controllers.v1.test_port.TestPatch.test_remove_multi [0.368754s] ... ok {6} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolDriverTestCase.test_set_soft_power_off_timeout_ok [0.078316s] ... ok {6} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolPrivateMethodTestCase.test_exec_ipmitool_exception_retries_exceeded_insufficient_resources_for_session [0.029338s] ... ok {6} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolPrivateMethodTestCase.test_exec_ipmitool_exception_retry_timeout [0.029202s] ... ok {6} ironic.tests.unit.drivers.modules.test_ipxe.iPXEBootTestCase.test_prepare_instance_localboot [0.103407s] ... ok {6} ironic.tests.unit.drivers.modules.test_ipxe.iPXEBootTestCase.test_validate_fail_invalid_trusted_boot_value [0.057344s] ... ok {6} ironic.tests.unit.drivers.modules.test_ipxe.iPXEBootTestCase.test_validate_fail_missing_deploy_ramdisk [0.054257s] ... ok {6} ironic.tests.unit.drivers.modules.test_pxe.PXEBootTestCase.test_prepare_ramdisk_set_boot_mode_on_ironic [0.172259s] ... ok {6} ironic.tests.unit.drivers.modules.test_snmp.SNMPClientTestCase.test_get_next_err_transport [0.035821s] ... ok {6} ironic.tests.unit.drivers.modules.test_snmp.SNMPClientTestCase.test_set_err_transport [0.028712s] ... ok PUT: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/management/inject_nmi {} GOT:Response: 204 No Content Openstack-Request-Id: req-0672b753-33ec-4ca8-b0c7-6f385d9665b7 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.29 {16} ironic.tests.unit.api.controllers.v1.test_node.TestPut.test_inject_nmi [0.083394s] ... ok {6} ironic.tests.unit.drivers.modules.test_snmp.SNMPDeviceDriverTestCase.test_aten_power_state_on [0.018998s] ... ok {6} ironic.tests.unit.drivers.modules.test_snmp.SNMPDeviceDriverTestCase.test_power_state_snmp_failure [0.018722s] ... ok {6} ironic.tests.unit.drivers.modules.test_snmp.SNMPDriverTestCase.test_get_power_state_on [0.074562s] ... ok {6} ironic.tests.unit.drivers.modules.test_snmp.SNMPDriverTestCase.test_set_power_state_on [0.073224s] ... ok {6} ironic.tests.unit.drivers.modules.test_snmp.SNMPValidateParametersTestCase.test__parse_driver_info_apc_rackpdu [1.065489s] ... ok {6} ironic.tests.unit.drivers.modules.test_snmp.SNMPValidateParametersTestCase.test__parse_driver_info_default [0.012906s] ... ok {6} ironic.tests.unit.drivers.modules.test_snmp.SNMPValidateParametersTestCase.test__parse_driver_info_read_community [0.012427s] ... ok {6} ironic.tests.unit.drivers.modules.xclarity.test_common.XClarityCommonTestCase.test_parse_driver_info_missing_driver_info_and_config [0.019751s] ... ok {6} ironic.tests.unit.drivers.test_base.DeployStepDecoratorTestCase.test_deploy_step_priority_only [0.008603s] ... ok {6} ironic.tests.unit.drivers.test_ipmi.IPMIHardwareTestCase.test_override_with_cinder_storage [0.070254s] ... ok {6} ironic.tests.unit.drivers.test_snmp.SNMPHardwareTestCase.test_fake_management [0.060281s] ... ok {6} ironic.tests.unit.drivers.test_utils.UtilsTestCase.test_ensure_next_boot_device [0.081073s] ... ok {6} ironic.tests.unit.objects.test_node.TestConvertToVersion.test_bios_unsupported_set_no_remove_non_default [0.016586s] ... ok {6} ironic.tests.unit.objects.test_node.TestConvertToVersion.test_description_unsupported_set_no_remove_default [0.015398s] ... ok {6} ironic.tests.unit.objects.test_objects.TestMisc.test_max_version_one [0.009537s] ... ok {6} ironic.tests.unit.objects.test_objects.TestObject.test_get [0.010019s] ... ok {6} ironic.tests.unit.objects.test_objects.TestObject.test_updates [0.009456s] ... ok {6} ironic.tests.unit.objects.test_objects.TestObjectVersions.test_object_version_check [0.026768s] ... ok {6} ironic.tests.unit.objects.test_trait.TestTraitObject.test_get_trait_names [0.013767s] ... ok GET: /v1/volume/connectors/1be26c0b-03f2-4d2e-ae87-c02d7f33c781?detail=True&fields=connector_id,extra {} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-490f5462-38a1-47f1-8b58-a4e1ca1ff77c X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Unknown argument: \\\"detail\\\"\"}"} {22} ironic.tests.unit.api.controllers.v1.test_volume_connector.TestListVolumeConnectors.test_detail_and_fields [0.063750s] ... ok GET: /v1/ports/aeaf31ed-1552-47c8-8453-fad6a4267def {} GOT:{u'node_uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'uuid': u'aeaf31ed-1552-47c8-8453-fad6a4267def', u'links': [{u'href': u'http://localhost/v1/ports/aeaf31ed-1552-47c8-8453-fad6a4267def', u'rel': u'self'}, {u'href': u'http://localhost/ports/aeaf31ed-1552-47c8-8453-fad6a4267def', u'rel': u'bookmark'}], u'extra': {}, u'created_at': u'2019-06-06T07:02:17.212104+00:00', u'updated_at': None, u'address': u'52:54:00:cf:2d:31'} GET: /v1/ports/aeaf31ed-1552-47c8-8453-fad6a4267def {} GOT:{u'node_uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'uuid': u'aeaf31ed-1552-47c8-8453-fad6a4267def', u'links': [{u'href': u'http://localhost/v1/ports/aeaf31ed-1552-47c8-8453-fad6a4267def', u'rel': u'self'}, {u'href': u'http://localhost/ports/aeaf31ed-1552-47c8-8453-fad6a4267def', u'rel': u'bookmark'}], u'extra': {}, u'created_at': u'2019-06-06T07:02:17.212104+00:00', u'updated_at': None, u'address': u'52:54:00:cf:2d:31'} GET: /ports/aeaf31ed-1552-47c8-8453-fad6a4267def {} GOT:{u'node_uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'uuid': u'aeaf31ed-1552-47c8-8453-fad6a4267def', u'links': [{u'href': u'http://localhost/v1/ports/aeaf31ed-1552-47c8-8453-fad6a4267def', u'rel': u'self'}, {u'href': u'http://localhost/ports/aeaf31ed-1552-47c8-8453-fad6a4267def', u'rel': u'bookmark'}], u'extra': {}, u'created_at': u'2019-06-06T07:02:17.212104+00:00', u'updated_at': None, u'address': u'52:54:00:cf:2d:31'} {15} ironic.tests.unit.api.controllers.v1.test_port.TestListPorts.test_links [0.147245s] ... ok POST: /v1/nodes {'instance_uuid': None, 'uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123', 'driver_info': {'fake_password': 'fakepass', 'foo': 'bar'}, 'extra': {}, 'driver': 'fake-hardware', 'properties': {'memory_mb': '4096', 'cpu_arch': 'x86_64', 'local_gb': '10', 'cpus': '8'}, 'maintenance': False, 'chassis_uuid': 'e74c40e0-d825-11e2-a28f-0800200c9a66', 'instance_info': {'none': None, 'int': 123, 'float': 0.1, 'list': [1, 2], 'bool': True, 'str': 'foo', 'dict': {'cat': 'meow'}}} GOT:Response: 201 Created Content-Type: application/json Location: http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123 Openstack-Request-Id: req-394da926-e1fb-4980-a072-e3ffe57108e4 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"target_power_state": null, "links": [{"href": "http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "rel": "self"}, {"href": "http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "rel": "bookmark"}], "target_provision_state": null, "last_error": null, "updated_at": null, "maintenance_reason": null, "provision_state": null, "uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "console_enabled": false, "extra": {}, "provision_updated_at": null, "maintenance": false, "power_state": null, "driver": "fake-hardware", "reservation": null, "properties": {"memory_mb": "4096", "cpu_arch": "x86_64", "local_gb": "10", "cpus": "8"}, "instance_uuid": null, "driver_info": {"fake_password": "******", "foo": "bar"}, "created_at": "2019-06-06T07:02:15.639861+00:00", "ports": [{"href": "http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports", "rel": "self"}, {"href": "http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports", "rel": "bookmark"}], "chassis_uuid": "e74c40e0-d825-11e2-a28f-0800200c9a66", "instance_info": {"none": null, "int": 123, "float": 0.1, "list": [1, 2], "dict": {"cat": "meow"}, "str": "foo", "bool": true}} GET: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123 {} GOT:{u'target_power_state': None, u'links': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'bookmark'}], u'target_provision_state': None, u'last_error': None, u'updated_at': None, u'maintenance_reason': None, u'provision_state': None, u'uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'console_enabled': False, u'extra': {}, u'provision_updated_at': None, u'maintenance': False, u'power_state': None, u'driver': u'fake-hardware', u'reservation': None, u'properties': {u'memory_mb': u'4096', u'cpu_arch': u'x86_64', u'local_gb': u'10', u'cpus': u'8'}, u'instance_uuid': None, u'driver_info': {u'fake_password': u'******', u'foo': u'bar'}, u'created_at': u'2019-06-06T07:02:15.639861+00:00', u'ports': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'bookmark'}], u'chassis_uuid': u'e74c40e0-d825-11e2-a28f-0800200c9a66', u'instance_info': {u'none': None, u'int': 123, u'float': 0.1, u'list': [1, 2], u'bool': True, u'str': u'foo', u'dict': {u'cat': u'meow'}}} {13} ironic.tests.unit.api.controllers.v1.test_node.TestPost.test_create_node_valid_instance_info [0.728789s] ... ok POST: /v1/portgroups {'node_uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123', 'uuid': '6eb02b44-18a3-4659-8c0b-8d2802581ae4', 'extra': {}, 'standalone_ports_supported': True, 'address': 'AA:AA:AA:11:22:33', 'name': 'foo'} GOT:Response: 201 Created Content-Type: application/json Location: http://localhost/v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4 Openstack-Request-Id: req-c1ed39fa-eac8-4183-9e62-f04b8b586886 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"node_uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "uuid": "6eb02b44-18a3-4659-8c0b-8d2802581ae4", "links": [{"href": "http://localhost/v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4", "rel": "self"}, {"href": "http://localhost/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4", "rel": "bookmark"}], "extra": {}, "created_at": "2019-06-06T07:02:17.147352+00:00", "updated_at": null, "ports": [{"href": "http://localhost/v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4/ports", "rel": "self"}, {"href": "http://localhost/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4/ports", "rel": "bookmark"}], "standalone_ports_supported": true, "mode": "active-backup", "address": "aa:aa:aa:11:22:33", "internal_info": {}, "properties": {}, "name": "foo"} GET: /v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4 {} GOT:{u'node_uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'uuid': u'6eb02b44-18a3-4659-8c0b-8d2802581ae4', u'links': [{u'href': u'http://localhost/v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4', u'rel': u'self'}, {u'href': u'http://localhost/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4', u'rel': u'bookmark'}], u'extra': {}, u'created_at': u'2019-06-06T07:02:17.147352+00:00', u'updated_at': None, u'properties': {}, u'standalone_ports_supported': True, u'mode': u'active-backup', u'address': u'aa:aa:aa:11:22:33', u'internal_info': {}, u'ports': [{u'href': u'http://localhost/v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4/ports', u'rel': u'self'}, {u'href': u'http://localhost/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4/ports', u'rel': u'bookmark'}], u'name': u'foo'} {3} ironic.tests.unit.api.controllers.v1.test_portgroup.TestPost.test_create_portgroup_name_ok [0.123749s] ... ok PUT: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states/power {'target': 'soft power off', 'timeout': 2} GOT:Response: 406 Not Acceptable Content-Type: application/json Openstack-Request-Id: req-deedbde1-19d1-483a-9ca8-dcb2bac0f51e X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.26 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Request not acceptable.\"}"} {16} ironic.tests.unit.api.controllers.v1.test_node.TestPut.test_power_state_soft_power_off_valid_timeout_invalid_soft_ver [0.077662s] ... ok POST: /v1/nodes {'instance_uuid': None, 'uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123', 'driver_info': {'fake_password': 'fakepass', 'foo': 'bar'}, 'extra': {}, 'driver': 'fake-hardware', 'properties': {'memory_mb': '4096', 'cpu_arch': 'x86_64', 'local_gb': '10', 'cpus': '8'}, 'maintenance': False, 'instance_info': {'foo': 'bar', 'image_url': 'http://example.com/test_image_url', 'configdrive': 'TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQ='}} GOT:Response: 201 Created Content-Type: application/json Location: http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123 Openstack-Request-Id: req-a3a90fba-46e6-49c0-a6ee-2c2e0ff9d963 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"target_power_state": null, "links": [{"href": "http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "rel": "self"}, {"href": "http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "rel": "bookmark"}], "target_provision_state": null, "last_error": null, "updated_at": null, "maintenance_reason": null, "provision_state": null, "uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "console_enabled": false, "extra": {}, "provision_updated_at": null, "maintenance": false, "power_state": null, "driver": "fake-hardware", "reservation": null, "properties": {"memory_mb": "4096", "cpu_arch": "x86_64", "local_gb": "10", "cpus": "8"}, "instance_uuid": null, "driver_info": {"fake_password": "******", "foo": "bar"}, "created_at": "2019-06-06T07:02:16.429803+00:00", "ports": [{"href": "http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports", "rel": "self"}, {"href": "http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports", "rel": "bookmark"}], "chassis_uuid": null, "instance_info": {"foo": "bar", "image_url": "******", "configdrive": "******"}} {4} ironic.tests.unit.api.controllers.v1.test_node.TestPost.test_create_node_no_chassis_uuid [0.639302s] ... ok PATCH: /v1/nodes/4a7aa1a8-0664-4957-a457-3a69fc592486 [{'path': '/boot_interface', 'value': 'fake', 'op': 'add'}] GOT:Response: 200 OK Content-Type: application/json Openstack-Request-Id: req-f8c30f4c-6a50-4eb0-9250-0c8646d01d98 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"target_power_state": null, "automated_clean": null, "inspect_interface": null, "links": [{"href": "http://localhost/v1/nodes/4a7aa1a8-0664-4957-a457-3a69fc592486", "rel": "self"}, {"href": "http://localhost/nodes/4a7aa1a8-0664-4957-a457-3a69fc592486", "rel": "bookmark"}], "target_provision_state": null, "deploy_step": {}, "storage_interface": null, "conductor_group": "", "protected_reason": null, "maintenance_reason": null, "states": [{"href": "http://localhost/v1/nodes/4a7aa1a8-0664-4957-a457-3a69fc592486/states", "rel": "self"}, {"href": "http://localhost/nodes/4a7aa1a8-0664-4957-a457-3a69fc592486/states", "rel": "bookmark"}], "traits": [], "provision_state": "available", "clean_step": {}, "vendor_interface": null, "description": null, "uuid": "4a7aa1a8-0664-4957-a457-3a69fc592486", "console_enabled": false, "extra": {}, "raid_config": {}, "provision_updated_at": null, "power_state": null, "last_error": null, "target_raid_config": {}, "network_interface": null, "inspection_started_at": null, "inspection_finished_at": null, "maintenance": false, "conductor": null, "power_interface": null, "driver": "fake-hardware", "updated_at": null, "volume": [{"href": "http://localhost/v1/nodes/4a7aa1a8-0664-4957-a457-3a69fc592486/volume", "rel": "self"}, {"href": "http://localhost/nodes/4a7aa1a8-0664-4957-a457-3a69fc592486/volume", "rel": "bookmark"}], "raid_interface": null, "rescue_interface": null, "boot_interface": null, "reservation": null, "management_interface": null, "properties": {"memory_mb": "4096", "cpu_arch": "x86_64", "local_gb": "10", "cpus": "8"}, "bios_interface": null, "instance_uuid": null, "name": null, "driver_info": {"fake_password": "******", "foo": "bar"}, "resource_class": null, "fault": null, "created_at": "2019-06-06T07:02:15.395687+00:00", "portgroups": [{"href": "http://localhost/v1/nodes/4a7aa1a8-0664-4957-a457-3a69fc592486/portgroups", "rel": "self"}, {"href": "http://localhost/nodes/4a7aa1a8-0664-4957-a457-3a69fc592486/portgroups", "rel": "bookmark"}], "deploy_interface": null, "ports": [{"href": "http://localhost/v1/nodes/4a7aa1a8-0664-4957-a457-3a69fc592486/ports", "rel": "self"}, {"href": "http://localhost/nodes/4a7aa1a8-0664-4957-a457-3a69fc592486/ports", "rel": "bookmark"}], "console_interface": null, "protected": false, "driver_internal_info": {"private_state": "secret value"}, "chassis_uuid": null, "owner": null, "instance_info": {"foo": "bar", "image_url": "******", "configdrive": "******"}, "allocation_uuid": null} PATCH: /v1/nodes/4a7aa1a8-0664-4957-a457-3a69fc592486 [{'path': '/console_interface', 'value': 'fake', 'op': 'add'}] GOT:Response: 200 OK Content-Type: application/json Openstack-Request-Id: req-e54f58ee-d048-4cc0-b722-72b5a5483535 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"target_power_state": null, "automated_clean": null, "inspect_interface": null, "links": [{"href": "http://localhost/v1/nodes/4a7aa1a8-0664-4957-a457-3a69fc592486", "rel": "self"}, {"href": "http://localhost/nodes/4a7aa1a8-0664-4957-a457-3a69fc592486", "rel": "bookmark"}], "target_provision_state": null, "deploy_step": {}, "storage_interface": null, "conductor_group": "", "protected_reason": null, "maintenance_reason": null, "states": [{"href": "http://localhost/v1/nodes/4a7aa1a8-0664-4957-a457-3a69fc592486/states", "rel": "self"}, {"href": "http://localhost/nodes/4a7aa1a8-0664-4957-a457-3a69fc592486/states", "rel": "bookmark"}], "traits": [], "provision_state": "available", "clean_step": {}, "vendor_interface": null, "description": null, "uuid": "4a7aa1a8-0664-4957-a457-3a69fc592486", "console_enabled": false, "extra": {}, "raid_config": {}, "provision_updated_at": null, "power_state": null, "last_error": null, "target_raid_config": {}, "network_interface": null, "inspection_started_at": null, "inspection_finished_at": null, "maintenance": false, "conductor": null, "power_interface": null, "driver": "fake-hardware", "updated_at": null, "volume": [{"href": "http://localhost/v1/nodes/4a7aa1a8-0664-4957-a457-3a69fc592486/volume", "rel": "self"}, {"href": "http://localhost/nodes/4a7aa1a8-0664-4957-a457-3a69fc592486/volume", "rel": "bookmark"}], "raid_interface": null, "rescue_interface": null, "boot_interface": null, "reservation": null, "management_interface": null, "properties": {"memory_mb": "4096", "cpu_arch": "x86_64", "local_gb": "10", "cpus": "8"}, "bios_interface": null, "instance_uuid": null, "name": null, "driver_info": {"fake_password": "******", "foo": "bar"}, "resource_class": null, "fault": null, "created_at": "2019-06-06T07:02:15.395687+00:00", "portgroups": [{"href": "http://localhost/v1/nodes/4a7aa1a8-0664-4957-a457-3a69fc592486/portgroups", "rel": "self"}, {"href": "http://localhost/nodes/4a7aa1a8-0664-4957-a457-3a69fc592486/portgroups", "rel": "bookmark"}], "deploy_interface": null, "ports": [{"href": "http://localhost/v1/nodes/4a7aa1a8-0664-4957-a457-3a69fc592486/ports", "rel": "self"}, {"href": "http://localhost/nodes/4a7aa1a8-0664-4957-a457-3a69fc592486/ports", "rel": "bookmark"}], "console_interface": null, "protected": false, "driver_internal_info": {"private_state": "secret value"}, "chassis_uuid": null, "owner": null, "instance_info": {"foo": "bar", "image_url": "******", "configdrive": "******"}, "allocation_uuid": null} PATCH: /v1/nodes/4a7aa1a8-0664-4957-a457-3a69fc592486 [{'path': '/deploy_interface', 'value': 'fake', 'op': 'add'}] GOT:Response: 200 OK Content-Type: application/json Openstack-Request-Id: req-0ffe203a-a0c5-4ade-867f-c1f3c4373354 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"target_power_state": null, "automated_clean": null, "inspect_interface": null, "links": [{"href": "http://localhost/v1/nodes/4a7aa1a8-0664-4957-a457-3a69fc592486", "rel": "self"}, {"href": "http://localhost/nodes/4a7aa1a8-0664-4957-a457-3a69fc592486", "rel": "bookmark"}], "target_provision_state": null, "deploy_step": {}, "storage_interface": null, "conductor_group": "", "protected_reason": null, "maintenance_reason": null, "states": [{"href": "http://localhost/v1/nodes/4a7aa1a8-0664-4957-a457-3a69fc592486/states", "rel": "self"}, {"href": "http://localhost/nodes/4a7aa1a8-0664-4957-a457-3a69fc592486/states", "rel": "bookmark"}], "traits": [], "provision_state": "available", "clean_step": {}, "vendor_interface": null, "description": null, "uuid": "4a7aa1a8-0664-4957-a457-3a69fc592486", "console_enabled": false, "extra": {}, "raid_config": {}, "provision_updated_at": null, "power_state": null, "last_error": null, "target_raid_config": {}, "network_interface": null, "inspection_started_at": null, "inspection_finished_at": null, "maintenance": false, "conductor": null, "power_interface": null, "driver": "fake-hardware", "updated_at": null, "volume": [{"href": "http://localhost/v1/nodes/4a7aa1a8-0664-4957-a457-3a69fc592486/volume", "rel": "self"}, {"href": "http://localhost/nodes/4a7aa1a8-0664-4957-a457-3a69fc592486/volume", "rel": "bookmark"}], "raid_interface": null, "rescue_interface": null, "boot_interface": null, "reservation": null, "management_interface": null, "properties": {"memory_mb": "4096", "cpu_arch": "x86_64", "local_gb": "10", "cpus": "8"}, "bios_interface": null, "instance_uuid": null, "name": null, "driver_info": {"fake_password": "******", "foo": "bar"}, "resource_class": null, "fault": null, "created_at": "2019-06-06T07:02:15.395687+00:00", "portgroups": [{"href": "http://localhost/v1/nodes/4a7aa1a8-0664-4957-a457-3a69fc592486/portgroups", "rel": "self"}, {"href": "http://localhost/nodes/4a7aa1a8-0664-4957-a457-3a69fc592486/portgroups", "rel": "bookmark"}], "deploy_interface": null, "ports": [{"href": "http://localhost/v1/nodes/4a7aa1a8-0664-4957-a457-3a69fc592486/ports", "rel": "self"}, {"href": "http://localhost/nodes/4a7aa1a8-0664-4957-a457-3a69fc592486/ports", "rel": "bookmark"}], "console_interface": null, "protected": false, "driver_internal_info": {"private_state": "secret value"}, "chassis_uuid": null, "owner": null, "instance_info": {"foo": "bar", "image_url": "******", "configdrive": "******"}, "allocation_uuid": null} PATCH: /v1/nodes/4a7aa1a8-0664-4957-a457-3a69fc592486 [{'path': '/inspect_interface', 'value': 'fake', 'op': 'add'}] GOT:Response: 200 OK Content-Type: application/json Openstack-Request-Id: req-b3fa247f-2062-4155-9231-e6e5e508ab2b X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"target_power_state": null, "automated_clean": null, "inspect_interface": null, "links": [{"href": "http://localhost/v1/nodes/4a7aa1a8-0664-4957-a457-3a69fc592486", "rel": "self"}, {"href": "http://localhost/nodes/4a7aa1a8-0664-4957-a457-3a69fc592486", "rel": "bookmark"}], "target_provision_state": null, "deploy_step": {}, "storage_interface": null, "conductor_group": "", "protected_reason": null, "maintenance_reason": null, "states": [{"href": "http://localhost/v1/nodes/4a7aa1a8-0664-4957-a457-3a69fc592486/states", "rel": "self"}, {"href": "http://localhost/nodes/4a7aa1a8-0664-4957-a457-3a69fc592486/states", "rel": "bookmark"}], "traits": [], "provision_state": "available", "clean_step": {}, "vendor_interface": null, "description": null, "uuid": "4a7aa1a8-0664-4957-a457-3a69fc592486", "console_enabled": false, "extra": {}, "raid_config": {}, "provision_updated_at": null, "power_state": null, "last_error": null, "target_raid_config": {}, "network_interface": null, "inspection_started_at": null, "inspection_finished_at": null, "maintenance": false, "conductor": null, "power_interface": null, "driver": "fake-hardware", "updated_at": null, "volume": [{"href": "http://localhost/v1/nodes/4a7aa1a8-0664-4957-a457-3a69fc592486/volume", "rel": "self"}, {"href": "http://localhost/nodes/4a7aa1a8-0664-4957-a457-3a69fc592486/volume", "rel": "bookmark"}], "raid_interface": null, "rescue_interface": null, "boot_interface": null, "reservation": null, "management_interface": null, "properties": {"memory_mb": "4096", "cpu_arch": "x86_64", "local_gb": "10", "cpus": "8"}, "bios_interface": null, "instance_uuid": null, "name": null, "driver_info": {"fake_password": "******", "foo": "bar"}, "resource_class": null, "fault": null, "created_at": "2019-06-06T07:02:15.395687+00:00", "portgroups": [{"href": "http://localhost/v1/nodes/4a7aa1a8-0664-4957-a457-3a69fc592486/portgroups", "rel": "self"}, {"href": "http://localhost/nodes/4a7aa1a8-0664-4957-a457-3a69fc592486/portgroups", "rel": "bookmark"}], "deploy_interface": null, "ports": [{"href": "http://localhost/v1/nodes/4a7aa1a8-0664-4957-a457-3a69fc592486/ports", "rel": "self"}, {"href": "http://localhost/nodes/4a7aa1a8-0664-4957-a457-3a69fc592486/ports", "rel": "bookmark"}], "console_interface": null, "protected": false, "driver_internal_info": {"private_state": "secret value"}, "chassis_uuid": null, "owner": null, "instance_info": {"foo": "bar", "image_url": "******", "configdrive": "******"}, "allocation_uuid": null} PATCH: /v1/nodes/4a7aa1a8-0664-4957-a457-3a69fc592486 [{'path': '/management_interface', 'value': 'fake', 'op': 'add'}] GOT:Response: 200 OK Content-Type: application/json Openstack-Request-Id: req-b68da98d-de3b-4472-920a-b5efbd3f75b5 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"target_power_state": null, "automated_clean": null, "inspect_interface": null, "links": [{"href": "http://localhost/v1/nodes/4a7aa1a8-0664-4957-a457-3a69fc592486", "rel": "self"}, {"href": "http://localhost/nodes/4a7aa1a8-0664-4957-a457-3a69fc592486", "rel": "bookmark"}], "target_provision_state": null, "deploy_step": {}, "storage_interface": null, "conductor_group": "", "protected_reason": null, "maintenance_reason": null, "states": [{"href": "http://localhost/v1/nodes/4a7aa1a8-0664-4957-a457-3a69fc592486/states", "rel": "self"}, {"href": "http://localhost/nodes/4a7aa1a8-0664-4957-a457-3a69fc592486/states", "rel": "bookmark"}], "traits": [], "provision_state": "available", "clean_step": {}, "vendor_interface": null, "description": null, "uuid": "4a7aa1a8-0664-4957-a457-3a69fc592486", "console_enabled": false, "extra": {}, "raid_config": {}, "provision_updated_at": null, "power_state": null, "last_error": null, "target_raid_config": {}, "network_interface": null, "inspection_started_at": null, "inspection_finished_at": null, "maintenance": false, "conductor": null, "power_interface": null, "driver": "fake-hardware", "updated_at": null, "volume": [{"href": "http://localhost/v1/nodes/4a7aa1a8-0664-4957-a457-3a69fc592486/volume", "rel": "self"}, {"href": "http://localhost/nodes/4a7aa1a8-0664-4957-a457-3a69fc592486/volume", "rel": "bookmark"}], "raid_interface": null, "rescue_interface": null, "boot_interface": null, "reservation": null, "management_interface": null, "properties": {"memory_mb": "4096", "cpu_arch": "x86_64", "local_gb": "10", "cpus": "8"}, "bios_interface": null, "instance_uuid": null, "name": null, "driver_info": {"fake_password": "******", "foo": "bar"}, "resource_class": null, "fault": null, "created_at": "2019-06-06T07:02:15.395687+00:00", "portgroups": [{"href": "http://localhost/v1/nodes/4a7aa1a8-0664-4957-a457-3a69fc592486/portgroups", "rel": "self"}, {"href": "http://localhost/nodes/4a7aa1a8-0664-4957-a457-3a69fc592486/portgroups", "rel": "bookmark"}], "deploy_interface": null, "ports": [{"href": "http://localhost/v1/nodes/4a7aa1a8-0664-4957-a457-3a69fc592486/ports", "rel": "self"}, {"href": "http://localhost/nodes/4a7aa1a8-0664-4957-a457-3a69fc592486/ports", "rel": "bookmark"}], "console_interface": null, "protected": false, "driver_internal_info": {"private_state": "secret value"}, "chassis_uuid": null, "owner": null, "instance_info": {"foo": "bar", "image_url": "******", "configdrive": "******"}, "allocation_uuid": null} PATCH: /v1/nodes/4a7aa1a8-0664-4957-a457-3a69fc592486 [{'path': '/power_interface', 'value': 'fake', 'op': 'add'}] GOT:Response: 200 OK Content-Type: application/json Openstack-Request-Id: req-c26fef28-fe1b-465f-91ba-e5b8d1dcaec2 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"target_power_state": null, "automated_clean": null, "inspect_interface": null, "links": [{"href": "http://localhost/v1/nodes/4a7aa1a8-0664-4957-a457-3a69fc592486", "rel": "self"}, {"href": "http://localhost/nodes/4a7aa1a8-0664-4957-a457-3a69fc592486", "rel": "bookmark"}], "target_provision_state": null, "deploy_step": {}, "storage_interface": null, "conductor_group": "", "protected_reason": null, "maintenance_reason": null, "states": [{"href": "http://localhost/v1/nodes/4a7aa1a8-0664-4957-a457-3a69fc592486/states", "rel": "self"}, {"href": "http://localhost/nodes/4a7aa1a8-0664-4957-a457-3a69fc592486/states", "rel": "bookmark"}], "traits": [], "provision_state": "available", "clean_step": {}, "vendor_interface": null, "description": null, "uuid": "4a7aa1a8-0664-4957-a457-3a69fc592486", "console_enabled": false, "extra": {}, "raid_config": {}, "provision_updated_at": null, "power_state": null, "last_error": null, "target_raid_config": {}, "network_interface": null, "inspection_started_at": null, "inspection_finished_at": null, "maintenance": false, "conductor": null, "power_interface": null, "driver": "fake-hardware", "updated_at": null, "volume": [{"href": "http://localhost/v1/nodes/4a7aa1a8-0664-4957-a457-3a69fc592486/volume", "rel": "self"}, {"href": "http://localhost/nodes/4a7aa1a8-0664-4957-a457-3a69fc592486/volume", "rel": "bookmark"}], "raid_interface": null, "rescue_interface": null, "boot_interface": null, "reservation": null, "management_interface": null, "properties": {"memory_mb": "4096", "cpu_arch": "x86_64", "local_gb": "10", "cpus": "8"}, "bios_interface": null, "instance_uuid": null, "name": null, "driver_info": {"fake_password": "******", "foo": "bar"}, "resource_class": null, "fault": null, "created_at": "2019-06-06T07:02:15.395687+00:00", "portgroups": [{"href": "http://localhost/v1/nodes/4a7aa1a8-0664-4957-a457-3a69fc592486/portgroups", "rel": "self"}, {"href": "http://localhost/nodes/4a7aa1a8-0664-4957-a457-3a69fc592486/portgroups", "rel": "bookmark"}], "deploy_interface": null, "ports": [{"href": "http://localhost/v1/nodes/4a7aa1a8-0664-4957-a457-3a69fc592486/ports", "rel": "self"}, {"href": "http://localhost/nodes/4a7aa1a8-0664-4957-a457-3a69fc592486/ports", "rel": "bookmark"}], "console_interface": null, "protected": false, "driver_internal_info": {"private_state": "secret value"}, "chassis_uuid": null, "owner": null, "instance_info": {"foo": "bar", "image_url": "******", "configdrive": "******"}, "allocation_uuid": null} PATCH: /v1/nodes/4a7aa1a8-0664-4957-a457-3a69fc592486 [{'path': '/raid_interface', 'value': 'fake', 'op': 'add'}] GOT:Response: 200 OK Content-Type: application/json Openstack-Request-Id: req-e1e6d24f-8d38-4f9f-bf81-e73191586de6 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"target_power_state": null, "automated_clean": null, "inspect_interface": null, "links": [{"href": "http://localhost/v1/nodes/4a7aa1a8-0664-4957-a457-3a69fc592486", "rel": "self"}, {"href": "http://localhost/nodes/4a7aa1a8-0664-4957-a457-3a69fc592486", "rel": "bookmark"}], "target_provision_state": null, "deploy_step": {}, "storage_interface": null, "conductor_group": "", "protected_reason": null, "maintenance_reason": null, "states": [{"href": "http://localhost/v1/nodes/4a7aa1a8-0664-4957-a457-3a69fc592486/states", "rel": "self"}, {"href": "http://localhost/nodes/4a7aa1a8-0664-4957-a457-3a69fc592486/states", "rel": "bookmark"}], "traits": [], "provision_state": "available", "clean_step": {}, "vendor_interface": null, "description": null, "uuid": "4a7aa1a8-0664-4957-a457-3a69fc592486", "console_enabled": false, "extra": {}, "raid_config": {}, "provision_updated_at": null, "power_state": null, "last_error": null, "target_raid_config": {}, "network_interface": null, "inspection_started_at": null, "inspection_finished_at": null, "maintenance": false, "conductor": null, "power_interface": null, "driver": "fake-hardware", "updated_at": null, "volume": [{"href": "http://localhost/v1/nodes/4a7aa1a8-0664-4957-a457-3a69fc592486/volume", "rel": "self"}, {"href": "http://localhost/nodes/4a7aa1a8-0664-4957-a457-3a69fc592486/volume", "rel": "bookmark"}], "raid_interface": null, "rescue_interface": null, "boot_interface": null, "reservation": null, "management_interface": null, "properties": {"memory_mb": "4096", "cpu_arch": "x86_64", "local_gb": "10", "cpus": "8"}, "bios_interface": null, "instance_uuid": null, "name": null, "driver_info": {"fake_password": "******", "foo": "bar"}, "resource_class": null, "fault": null, "created_at": "2019-06-06T07:02:15.395687+00:00", "portgroups": [{"href": "http://localhost/v1/nodes/4a7aa1a8-0664-4957-a457-3a69fc592486/portgroups", "rel": "self"}, {"href": "http://localhost/nodes/4a7aa1a8-0664-4957-a457-3a69fc592486/portgroups", "rel": "bookmark"}], "deploy_interface": null, "ports": [{"href": "http://localhost/v1/nodes/4a7aa1a8-0664-4957-a457-3a69fc592486/ports", "rel": "self"}, {"href": "http://localhost/nodes/4a7aa1a8-0664-4957-a457-3a69fc592486/ports", "rel": "bookmark"}], "console_interface": null, "protected": false, "driver_internal_info": {"private_state": "secret value"}, "chassis_uuid": null, "owner": null, "instance_info": {"foo": "bar", "image_url": "******", "configdrive": "******"}, "allocation_uuid": null} PATCH: /v1/nodes/4a7aa1a8-0664-4957-a457-3a69fc592486 [{'path': '/vendor_interface', 'value': 'fake', 'op': 'add'}] GOT:Response: 200 OK Content-Type: application/json Openstack-Request-Id: req-6eeac433-f137-4506-8941-2fa4330fef37 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"target_power_state": null, "automated_clean": null, "inspect_interface": null, "links": [{"href": "http://localhost/v1/nodes/4a7aa1a8-0664-4957-a457-3a69fc592486", "rel": "self"}, {"href": "http://localhost/nodes/4a7aa1a8-0664-4957-a457-3a69fc592486", "rel": "bookmark"}], "target_provision_state": null, "deploy_step": {}, "storage_interface": null, "conductor_group": "", "protected_reason": null, "maintenance_reason": null, "states": [{"href": "http://localhost/v1/nodes/4a7aa1a8-0664-4957-a457-3a69fc592486/states", "rel": "self"}, {"href": "http://localhost/nodes/4a7aa1a8-0664-4957-a457-3a69fc592486/states", "rel": "bookmark"}], "traits": [], "provision_state": "available", "clean_step": {}, "vendor_interface": null, "description": null, "uuid": "4a7aa1a8-0664-4957-a457-3a69fc592486", "console_enabled": false, "extra": {}, "raid_config": {}, "provision_updated_at": null, "power_state": null, "last_error": null, "target_raid_config": {}, "network_interface": null, "inspection_started_at": null, "inspection_finished_at": null, "maintenance": false, "conductor": null, "power_interface": null, "driver": "fake-hardware", "updated_at": null, "volume": [{"href": "http://localhost/v1/nodes/4a7aa1a8-0664-4957-a457-3a69fc592486/volume", "rel": "self"}, {"href": "http://localhost/nodes/4a7aa1a8-0664-4957-a457-3a69fc592486/volume", "rel": "bookmark"}], "raid_interface": null, "rescue_interface": null, "boot_interface": null, "reservation": null, "management_interface": null, "properties": {"memory_mb": "4096", "cpu_arch": "x86_64", "local_gb": "10", "cpus": "8"}, "bios_interface": null, "instance_uuid": null, "name": null, "driver_info": {"fake_password": "******", "foo": "bar"}, "resource_class": null, "fault": null, "created_at": "2019-06-06T07:02:15.395687+00:00", "portgroups": [{"href": "http://localhost/v1/nodes/4a7aa1a8-0664-4957-a457-3a69fc592486/portgroups", "rel": "self"}, {"href": "http://localhost/nodes/4a7aa1a8-0664-4957-a457-3a69fc592486/portgroups", "rel": "bookmark"}], "deploy_interface": null, "ports": [{"href": "http://localhost/v1/nodes/4a7aa1a8-0664-4957-a457-3a69fc592486/ports", "rel": "self"}, {"href": "http://localhost/nodes/4a7aa1a8-0664-4957-a457-3a69fc592486/ports", "rel": "bookmark"}], "console_interface": null, "protected": false, "driver_internal_info": {"private_state": "secret value"}, "chassis_uuid": null, "owner": null, "instance_info": {"foo": "bar", "image_url": "******", "configdrive": "******"}, "allocation_uuid": null} {18} ironic.tests.unit.api.controllers.v1.test_node.TestPatch.test_update_interface_fields [1.799805s] ... ok GET: /v1/portgroups?node=test-node {} GOT:{u'portgroups': [{u'address': u'52:54:00:cf:2d:30', u'uuid': u'da81b199-62bc-4cf0-8bdf-4c1a71fad850', u'links': [{u'href': u'http://localhost/v1/portgroups/da81b199-62bc-4cf0-8bdf-4c1a71fad850', u'rel': u'self'}, {u'href': u'http://localhost/portgroups/da81b199-62bc-4cf0-8bdf-4c1a71fad850', u'rel': u'bookmark'}], u'name': u'portgroup0'}, {u'address': u'52:54:00:cf:2d:31', u'uuid': u'dc368578-acaf-4862-9e7a-103f3e67198a', u'links': [{u'href': u'http://localhost/v1/portgroups/dc368578-acaf-4862-9e7a-103f3e67198a', u'rel': u'self'}, {u'href': u'http://localhost/portgroups/dc368578-acaf-4862-9e7a-103f3e67198a', u'rel': u'bookmark'}], u'name': u'portgroup1'}, {u'address': u'52:54:00:cf:2d:32', u'uuid': u'2097ee67-891b-4542-ac19-b96b0cd73e23', u'links': [{u'href': u'http://localhost/v1/portgroups/2097ee67-891b-4542-ac19-b96b0cd73e23', u'rel': u'self'}, {u'href': u'http://localhost/portgroups/2097ee67-891b-4542-ac19-b96b0cd73e23', u'rel': u'bookmark'}], u'name': u'portgroup2'}]} {27} ironic.tests.unit.api.controllers.v1.test_portgroup.TestListPortgroups.test_get_all_by_node_name_ok [0.132919s] ... ok PUT: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states/power {'target': 'power on'} GOT:Response: 202 Accepted Location: http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states Openstack-Request-Id: req-7e469db0-d6cf-4938-b9db-72cec0bdca35 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {13} ironic.tests.unit.api.controllers.v1.test_node.TestPut.test_power_state_power_on_no_timeout_no_ver [0.132855s] ... ok PATCH: /v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 [{'path': '/extra/foo1', 'value': 'bar1x', 'op': 'replace'}, {'path': '/extra/foo2', 'value': 'bar2x', 'op': 'replace'}, {'path': '/extra/foo3', 'value': 'bar3x', 'op': 'replace'}] GOT:Response: 200 OK Content-Type: application/json Openstack-Request-Id: req-39b49b04-ca4d-4f3e-847f-e667db0b6115 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"node_uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "links": [{"href": "http://localhost/v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "rel": "self"}, {"href": "http://localhost/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "rel": "bookmark"}], "extra": {"foo1": "bar1x", "foo2": "bar2x", "foo3": "bar3x"}, "created_at": "2019-06-06T07:02:17.698875+00:00", "updated_at": "2019-06-06T07:02:17.768901+00:00", "address": "52:54:00:cf:2d:31"} {14} ironic.tests.unit.api.controllers.v1.test_port.TestPatch.test_replace_multi [0.130331s] ... ok {14} ironic.tests.unit.api.controllers.v1.test_port.TestPortsController__CheckAllowedPortFields.test__check_allowed_port_fields_empty [0.023168s] ... ok PUT: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states/provision {'target': 'active', 'configdrive': 'foo'} GOT:Response: 202 Accepted Location: http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states Openstack-Request-Id: req-486af15a-d0ef-4af0-b60d-67b4128a0155 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {16} ironic.tests.unit.api.controllers.v1.test_node.TestPut.test_provision_with_deploy_configdrive [0.060739s] ... ok PATCH: /v1/volume/targets/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 [{'path': '/extra/foo1', 'value': 'bar1x', 'op': 'replace'}, {'path': '/extra/foo2', 'value': 'bar2x', 'op': 'replace'}, {'path': '/extra/foo3', 'value': 'bar3x', 'op': 'replace'}] GOT:Response: 200 OK Content-Type: application/json Openstack-Request-Id: req-743f49c1-cbe0-478b-8ac8-f33b743aa6f2 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"boot_index": 0, "uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "links": [{"href": "http://localhost/v1/volume/targets/1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "rel": "self"}, {"href": "http://localhost/volume/targets/1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "rel": "bookmark"}], "extra": {"foo1": "bar1x", "foo2": "bar2x", "foo3": "bar3x"}, "created_at": "2019-06-06T07:02:17.872951+00:00", "updated_at": "2019-06-06T07:02:17.879664+00:00", "volume_type": "iscsi", "node_uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "volume_id": "12345678", "properties": {"target_iqn": "iqn.foo"}} {30} ironic.tests.unit.api.controllers.v1.test_volume_target.TestPatch.test_replace_multi [0.119760s] ... ok PATCH: /v1/volume/connectors/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 [{'path': '/extra/foo1', 'op': 'remove'}] GOT:Response: 200 OK Content-Type: application/json Openstack-Request-Id: req-9eae3646-c875-4760-82ed-05432842b300 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"node_uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "links": [{"href": "http://localhost/v1/volume/connectors/1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "rel": "self"}, {"href": "http://localhost/volume/connectors/1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "rel": "bookmark"}], "extra": {"foo2": "bar2", "foo3": "bar3"}, "created_at": "2019-06-06T07:02:18.052132+00:00", "updated_at": "2019-06-06T07:02:18.059420+00:00", "connector_id": "iqn.2012-06.com.example:initiator", "type": "iqn"} PATCH: /v1/volume/connectors/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 [{'path': '/extra', 'op': 'remove'}] GOT:Response: 200 OK Content-Type: application/json Openstack-Request-Id: req-e7d03264-3d43-4334-9e8d-c3e830dfdad1 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"node_uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "links": [{"href": "http://localhost/v1/volume/connectors/1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "rel": "self"}, {"href": "http://localhost/volume/connectors/1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "rel": "bookmark"}], "extra": {}, "created_at": "2019-06-06T07:02:18.052132+00:00", "updated_at": "2019-06-06T07:02:18.059420+00:00", "connector_id": "iqn.2012-06.com.example:initiator", "type": "iqn"} {7} ironic.tests.unit.api.controllers.v1.test_volume_connector.TestPatch.test_remove_multi [0.173731s] ... ok POST: /v1/ports {'local_link_connection': {'switch_info': 'switch1', 'port_id': 'Ethernet3/1', 'switch_id': '0a:1b:2c:3d:4e:5f'}, 'node_uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123', 'uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c781', 'extra': {'vif_port_id': 'f506bef2-625b-4073-b8a6-bd4719258f36'}, 'pxe_enabled': True, 'physical_network': None, 'address': '52:54:00:cf:2d:31', 'is_smartnic': False} GOT:Response: 201 Created Content-Type: application/json Location: http://localhost/v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 Openstack-Request-Id: req-7fa38d7a-2204-4877-a843-26e3456e786d X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"local_link_connection": {"switch_info": "switch1", "port_id": "Ethernet3/1", "switch_id": "0a:1b:2c:3d:4e:5f"}, "node_uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "links": [{"href": "http://localhost/v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "rel": "self"}, {"href": "http://localhost/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "rel": "bookmark"}], "extra": {"vif_port_id": "f506bef2-625b-4073-b8a6-bd4719258f36"}, "pxe_enabled": true, "portgroup_uuid": null, "updated_at": null, "physical_network": null, "address": "52:54:00:cf:2d:31", "internal_info": {"tenant_vif_port_id": "f506bef2-625b-4073-b8a6-bd4719258f36"}, "created_at": "2019-06-06T07:02:17.071058+00:00", "is_smartnic": false} {31} ironic.tests.unit.api.controllers.v1.test_port.TestPost.test_create_port_vif_pxe_noportgroup [0.121239s] ... ok GET: /v1/lookup?addresses=11:22:33:44:55:66,66:55:44:33:22:11&node_uuid=db8fa404-afd4-45f0-b327-1d07f24c098e {} GOT:{u'node': {u'instance_info': {u'foo': u'bar', u'image_url': u'******', u'configdrive': u'******'}, u'uuid': u'db8fa404-afd4-45f0-b327-1d07f24c098e', u'driver_internal_info': {u'private_state': u'secret value'}, u'links': [{u'href': u'http://localhost/v1/nodes/db8fa404-afd4-45f0-b327-1d07f24c098e', u'rel': u'self'}, {u'href': u'http://localhost/nodes/db8fa404-afd4-45f0-b327-1d07f24c098e', u'rel': u'bookmark'}], u'properties': {u'memory_mb': u'4096', u'cpu_arch': u'x86_64', u'local_gb': u'10', u'cpus': u'8'}}, u'config': {u'metrics': {u'prepend_host': False, u'prepend_uuid': False, u'backend': u'statsd', u'prepend_host_reverse': True, u'global_prefix': None}, u'heartbeat_timeout': 300, u'metrics_statsd': {u'statsd_port': 8125, u'statsd_host': u'localhost'}}} GET: /v1/lookup?addresses=11:22:33:44:55:66,66:55:44:33:22:11&node_uuid=db8fa404-afd4-45f0-b327-1d07f24c098e {} GOT:{u'node': {u'instance_info': {u'foo': u'bar', u'image_url': u'******', u'configdrive': u'******'}, u'uuid': u'db8fa404-afd4-45f0-b327-1d07f24c098e', u'driver_internal_info': {u'private_state': u'secret value'}, u'links': [{u'href': u'http://localhost/v1/nodes/db8fa404-afd4-45f0-b327-1d07f24c098e', u'rel': u'self'}, {u'href': u'http://localhost/nodes/db8fa404-afd4-45f0-b327-1d07f24c098e', u'rel': u'bookmark'}], u'properties': {u'memory_mb': u'4096', u'cpu_arch': u'x86_64', u'local_gb': u'10', u'cpus': u'8'}}, u'config': {u'metrics': {u'prepend_host': False, u'prepend_uuid': False, u'backend': u'statsd', u'prepend_host_reverse': True, u'global_prefix': None}, u'heartbeat_timeout': 300, u'metrics_statsd': {u'statsd_port': 8125, u'statsd_host': u'localhost'}}} GET: /v1/lookup?addresses=11:22:33:44:55:66,66:55:44:33:22:11&node_uuid=db8fa404-afd4-45f0-b327-1d07f24c098e {} GOT:{u'node': {u'instance_info': {u'foo': u'bar', u'image_url': u'******', u'configdrive': u'******'}, u'uuid': u'db8fa404-afd4-45f0-b327-1d07f24c098e', u'driver_internal_info': {u'private_state': u'secret value'}, u'links': [{u'href': u'http://localhost/v1/nodes/db8fa404-afd4-45f0-b327-1d07f24c098e', u'rel': u'self'}, {u'href': u'http://localhost/nodes/db8fa404-afd4-45f0-b327-1d07f24c098e', u'rel': u'bookmark'}], u'properties': {u'memory_mb': u'4096', u'cpu_arch': u'x86_64', u'local_gb': u'10', u'cpus': u'8'}}, u'config': {u'metrics': {u'prepend_host': False, u'prepend_uuid': False, u'backend': u'statsd', u'prepend_host_reverse': True, u'global_prefix': None}, u'heartbeat_timeout': 300, u'metrics_statsd': {u'statsd_port': 8125, u'statsd_host': u'localhost'}}} {26} ironic.tests.unit.api.controllers.v1.test_ramdisk.TestLookup.test_fast_deploy_lookup [0.152701s] ... ok {26} ironic.tests.unit.api.controllers.v1.test_types.TestJsonPatchType.test_cannot_replace_with_no_value [0.038345s] ... ok {26} ironic.tests.unit.api.controllers.v1.test_types.TestListType.test_list_type [0.015929s] ... ok {26} ironic.tests.unit.api.controllers.v1.test_utils.TestApiUtils.test_check_allow_inspect_verbs [0.017318s] ... ok {26} ironic.tests.unit.api.controllers.v1.test_utils.TestApiUtils.test_check_allow_unknown_verbs [0.017880s] ... ok POST: /v1/ports {'local_link_connection': {'hostname': 'host1', 'port_id': 'rep0-0'}, 'node_uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123', 'uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c781', 'extra': {}, 'pxe_enabled': True, 'portgroup_uuid': '6eb02b44-18a3-4659-8c0b-8d2802581ae4', 'physical_network': None, 'address': '52:54:00:cf:2d:31', 'is_smartnic': True} GOT:Response: 201 Created Content-Type: application/json Location: http://localhost/v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 Openstack-Request-Id: req-dd0e99cb-41f7-4151-a1bc-c6c4c4ac3cca X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"local_link_connection": {"hostname": "host1", "port_id": "rep0-0"}, "node_uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "links": [{"href": "http://localhost/v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "rel": "self"}, {"href": "http://localhost/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "rel": "bookmark"}], "extra": {}, "pxe_enabled": true, "portgroup_uuid": "6eb02b44-18a3-4659-8c0b-8d2802581ae4", "updated_at": null, "physical_network": null, "address": "52:54:00:cf:2d:31", "internal_info": {}, "created_at": "2019-06-06T07:02:17.636926+00:00", "is_smartnic": true} {29} ironic.tests.unit.api.controllers.v1.test_port.TestPost.test_create_port_with_is_smartnic [0.157212s] ... ok GET: /v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4 {} GOT:Response: 404 Not Found Content-Type: application/json {"error_message": "{\"code\": 404, \"description\": \"\", \"title\": \"Not Found\"}"} {14} ironic.tests.unit.api.controllers.v1.test_portgroup.TestListPortgroups.test_get_one_invalid_api_version [0.052228s] ... ok POST: /v1/nodes {'instance_uuid': None, 'uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123', 'driver_info': {'fake_password': 'fakepass', 'foo': 'bar'}, 'extra': {}, 'conductor_group': 'foo', 'driver': 'fake-hardware', 'properties': {'memory_mb': '4096', 'cpu_arch': 'x86_64', 'local_gb': '10', 'cpus': '8'}, 'maintenance': False, 'chassis_uuid': 'e74c40e0-d825-11e2-a28f-0800200c9a66', 'instance_info': {'foo': 'bar', 'image_url': 'http://example.com/test_image_url', 'configdrive': 'TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQ='}} GOT:Response: 201 Created Content-Type: application/json Location: http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123 Openstack-Request-Id: req-7e0323b7-1682-47d8-a1f2-eddafbc72a53 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.46 {"target_power_state": null, "inspect_interface": "fake", "links": [{"href": "http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "rel": "self"}, {"href": "http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "rel": "bookmark"}], "target_provision_state": null, "deploy_step": {}, "storage_interface": "noop", "conductor_group": "foo", "updated_at": null, "maintenance_reason": null, "states": [{"href": "http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states", "rel": "self"}, {"href": "http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states", "rel": "bookmark"}], "traits": [], "provision_state": "enroll", "clean_step": {}, "vendor_interface": "fake", "uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "console_enabled": false, "extra": {}, "raid_config": {}, "provision_updated_at": null, "power_state": null, "last_error": null, "target_raid_config": {}, "network_interface": "flat", "inspection_started_at": null, "inspection_finished_at": null, "maintenance": false, "power_interface": "fake", "driver": "fake-hardware", "volume": [{"href": "http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/volume", "rel": "self"}, {"href": "http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/volume", "rel": "bookmark"}], "raid_interface": "fake", "rescue_interface": "fake", "boot_interface": "fake", "reservation": null, "management_interface": "fake", "properties": {"memory_mb": "4096", "cpu_arch": "x86_64", "local_gb": "10", "cpus": "8"}, "bios_interface": "fake", "instance_uuid": null, "name": null, "driver_info": {"fake_password": "******", "foo": "bar"}, "resource_class": null, "fault": null, "created_at": "2019-06-06T07:02:16.070360+00:00", "portgroups": [{"href": "http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/portgroups", "rel": "self"}, {"href": "http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/portgroups", "rel": "bookmark"}], "deploy_interface": "fake", "ports": [{"href": "http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports", "rel": "self"}, {"href": "http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports", "rel": "bookmark"}], "console_interface": "fake", "driver_internal_info": {}, "chassis_uuid": "e74c40e0-d825-11e2-a28f-0800200c9a66", "instance_info": {"foo": "bar", "image_url": "******", "configdrive": "******"}} GET: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123 {} GOT:{u'target_power_state': None, u'inspect_interface': u'fake', u'links': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'bookmark'}], u'target_provision_state': None, u'deploy_step': {}, u'storage_interface': u'noop', u'conductor_group': u'foo', u'updated_at': None, u'maintenance_reason': None, u'states': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states', u'rel': u'bookmark'}], u'traits': [], u'provision_state': u'enroll', u'clean_step': {}, u'vendor_interface': u'fake', u'uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'console_enabled': False, u'extra': {}, u'raid_config': {}, u'provision_updated_at': None, u'power_state': None, u'last_error': None, u'target_raid_config': {}, u'network_interface': u'flat', u'inspection_started_at': None, u'inspection_finished_at': None, u'maintenance': False, u'driver': u'fake-hardware', u'power_interface': u'fake', u'volume': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/volume', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/volume', u'rel': u'bookmark'}], u'raid_interface': u'fake', u'rescue_interface': u'fake', u'boot_interface': u'fake', u'reservation': None, u'management_interface': u'fake', u'properties': {u'memory_mb': u'4096', u'cpu_arch': u'x86_64', u'local_gb': u'10', u'cpus': u'8'}, u'bios_interface': u'fake', u'instance_uuid': None, u'name': None, u'driver_info': {u'fake_password': u'******', u'foo': u'bar'}, u'resource_class': None, u'fault': None, u'created_at': u'2019-06-06T07:02:16.070360+00:00', u'portgroups': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/portgroups', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/portgroups', u'rel': u'bookmark'}], u'deploy_interface': u'fake', u'instance_info': {u'foo': u'bar', u'image_url': u'******', u'configdrive': u'******'}, u'console_interface': u'fake', u'driver_internal_info': {}, u'chassis_uuid': u'e74c40e0-d825-11e2-a28f-0800200c9a66', u'ports': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'bookmark'}]} {20} ironic.tests.unit.api.controllers.v1.test_node.TestPost.test_create_node_specify_conductor_group [0.287855s] ... ok GET: /v1/portgroups {} GOT:{u'portgroups': [{u'address': u'52:54:00:cf:2d:31', u'uuid': u'6eb02b44-18a3-4659-8c0b-8d2802581ae4', u'links': [{u'href': u'http://localhost/v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4', u'rel': u'self'}, {u'href': u'http://localhost/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4', u'rel': u'bookmark'}], u'name': u'fooname'}]} {27} ironic.tests.unit.api.controllers.v1.test_portgroup.TestListPortgroups.test_one [0.087536s] ... ok PUT: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states/provision {'target': 'active'} GOT:Response: 409 Conflict Content-Type: application/json Openstack-Request-Id: req-bbfc168d-3b2c-4892-90f9-e99b93af6596 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Node 1be26c0b-03f2-4d2e-ae87-c02d7f33c123 is locked by host fake-host, please retry after the current operation is completed.\"}"} {4} ironic.tests.unit.api.controllers.v1.test_node.TestPut.test_provision_already_in_progress [0.120322s] ... ok PUT: /v1/nodes/node-39/maintenance {'reason': 'fake_reason'} GOT:Response: 202 Accepted Openstack-Request-Id: req-4dc610b7-cc38-4a2d-a4f7-f67edaa69a91 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.5 {16} ironic.tests.unit.api.controllers.v1.test_node.TestPut.test_set_node_maintenance_mode_by_name [0.056220s] ... ok GET: /v1/lookup?node_uuid=24111d53-289e-42b3-a0b5-7894422da3d0 {} GOT:{u'node': {u'instance_info': {u'foo': u'bar', u'image_url': u'******', u'configdrive': u'******'}, u'uuid': u'24111d53-289e-42b3-a0b5-7894422da3d0', u'driver_internal_info': {u'private_state': u'secret value'}, u'links': [{u'href': u'http://localhost/v1/nodes/24111d53-289e-42b3-a0b5-7894422da3d0', u'rel': u'self'}, {u'href': u'http://localhost/nodes/24111d53-289e-42b3-a0b5-7894422da3d0', u'rel': u'bookmark'}], u'properties': {u'memory_mb': u'4096', u'cpu_arch': u'x86_64', u'local_gb': u'10', u'cpus': u'8'}}, u'config': {u'metrics': {u'prepend_host': False, u'prepend_uuid': False, u'backend': u'statsd', u'prepend_host_reverse': True, u'global_prefix': None}, u'heartbeat_timeout': 300, u'metrics_statsd': {u'statsd_port': 8125, u'statsd_host': u'localhost'}}} {3} ironic.tests.unit.api.controllers.v1.test_ramdisk.TestLookup.test_found_by_only_uuid [0.094968s] ... ok DELETE: /v1/nodes/node-39/traits/CUSTOM_12 GOT:Response: 404 Not Found Content-Type: application/json Openstack-Request-Id: req-dafa6156-a56c-4529-bdbe-9d37fecea83b X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.37 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Node 1be26c0b-03f2-4d2e-ae87-c02d7f33c123 doesn't have a trait 'CUSTOM_12'\"}"} {13} ironic.tests.unit.api.controllers.v1.test_node.TestTraits.test_delete_trait_fails_if_trait_not_found [0.107342s] ... ok {3} ironic.tests.unit.api.controllers.v1.test_types.TestEventType.test_missing_mandatory_fields_network_port_event [0.016544s] ... ok {3} ironic.tests.unit.api.controllers.v1.test_utils.TestApiUtils.test_check_allow_inspect_verbs_fail [0.019835s] ... ok {3} ironic.tests.unit.api.controllers.v1.test_utils.TestApiUtils.test_check_allow_provide_verbs [0.018353s] ... ok {3} ironic.tests.unit.api.controllers.v1.test_utils.TestApiUtils.test_get_patch_values_no_path [0.015841s] ... ok {3} ironic.tests.unit.api.controllers.v1.test_utils.TestVendorPassthru.test_driver_vendor_passthru_sync [0.018138s] ... ok GET: /v1/volume/connectors?sort_key=uuid {} GOT:{u'connectors': [{u'node_uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'type': u'iqn', u'uuid': u'686b7854-8e07-4812-a754-245bfce19940', u'links': [{u'href': u'http://localhost/v1/volume/connectors/686b7854-8e07-4812-a754-245bfce19940', u'rel': u'self'}, {u'href': u'http://localhost/volume/connectors/686b7854-8e07-4812-a754-245bfce19940', u'rel': u'bookmark'}], u'connector_id': u'test-connector_id-0'}, {u'node_uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'type': u'iqn', u'uuid': u'a7c1da2c-b1ab-4027-9b8c-75a83d0c495d', u'links': [{u'href': u'http://localhost/v1/volume/connectors/a7c1da2c-b1ab-4027-9b8c-75a83d0c495d', u'rel': u'self'}, {u'href': u'http://localhost/volume/connectors/a7c1da2c-b1ab-4027-9b8c-75a83d0c495d', u'rel': u'bookmark'}], u'connector_id': u'test-connector_id-2'}, {u'node_uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'type': u'iqn', u'uuid': u'd2f8c065-635b-4700-8b80-9123b1f2dd8b', u'links': [{u'href': u'http://localhost/v1/volume/connectors/d2f8c065-635b-4700-8b80-9123b1f2dd8b', u'rel': u'self'}, {u'href': u'http://localhost/volume/connectors/d2f8c065-635b-4700-8b80-9123b1f2dd8b', u'rel': u'bookmark'}], u'connector_id': u'test-connector_id-1'}]} {22} ironic.tests.unit.api.controllers.v1.test_volume_connector.TestListVolumeConnectors.test_sort_key [0.131381s] ... ok DELETE: /v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 GOT:Response: 204 No Content Openstack-Request-Id: req-979b3c98-b4b2-4cc3-8910-6cb8fa203c5d X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {16} ironic.tests.unit.api.controllers.v1.test_port.TestDelete.test_delete_port_byid [0.074016s] ... ok GET: /v1/volume/targets?detail=True {} GOT:{u'targets': [{u'boot_index': 0, u'uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c781', u'links': [{u'href': u'http://localhost/v1/volume/targets/1be26c0b-03f2-4d2e-ae87-c02d7f33c781', u'rel': u'self'}, {u'href': u'http://localhost/volume/targets/1be26c0b-03f2-4d2e-ae87-c02d7f33c781', u'rel': u'bookmark'}], u'extra': {}, u'created_at': u'2019-06-06T07:02:18.221382+00:00', u'updated_at': None, u'volume_type': u'iscsi', u'node_uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'volume_id': u'12345678', u'properties': {u'target_iqn': u'iqn.foo'}}]} {7} ironic.tests.unit.api.controllers.v1.test_volume_target.TestListVolumeTargets.test_detail [0.072501s] ... ok PATCH: /v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4 [{'path': '/uuid', 'op': 'remove'}] GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-c902c546-04fd-45fe-9b90-1ce2195fce43 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"'/uuid' is an internal attribute and can not be updated\"}"} {31} ironic.tests.unit.api.controllers.v1.test_portgroup.TestPatch.test_remove_uuid [0.064186s] ... ok PATCH: /v1/volume/connectors/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 [{'path': '/node_uuid', 'value': 123, 'op': 'replace'}] GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-8d518194-65ed-4345-a25a-bd56076a1022 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Expected a UUID for node_uuid, but received 123.\"}"} {26} ironic.tests.unit.api.controllers.v1.test_volume_connector.TestPatch.test_replace_node_uuid_invalid_type [0.047765s] ... ok GET: /v1/portgroups/eeeeeeee-cccc-aaaa-bbbb-cccccccccccc/ports {} GOT:Response: 404 Not Found Content-Type: application/json Openstack-Request-Id: req-683a695a-513e-4630-b007-bb0337a29d03 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Portgroup eeeeeeee-cccc-aaaa-bbbb-cccccccccccc could not be found.\"}"} PUT: /v1/nodes/node-39/states/console {'enabled': 'true'} GOT:Response: 404 Not Found Content-Type: application/json Openstack-Request-Id: req-b905a57f-99ef-42f5-af15-ff75070d82df X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Node node-39 could not be found.\"}"} {27} ironic.tests.unit.api.controllers.v1.test_portgroup.TestListPortgroups.test_ports_subresource_portgroup_not_found [0.063011s] ... ok {4} ironic.tests.unit.api.controllers.v1.test_node.TestPut.test_set_console_by_name_unsupported [0.068784s] ... ok GET: /v1/ports/2905ec61-6f65-4ca7-ad29-cae603a918dd {} GOT:{u'node_uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'uuid': u'2905ec61-6f65-4ca7-ad29-cae603a918dd', u'links': [{u'href': u'http://foo/v1/ports/2905ec61-6f65-4ca7-ad29-cae603a918dd', u'rel': u'self'}, {u'href': u'http://foo/ports/2905ec61-6f65-4ca7-ad29-cae603a918dd', u'rel': u'bookmark'}], u'extra': {}, u'created_at': u'2019-06-06T07:02:17.361805+00:00', u'updated_at': None, u'address': u'52:54:00:cf:2d:31'} GET: /v1/ports/2905ec61-6f65-4ca7-ad29-cae603a918dd {} GOT:{u'node_uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'uuid': u'2905ec61-6f65-4ca7-ad29-cae603a918dd', u'links': [{u'href': u'http://foo/v1/ports/2905ec61-6f65-4ca7-ad29-cae603a918dd', u'rel': u'self'}, {u'href': u'http://foo/ports/2905ec61-6f65-4ca7-ad29-cae603a918dd', u'rel': u'bookmark'}], u'extra': {}, u'created_at': u'2019-06-06T07:02:17.361805+00:00', u'updated_at': None, u'address': u'52:54:00:cf:2d:31'} GET: /ports/2905ec61-6f65-4ca7-ad29-cae603a918dd {} GOT:{u'node_uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'uuid': u'2905ec61-6f65-4ca7-ad29-cae603a918dd', u'links': [{u'href': u'http://foo/v1/ports/2905ec61-6f65-4ca7-ad29-cae603a918dd', u'rel': u'self'}, {u'href': u'http://foo/ports/2905ec61-6f65-4ca7-ad29-cae603a918dd', u'rel': u'bookmark'}], u'extra': {}, u'created_at': u'2019-06-06T07:02:17.361805+00:00', u'updated_at': None, u'address': u'52:54:00:cf:2d:31'} {15} ironic.tests.unit.api.controllers.v1.test_port.TestListPorts.test_links_public_url [0.142986s] ... ok PATCH: /v1/volume/connectors/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 [{'path': '/node_id', 'value': '1', 'op': 'add'}] GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-48c568a9-2751-4b89-b38d-e6520fa7f0b6 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Adding a new attribute (/node_id) to the root of the resource is not allowed\"}"} {3} ironic.tests.unit.api.controllers.v1.test_volume_connector.TestPatch.test_add_node_id [0.078009s] ... ok POST: /v1/volume/connectors {'node_uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123', 'extra': {}, 'type': 'iqn', 'uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c781', 'connector_id': 'iqn.2012-06.com.example:initiator'} GOT:Response: 500 Internal Server Error Content-Type: application/json Openstack-Request-Id: req-773200b1-ff21-4e1f-a65e-18085fa27b86 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Server\", \"faultstring\": \"\"}"} {22} ironic.tests.unit.api.controllers.v1.test_volume_connector.TestPost.test_create_volume_connector_error [0.078058s] ... ok PUT: /v1/nodes/node-39/traits {'traits': ['CUSTOM_3', 'BAD_TRAIT']} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-68db5d63-0411-4d0a-bf1f-907bb76edd44 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.37 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Invalid trait. A valid trait must be no longer than 255 characters. Standard traits are defined in the os_traits library. A custom trait must start with the prefix CUSTOM_ and use the following characters: A-Z, 0-9 and _\"}"} {13} ironic.tests.unit.api.controllers.v1.test_node.TestTraits.test_set_all_traits_rejects_bad_trait [0.089274s] ... ok {13} ironic.tests.unit.api.controllers.v1.test_notification_utils.APINotifyTestCase.test_node_notification [0.019156s] ... ok GET: /v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4 {} GOT:{u'node_uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'uuid': u'6eb02b44-18a3-4659-8c0b-8d2802581ae4', u'links': [{u'href': u'http://localhost/v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4', u'rel': u'self'}, {u'href': u'http://localhost/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4', u'rel': u'bookmark'}], u'extra': {}, u'created_at': u'2019-06-06T07:02:17.717107+00:00', u'updated_at': None, u'properties': {}, u'standalone_ports_supported': True, u'mode': u'active-backup', u'address': u'52:54:00:cf:2d:31', u'internal_info': {u'bar': u'buzz'}, u'ports': [{u'href': u'http://localhost/v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4/ports', u'rel': u'self'}, {u'href': u'http://localhost/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4/ports', u'rel': u'bookmark'}], u'name': u'fooname'} {29} ironic.tests.unit.api.controllers.v1.test_portgroup.TestListPortgroups.test_get_one [0.090371s] ... ok POST: /v1/nodes {'instance_uuid': None, 'uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123', 'driver_info': {'fake_password': 'fakepass', 'foo': 'bar'}, 'extra': {}, 'storage_interface': 'cinder', 'driver': 'fake-hardware', 'properties': {'memory_mb': '4096', 'cpu_arch': 'x86_64', 'local_gb': '10', 'cpus': '8'}, 'maintenance': False, 'chassis_uuid': 'e74c40e0-d825-11e2-a28f-0800200c9a66', 'instance_info': {'foo': 'bar', 'image_url': 'http://example.com/test_image_url', 'configdrive': 'TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQ='}} GOT:Response: 406 Not Acceptable Content-Type: application/json Openstack-Request-Id: req-389ac9a5-f650-4e2b-bc41-6d9f32c59981 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.32 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Request not acceptable.\"}"} {20} ironic.tests.unit.api.controllers.v1.test_node.TestPost.test_create_node_storage_interface_old_api_version [0.058678s] ... ok DELETE: /v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4/ports/9697fe1b-1ec1-4be7-941f-f4b0bb38c11d GOT:Response: 403 Forbidden Content-Type: application/json Openstack-Request-Id: req-89d29002-1bc4-446a-8c08-cfa02757236a X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.24 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Operation not permitted.\"}"} {4} ironic.tests.unit.api.controllers.v1.test_port.TestDelete.test_portgroups_subresource_delete [0.083652s] ... ok PATCH: /v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4 [{'path': '/address', 'value': 'aa:bb:cc:dd:ee:ff', 'op': 'add'}] GOT:Response: 200 OK Content-Type: application/json Openstack-Request-Id: req-cb1c0d8f-0b34-41cf-93eb-3e9d993b12ac X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"node_uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "uuid": "6eb02b44-18a3-4659-8c0b-8d2802581ae4", "links": [{"href": "http://localhost/v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4", "rel": "self"}, {"href": "http://localhost/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4", "rel": "bookmark"}], "extra": {}, "created_at": "2019-06-06T07:02:17.908387+00:00", "updated_at": null, "ports": [{"href": "http://localhost/v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4/ports", "rel": "self"}, {"href": "http://localhost/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4/ports", "rel": "bookmark"}], "standalone_ports_supported": true, "mode": "active-backup", "address": "aa:bb:cc:dd:ee:ff", "internal_info": {"bar": "buzz"}, "properties": {}, "name": "pg.1"} {14} ironic.tests.unit.api.controllers.v1.test_portgroup.TestPatch.test_add_root [0.122118s] ... ok PATCH: /v1/volume/targets/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 [{'path': '/node_uuid', 'value': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123', 'op': 'add'}] GOT:Response: 200 OK Content-Type: application/json Openstack-Request-Id: req-99fd3207-9b35-4079-98c1-07bf9cbd19da X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"boot_index": 0, "uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "links": [{"href": "http://localhost/v1/volume/targets/1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "rel": "self"}, {"href": "http://localhost/volume/targets/1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "rel": "bookmark"}], "extra": {}, "created_at": "2019-06-06T07:02:18.297253+00:00", "updated_at": null, "volume_type": "iscsi", "node_uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "volume_id": "12345678", "properties": {"target_iqn": "iqn.foo"}} {7} ironic.tests.unit.api.controllers.v1.test_volume_target.TestPatch.test_add_node_uuid [0.103595s] ... ok PATCH: /v1/volume/connectors/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 [{'path': '/connector_id', 'value': 'test-connector-id-123', 'op': 'replace'}] GOT:Response: 409 Conflict Content-Type: application/json Openstack-Request-Id: req-5a675c22-51a6-4a10-8d23-0a077ec9e508 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"A volume connector with type None and connector ID test-connector-id-123 already exists.\"}"} {3} ironic.tests.unit.api.controllers.v1.test_volume_connector.TestPatch.test_replace_connector_id_already_exist [0.101343s] ... ok {24} ironic.tests.unit.drivers.modules.redfish.test_power.RedfishPowerTestCase.test_reboot_not_reached [30.065139s] ... ok PATCH: /v1/volume/connectors/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 [{'path': '/connector_id', 'value': 'test-connector-id-999', 'op': 'replace'}] GOT:Response: 200 OK Content-Type: application/json Openstack-Request-Id: req-b0c8bbf4-1804-4393-9250-7f1052bd255f X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"node_uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "links": [{"href": "http://localhost/v1/volume/connectors/1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "rel": "self"}, {"href": "http://localhost/volume/connectors/1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "rel": "bookmark"}], "extra": {}, "created_at": "2019-06-06T07:02:17.494379+00:00", "updated_at": null, "connector_id": "test-connector-id-999", "type": "iqn"} {26} ironic.tests.unit.api.controllers.v1.test_volume_connector.TestPatch.test_replace_singular [0.100253s] ... ok POST: /v1/volume/connectors {'node_uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123', 'extra': {}, 'type': 'iqn', 'uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c781'} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-f826b061-0bed-437e-9b51-329eac7fe88b X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Invalid input for field/attribute connector_id. Value: 'None'. Mandatory field missing.\"}"} {22} ironic.tests.unit.api.controllers.v1.test_volume_connector.TestPost.test_create_volume_connector_no_mandatory_field_connector_id [0.059179s] ... ok {22} ironic.tests.unit.api.controllers.v1.test_volume_connector.TestVolumeConnectorObject.test_volume_connector_init [0.015885s] ... ok GET: /v1/foo {} GOT:Response: 404 Not Found Content-Type: application/json {"error_message": "{\"code\": 404, \"description\": \"\", \"title\": \"Not Found\"}"} {7} ironic.tests.unit.api.test_root.TestRoot.test_no_html_errors [0.029385s] ... ok {7} ironic.tests.unit.common.test_context.RequestContextTestCase.test_get_admin_context [0.012598s] ... ok {7} ironic.tests.unit.common.test_driver_factory.CheckAndUpdateNodeInterfacesTestCase.test_create_node_invalid_network_interface [0.026114s] ... ok {7} ironic.tests.unit.common.test_driver_factory.HardwareTypeLoadTestCase.test_build_driver_for_task [0.091310s] ... ok {7} ironic.tests.unit.common.test_glance_service.TestGlanceSwiftTempURL.test_swift_temp_url_url_bad_no_info [0.013019s] ... ok {7} ironic.tests.unit.common.test_json_rpc.TestService.test_no_blacklisted_methods [0.047482s] ... ok {7} ironic.tests.unit.common.test_network.GetPortsByPortgroupIdTestCase.test_ports_by_portgroup_id [0.145289s] ... ok GET: /v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781?fields=uuid,extra {} GOT:Response: 406 Not Acceptable Content-Type: application/json Openstack-Request-Id: req-2dd5f7df-cf10-4984-ba4e-735ceae33fbc X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Request not acceptable.\"}"} {4} ironic.tests.unit.api.controllers.v1.test_port.TestListPorts.test_get_custom_fields_invalid_api_version [0.510521s] ... ok {7} ironic.tests.unit.common.test_neutron.TestNeutronClient.test_get_neutron_client_noauth [0.036580s] ... ok {7} ironic.tests.unit.common.test_neutron.TestNeutronNetworkActions.test_rollback_ports_exception [0.138261s] ... ok {7} ironic.tests.unit.common.test_neutron.TestNeutronNetworkActions.test_verify_sec_groups [0.030497s] ... ok {7} ironic.tests.unit.common.test_neutron.TestNeutronNetworkActions.test_wait_for_port_status_active_max_retry [0.055638s] ... ok {7} ironic.tests.unit.common.test_pxe_utils.PXEInterfacesTestCase.test_validate_boot_parameters_for_trusted_boot_two [0.043642s] ... ok {7} ironic.tests.unit.common.test_rpc.TestUtils.test_init_globals_with_custom_topics [0.076395s] ... ok {7} ironic.tests.unit.common.test_utils.ExecuteTestCase.test_execute_get_root_helper [0.013102s] ... ok {7} ironic.tests.unit.common.test_utils.GetUpdatedCapabilitiesTestCase.test_get_updated_capabilities_replace_to_existing_capabilities [0.009698s] ... ok {7} ironic.tests.unit.common.test_utils.JinjaTemplatingTestCase.test_render_file [0.024485s] ... ok {7} ironic.tests.unit.conductor.test_base_manager.CheckInterfacesTestCase.test__check_enabled_interfaces_failure [0.016315s] ... ok {7} ironic.tests.unit.conductor.test_base_manager.StartStopTestCase.test_start_registers_driver_names [0.299806s] ... ok GET: /v1/portgroups?sort_key=mode {} GOT:{u'portgroups': [{u'address': u'52:54:00:cf:2d:31', u'uuid': u'fb06f4a3-3914-433f-9d90-3f38dae5ab86', u'links': [{u'href': u'http://localhost/v1/portgroups/fb06f4a3-3914-433f-9d90-3f38dae5ab86', u'rel': u'self'}, {u'href': u'http://localhost/portgroups/fb06f4a3-3914-433f-9d90-3f38dae5ab86', u'rel': u'bookmark'}], u'name': u'portgroup1'}, {u'address': u'52:54:00:cf:2d:32', u'uuid': u'7184aebf-e222-45c1-b00d-d177a1c51e17', u'links': [{u'href': u'http://localhost/v1/portgroups/7184aebf-e222-45c1-b00d-d177a1c51e17', u'rel': u'self'}, {u'href': u'http://localhost/portgroups/7184aebf-e222-45c1-b00d-d177a1c51e17', u'rel': u'bookmark'}], u'name': u'portgroup2'}, {u'address': u'52:54:00:cf:2d:33', u'uuid': u'492aed48-375d-4d27-a133-22fcbff60c66', u'links': [{u'href': u'http://localhost/v1/portgroups/492aed48-375d-4d27-a133-22fcbff60c66', u'rel': u'self'}, {u'href': u'http://localhost/portgroups/492aed48-375d-4d27-a133-22fcbff60c66', u'rel': u'bookmark'}], u'name': u'portgroup3'}]} {7} ironic.tests.unit.conductor.test_manager.ConsoleTestCase.test_get_console_validate_fail [0.054725s] ... ok {27} ironic.tests.unit.api.controllers.v1.test_portgroup.TestListPortgroups.test_sort_key_allowed [0.103736s] ... ok {27} ironic.tests.unit.api.controllers.v1.test_types.TestJsonPatchType.test_invalid_path [0.032116s] ... ok {24} ironic.tests.unit.drivers.modules.storage.test_cinder.CinderInterfaceTestCase.test__fail_validation [0.107085s] ... ok {27} ironic.tests.unit.api.controllers.v1.test_types.TestLocalLinkConnectionType.test_local_link_connection_type_not_mac_or_datapath_id [0.014445s] ... ok {7} ironic.tests.unit.conductor.test_manager.DestroyNodeTestCase.test_destroy_node_allowed_in_maintenance [0.220575s] ... ok {27} ironic.tests.unit.api.controllers.v1.test_types.TestUuidOrNameType.test_invalid_uuid_or_name [0.013201s] ... ok {27} ironic.tests.unit.api.controllers.v1.test_utils.TestApiUtils.test_allow_ramdisk_endpoints [0.012003s] ... ok {7} ironic.tests.unit.conductor.test_manager.DestroyPortTestCase.test_destroy_port [0.089550s] ... ok {27} ironic.tests.unit.api.controllers.v1.test_utils.TestApiUtils.test_check_allow_configdrive_as_dict [0.036956s] ... ok {7} ironic.tests.unit.conductor.test_manager.DestroyVolumeConnectorTestCase.test_destroy_volume_connector [0.090695s] ... ok {7} ironic.tests.unit.conductor.test_manager.DoNextDeployStepTestCase.test__do_next_deploy_step_all [0.323406s] ... ok {7} ironic.tests.unit.conductor.test_manager.DoNodeCleanTestCase.test__do_node_clean_automated_disabled_individual_disabled [0.225653s] ... ok {7} ironic.tests.unit.conductor.test_manager.DoNodeDeployTestCase.test__do_node_deploy_configdrive_and_user_data_as_dict [0.335861s] ... ok {7} ironic.tests.unit.conductor.test_manager.DoNodeTearDownTestCase.test__do_node_tear_down_with_allocation [0.323258s] ... ok {7} ironic.tests.unit.conductor.test_manager.ManagerSyncLocalStateTestCase.test_not_mapped [0.019919s] ... ok {7} ironic.tests.unit.conductor.test_manager.MiscTestCase.test_validate_driver_interfaces_validation_fail_unexpected [0.057566s] ... ok {7} ironic.tests.unit.conductor.test_manager.ServiceDoNodeDeployTestCase.test_do_node_deploy_rebuild_deployfail_state [0.347948s] ... ok {7} ironic.tests.unit.conductor.test_manager.VendorPassthruTestCase.test_get_driver_vendor_passthru_methods_no_default_interface [0.184096s] ... ok {7} ironic.tests.unit.conductor.test_notification_utils.TestNotificationUtils.test_emit_console_notification [0.042636s] ... ok {7} ironic.tests.unit.conductor.test_rpcapi.RPCAPITestCase.test_can_send_rescue_false [0.019258s] ... ok PATCH: /v1/portgroups/pg.1.json [{'path': '/extra/foo', 'value': 'bar', 'op': 'add'}] GOT:Response: 200 OK Content-Type: application/json Openstack-Request-Id: req-c484e2e5-677b-486f-8dd9-b6321fed50eb X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"node_uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "uuid": "6eb02b44-18a3-4659-8c0b-8d2802581ae4", "links": [{"href": "http://localhost/v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4", "rel": "self"}, {"href": "http://localhost/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4", "rel": "bookmark"}], "extra": {"foo": "bar"}, "created_at": "2019-06-06T07:02:17.199791+00:00", "updated_at": null, "ports": [{"href": "http://localhost/v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4/ports", "rel": "self"}, {"href": "http://localhost/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4/ports", "rel": "bookmark"}], "standalone_ports_supported": true, "mode": "active-backup", "address": "52:54:00:cf:2d:31", "internal_info": {"bar": "buzz"}, "properties": {}, "name": "pg.1"} {31} ironic.tests.unit.api.controllers.v1.test_portgroup.TestPatch.test_update_byname_with_json [0.117482s] ... ok {7} ironic.tests.unit.conductor.test_rpcapi.RPCAPITestCase.test_get_driver_vendor_passthru_methods [0.029973s] ... ok {7} ironic.tests.unit.conductor.test_rpcapi.RPCAPITestCase.test_update_volume_target [0.027609s] ... ok {7} ironic.tests.unit.conductor.test_steps.NodeDeployStepsTestCase.test__validate_user_deploy_steps_no_steps [0.089046s] ... ok {7} ironic.tests.unit.conductor.test_task_manager.ProvisionNotifyTestCase.test_notify_only_once [0.014444s] ... ok {7} ironic.tests.unit.conductor.test_utils.DeployingErrorHandlerTestCase.test_cleanup_after_timeout_shared_lock [0.010975s] ... ok {7} ironic.tests.unit.conductor.test_utils.ErrorHandlersTestCase.test_cleaning_error_handler_no_fail [0.012109s] ... ok {7} ironic.tests.unit.conductor.test_utils.NodePowerActionTestCase.test_node_power_action_invalid_state_notify [0.107674s] ... ok {7} ironic.tests.unit.conductor.test_utils.ValidatePortPhysnetTestCase.test_validate_port_physnet_2_port_portgroup_w_physnet_update_2 [0.125607s] ... ok {7} ironic.tests.unit.db.test_api.UpgradingTestCase.test_check_versions_node_no_version [0.130094s] ... ok PUT: /v1/nodes/node-39/traits/bad_trait {} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-789600f6-e39b-474b-8cc6-43fdee047a23 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.37 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Invalid trait. A valid trait must be no longer than 255 characters. Standard traits are defined in the os_traits library. A custom trait must start with the prefix CUSTOM_ and use the following characters: A-Z, 0-9 and _\"}"} {20} ironic.tests.unit.api.controllers.v1.test_node.TestTraits.test_add_single_trait_rejects_bad_trait [0.491394s] ... ok {7} ironic.tests.unit.db.test_conductor.DbConductorTestCase.test_get_active_hardware_type_dict_many_host_many_ht [0.064751s] ... ok {7} ironic.tests.unit.db.test_conductor.DbConductorTestCase.test_get_active_hardware_type_dict_one_host_no_ht [0.039445s] ... ok {24} ironic.tests.unit.drivers.modules.test_agent.TestAgentDeploy.test_get_clean_steps [0.073866s] ... ok {7} ironic.tests.unit.db.test_conductor.DbConductorTestCase.test_touch_conductor [1.273282s] ... ok {7} ironic.tests.unit.db.test_conductor.DbConductorTestCase.test_touch_offline_conductor [0.035772s] ... ok {7} ironic.tests.unit.db.test_deploy_templates.DbDeployTemplateTestCase.test_create_no_steps [0.019087s] ... ok {7} ironic.tests.unit.db.test_node_tags.DbNodeTagTestCase.test_delete_node_tag_not_found [0.025917s] ... ok {7} ironic.tests.unit.db.test_node_tags.DbNodeTagTestCase.test_unset_node_tags_node_not_exist [0.030627s] ... ok {7} ironic.tests.unit.db.test_nodes.DbNodeTestCase.test_create_node_instance_already_associated [0.026916s] ... ok {7} ironic.tests.unit.db.test_nodes.DbNodeTestCase.test_get_node_list_with_filters [0.262782s] ... ok {7} ironic.tests.unit.db.test_nodes.DbNodeTestCase.test_release_non_existent_node [0.072419s] ... ok {7} ironic.tests.unit.db.test_ports.DbPortTestCase.test_destroy_port [0.043929s] ... ok {7} ironic.tests.unit.db.test_volume_targets.DbVolumeTargetTestCase.test_get_volume_target_list_sorted [0.051444s] ... ok {7} ironic.tests.unit.db.test_volume_targets.DbVolumeTargetTestCase.test_get_volume_targets_by_volume_id [0.040652s] ... ok {7} ironic.tests.unit.drivers.modules.ansible.test_deploy.TestAnsibleMethods.test__parse_root_device_hints [0.131326s] ... ok {7} ironic.tests.unit.drivers.modules.ansible.test_deploy.TestAnsibleMethods.test__run_playbook_ansible_interpreter_python3 [0.031188s] ... ok {7} ironic.tests.unit.drivers.modules.drac.test_job.DracJobTestCase.test_list_unfinished_jobs [0.028486s] ... ok {7} ironic.tests.unit.drivers.modules.drac.test_periodic_task.DracPeriodicTaskTestCase.test__check_node_raid_jobs_with_multiple_jobs_failed [0.123092s] ... ok {7} ironic.tests.unit.drivers.modules.drac.test_periodic_task.DracPeriodicTaskTestCase.test__query_raid_config_job_status_no_config_jobs [0.030335s] ... ok {7} ironic.tests.unit.drivers.modules.drac.test_raid.DracManageVirtualDisksTestCase.test_create_virtual_disk_fail [0.035762s] ... ok {7} ironic.tests.unit.drivers.modules.drac.test_raid.DracManageVirtualDisksTestCase.test_delete_virtual_disk [0.032917s] ... ok {7} ironic.tests.unit.drivers.modules.drac.test_raid.DracRaidInterfaceTestCase.test_create_configuration_fails_if_not_enough_space [0.151302s] ... ok {7} ironic.tests.unit.drivers.modules.drac.test_raid.DracRaidInterfaceTestCase.test_create_configuration_with_max_size_and_share_physical_disks [0.149169s] ... ok {7} ironic.tests.unit.drivers.modules.ibmc.test_utils.IBMCUtilsTestCase.test_parse_driver_info_invalid_string_value_verify_ca [0.033019s] ... ok {7} ironic.tests.unit.drivers.modules.ibmc.test_vendor.IBMCVendorTestCase.test_validate [0.059991s] ... ok {7} ironic.tests.unit.drivers.modules.ilo.test_boot.IloBootPrivateMethodsTestCase.test__validate_driver_info_InvalidParam [0.084361s] ... ok {24} ironic.tests.unit.drivers.modules.test_agent_base_vendor.AgentDeployMixinTest.test_continue_cleaning_fail [0.065129s] ... ok {7} ironic.tests.unit.drivers.modules.ilo.test_boot.IloBootPrivateMethodsTestCase.test_prepare_node_for_deploy [0.081874s] ... ok {7} ironic.tests.unit.drivers.modules.ilo.test_boot.IloVirtualMediaBootTestCase.test_prepare_ramdisk_not_a_glance_image [0.166017s] ... ok {7} ironic.tests.unit.drivers.modules.ilo.test_common.IloValidateParametersTestCase.test_parse_driver_info_snmp_true_invalid_priv_protocol [0.037713s] ... ok DELETE: /v1/volume/connectors/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 GOT:Response: 404 Not Found Content-Type: application/json {"error_message": "{\"code\": 404, \"description\": \"\", \"title\": \"Not Found\"}"} {27} ironic.tests.unit.api.controllers.v1.test_volume_connector.TestDelete.test_delete_volume_connector_byid_invalid_api_version [0.040742s] ... ok {7} ironic.tests.unit.drivers.modules.ilo.test_firmware_processor.FirmwareProcessorTestCase.test__download_file_based_fw_to_copies_file_to_target [0.040371s] ... ok {7} ironic.tests.unit.drivers.modules.ilo.test_firmware_processor.FirmwareProcessorTestCase.test_get_and_validate_firmware_image_info_sum [0.017848s] ... ok {7} ironic.tests.unit.drivers.modules.ilo.test_inspect.TestInspectPrivateMethods.test___create_supported_capabilities_dict [0.040343s] ... ok {7} ironic.tests.unit.drivers.modules.ilo.test_management.IloManagementTestCase.test_get_boot_device_persistent_fail [0.121417s] ... ok {7} ironic.tests.unit.drivers.modules.ilo.test_management.IloManagementTestCase.test_reset_bios_to_default [0.085950s] ... ok {7} ironic.tests.unit.drivers.modules.ilo.test_management.IloManagementTestCase.test_update_firmware_doesnt_update_any_if_processing_on_any_url_fails [0.120742s] ... ok {7} ironic.tests.unit.drivers.modules.ilo.test_management.IloManagementTestCase.test_update_firmware_sum_mode_invalid_component [1.674348s] ... ok GET: /v1/ports/detail?sort_key=pxe_enabled {} GOT:{u'ports': [{u'local_link_connection': {u'switch_info': u'switch1', u'port_id': u'Ethernet3/1', u'switch_id': u'0a:1b:2c:3d:4e:5f'}, u'node_uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'uuid': u'eb05e0dd-8c2f-4211-b4ee-89ffcadeebc3', u'links': [{u'href': u'http://localhost/v1/ports/eb05e0dd-8c2f-4211-b4ee-89ffcadeebc3', u'rel': u'self'}, {u'href': u'http://localhost/ports/eb05e0dd-8c2f-4211-b4ee-89ffcadeebc3', u'rel': u'bookmark'}], u'extra': {}, u'pxe_enabled': False, u'portgroup_uuid': None, u'updated_at': None, u'physical_network': None, u'address': u'52:54:00:cf:2d:30', u'internal_info': {u'bar': u'buzz'}, u'created_at': u'2019-06-06T07:02:17.512483+00:00', u'is_smartnic': False}, {u'local_link_connection': {u'switch_info': u'switch1', u'port_id': u'Ethernet3/1', u'switch_id': u'0a:1b:2c:3d:4e:5f'}, u'node_uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'uuid': u'492c1b92-da3c-402b-beeb-ae896d7fab9a', u'links': [{u'href': u'http://localhost/v1/ports/492c1b92-da3c-402b-beeb-ae896d7fab9a', u'rel': u'self'}, {u'href': u'http://localhost/ports/492c1b92-da3c-402b-beeb-ae896d7fab9a', u'rel': u'bookmark'}], u'extra': {}, u'pxe_enabled': True, u'portgroup_uuid': None, u'updated_at': None, u'physical_network': None, u'address': u'52:54:00:cf:2d:31', u'internal_info': {u'bar': u'buzz'}, u'created_at': u'2019-06-06T07:02:17.515972+00:00', u'is_smartnic': False}]} {7} ironic.tests.unit.drivers.modules.ilo.test_raid.Ilo5RAIDTestCase.test__prepare_for_read_raid_delete_raid [0.108962s] ... ok {16} ironic.tests.unit.api.controllers.v1.test_port.TestListPorts.test_detail_sort_key_allowed [0.081933s] ... ok {7} ironic.tests.unit.drivers.modules.ilo.test_raid.Ilo5RAIDTestCase.test_create_configuration_skip_non_root [0.067961s] ... ok {7} ironic.tests.unit.drivers.modules.ilo.test_raid.Ilo5RAIDTestCase.test_delete_configuration [0.069413s] ... ok {7} ironic.tests.unit.drivers.modules.irmc.test_boot.IRMCDeployPrivateMethodsTestCase.test_setup_vmedia_with_image_service_deploy [0.080415s] ... ok {7} ironic.tests.unit.drivers.modules.irmc.test_boot.IRMCPXEBootBasicTestCase.test_prepare_ramdisk_set_boot_mode_on_ironic [0.221203s] ... ok {7} ironic.tests.unit.drivers.modules.irmc.test_boot.IRMCVirtualMediaBootWithVolumeTestCase.test_validate_iscsi_connector_invalid_netmask [0.129812s] ... ok {7} ironic.tests.unit.drivers.modules.irmc.test_inspect.IRMCInspectTestCase.test_validate [0.052430s] ... ok {7} ironic.tests.unit.drivers.modules.irmc.test_management.IRMCManagementTestCase.test_management_interface_set_boot_device_ok_pxe [0.816314s] ... ok {7} ironic.tests.unit.drivers.modules.irmc.test_power.IRMCPowerInternalMethodsTestCase.test__set_power_state_invalid_target_state [0.049830s] ... ok {7} ironic.tests.unit.drivers.modules.irmc.test_raid.IRMCRaidConfigurationInternalMethodsTestCase.test__fail_validation_with_physical_disk_incorrect_valid_disks [0.049753s] ... ok {7} ironic.tests.unit.drivers.modules.network.test_common.TestNeutronVifPortIDMixin.test_update_portgroup_standalone_ports_noports [0.062613s] ... ok {7} ironic.tests.unit.drivers.modules.network.test_common.TestVifPortIDMixin.test__get_port_like_obj_by_vif_id_in_internal_info [0.067462s] ... ok {7} ironic.tests.unit.drivers.modules.network.test_flat.TestFlatInterface.test_remove_cleaning_network_from_node [0.078398s] ... ok {7} ironic.tests.unit.drivers.modules.network.test_neutron.NeutronInterfaceTestCase.test_init_incorrect_provisioning_net [0.022365s] ... ok {7} ironic.tests.unit.drivers.modules.redfish.test_management.RedfishManagementTestCase.test_set_boot_mode_fail [0.321391s] ... ok {7} ironic.tests.unit.drivers.modules.storage.test_cinder.CinderInterfaceTestCase.test_attach_detach_volumes_no_volumes [0.069555s] ... ok {7} ironic.tests.unit.drivers.modules.storage.test_cinder.CinderInterfaceTestCase.test_validate_fails_when_fc_connectors_unequal [0.078718s] ... ok {7} ironic.tests.unit.drivers.modules.storage.test_cinder.CinderInterfaceTestCase.test_validate_success_fc_connectors [0.098288s] ... ok {7} ironic.tests.unit.drivers.modules.test_agent.AgentRescueTestCase.test_agent_rescue_validate_no_manage_agent [0.081132s] ... ok {7} ironic.tests.unit.drivers.modules.test_agent.AgentRescueTestCase.test_agent_unrescue [0.136451s] ... ok GET: /v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781?fields=uuid,physical_network {} GOT:Response: 406 Not Acceptable Content-Type: application/json Openstack-Request-Id: req-8846debc-299a-42a3-94e5-547e35773b8d X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.34 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Request not acceptable.\"}"} {4} ironic.tests.unit.api.controllers.v1.test_port.TestListPorts.test_get_custom_fields_physical_network_upgrade [0.068487s] ... ok {7} ironic.tests.unit.drivers.modules.test_agent.TestAgentDeploy.test_deploy_has_started_is_done [0.072444s] ... ok {24} ironic.tests.unit.drivers.modules.test_agent_base_vendor.AgentDeployMixinTest.test_continue_cleaning_old_command [0.076111s] ... ok {7} ironic.tests.unit.drivers.modules.test_agent.TestAgentDeploy.test_deploy_storage_should_write_image_false_with_smartnic_port [0.155697s] ... ok {7} ironic.tests.unit.drivers.modules.test_agent.TestAgentDeploy.test_prepare_with_neutron_net [0.148706s] ... ok {7} ironic.tests.unit.drivers.modules.test_agent.TestAgentDeploy.test_tear_down_cleaning_manage_agent_boot_false [0.066403s] ... ok {7} ironic.tests.unit.drivers.modules.test_agent_base_vendor.HeartbeatMixinTest.test_heartbeat_resume_clean_fails [0.172622s] ... ok {7} ironic.tests.unit.drivers.modules.test_agent_base_vendor.TestRefreshCleanSteps.test_refresh_clean_steps_missing_interface [0.071770s] ... ok {7} ironic.tests.unit.drivers.modules.test_deploy_utils.AgentMethodsTestCase.test_prepare_inband_cleaning [0.088729s] ... ok POST: /v1/volume/targets {'boot_index': 0, 'uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c781', 'extra': {'none': None, 'int': 123, 'float': 0.1, 'list': [1, 2], 'bool': True, 'str': 'foo', 'dict': {'cat': 'meow'}}, 'volume_type': 'iscsi', 'node_uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123', 'volume_id': '12345678', 'properties': {'target_iqn': 'iqn.foo'}} GOT:Response: 201 Created Content-Type: application/json Location: http://localhost/v1/volume/targets/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 Openstack-Request-Id: req-f528f18c-e04f-45ee-9df3-f50a9cce4d79 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"boot_index": 0, "uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "links": [{"href": "http://localhost/v1/volume/targets/1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "rel": "self"}, {"href": "http://localhost/volume/targets/1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "rel": "bookmark"}], "extra": {"none": null, "int": 123, "float": 0.1, "list": [1, 2], "dict": {"cat": "meow"}, "str": "foo", "bool": true}, "created_at": "2019-06-06T07:02:18.029507+00:00", "updated_at": null, "volume_type": "iscsi", "node_uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "volume_id": "12345678", "properties": {"target_iqn": "iqn.foo"}} GET: /v1/volume/targets/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 {} GOT:{u'boot_index': 0, u'uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c781', u'links': [{u'href': u'http://localhost/v1/volume/targets/1be26c0b-03f2-4d2e-ae87-c02d7f33c781', u'rel': u'self'}, {u'href': u'http://localhost/volume/targets/1be26c0b-03f2-4d2e-ae87-c02d7f33c781', u'rel': u'bookmark'}], u'extra': {u'none': None, u'int': 123, u'float': 0.1, u'list': [1, 2], u'bool': True, u'str': u'foo', u'dict': {u'cat': u'meow'}}, u'created_at': u'2019-06-06T07:02:18.029507+00:00', u'updated_at': None, u'volume_type': u'iscsi', u'node_uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'volume_id': u'12345678', u'properties': {u'target_iqn': u'iqn.foo'}} {30} ironic.tests.unit.api.controllers.v1.test_volume_target.TestPost.test_create_volume_target_valid_extra [0.124855s] ... ok {7} ironic.tests.unit.drivers.modules.test_deploy_utils.AgentMethodsTestCase.test_tear_down_inband_cleaning [0.071368s] ... ok {7} ironic.tests.unit.drivers.modules.test_deploy_utils.OtherFunctionTestCase.test_get_ironic_api_url_from_config [0.021701s] ... ok {7} ironic.tests.unit.drivers.modules.test_deploy_utils.ParseInstanceInfoCapabilitiesTestCase.test_parse_instance_info_invalid_type [0.010331s] ... ok {7} ironic.tests.unit.drivers.modules.test_deploy_utils.PhysicalWorkTestCase.test_deploy_partition_image_netboot [1.279577s] ... ok {7} ironic.tests.unit.drivers.modules.test_image_cache.TestImageCacheFetch.test_fetch_image_dest_and_master_uptodate [0.017599s] ... ok PATCH: /v1/volume/targets/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 [{'path': '/node_uuid', 'value': '12506333-a81c-4d59-9987-889ed5f8687b', 'op': 'replace'}] GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-7504612b-865a-4ada-8490-fb21d03a5c96 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Node 12506333-a81c-4d59-9987-889ed5f8687b could not be found.\"}"} {7} ironic.tests.unit.drivers.modules.test_image_cache.TestUpdateImages.test__delete_master_path_if_stale_glance_img_not_cached [0.014341s] ... ok {26} ironic.tests.unit.api.controllers.v1.test_volume_target.TestPatch.test_replace_non_existent_node_uuid [0.087920s] ... ok {7} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolDriverTestCase.test_management_interface_get_boot_device [0.076693s] ... ok {7} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolDriverTestCase.test_set_soft_reboot_timeout_fail [0.074242s] ... ok {7} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolPrivateMethodTestCase.test__parse_driver_info_with_dual_bridging_missing_parameters [0.034826s] ... ok DELETE: /v1/volume/targets/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-b678a786-6f78-4508-92f3-7e9ac4e59b6d X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"The requested action \\\"volume target deletion\\\" can not be performed on node \\\"1be26c0b-03f2-4d2e-ae87-c02d7f33c123\\\" while it is in state \\\"power on\\\".\"}"} {22} ironic.tests.unit.api.controllers.v1.test_volume_target.TestDelete.test_delete_volume_target_invalid_power_state [0.088426s] ... ok {7} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolSocatDriverTestCase.test_stop_console_fail [0.076038s] ... ok {7} ironic.tests.unit.drivers.modules.test_ipxe.iPXEBootTestCase.test_get_properties [0.064592s] ... ok {7} ironic.tests.unit.drivers.modules.test_ipxe.iPXEBootTestCase.test_validate_fail_glance_conn_problem [0.115505s] ... ok {7} ironic.tests.unit.drivers.modules.test_ipxe.iPXEBootTestCase.test_validate_fail_no_port [0.069920s] ... ok {7} ironic.tests.unit.drivers.modules.test_pxe.PXEBootTestCase.test_prepare_ramdisk_cleaning [0.134915s] ... ok {7} ironic.tests.unit.drivers.modules.test_pxe.PXEBootTestCase.test_prepare_ramdisk_force_persistent_boot_device_true [0.138260s] ... ok {24} ironic.tests.unit.drivers.modules.test_agent_base_vendor.AgentDeployMixinTest.test_continue_cleaning_unknown [0.058772s] ... ok {7} ironic.tests.unit.drivers.modules.test_snmp.SNMPDeviceDriverTestCase.test_apc_masterswitch_power_state_off [0.018586s] ... ok {7} ironic.tests.unit.drivers.modules.test_snmp.SNMPDeviceDriverTestCase.test_cyberpower_power_off [0.020676s] ... ok {7} ironic.tests.unit.drivers.modules.test_snmp.SNMPDeviceDriverTestCase.test_power_off_invalid_state [9.029800s] ... ok {7} ironic.tests.unit.drivers.modules.test_snmp.SNMPValidateParametersTestCase.test__parse_driver_info_invalid_driver [0.015402s] ... ok GET: /v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 {} GOT:{u'node_uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c781', u'links': [{u'href': u'http://localhost/v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781', u'rel': u'self'}, {u'href': u'http://localhost/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781', u'rel': u'bookmark'}], u'extra': {}, u'created_at': u'2019-06-06T07:02:16.780367+00:00', u'updated_at': None, u'address': u'52:54:00:cf:2d:31', u'internal_info': {u'bar': u'buzz'}} GET: /v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 {} GOT:{u'local_link_connection': {u'switch_info': u'switch', u'port_id': u'Gig0/1', u'switch_id': u'aa:bb:cc:dd:ee:ff'}, u'node_uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c781', u'links': [{u'href': u'http://localhost/v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781', u'rel': u'self'}, {u'href': u'http://localhost/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781', u'rel': u'bookmark'}], u'extra': {}, u'pxe_enabled': True, u'created_at': u'2019-06-06T07:02:16.780367+00:00', u'updated_at': None, u'address': u'52:54:00:cf:2d:31', u'internal_info': {u'bar': u'buzz'}} {7} ironic.tests.unit.drivers.modules.test_snmp.SNMPValidateParametersTestCase.test__parse_driver_info_missing_community_snmp_v1 [0.014726s] ... ok {13} ironic.tests.unit.api.controllers.v1.test_port.TestListPorts.test_hide_fields_in_newer_versions_advanced_net [0.121631s] ... ok {7} ironic.tests.unit.drivers.modules.xclarity.test_management.XClarityManagementDriverTestCase.test_set_boot_device_fail [0.069317s] ... ok {7} ironic.tests.unit.drivers.test_base.CleanStepDecoratorTestCase.test_clean_step_bad_abortable [0.010643s] ... ok GET: /v1/lookup?addresses=11:22:33:44:55:66,66:55:44:33:22:11 {} GOT:{u'node': {u'instance_info': {u'foo': u'bar', u'image_url': u'******', u'configdrive': u'******'}, u'uuid': u'd8fdf448-cc4f-4932-a164-687a6b3ea3d2', u'driver_internal_info': {u'private_state': u'secret value'}, u'links': [{u'href': u'http://localhost/v1/nodes/d8fdf448-cc4f-4932-a164-687a6b3ea3d2', u'rel': u'self'}, {u'href': u'http://localhost/nodes/d8fdf448-cc4f-4932-a164-687a6b3ea3d2', u'rel': u'bookmark'}], u'properties': {u'memory_mb': u'4096', u'cpu_arch': u'x86_64', u'local_gb': u'10', u'cpus': u'8'}}, u'config': {u'metrics': {u'prepend_host': False, u'prepend_uuid': False, u'backend': u'statsd', u'prepend_host_reverse': True, u'global_prefix': None}, u'heartbeat_timeout': 300, u'metrics_statsd': {u'statsd_port': 8125, u'statsd_host': u'localhost'}}} {14} ironic.tests.unit.api.controllers.v1.test_ramdisk.TestLookup.test_found_by_addresses [0.361265s] ... ok {7} ironic.tests.unit.drivers.test_fake_hardware.FakeHardwareTestCase.test_deploy_interface [0.062511s] ... ok {14} ironic.tests.unit.api.controllers.v1.test_types.TestJsonPatchType.test_cannot_add_with_no_value [0.039249s] ... ok {14} ironic.tests.unit.api.controllers.v1.test_types.TestLocalLinkConnectionType.test_local_link_connection_type_smart_nic_keys_hostname_missing [0.018232s] ... ok {7} ironic.tests.unit.drivers.test_fake_hardware.FakeHardwareTestCase.test_management_interface_set_boot_device_good [0.062582s] ... ok {7} ironic.tests.unit.objects.test_allocation.TestAllocationObject.test_save_after_refresh [0.033793s] ... ok {14} ironic.tests.unit.api.controllers.v1.test_utils.TestApiUtils.test_allow_traits [0.016723s] ... ok {14} ironic.tests.unit.api.controllers.v1.test_utils.TestApiUtils.test_check_allow_abort_verbs_fail [0.017919s] ... ok {7} ironic.tests.unit.objects.test_bios.TestBIOSSettingObject.test_create [0.020871s] ... ok {14} ironic.tests.unit.api.controllers.v1.test_utils.TestApiUtils.test_check_allow_adopt_verbs_fail [0.017746s] ... ok {7} ironic.tests.unit.objects.test_chassis.TestChassisObject.test_list [0.017403s] ... ok {14} ironic.tests.unit.api.controllers.v1.test_utils.TestVendorPassthru.test_vendor_passthru_async [0.018084s] ... ok {7} ironic.tests.unit.objects.test_objects.TestObject.test_changed_3 [0.009807s] ... ok {14} ironic.tests.unit.api.controllers.v1.test_versions.TestMaxVersionString.test_max_version_not_pinned [0.012824s] ... ok {7} ironic.tests.unit.objects.test_objects.TestObject.test_changes_in_primitive [0.009682s] ... ok {14} ironic.tests.unit.api.controllers.v1.test_versions.TestVersionConstants.test_duplicates [0.009796s] ... ok {7} ironic.tests.unit.objects.test_port.TestPortObject.test_get_by_uuid [0.017265s] ... ok {7} ironic.tests.unit.objects.test_trait.TestTraitObject.test_destroy_list [0.015458s] ... ok GET: /v1/ports?detail=True&fields=name {} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-b90577dd-2500-4bdd-ac99-d452cd3294b2 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Can not specify ?detail=True and fields in the same request.\"}"} PATCH: /v1/volume/connectors/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 [{'path': '/extra/foo', 'value': 'bar', 'op': 'add'}] GOT:Response: 200 OK Content-Type: application/json Openstack-Request-Id: req-660b0a00-05c9-485a-aae4-75900929769b X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"node_uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "links": [{"href": "http://localhost/v1/volume/connectors/1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "rel": "self"}, {"href": "http://localhost/volume/connectors/1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "rel": "bookmark"}], "extra": {"foo": "bar"}, "created_at": "2019-06-06T07:02:17.606916+00:00", "updated_at": null, "connector_id": "iqn.2012-06.com.example:initiator", "type": "iqn"} {20} ironic.tests.unit.api.controllers.v1.test_port.TestListPorts.test_detail_using_query_and_fields [0.066089s] ... ok {3} ironic.tests.unit.api.controllers.v1.test_volume_connector.TestPatch.test_update_byid [0.114298s] ... ok GET: /v1/ports {} GOT:{u'ports': [{u'uuid': u'2d1e7923-04bd-4a5f-8aac-c3585b128a4a', u'links': [{u'href': u'http://localhost/v1/ports/2d1e7923-04bd-4a5f-8aac-c3585b128a4a', u'rel': u'self'}, {u'href': u'http://localhost/ports/2d1e7923-04bd-4a5f-8aac-c3585b128a4a', u'rel': u'bookmark'}], u'address': u'52:54:00:cf:2d:30'}, {u'uuid': u'a22e8e6b-23f6-4cfc-b181-793aa15b87cf', u'links': [{u'href': u'http://localhost/v1/ports/a22e8e6b-23f6-4cfc-b181-793aa15b87cf', u'rel': u'self'}, {u'href': u'http://localhost/ports/a22e8e6b-23f6-4cfc-b181-793aa15b87cf', u'rel': u'bookmark'}], u'address': u'52:54:00:cf:2d:31'}, {u'uuid': u'4e610ced-ad3b-4101-b71f-52796badf933', u'links': [{u'href': u'http://localhost/v1/ports/4e610ced-ad3b-4101-b71f-52796badf933', u'rel': u'self'}, {u'href': u'http://localhost/ports/4e610ced-ad3b-4101-b71f-52796badf933', u'rel': u'bookmark'}], u'address': u'52:54:00:cf:2d:32'}, {u'uuid': u'1a22d54a-aa60-49dd-90be-a5d0f4148629', u'links': [{u'href': u'http://localhost/v1/ports/1a22d54a-aa60-49dd-90be-a5d0f4148629', u'rel': u'self'}, {u'href': u'http://localhost/ports/1a22d54a-aa60-49dd-90be-a5d0f4148629', u'rel': u'bookmark'}], u'address': u'52:54:00:cf:2d:33'}, {u'uuid': u'8458e9e0-a789-4071-9b7d-3001d6c5f00d', u'links': [{u'href': u'http://localhost/v1/ports/8458e9e0-a789-4071-9b7d-3001d6c5f00d', u'rel': u'self'}, {u'href': u'http://localhost/ports/8458e9e0-a789-4071-9b7d-3001d6c5f00d', u'rel': u'bookmark'}], u'address': u'52:54:00:cf:2d:34'}]} {15} ironic.tests.unit.api.controllers.v1.test_port.TestListPorts.test_many [0.164727s] ... ok GET: / {} GOT:Response: 500 Internal Server Error Content-Type: application/json Openstack-Request-Id: req-b0e5b67f-1e0d-4124-b41b-8085cc5d3d10 {"error_message": "{\"debuginfo\":null,\"faultcode\":\"Server\",\"faultstring\":\"Test exception message.\"}"} {26} ironic.tests.unit.api.test_hooks.TestNoExceptionTracebackHook.test_hook_on_serverfault_debug [0.045920s] ... ok {26} ironic.tests.unit.api.test_hooks.TestPublicUrlHook.test_before_public_endpoint [0.027996s] ... ok func1() migrated 10 of 15 objects. {26} ironic.tests.unit.cmd.test_dbsync.OnlineMigrationTestCase.test__run_migration_functions_2_notdone [0.027452s] ... ok {26} ironic.tests.unit.common.test_cinder.TestCinderActions.test_detach_volumes_detach_meta_failure_errors_not_allowed [0.144472s] ... ok {26} ironic.tests.unit.common.test_driver_factory.CheckAndUpdateNodeInterfacesTestCase.test_none_network_interface [0.037624s] ... ok {26} ironic.tests.unit.common.test_driver_factory.DefaultInterfaceTestCase.test_calculated_no_answer_drivername_node [0.024422s] ... ok {26} ironic.tests.unit.common.test_driver_factory.DefaultInterfaceTestCase.test_network_from_additional_defaults_hardware_type [0.023676s] ... ok {24} ironic.tests.unit.drivers.modules.test_agent_base_vendor.HeartbeatMixinTest.test_heartbeat_records_fast_track [0.182885s] ... ok {26} ironic.tests.unit.common.test_driver_factory.HardwareTypeLoadTestCase.test_enabled_supported_interfaces [0.034682s] ... ok {26} ironic.tests.unit.common.test_image_service.HttpImageServiceTestCase.test_download_success [0.024841s] ... ok {26} ironic.tests.unit.common.test_image_service.HttpImageServiceTestCase.test_validate_href [0.020543s] ... ok {26} ironic.tests.unit.common.test_image_service.ServiceGetterTestCase.test_get_image_service_invalid_image_ref [0.016467s] ... ok {24} ironic.tests.unit.drivers.modules.test_agent_client.TestAgentClient.test_execute_clean_step [0.010087s] ... ok {26} ironic.tests.unit.common.test_images.FsImageTestCase.test_create_boot_iso_for_bios [0.028451s] ... ok {26} ironic.tests.unit.common.test_images.FsImageTestCase.test_create_vfat_image_dd_fails [0.018771s] ... ok GET: / {} GOT:Response: 500 Internal Server Error Content-Type: application/json Openstack-Request-Id: req-37fee734-00da-4d67-a94a-1e486335e4fe {"error_message": "{\"debuginfo\":null,\"faultcode\":\"Server\",\"faultstring\":\"Test exception message.\"}"} {3} ironic.tests.unit.api.test_hooks.TestNoExceptionTracebackHook.test_hook_exception_success [0.048206s] ... ok {26} ironic.tests.unit.common.test_images.FsImageTestCase.test_create_vfat_image_umount_fails [0.034192s] ... ok {26} ironic.tests.unit.common.test_images.IronicImagesTestCase.test_is_whole_disk_image_no_img_src [0.020186s] ... ok {26} ironic.tests.unit.common.test_neutron.TestNeutronClient.test_get_neutron_client_without_token [0.029741s] ... ok {24} ironic.tests.unit.drivers.modules.test_console_utils.ConsoleUtilsTestCase.test__get_console_pid [0.015539s] ... ok {26} ironic.tests.unit.common.test_neutron.TestNeutronNetworkActions.test_get_node_portmap [0.094444s] ... ok {26} ironic.tests.unit.common.test_neutron.TestNeutronNetworkActions.test_wait_for_host_agent_down_target_state_down [0.038599s] ... ok {26} ironic.tests.unit.common.test_neutron.TestValidateNetwork.test_by_name [0.017006s] ... ok {26} ironic.tests.unit.common.test_policy.PolicyInCodeTestCase.test_node_get [0.022382s] ... ok {26} ironic.tests.unit.common.test_pxe_utils.PXEInterfacesTestCase.test_parse_driver_info_rescue [0.029246s] ... ok {26} ironic.tests.unit.common.test_raid.ValidateRaidConfigurationTestCase.test_validate_configuration_additional_property [0.026260s] ... ok {26} ironic.tests.unit.common.test_raid.ValidateRaidConfigurationTestCase.test_validate_configuration_invalid_raid_level [0.021488s] ... ok {26} ironic.tests.unit.common.test_rpc.TestRequestContextSerializer.test_deserialize_entity_empty_base [0.013376s] ... ok {26} ironic.tests.unit.common.test_rpc.TestUtils.test_get_sensors_notifier [0.011724s] ... ok {26} ironic.tests.unit.common.test_rpc.TestUtils.test_init_globals_notifications_disabled [0.090449s] ... ok {24} ironic.tests.unit.drivers.modules.test_console_utils.ConsoleUtilsTestCase.test_start_socat_console_fail [0.027148s] ... ok {26} ironic.tests.unit.common.test_swift.SwiftTestCase.test_update_object_meta [0.118528s] ... ok {26} ironic.tests.unit.common.test_utils.ValidateConductorGroupTestCase.test_validate_conductor_group_fail [0.018030s] ... ok {26} ironic.tests.unit.conductor.test_allocations.AllocationTestCase.test_check_orphaned_allocations [0.306547s] ... ok {26} ironic.tests.unit.conductor.test_base_manager.StartStopTestCase.test_warning_on_low_workers_pool [0.246917s] ... ok {26} ironic.tests.unit.conductor.test_manager.DestroyNodeTestCase.test_destroy_node_with_allocation [0.177886s] ... ok {26} ironic.tests.unit.conductor.test_manager.DestroyPortTestCase.test_destroy_port_node_locked [0.069179s] ... ok {26} ironic.tests.unit.conductor.test_manager.DoNodeCleanTestCase.test__do_node_clean_automated_enabled [0.361886s] ... ok {26} ironic.tests.unit.conductor.test_manager.DoNodeDeployTestCase.test__do_node_deploy_configdrive_unexpected_error [0.378329s] ... ok {24} ironic.tests.unit.drivers.modules.test_deploy_utils.AgentMethodsTestCase.test_direct_deploy_should_convert_raw_image_partition [0.020607s] ... ok PATCH: /v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 [{'path': '/physical_network', 'value': 'physnet1', 'op': 'add'}] GOT:Response: 406 Not Acceptable Content-Type: application/json Openstack-Request-Id: req-1d63beb6-7c87-491e-b88e-787abbd6708f X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.33 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Request not acceptable.\"}"} {13} ironic.tests.unit.api.controllers.v1.test_port.TestPatch.test_add_physical_network_old_api_version [0.073236s] ... ok {26} ironic.tests.unit.conductor.test_manager.DoNodeVerifyTestCase.test__do_node_verify [0.377276s] ... ok {26} ironic.tests.unit.conductor.test_manager.ManagerDoSyncPowerStateTestCase.test_max_retries_exceeded_notify [0.066396s] ... ok {26} ironic.tests.unit.conductor.test_manager.ManagerSyncLocalStateTestCase.test_worker_limit [0.024146s] ... ok {26} ironic.tests.unit.conductor.test_manager.RaidHardwareTypeTestCases.test_set_target_raid_config_invalid_parameter_value [0.151028s] ... ok {26} ironic.tests.unit.conductor.test_manager.RaidTestCases.test_set_target_raid_config [0.161237s] ... ok {26} ironic.tests.unit.conductor.test_manager.SensorsTestCase.test__filter_out_unsupported_types_all [0.182865s] ... ok DELETE: /v1/volume/targets/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 GOT:Response: 409 Conflict Content-Type: application/json Openstack-Request-Id: req-5222adc3-0b20-4899-a0a3-49f26ac99abf X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Node fake-node is locked by host fake-host, please retry after the current operation is completed.\"}"} {22} ironic.tests.unit.api.controllers.v1.test_volume_target.TestDelete.test_delete_volume_target_node_locked [0.099755s] ... ok {24} ironic.tests.unit.drivers.modules.test_deploy_utils.InstanceInfoTestCase.test_parse_instance_info_whole_disk_image [0.018720s] ... ok {26} ironic.tests.unit.conductor.test_manager.ServiceDoNodeDeployTestCase.test_do_node_deploy_rebuild_active_state_error [0.360643s] ... ok {26} ironic.tests.unit.conductor.test_manager.ServiceDoNodeDeployTestCase.test_do_node_deploy_worker_pool_full [0.280873s] ... ok POST: /v1/nodes {'instance_uuid': None, 'uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123', 'driver_info': {'fake_password': 'fakepass', 'foo': 'bar'}, 'extra': {'foo': 123}, 'driver': 'fake-hardware', 'properties': {'memory_mb': '4096', 'cpu_arch': 'x86_64', 'local_gb': '10', 'cpus': '8'}, 'maintenance': False, 'chassis_uuid': 'e74c40e0-d825-11e2-a28f-0800200c9a66', 'instance_info': {'foo': 'bar', 'image_url': 'http://example.com/test_image_url', 'configdrive': 'TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQ='}} GOT:Response: 201 Created Content-Type: application/json Location: http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123 Openstack-Request-Id: req-f0b41b04-f7b3-4775-abc5-bc2f7bd95fb2 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"target_power_state": null, "links": [{"href": "http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "rel": "self"}, {"href": "http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "rel": "bookmark"}], "target_provision_state": null, "last_error": null, "updated_at": null, "maintenance_reason": null, "provision_state": null, "uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "console_enabled": false, "extra": {"foo": 123}, "provision_updated_at": null, "maintenance": false, "power_state": null, "driver": "fake-hardware", "reservation": null, "properties": {"memory_mb": "4096", "cpu_arch": "x86_64", "local_gb": "10", "cpus": "8"}, "instance_uuid": null, "driver_info": {"fake_password": "******", "foo": "bar"}, "created_at": "2019-06-06T07:02:17.240950+00:00", "ports": [{"href": "http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports", "rel": "self"}, {"href": "http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports", "rel": "bookmark"}], "chassis_uuid": "e74c40e0-d825-11e2-a28f-0800200c9a66", "instance_info": {"foo": "bar", "image_url": "******", "configdrive": "******"}} GET: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123 {} GOT:{u'target_power_state': None, u'links': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'bookmark'}], u'target_provision_state': None, u'last_error': None, u'updated_at': None, u'maintenance_reason': None, u'provision_state': None, u'uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'console_enabled': False, u'extra': {u'foo': 123}, u'provision_updated_at': None, u'maintenance': False, u'power_state': None, u'driver': u'fake-hardware', u'reservation': None, u'properties': {u'memory_mb': u'4096', u'cpu_arch': u'x86_64', u'local_gb': u'10', u'cpus': u'8'}, u'instance_uuid': None, u'driver_info': {u'fake_password': u'******', u'foo': u'bar'}, u'created_at': u'2019-06-06T07:02:17.240950+00:00', u'ports': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'bookmark'}], u'chassis_uuid': u'e74c40e0-d825-11e2-a28f-0800200c9a66', u'instance_info': {u'foo': u'bar', u'image_url': u'******', u'configdrive': u'******'}} {18} ironic.tests.unit.api.controllers.v1.test_node.TestPost.test_create_node_doesnt_contain_id [0.605774s] ... ok {26} ironic.tests.unit.conductor.test_manager.UpdateNodeTestCase.test_update_node_deleting_allocation [0.122623s] ... ok {26} ironic.tests.unit.conductor.test_manager.UpdateNodeTestCase.test_update_node_protected_invalid_state [0.032117s] ... ok {26} ironic.tests.unit.conductor.test_notification_utils.TestNotificationUtils.test_emit_console_notification_error_status [0.025483s] ... ok {26} ironic.tests.unit.conductor.test_rpcapi.RPCAPITestCase.test_continue_node_deploy [0.018285s] ... ok {26} ironic.tests.unit.conductor.test_rpcapi.RPCAPITestCase.test_update_port [0.018735s] ... ok {26} ironic.tests.unit.conductor.test_rpcapi.RPCAPITestCase.test_update_volume_connector [0.022015s] ... ok {26} ironic.tests.unit.conductor.test_steps.NodeCleaningStepsTestCase.test__validate_user_clean_steps_missing_required_arg [0.110223s] ... ok {26} ironic.tests.unit.conductor.test_steps.NodeDeployStepsTestCase.test__get_all_deployment_steps_duplicate_user_steps [0.117893s] ... ok {26} ironic.tests.unit.conductor.test_steps.NodeDeployStepsTestCase.test__get_deployment_steps [0.106475s] ... ok PATCH: /v1/volume/connectors/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 [{'path': '/node_uuid', 'value': 123, 'op': 'add'}] GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-f7ba4e22-6a05-41dc-b977-3839c502d26b X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Expected a UUID for node_uuid, but received 123.\"}"} {26} ironic.tests.unit.conductor.test_task_manager.TaskManagerStateModelTestCases.test_process_event_sets_target_state [0.013534s] ... ok {14} ironic.tests.unit.api.controllers.v1.test_volume_connector.TestPatch.test_add_node_uuid_invalid_type [0.043593s] ... ok {26} ironic.tests.unit.conductor.test_task_manager.TaskManagerTestCase.test_excl_lock [0.033076s] ... ok {26} ironic.tests.unit.conductor.test_task_manager.TaskManagerTestCase.test_excl_lock_reserve_exception [0.030723s] ... ok {26} ironic.tests.unit.conductor.test_task_manager.TaskManagerTestCase.test_spawn_after_spawn_fails [0.042143s] ... ok {26} ironic.tests.unit.conductor.test_utils.ErrorHandlersTestCase.test_cleaning_error_handler_no_teardown [0.019524s] ... ok {26} ironic.tests.unit.conductor.test_utils.ErrorHandlersTestCase.test_rescuing_error_handler [0.020895s] ... ok {26} ironic.tests.unit.conductor.test_utils.NodePowerActionTestCase.test_node_power_action_failed_getting_state [0.130516s] ... ok {26} ironic.tests.unit.db.sqlalchemy.test_migrations.TestWalkVersions.test_walk_versions_all_default [0.013718s] ... ok {26} ironic.tests.unit.db.test_bios_settings.DbBIOSSettingTestCase.test_get_bios_setting_list_node_not_exist [0.031005s] ... ok {26} ironic.tests.unit.db.test_bios_settings.DbBIOSSettingTestCase.test_update_bios_setting_list_node_not_exist [0.041284s] ... ok {26} ironic.tests.unit.db.test_chassis.DbChassisTestCase.test_destroy_chassis_that_does_not_exist [0.057918s] ... ok {26} ironic.tests.unit.db.test_conductor.DbConductorTestCase.test_register_conductor_hardware_interfaces_duplicate [0.044530s] ... ok {26} ironic.tests.unit.db.test_node_tags.DbNodeTagTestCase.test_delete_node_tag [0.050419s] ... ok {26} ironic.tests.unit.db.test_node_tags.DbNodeTagTestCase.test_delete_node_tag_node_not_found [0.024687s] ... ok {26} ironic.tests.unit.db.test_node_tags.DbNodeTagTestCase.test_node_tag_node_not_exist [0.028425s] ... ok {26} ironic.tests.unit.db.test_node_traits.DbNodeTraitTestCase.test_node_trait_node_not_exist [0.026213s] ... ok {26} ironic.tests.unit.db.test_nodes.DbNodeTestCase.test_check_node_list_non_existing [0.028999s] ... ok {26} ironic.tests.unit.db.test_nodes.DbNodeTestCase.test_get_nodeinfo_list_inspection [0.040998s] ... ok {26} ironic.tests.unit.db.test_nodes.DbNodeTestCase.test_reservation_in_exception_message [0.041392s] ... ok {26} ironic.tests.unit.db.test_nodes.DbNodeTestCase.test_traits_get_destroyed_after_destroying_a_node [0.057738s] ... ok {26} ironic.tests.unit.dhcp.test_neutron.TestNeutron.test__get_port_ip_address_for_portgroup_with_exception [0.077202s] ... ok {26} ironic.tests.unit.drivers.modules.ansible.test_deploy.TestAnsibleDeploy.test_reboot_and_finish_deploy_force_reboot [0.102063s] ... ok {26} ironic.tests.unit.drivers.modules.ansible.test_deploy.TestAnsibleMethods.test__get_configdrive_path [0.021511s] ... ok {26} ironic.tests.unit.drivers.modules.drac.test_power.DracPowerTestCase.test_set_power_state_timeout [0.070585s] ... ok {26} ironic.tests.unit.drivers.modules.drac.test_raid.DracRaidInterfaceTestCase.test_create_configuration_with_max_size_without_backing_disks [0.096687s] ... ok {26} ironic.tests.unit.drivers.modules.drac.test_raid.DracRaidInterfaceTestCase.test_create_configuration_with_predefined_number_of_phyisical_disks [0.119291s] ... ok {26} ironic.tests.unit.drivers.modules.ibmc.test_management.IBMCManagementTestCase.test_get_boot_device [0.064504s] ... ok {26} ironic.tests.unit.drivers.modules.ibmc.test_power.IBMCPowerTestCase.test_reboot_not_reached [2.594206s] ... ok {26} ironic.tests.unit.drivers.modules.ibmc.test_power.IBMCPowerTestCase.test_reboot_timeout [2.714040s] ... ok {26} ironic.tests.unit.drivers.modules.ibmc.test_utils.IBMCUtilsTestCase.test_parse_driver_info_invalid_value_verify_ca [0.023358s] ... ok {26} ironic.tests.unit.drivers.modules.ibmc.test_utils.IBMCUtilsTestCase.test_parse_driver_info_valid_capath [0.023745s] ... ok {26} ironic.tests.unit.drivers.modules.ilo.test_common.IloCommonMethodsTestCase.test_copy_image_to_swift_throws_error_if_swift_operation_fails [0.038456s] ... ok {26} ironic.tests.unit.drivers.modules.ilo.test_common.IloCommonMethodsTestCase.test_get_server_post_state_fail [0.071673s] ... ok {26} ironic.tests.unit.drivers.modules.ilo.test_common.IloCommonMethodsTestCase.test_update_boot_mode_unknown_except [0.066266s] ... ok {26} ironic.tests.unit.drivers.modules.ilo.test_firmware_processor.FirmwareProcessorTestCase.test_get_and_validate_firmware_image_info_fails_for_invalid_component [0.010352s] ... ok {26} ironic.tests.unit.drivers.modules.ilo.test_management.IloManagementTestCase.test__update_firmware_sum_final_environment_error [0.075140s] ... ok {26} ironic.tests.unit.drivers.modules.ilo.test_management.IloManagementTestCase.test_clear_iscsi_boot_target_failed [0.066140s] ... ok {26} ironic.tests.unit.drivers.modules.ilo.test_power.IloPowerTestCase.test_get_supported_power_states [0.066232s] ... ok {26} ironic.tests.unit.drivers.modules.irmc.test_boot.IRMCDeployPrivateMethodsTestCase.test__parse_instance_info_with_boot_iso_glance_ok [0.021449s] ... ok {26} ironic.tests.unit.drivers.modules.irmc.test_boot.IRMCPXEBootBasicTestCase.test_validate_fail_trusted_boot_with_secure_boot [0.054750s] ... ok {26} ironic.tests.unit.drivers.modules.irmc.test_boot.IRMCVirtualMediaBootTestCase.test_clean_up_instance_without_secure_boot [0.095472s] ... ok {26} ironic.tests.unit.drivers.modules.irmc.test_boot.IRMCVirtualMediaBootTestCase.test_prepare_ramdisk_glance_image_cleaning [0.098340s] ... ok PATCH: /v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 [{'path': '/physical_network', 'value': 'physnet1', 'op': 'add'}] GOT:Response: 200 OK Content-Type: application/json Openstack-Request-Id: req-847fe89e-47f4-42c4-81d7-6a0c244b0e0a X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.34 {"local_link_connection": {"switch_info": "switch1", "port_id": "Ethernet3/1", "switch_id": "0a:1b:2c:3d:4e:5f"}, "node_uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "links": [{"href": "http://localhost/v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "rel": "self"}, {"href": "http://localhost/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "rel": "bookmark"}], "extra": {}, "pxe_enabled": true, "portgroup_uuid": null, "updated_at": "2019-06-06T07:02:17.637336+00:00", "physical_network": "physnet1", "address": "52:54:00:cf:2d:31", "internal_info": {"bar": "buzz"}, "created_at": "2019-06-06T07:02:17.582768+00:00"} {26} ironic.tests.unit.drivers.modules.irmc.test_management.IRMCManagementTestCase.test_management_interface_inject_nmi_fail [0.067181s] ... ok {26} ironic.tests.unit.drivers.modules.irmc.test_periodic_task.iRMCPeriodicTaskTestCase.test__query_raid_config_fgi_status_without_input [0.045937s] ... ok {16} ironic.tests.unit.api.controllers.v1.test_port.TestPatch.test_add_physical_network [0.103775s] ... ok {26} ironic.tests.unit.drivers.modules.irmc.test_power.IRMCPowerTestCase.test_set_power_state [0.070003s] ... ok {26} ironic.tests.unit.drivers.modules.irmc.test_raid.IRMCRaidConfigurationInternalMethodsTestCase.test___fail_validation_with_none_raid_adapter_profile [0.058854s] ... ok {26} ironic.tests.unit.drivers.modules.irmc.test_raid.IRMCRaidConfigurationInternalMethodsTestCase.test__fail_validation_with_not_enough_valid_disks [0.052822s] ... ok {26} ironic.tests.unit.drivers.modules.network.test_common.TestCommonFunctions.test_get_free_port_like_object_portgroup_first [0.071746s] ... ok {26} ironic.tests.unit.drivers.modules.network.test_flat.TestFlatInterface.test_validate_from_node [0.078284s] ... ok {26} ironic.tests.unit.drivers.modules.network.test_neutron.NeutronInterfaceTestCase.test_validate_boot_option_netboot [0.079814s] ... ok {26} ironic.tests.unit.drivers.modules.redfish.test_power.RedfishPowerTestCase.test_get_properties [0.048091s] ... ok {26} ironic.tests.unit.drivers.modules.test_agent.AgentRescueTestCase.test_agent_unrescue_with_smartnic_port [0.091566s] ... ok {26} ironic.tests.unit.drivers.modules.test_agent.TestAgentDeploy.test_prepare_with_neutron_net_capabilities_as_string [0.142255s] ... ok {26} ironic.tests.unit.drivers.modules.test_agent_base_vendor.AgentDeployMixinTest.test_configure_local_boot_boot_loader_install_fail [0.154311s] ... ok {26} ironic.tests.unit.drivers.modules.test_agent_base_vendor.AgentDeployMixinTest.test_continue_cleaning_with_hook [0.073168s] ... ok {26} ironic.tests.unit.drivers.modules.test_agent_base_vendor.AgentDeployMixinTest.test_reboot_and_finish_deploy_configure_tenant_network_exception [0.127663s] ... ok {26} ironic.tests.unit.drivers.modules.test_agent_client.TestAgentClient.test_content_type_header [0.009968s] ... ok {26} ironic.tests.unit.drivers.modules.test_console_utils.ConsoleUtilsTestCase.test_start_shellinabox_console_nopid [0.032357s] ... ok {26} ironic.tests.unit.drivers.modules.test_deploy_utils.AgentMethodsTestCase.test_prepare_inband_cleaning_fast_track [0.087152s] ... ok {26} ironic.tests.unit.drivers.modules.test_deploy_utils.InstanceInfoTestCase.test__check_disk_layout_unchanged [0.020463s] ... ok {26} ironic.tests.unit.drivers.modules.test_deploy_utils.TestStorageInterfaceUtils.test_check_interface_capability [0.020337s] ... ok {26} ironic.tests.unit.drivers.modules.test_image_cache.TestUpdateImages.test__delete_master_path_if_stale_master_up_to_date [0.014053s] ... ok {26} ironic.tests.unit.drivers.modules.test_image_cache.TestUpdateImages.test__delete_master_path_if_stale_no_master [0.011648s] ... ok {26} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolCheckInitTestCase.test_console_init_calls_for_socat_already_checked [0.016001s] ... ok {26} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolDriverTestCase.test_set_power_on_fail [0.077229s] ... ok {26} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolSocatDriverTestCase.test__get_ipmi_cmd_without_user [0.056812s] ... ok {26} ironic.tests.unit.drivers.modules.test_iscsi_deploy.ISCSIDeployTestCase.test_prepare_fast_track [0.077191s] ... ok {26} ironic.tests.unit.drivers.modules.test_iscsi_deploy.IscsiDeployMethodsTestCase.test_get_deploy_info_netboot_specified [0.019046s] ... ok {26} ironic.tests.unit.drivers.modules.test_iscsi_deploy.IscsiDeployMethodsTestCase.test_validate_invalid_root_device_hints [0.048247s] ... ok {26} ironic.tests.unit.drivers.modules.test_snmp.SNMPDeviceDriverTestCase.test_apc_rackpdu_power_state_on [0.015139s] ... ok {26} ironic.tests.unit.drivers.modules.test_snmp.SNMPDeviceDriverTestCase.test_auto_power_off [0.025713s] ... ok POST: /v1/portgroups {'node_uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123', 'uuid': '6eb02b44-18a3-4659-8c0b-8d2802581ae4', 'extra': {}, 'standalone_ports_supported': True, 'mode': '802.3ad', 'address': '52:54:00:cf:2d:31', 'properties': {'bond_prop': 123}, 'name': 'fooname'} GOT:Response: 201 Created Content-Type: application/json Location: http://localhost/v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4 Openstack-Request-Id: req-a121ca00-757b-4a85-b887-8ba63ca66979 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.26 {"node_uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "uuid": "6eb02b44-18a3-4659-8c0b-8d2802581ae4", "links": [{"href": "http://localhost/v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4", "rel": "self"}, {"href": "http://localhost/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4", "rel": "bookmark"}], "extra": {}, "created_at": "2019-06-06T07:02:17.351013+00:00", "updated_at": null, "ports": [{"href": "http://localhost/v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4/ports", "rel": "self"}, {"href": "http://localhost/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4/ports", "rel": "bookmark"}], "standalone_ports_supported": true, "mode": "802.3ad", "address": "52:54:00:cf:2d:31", "internal_info": {}, "properties": {"bond_prop": 123}, "name": "fooname"} {26} ironic.tests.unit.drivers.modules.test_snmp.SNMPDriverTestCase.test_set_power_state_error [0.061010s] ... ok {31} ironic.tests.unit.api.controllers.v1.test_portgroup.TestPost.test_create_portgroup_mode_properties [0.099840s] ... ok {31} ironic.tests.unit.api.controllers.v1.test_types.TestLocalLinkConnectionType.test_local_link_connection_type_invalid_key [0.016706s] ... ok {31} ironic.tests.unit.api.controllers.v1.test_utils.TestApiUtils.test_check_allow_manage_verbs_fail [0.020028s] ... ok {26} ironic.tests.unit.drivers.modules.test_snmp.SNMPValidateParametersTestCase.test__parse_driver_info_snmp_v3_priv_short_key [0.014065s] ... ok {31} ironic.tests.unit.api.controllers.v1.test_utils.TestApiUtils.test_check_allow_provide_verbs_fail [0.018767s] ... ok {31} ironic.tests.unit.api.controllers.v1.test_utils.TestNodeIdent.test_allow_node_logical_names_post_name [0.017274s] ... ok PATCH: /v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 [{'path': '/local_link_connection/switch_id', 'op': 'remove'}] GOT:Response: 406 Not Acceptable Content-Type: application/json Openstack-Request-Id: req-d7c99926-be4d-4b82-82b5-dbe1f17bb3e2 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Request not acceptable.\"}"} {13} ironic.tests.unit.api.controllers.v1.test_port.TestPatch.test_remove_local_link_connection_old_api [0.065682s] ... ok {26} ironic.tests.unit.drivers.modules.ucs.test_helper.UcsValidateParametersTestCase.test_parse_driver_info_missing_address [0.051417s] ... ok {26} ironic.tests.unit.drivers.modules.ucs.test_power.UcsPowerTestCase.test_set_power_state_timeout [0.642442s] ... ok {26} ironic.tests.unit.drivers.test_cisco.CiscoUCSStandaloneHardwareTestCase.test_override_with_ipmi_interfaces [0.056174s] ... ok {26} ironic.tests.unit.drivers.test_ibmc.IBMCHardwareTestCase.test_default_interfaces [0.068075s] ... ok {26} ironic.tests.unit.drivers.test_utils.UtilsRamdiskLogsTestCase.test_collect_ramdisk_logs_storage_command_fail [0.013715s] ... ok GET: /v1/volume/targets/1be26c0b-03f2-4d2e-ae87-c02d7f33c781?detail=True {} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-d4988537-5ea5-4899-a11b-e5ff39d691ee X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Unknown argument: \\\"detail\\\"\"}"} {22} ironic.tests.unit.api.controllers.v1.test_volume_target.TestListVolumeTargets.test_detail_against_single [0.067310s] ... ok {26} ironic.tests.unit.objects.test_bios.TestBIOSSettingObject.test_get [0.016013s] ... ok GET: /v1/volume/connectors?node=test-node {} GOT:{u'connectors': [{u'node_uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'type': u'iqn', u'uuid': u'0a25f823-a655-4d9f-8e24-e0883ddd66cb', u'links': [{u'href': u'http://localhost/v1/volume/connectors/0a25f823-a655-4d9f-8e24-e0883ddd66cb', u'rel': u'self'}, {u'href': u'http://localhost/volume/connectors/0a25f823-a655-4d9f-8e24-e0883ddd66cb', u'rel': u'bookmark'}], u'connector_id': u'test-value-0'}, {u'node_uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'type': u'iqn', u'uuid': u'2aee2763-9fda-47d1-80ad-48c7c1a579fd', u'links': [{u'href': u'http://localhost/v1/volume/connectors/2aee2763-9fda-47d1-80ad-48c7c1a579fd', u'rel': u'self'}, {u'href': u'http://localhost/volume/connectors/2aee2763-9fda-47d1-80ad-48c7c1a579fd', u'rel': u'bookmark'}], u'connector_id': u'test-value-1'}, {u'node_uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'type': u'iqn', u'uuid': u'ed429f31-43af-4c5e-9711-865fa7bc81f9', u'links': [{u'href': u'http://localhost/v1/volume/connectors/ed429f31-43af-4c5e-9711-865fa7bc81f9', u'rel': u'self'}, {u'href': u'http://localhost/volume/connectors/ed429f31-43af-4c5e-9711-865fa7bc81f9', u'rel': u'bookmark'}], u'connector_id': u'test-value-2'}]} {27} ironic.tests.unit.api.controllers.v1.test_volume_connector.TestListVolumeConnectors.test_get_all_by_node_name_ok [0.121076s] ... ok {26} ironic.tests.unit.objects.test_bios.TestBIOSSettingObject.test_list_save [0.015209s] ... ok GET: /v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781?fields=uuid,physical_network {} GOT:Response: 406 Not Acceptable Content-Type: application/json Openstack-Request-Id: req-73346f71-4048-45d0-a6d4-5151c51aa3c8 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.33 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Request not acceptable.\"}"} GET: /v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781?fields=uuid,physical_network {} GOT:{u'physical_network': u'physnet1', u'uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c781', u'links': [{u'href': u'http://localhost/v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781', u'rel': u'self'}, {u'href': u'http://localhost/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781', u'rel': u'bookmark'}]} {20} ironic.tests.unit.api.controllers.v1.test_port.TestListPorts.test_get_custom_fields_physical_network [0.092982s] ... ok {26} ironic.tests.unit.objects.test_conductor.TestConductorObject.test_touch [0.023679s] ... ok {26} ironic.tests.unit.objects.test_deploy_template.TestDeployTemplateObject.test_list [0.017849s] ... ok {26} ironic.tests.unit.objects.test_fields.TestFlexibleDictField.test_coerce_nullable_translation [0.009461s] ... ok {26} ironic.tests.unit.objects.test_fields.TestNotificationStatusField.test_coerce_bad_value [0.009212s] ... ok {26} ironic.tests.unit.objects.test_node.TestConvertToVersion.test_bios_unsupported_missing [0.015031s] ... ok {26} ironic.tests.unit.objects.test_notification.TestNotificationBase.test_no_emit_notifs_disabled [0.020604s] ... ok {26} ironic.tests.unit.objects.test_objects.TestMisc.test_max_version_two [0.009414s] ... ok {26} ironic.tests.unit.objects.test_port.TestConvertToVersion.test_physnet_supported_set [0.013682s] ... ok {26} ironic.tests.unit.objects.test_portgroup.TestConvertToVersion.test_vif_in_extra_lower_version [0.013949s] ... ok GET: /v1/portgroups?address=aa:bb:cc:dd:ee:ff {} GOT:{u'portgroups': []} {26} ironic.tests.unit.test_base.BlockExecuteTestCase.test_can_mock_execute [0.010766s] ... ok {13} ironic.tests.unit.api.controllers.v1.test_portgroup.TestListPortgroups.test_portgroup_by_address_non_existent_address [0.066737s] ... ok GET: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123 {} GOT:{u'target_power_state': None, u'links': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'rel': u'bookmark'}], u'target_provision_state': None, u'last_error': None, u'updated_at': None, u'maintenance_reason': None, u'provision_state': None, u'uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'console_enabled': False, u'extra': {}, u'provision_updated_at': None, u'maintenance': False, u'power_state': None, u'driver': u'fake-hardware', u'reservation': None, u'properties': {u'memory_mb': u'4096', u'cpu_arch': u'x86_64', u'local_gb': u'10', u'cpus': u'8'}, u'instance_uuid': None, u'driver_info': {u'fake_password': u'******', u'foo': u'bar'}, u'created_at': None, u'ports': [{u'href': u'http://localhost/v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'self'}, {u'href': u'http://localhost/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/ports', u'rel': u'bookmark'}], u'chassis_uuid': None, u'instance_info': {u'foo': u'bar', u'image_url': u'******', u'configdrive': u'******'}} {30} ironic.tests.unit.api.test_acl.TestACL.test_authenticated [0.082859s] ... ok PATCH: /v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 [{'path': '/physical_network', 'value': 'physnet2', 'op': 'replace'}] GOT:Response: 200 OK Content-Type: application/json Openstack-Request-Id: req-0bbaa22f-abb7-4c5c-9c55-b323ded5f751 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.34 {"local_link_connection": {"switch_info": "switch1", "port_id": "Ethernet3/1", "switch_id": "0a:1b:2c:3d:4e:5f"}, "node_uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "links": [{"href": "http://localhost/v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "rel": "self"}, {"href": "http://localhost/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "rel": "bookmark"}], "extra": {}, "pxe_enabled": true, "portgroup_uuid": null, "updated_at": "2019-06-06T07:02:17.735864+00:00", "physical_network": "physnet2", "address": "52:54:00:cf:2d:31", "internal_info": {"bar": "buzz"}, "created_at": "2019-06-06T07:02:17.665898+00:00"} {15} ironic.tests.unit.api.controllers.v1.test_port.TestPatch.test_replace_physical_network [0.298514s] ... ok GET: /v1/portgroups/8ba109bc-0212-486c-b08d-bb8567371354/ports {} GOT:Response: 404 Not Found Content-Type: application/json {"error_message": "{\"code\": 404, \"description\": \"\", \"title\": \"Not Found\"}"} {13} ironic.tests.unit.api.controllers.v1.test_portgroup.TestListPortgroups.test_ports_subresource_no_portgroups_allowed [0.058745s] ... ok PATCH: /v1/ports/6e0ee65d-ed04-4816-8462-dbb0326c786e [{'path': '/extra/foo', 'value': 'bar', 'op': 'add'}] GOT:Response: 404 Not Found Content-Type: application/json Openstack-Request-Id: req-46a56228-e4f7-47dc-9e6e-b1e466ae0e15 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Port 6e0ee65d-ed04-4816-8462-dbb0326c786e could not be found.\"}"} {16} ironic.tests.unit.api.controllers.v1.test_port.TestPatch.test_update_not_found [0.067728s] ... ok POST: /v1/nodes {'instance_uuid': None, 'uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123', 'driver_info': {'fake_password': 'fakepass', 'foo': 'bar'}, 'extra': {}, 'conductor_group': 'foo', 'driver': 'fake-hardware', 'properties': {'memory_mb': '4096', 'cpu_arch': 'x86_64', 'local_gb': '10', 'cpus': '8'}, 'maintenance': False, 'chassis_uuid': 'e74c40e0-d825-11e2-a28f-0800200c9a66', 'instance_info': {'foo': 'bar', 'image_url': 'http://example.com/test_image_url', 'configdrive': 'TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQ='}} GOT:Response: 406 Not Acceptable Content-Type: application/json Openstack-Request-Id: req-3958ff42-8e54-4ead-b275-74873b2ea138 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.45 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Request not acceptable.\"}"} {18} ironic.tests.unit.api.controllers.v1.test_node.TestPost.test_create_node_specify_conductor_group_bad_version [0.063028s] ... ok GET: /v1/portgroups/2e7e89d7-68fd-48c1-9c13-0fcf52df7086 {} GOT:{u'node_uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'uuid': u'2e7e89d7-68fd-48c1-9c13-0fcf52df7086', u'links': [{u'href': u'http://localhost/v1/portgroups/2e7e89d7-68fd-48c1-9c13-0fcf52df7086', u'rel': u'self'}, {u'href': u'http://localhost/portgroups/2e7e89d7-68fd-48c1-9c13-0fcf52df7086', u'rel': u'bookmark'}], u'extra': {}, u'created_at': u'2019-06-06T07:02:17.807866+00:00', u'updated_at': None, u'properties': {}, u'standalone_ports_supported': True, u'mode': u'active-backup', u'address': u'52:54:00:cf:2d:31', u'internal_info': {u'bar': u'buzz'}, u'ports': [{u'href': u'http://localhost/v1/portgroups/2e7e89d7-68fd-48c1-9c13-0fcf52df7086/ports', u'rel': u'self'}, {u'href': u'http://localhost/portgroups/2e7e89d7-68fd-48c1-9c13-0fcf52df7086/ports', u'rel': u'bookmark'}], u'name': u'fooname'} GET: /v1/portgroups/2e7e89d7-68fd-48c1-9c13-0fcf52df7086 {} GOT:{u'node_uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'uuid': u'2e7e89d7-68fd-48c1-9c13-0fcf52df7086', u'links': [{u'href': u'http://localhost/v1/portgroups/2e7e89d7-68fd-48c1-9c13-0fcf52df7086', u'rel': u'self'}, {u'href': u'http://localhost/portgroups/2e7e89d7-68fd-48c1-9c13-0fcf52df7086', u'rel': u'bookmark'}], u'extra': {}, u'created_at': u'2019-06-06T07:02:17.807866+00:00', u'updated_at': None, u'properties': {}, u'standalone_ports_supported': True, u'mode': u'active-backup', u'address': u'52:54:00:cf:2d:31', u'internal_info': {u'bar': u'buzz'}, u'ports': [{u'href': u'http://localhost/v1/portgroups/2e7e89d7-68fd-48c1-9c13-0fcf52df7086/ports', u'rel': u'self'}, {u'href': u'http://localhost/portgroups/2e7e89d7-68fd-48c1-9c13-0fcf52df7086/ports', u'rel': u'bookmark'}], u'name': u'fooname'} GET: /portgroups/2e7e89d7-68fd-48c1-9c13-0fcf52df7086 {} GOT:{u'node_uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'uuid': u'2e7e89d7-68fd-48c1-9c13-0fcf52df7086', u'links': [{u'href': u'http://localhost/v1/portgroups/2e7e89d7-68fd-48c1-9c13-0fcf52df7086', u'rel': u'self'}, {u'href': u'http://localhost/portgroups/2e7e89d7-68fd-48c1-9c13-0fcf52df7086', u'rel': u'bookmark'}], u'extra': {}, u'created_at': u'2019-06-06T07:02:17.807866+00:00', u'updated_at': None, u'properties': {}, u'standalone_ports_supported': True, u'mode': u'active-backup', u'address': u'52:54:00:cf:2d:31', u'internal_info': {u'bar': u'buzz'}, u'ports': [{u'href': u'http://localhost/v1/portgroups/2e7e89d7-68fd-48c1-9c13-0fcf52df7086/ports', u'rel': u'self'}, {u'href': u'http://localhost/portgroups/2e7e89d7-68fd-48c1-9c13-0fcf52df7086/ports', u'rel': u'bookmark'}], u'name': u'fooname'} {29} ironic.tests.unit.api.controllers.v1.test_portgroup.TestListPortgroups.test_links [0.424517s] ... ok PATCH: /v1/volume/connectors/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 [{'path': '/node_uuid', 'value': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123', 'op': 'replace'}] GOT:Response: 200 OK Content-Type: application/json Openstack-Request-Id: req-1cc7efb6-d0d3-4546-9e43-55a3ef5b4561 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"node_uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "links": [{"href": "http://localhost/v1/volume/connectors/1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "rel": "self"}, {"href": "http://localhost/volume/connectors/1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "rel": "bookmark"}], "extra": {}, "created_at": "2019-06-06T07:02:18.592906+00:00", "updated_at": null, "connector_id": "iqn.2012-06.com.example:initiator", "type": "iqn"} {14} ironic.tests.unit.api.controllers.v1.test_volume_connector.TestPatch.test_replace_node_uuid [0.118551s] ... ok PATCH: /v1/volume/connectors/f40a3df6-a4de-4b37-ba01-afb999c390c4 [{'path': '/extra/foo', 'value': 'bar', 'op': 'add'}] GOT:Response: 404 Not Found Content-Type: application/json Openstack-Request-Id: req-56f3f3df-1025-4fb6-94e4-3995aafcdf6f X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Volume connector f40a3df6-a4de-4b37-ba01-afb999c390c4 could not be found.\"}"} {27} ironic.tests.unit.api.controllers.v1.test_volume_connector.TestPatch.test_update_not_found [0.073420s] ... ok POST: /v1/volume/connectors {'node_uuid': '1a1a1a1a-2b2b-3c3c-4d4d-5e5e5e5e5e5e', 'extra': {}, 'type': 'iqn', 'uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c781', 'connector_id': 'iqn.2012-06.com.example:initiator'} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-e730cb03-ecd5-45b1-9278-1416c748c22f X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Node 1a1a1a1a-2b2b-3c3c-4d4d-5e5e5e5e5e5e could not be found.\"}"} {31} ironic.tests.unit.api.controllers.v1.test_volume_connector.TestPost.test_create_volume_connector_node_uuid_not_found [0.078201s] ... ok GET: /v1/ports?sort_key=foo {} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-625004a7-d3fc-466c-9d9d-c71375937087 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"The sort_key value \\\"foo\\\" is an invalid field for sorting\"}"} GET: /v1/ports?sort_key=extra {} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-69ee5759-7209-4b8a-b1a6-c12de3620477 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"The sort_key value extra is an invalid field for sorting\"}"} GET: /v1/ports?sort_key=internal_info {} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-7c94b9ff-63f1-4f34-8d1d-0b6249b1bae5 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"The sort_key value internal_info is an invalid field for sorting\"}"} GET: /v1/ports?sort_key=local_link_connection {} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-52d78bfc-75eb-4b87-bff0-7358fd779081 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"The sort_key value local_link_connection is an invalid field for sorting\"}"} {4} ironic.tests.unit.api.controllers.v1.test_port.TestListPorts.test_sort_key_invalid [0.089815s] ... ok GET: / {} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-e31c366e-e005-450b-adc0-f3ff67602abf {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Test exception message.\\nTraceback (most recent call last):\\n File \\\"/opt/stack/ironic/ironic/common/rpc/amqp.py\\\", line 434, in _process_data\\\\n **args)\\n File \\\"/opt/stack/ironic/ironic/common/rpc/dispatcher.py\\\", line 172, in dispatch\\\\n result = getattr(proxyobj, method)(ctxt, **kwargs)\"}"} {30} ironic.tests.unit.api.test_hooks.TestNoExceptionTracebackHook.test_hook_on_clientfault_debug_tracebacks [0.044069s] ... ok DELETE: /v1/volume/targets/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 GOT:Response: 404 Not Found Content-Type: application/json {"error_message": "{\"code\": 404, \"description\": \"\", \"title\": \"Not Found\"}"} {27} ironic.tests.unit.api.controllers.v1.test_volume_target.TestDelete.test_delete_volume_target_byid_invalid_api_version [0.052600s] ... ok {24} ironic.tests.unit.drivers.modules.test_deploy_utils.TestBuildInstanceInfoForHttpProvisioning.test_build_instance_info_force_raw_new_fields_none [0.579910s] ... ok GET: /v1/ {} GOT:{u'media_types': [{u'base': u'application/json', u'type': u'application/vnd.openstack.ironic.v1+json'}], u'links': [{u'href': u'http://localhost/v1/', u'rel': u'self'}, {u'href': u'https://docs.openstack.org//ironic/latest/contributor//webapi.html', u'type': u'text/html', u'rel': u'describedby'}], u'drivers': [{u'href': u'http://localhost/v1/drivers/', u'rel': u'self'}, {u'href': u'http://localhost/drivers/', u'rel': u'bookmark'}], u'portgroups': [{u'href': u'http://localhost/v1/portgroups/', u'rel': u'self'}, {u'href': u'http://localhost/portgroups/', u'rel': u'bookmark'}], u'id': u'v1', u'version': {u'status': u'CURRENT', u'min_version': u'1.1', u'version': u'1.56', u'id': u'v1', u'links': [{u'href': u'http://localhost/v1/', u'rel': u'self'}]}, u'lookup': [{u'href': u'http://localhost/v1/lookup/', u'rel': u'self'}, {u'href': u'http://localhost/lookup/', u'rel': u'bookmark'}], u'heartbeat': [{u'href': u'http://localhost/v1/heartbeat/', u'rel': u'self'}, {u'href': u'http://localhost/heartbeat/', u'rel': u'bookmark'}], u'nodes': [{u'href': u'http://localhost/v1/nodes/', u'rel': u'self'}, {u'href': u'http://localhost/nodes/', u'rel': u'bookmark'}], u'ports': [{u'href': u'http://localhost/v1/ports/', u'rel': u'self'}, {u'href': u'http://localhost/ports/', u'rel': u'bookmark'}], u'chassis': [{u'href': u'http://localhost/v1/chassis/', u'rel': u'self'}, {u'href': u'http://localhost/chassis/', u'rel': u'bookmark'}]} {3} ironic.tests.unit.api.test_root.TestV1Root.test_get_v1_23_root [0.051017s] ... ok {3} ironic.tests.unit.cmd.test_conductor.ConductorStartTestCase.test_warn_on_missing_default_boot_option [0.042141s] ... ok {3} ironic.tests.unit.cmd.test_dbsync.OnlineMigrationTestCase.test__run_online_data_migrations_max_count_neg [0.031132s] ... ok {3} ironic.tests.unit.common.test_driver_factory.CheckAndUpdateNodeInterfacesTestCase.test_node_update_dynamic_driver_set_interfaces [0.169233s] ... ok {3} ironic.tests.unit.common.test_driver_factory.HardwareTypeLoadTestCase.test_build_driver_for_task_no_defaults [0.094359s] ... ok {3} ironic.tests.unit.common.test_driver_factory.WarnUnsupportedDriversTestCase.test__warn_if_unsupported_with_supported [0.021081s] ... ok {3} ironic.tests.unit.common.test_hash_ring.HashRingManagerWithGroupsTestCase.test_hash_ring_manager_automatic_retry [0.084380s] ... ok {3} ironic.tests.unit.common.test_image_service.FileImageServiceTestCase.test_download_hard_link [0.025189s] ... ok {3} ironic.tests.unit.common.test_images.FsImageTestCase.test__mount_deploy_iso_fail_no_esp_imageimg [0.019297s] ... ok {24} ironic.tests.unit.drivers.modules.test_deploy_utils.ValidateParametersTestCase.test__get_img_instance_info_good [0.018330s] ... ok {3} ironic.tests.unit.common.test_images.IronicImagesTestCase.test_fetch_image_service_force_raw [0.016378s] ... ok {3} ironic.tests.unit.common.test_network.TestNetwork.test_get_node_vif_ids_no_ports_no_portgroups [0.089543s] ... ok {3} ironic.tests.unit.common.test_neutron.TestNeutronNetworkActions.test_add_ports_to_network_with_sg [0.141226s] ... ok {3} ironic.tests.unit.common.test_pxe_utils.TestPXEUtils.test_create_ipxe_boot_script_copy_file_different [0.044011s] ... ok {3} ironic.tests.unit.common.test_rpc.TestRequestContextSerializer.test_serialize_entity_empty_base [0.017343s] ... ok {3} ironic.tests.unit.common.test_swift.SwiftTestCase.test_delete_object [0.097536s] ... ok {3} ironic.tests.unit.common.test_utils.GetUpdatedCapabilitiesTestCase.test_get_updated_capabilities_capabilities_not_dict [0.010671s] ... ok {3} ironic.tests.unit.common.test_wsgi_service.TestWSGIService.test_workers_set_negative_setting [0.055425s] ... ok {3} ironic.tests.unit.conductor.test_base_manager.StartStopTestCase.test_start_registers_driver_specific_tasks [0.089802s] ... ok {3} ironic.tests.unit.conductor.test_manager.ChangeNodePowerStateTestCase.test_change_node_power_state_node_already_locked [0.238745s] ... ok {3} ironic.tests.unit.conductor.test_manager.DoNodeDeployTestCase.test__do_node_deploy_configdrive_db_error [0.317082s] ... ok {3} ironic.tests.unit.conductor.test_manager.DoNodeDeployTestCase.test__do_node_deploy_configdrive_with_network_data [0.443946s] ... ok {3} ironic.tests.unit.conductor.test_manager.DoNodeTearDownTestCase.test_do_node_tear_down_validate_fail [0.104513s] ... ok {3} ironic.tests.unit.conductor.test_manager.DoProvisioningActionTestCase.test_do_provision_action_abort_manual_clean [0.334442s] ... ok {3} ironic.tests.unit.conductor.test_manager.ManagerDoSyncPowerStateTestCase.test_get_power_state_error [0.021259s] ... ok {3} ironic.tests.unit.conductor.test_manager.ManagerDoSyncPowerStateTestCase.test_state_changed_sync_failed [0.021820s] ... ok {3} ironic.tests.unit.conductor.test_manager.MiscTestCase.test_validate_driver_interfaces_validation_fail_deploy_templates [0.051403s] ... ok {3} ironic.tests.unit.conductor.test_manager.ServiceDoNodeDeployTestCase.test_do_node_deploy_partial_ok [0.263041s] ... ok {3} ironic.tests.unit.conductor.test_rpcapi.RPCAPITestCase.test_do_node_deploy [0.014877s] ... ok {3} ironic.tests.unit.conductor.test_rpcapi.RPCAPITestCase.test_get_boot_device [0.017607s] ... ok {3} ironic.tests.unit.conductor.test_steps.NodeCleaningStepsTestCase.test__validate_user_clean_steps_get_steps_exception [0.065102s] ... ok {3} ironic.tests.unit.conductor.test_steps.NodeDeployStepsTestCase.test__get_deployment_steps_only_enabled [0.062154s] ... ok {24} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolDriverTestCase.test_vendor_passthru_validate__send_raw_bytes_good [0.054421s] ... ok {3} ironic.tests.unit.conductor.test_steps.NodeDeployStepsTestCase.test__validate_user_deploy_steps_disable_core [0.081258s] ... ok {3} ironic.tests.unit.conductor.test_utils.ValidateInstanceInfoTraitsTestCase.test_validate_instance_info_traits_empty_instance_traits [0.009683s] ... ok {3} ironic.tests.unit.db.test_allocations.AllocationsTestCase.test_get_allocation_list_filter_by_node [0.051565s] ... ok {3} ironic.tests.unit.db.test_api.GetNotVersionsTestCase.test_get_not_versions_no_model [0.030715s] ... ok {3} ironic.tests.unit.db.test_api.UpdateToLatestVersionsTestCase.test_empty_db [0.103282s] ... ok {3} ironic.tests.unit.db.test_conductor.DbConductorTestCase.test_get_active_hardware_type_dict_one_host_many_ht [0.028850s] ... ok {3} ironic.tests.unit.db.test_deploy_templates.DbDeployTemplateTestCase.test_get_deploy_template_list_sorted [0.048607s] ... ok PATCH: /v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4 [{'path': '/internal_info', 'value': False, 'op': 'replace'}] GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-185c5739-3d91-496d-a8cd-d54535f15a27 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"'/internal_info' is an internal attribute and can not be updated\"}"} {29} ironic.tests.unit.api.controllers.v1.test_portgroup.TestPatch.test_update_portgroup_internal_info_not_allowed [0.052346s] ... ok {3} ironic.tests.unit.db.test_node_tags.DbNodeTagTestCase.test_add_node_tag_node_not_exist [0.036354s] ... ok {29} ironic.tests.unit.api.controllers.v1.test_utils.TestApiUtils.test_allow_port_physical_network_pin [0.013962s] ... ok {24} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolPrivateMethodTestCase.test__exec_ipmitool_exception [0.023013s] ... ok {29} ironic.tests.unit.api.controllers.v1.test_utils.TestApiUtils.test_allow_remove_chassis_uuid [0.019255s] ... ok {3} ironic.tests.unit.db.test_nodes.DbNodeTestCase.test_destroy_node_by_uuid [0.040839s] ... ok {29} ironic.tests.unit.api.controllers.v1.test_utils.TestApiUtils.test_check_allow_specify_resource_class_fail [0.023626s] ... ok {3} ironic.tests.unit.db.test_nodes.DbNodeTestCase.test_get_nodeinfo_list_with_cols [0.041115s] ... ok {29} ironic.tests.unit.api.controllers.v1.test_utils.TestVendorPassthru.test_check_policy [0.023135s] ... ok {3} ironic.tests.unit.db.test_nodes.DbNodeTestCase.test_update_node_instance_already_associated [0.047009s] ... ok {3} ironic.tests.unit.dhcp.test_factory.CompareBasetoModules.test_drivers_match_dhcp_base [0.010199s] ... ok {3} ironic.tests.unit.dhcp.test_factory.TestDHCPFactory.test_only_one_dhcp [0.010795s] ... ok GET: / {} GOT:Response: 500 Internal Server Error Content-Type: application/json Openstack-Request-Id: req-251a86d0-0253-4fe1-95b6-80bcd2c3f174 {"error_message": "{\"debuginfo\":null,\"faultcode\":\"Server\",\"faultstring\":\"Remote error: TestException Test exception message.\\n[u'\"}"} {30} ironic.tests.unit.api.test_hooks.TestNoExceptionTracebackHook.test_hook_remote_error_success [0.050944s] ... ok {3} ironic.tests.unit.dhcp.test_neutron.TestNeutron.test__get_ip_addresses_ports_extra [0.108387s] ... ok {3} ironic.tests.unit.dhcp.test_neutron.TestNeutron.test__get_port_ip_address_for_portgroup [0.101504s] ... ok {30} ironic.tests.unit.api.test_hooks.TestPublicUrlHook.test_before_host_url [0.028185s] ... ok {3} ironic.tests.unit.dhcp.test_neutron.TestNeutron.test_get_ip_addresses [0.074169s] ... ok {3} ironic.tests.unit.drivers.modules.ansible.test_deploy.TestAnsibleMethods.test__prepare_variables_configdrive_file [0.101411s] ... ok {24} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolPrivateMethodTestCase.test__make_password_file_caller_exception [0.019939s] ... ok {3} ironic.tests.unit.drivers.modules.cimc.test_power.PowerTestCase.test_set_power_state_reboot_fail [0.069958s] ... ok {3} ironic.tests.unit.drivers.modules.drac.test_management.DracManagementInternalMethodsTestCase.test__get_next_persistent_boot_mode [0.024836s] ... ok {3} ironic.tests.unit.drivers.modules.drac.test_management.DracManagementInternalMethodsTestCase.test__is_boot_order_flexibly_programmable [0.023698s] ... ok POST: /v1/volume/targets {'boot_index': 0, 'uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c781', 'extra': {}, 'volume_type': 'iscsi', 'node_uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123', 'volume_id': '12345678', 'properties': {'target_iqn': 'iqn.foo'}} GOT:Response: 201 Created Content-Type: application/json Location: http://localhost/v1/volume/targets/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 Openstack-Request-Id: req-a3d18e73-8c33-439b-92b8-0c1af713161e X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"boot_index": 0, "uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "links": [{"href": "http://localhost/v1/volume/targets/1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "rel": "self"}, {"href": "http://localhost/volume/targets/1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "rel": "bookmark"}], "extra": {}, "created_at": "2019-06-06T07:02:18.338152+00:00", "updated_at": null, "volume_type": "iscsi", "node_uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "volume_id": "12345678", "properties": {"target_iqn": "iqn.foo"}} {3} ironic.tests.unit.drivers.modules.drac.test_power.DracPowerTestCase.test_set_power_state_fail [0.064722s] ... ok {22} ironic.tests.unit.api.controllers.v1.test_volume_target.TestPost.test_node_uuid_to_node_id_mapping [0.219505s] ... ok {3} ironic.tests.unit.drivers.modules.drac.test_raid.DracCreateRaidConfigurationHelpersTestCase.test__calculate_spans_for_2_disk_and_raid_level_1 [0.035088s] ... ok {3} ironic.tests.unit.drivers.modules.ilo.test_bios.IloBiosTestCase.test__execute_pre_boot_bios_step_invalid [0.050821s] ... ok {24} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolPrivateMethodTestCase.test__parse_driver_info_with_no_bridging [0.020956s] ... ok {3} ironic.tests.unit.drivers.modules.ilo.test_boot.IloBootPrivateMethodsTestCase.test_prepare_node_for_deploy_sec_boot_on_inst_info [0.073192s] ... ok {3} ironic.tests.unit.drivers.modules.ilo.test_boot.IloPXEBootTestCase.test_clean_up_instance [0.089116s] ... ok {3} ironic.tests.unit.drivers.modules.ilo.test_common.IloCommonMethodsTestCase.test_copy_image_to_swift [0.058410s] ... ok {3} ironic.tests.unit.drivers.modules.ilo.test_common.IloCommonMethodsTestCase.test_set_boot_mode [0.023201s] ... ok {3} ironic.tests.unit.drivers.modules.ilo.test_common.IloCommonMethodsTestCase.test_set_secure_boot_mode_fail [0.084061s] ... ok {3} ironic.tests.unit.drivers.modules.ilo.test_firmware_processor.FirmwareProcessorTestCase.test_verify_firmware_update_args_throws_for_invalid_update_mode [0.018442s] ... ok func1() migrated 15 of 15 objects. func2() migrated 20 of 20 objects. {30} ironic.tests.unit.cmd.test_dbsync.OnlineMigrationTestCase.test__run_migration_functions_2 [0.029670s] ... ok {3} ironic.tests.unit.drivers.modules.ilo.test_inspect.IloInspectTestCase.test_inspect_essential_capabilities_ok [0.106737s] ... ok {3} ironic.tests.unit.drivers.modules.ilo.test_inspect.IloInspectTestCase.test_inspect_essential_ok_local_gb_zero [0.144681s] ... ok {3} ironic.tests.unit.drivers.modules.ilo.test_inspect.TestInspectPrivateMethods.test__validate_essential_keys_fail_missing_key [0.027056s] ... ok {3} ironic.tests.unit.drivers.modules.ilo.test_management.IloManagementTestCase.test_get_boot_device_next_boot [0.104201s] ... ok {24} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolPrivateMethodTestCase.test_exec_ipmitool_exception_retry_out_of_space [0.022361s] ... ok {3} ironic.tests.unit.drivers.modules.ilo.test_management.IloManagementTestCase.test_inject_nmi_not_supported [0.119461s] ... ok {3} ironic.tests.unit.drivers.modules.ilo.test_management.IloManagementTestCase.test_set_iscsi_boot_target_failed [0.161384s] ... ok func1() migrated 10 of 10 objects. {3} ironic.tests.unit.drivers.modules.ilo.test_management.IloManagementTestCase.test_update_firmware_calls_clean_step_foreach_url [0.144490s] ... ok {30} ironic.tests.unit.cmd.test_dbsync.OnlineMigrationTestCase.test__run_migration_functions_2_onedone [0.027044s] ... ok {3} ironic.tests.unit.drivers.modules.ilo.test_management.IloManagementTestCase.test_update_firmware_throws_error_for_invalid_component_type [0.112463s] ... ok {3} ironic.tests.unit.drivers.modules.ilo.test_management.IloManagementTestCase.test_update_firmware_throws_if_invalid_update_mode_provided [0.114376s] ... ok {3} ironic.tests.unit.drivers.modules.ilo.test_power.IloPowerTestCase.test_get_properties [0.095175s] ... ok PATCH: /v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 [{'path': '/uuid', 'op': 'remove'}] GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-86284c6f-5d21-449e-80df-d2809569c2e8 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"'/uuid' is an internal attribute and can not be updated\"}"} {4} ironic.tests.unit.api.controllers.v1.test_port.TestPatch.test_remove_uuid [0.072479s] ... ok {3} ironic.tests.unit.drivers.modules.ilo.test_power.IloPowerTestCase.test_reboot_with_timeout [0.082989s] ... ok {3} ironic.tests.unit.drivers.modules.irmc.test_boot.IRMCDeployPrivateMethodsTestCase.test__parse_instance_info_with_boot_iso_invalid [0.065854s] ... ok {3} ironic.tests.unit.drivers.modules.irmc.test_boot.IRMCDeployPrivateMethodsTestCase.test_attach_boot_iso_if_needed [0.057065s] ... ok {3} ironic.tests.unit.drivers.modules.irmc.test_boot.IRMCPXEBootBasicTestCase.test_prepare_ramdisk_ipxe_without_copy [0.139823s] ... ok {3} ironic.tests.unit.drivers.modules.irmc.test_boot.IRMCPXEBootBasicTestCase.test_prepare_ramdisk_set_default_boot_mode_on_ironic_uefi [0.165327s] ... ok {3} ironic.tests.unit.drivers.modules.irmc.test_boot.IRMCVirtualMediaBootTestCase.test_clean_up_instance_with_secure_boot [0.111401s] ... ok {3} ironic.tests.unit.drivers.modules.irmc.test_boot.IRMCVirtualMediaBootWithVolumeTestCase.test_prepare_instance [0.147179s] ... ok {3} ironic.tests.unit.drivers.modules.irmc.test_inspect.IRMCInspectTestCase.test_inspect_hardware_props_trusted_boot_is_false_and_existing_cap [0.065425s] ... ok {3} ironic.tests.unit.drivers.modules.network.test_common.TestNeutronVifPortIDMixin.test_port_changed_address [0.074044s] ... ok {3} ironic.tests.unit.drivers.modules.network.test_common.TestNeutronVifPortIDMixin.test_port_changed_client_id_no_vif_id [0.079086s] ... ok {3} ironic.tests.unit.drivers.modules.network.test_common.TestNeutronVifPortIDMixin.test_port_changed_vif_nopxe_portgroup_nostandalone_ports [0.201643s] ... ok {3} ironic.tests.unit.drivers.modules.network.test_common.TestNeutronVifPortIDMixin.test_update_portgroup_nostandalone_ports_pxe_ports_exc [0.075825s] ... ok {3} ironic.tests.unit.drivers.modules.network.test_common.TestNeutronVifPortIDMixin.test_vif_attach_portgroup_physnet_inconsistent [0.077573s] ... ok {3} ironic.tests.unit.drivers.modules.network.test_common.TestVifPortIDMixin.test__clear_vif_from_port_like_obj_in_internal_info_portgroup [0.036530s] ... ok {3} ironic.tests.unit.drivers.modules.network.test_flat.TestFlatInterface.test_add_cleaning_network [0.077470s] ... ok {3} ironic.tests.unit.drivers.modules.network.test_neutron.NeutronInterfaceTestCase.test_add_cleaning_network_with_sg [0.088558s] ... ok PATCH: /v1/volume/targets/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 [{'path': '/boot_index', 'value': 100, 'op': 'replace'}] GOT:Response: 409 Conflict Content-Type: application/json Openstack-Request-Id: req-a03a2e07-4c6a-403b-b9f7-4b590945df26 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"A volume target with boot index '100' for the same node already exists.\"}"} {31} ironic.tests.unit.api.controllers.v1.test_volume_target.TestPatch.test_replace_boot_index_already_exist [0.106443s] ... ok {3} ironic.tests.unit.drivers.modules.network.test_neutron.NeutronInterfaceTestCase.test_configure_tenant_networks_no_ports_for_node [0.078733s] ... ok {3} ironic.tests.unit.drivers.modules.network.test_neutron.NeutronInterfaceTestCase.test_validate_rescue_exc [0.069418s] ... ok {3} ironic.tests.unit.drivers.modules.redfish.test_inspect.RedfishInspectTestCase.test_inspect_hardware_ignore_missing_nics [0.084413s] ... ok {24} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolShellinaboxTestCase.test_start_console [0.053688s] ... ok {3} ironic.tests.unit.drivers.modules.redfish.test_utils.RedfishUtilsTestCase.test_ensure_new_session_address [0.063035s] ... ok {3} ironic.tests.unit.drivers.modules.redfish.test_utils.RedfishUtilsTestCase.test_parse_driver_info_valid_auth_type [1.821940s] ... ok {3} ironic.tests.unit.drivers.modules.test_agent.AgentRAIDTestCase.test__create_configuration_final [0.067368s] ... ok {3} ironic.tests.unit.drivers.modules.test_agent.TestAgentDeploy.test_prepare_adopting [0.068274s] ... ok Running batches of 50 until migrations have been completed. Data migrations have completed. {3} ironic.tests.unit.drivers.modules.test_agent_base_vendor.AgentDeployMixinTest.test__cleaning_reboot_fail [0.070992s] ... ok {30} ironic.tests.unit.cmd.test_dbsync.OnlineMigrationTestCase.test__run_online_data_migrations_with_options [0.026997s] ... ok {30} ironic.tests.unit.common.test_context.RequestContextTestCase.test_create_context [0.028296s] ... ok {30} ironic.tests.unit.common.test_context.RequestContextTestCase.test_thread_without_context [0.018426s] ... ok {3} ironic.tests.unit.drivers.modules.test_agent_base_vendor.AgentDeployMixinTest.test_reboot_and_finish_deploy [0.080796s] ... ok {30} ironic.tests.unit.common.test_hash_ring.HashRingManagerWithGroupsTestCase.test_hash_ring_manager_hardware_type_success [0.076250s] ... ok {30} ironic.tests.unit.common.test_image_service.HttpImageServiceTestCase.test_validate_href_error [0.019245s] ... ok {3} ironic.tests.unit.drivers.modules.test_console_utils.ConsoleUtilsTestCase.test_start_shellinabox_console_fail_nopiddir [0.029251s] ... ok {30} ironic.tests.unit.common.test_images.FsImageTestCase.test__mount_deploy_iso_fails_no_grub_cfg [0.027849s] ... ok {30} ironic.tests.unit.common.test_network.GetPhysnetsByPortgroupID.test_empty [0.116604s] ... ok {3} ironic.tests.unit.drivers.modules.test_console_utils.ConsoleUtilsTestCase.test_start_socat_console [0.035776s] ... ok {30} ironic.tests.unit.common.test_neutron.TestNeutronNetworkActions.test_verify_sec_groups_more_than_configured [0.041475s] ... ok {3} ironic.tests.unit.drivers.modules.test_console_utils.ConsoleUtilsTestCase.test_start_socat_console_check_arg_bind_addr_default_ipv4 [0.033812s] ... ok {30} ironic.tests.unit.common.test_pxe_utils.TestPXEUtils.test__get_pxe_mac_path_ipxe [0.033565s] ... ok {3} ironic.tests.unit.drivers.modules.test_deploy_utils.InstanceInfoTestCase.test_parse_instance_info_whole_disk_image_missing_root [0.020906s] ... ok {30} ironic.tests.unit.common.test_release_mappings.ReleaseMappingsTestCase.test_current_object_versions [0.018215s] ... ok {3} ironic.tests.unit.drivers.modules.test_deploy_utils.ParseInstanceInfoCapabilitiesTestCase.test_get_boot_mode_for_deploy_using_capabilities [0.009676s] ... ok {30} ironic.tests.unit.common.test_rpc.TestRequestContextSerializer.test_deserialize_entity [0.020192s] ... ok {30} ironic.tests.unit.common.test_utils.TempFilesTestCase.test_tempdir [0.017442s] ... ok {30} ironic.tests.unit.conductor.test_allocations.DoAllocateTestCase.test_with_traits [0.210237s] ... ok {3} ironic.tests.unit.drivers.modules.test_deploy_utils.ParseInstanceInfoCapabilitiesTestCase.test_validate_boot_mode_capability_instance_info [0.010030s] ... ok {30} ironic.tests.unit.conductor.test_base_manager.StartStopTestCase.test_start_fails_hw_type_register [0.092066s] ... ok {30} ironic.tests.unit.conductor.test_manager.CheckTimeoutsTestCase.test__check_cleanwait_timeouts_automated_clean [0.384476s] ... ok {30} ironic.tests.unit.conductor.test_manager.ConsoleTestCase.test_get_console_disabled [0.071921s] ... ok {3} ironic.tests.unit.drivers.modules.test_deploy_utils.ParseInstanceInfoCapabilitiesTestCase.test_validate_boot_mode_capability_with_exc [0.009725s] ... ok {30} ironic.tests.unit.conductor.test_manager.ConsoleTestCase.test_set_console_mode_enabled [0.345110s] ... ok {30} ironic.tests.unit.conductor.test_manager.DoNodeCleanTestCase.test__do_node_clean_automated_cache_bios [0.102185s] ... ok {3} ironic.tests.unit.drivers.modules.test_deploy_utils.PhysicalWorkTestCase.test_ipv6_address_wrapped [0.015116s] ... ok {30} ironic.tests.unit.conductor.test_manager.DoProvisioningActionTestCase.test_do_provision_action_abort_clean_step_not_abortable [0.332172s] ... ok {3} ironic.tests.unit.drivers.modules.test_deploy_utils.TestStorageInterfaceUtils.test_get_remote_boot_volume_none [0.096368s] ... ok {3} ironic.tests.unit.drivers.modules.test_image_cache.TestImageCacheCleanUp.test_clean_up_old_with_amount [0.011931s] ... ok {30} ironic.tests.unit.conductor.test_manager.ManagerCheckOrphanNodesTestCase.test__check_orphan_nodes [0.283701s] ... ok {3} ironic.tests.unit.drivers.modules.test_inspector.InspectHardwareTestCase.test_ok [0.017435s] ... ok {30} ironic.tests.unit.conductor.test_manager.ManagerPowerRecoveryTestCase.test_node_in_power_transition_on_acquire [0.020097s] ... ok {3} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolDriverTestCase.test_dump_sdr_ok [0.065942s] ... ok {3} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolDriverTestCase.test_send_raw_bytes_fail [0.066384s] ... ok {3} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolPrivateMethodTestCase.test__parse_driver_info_invalid_ipmi_prot_version [0.035258s] ... ok {30} ironic.tests.unit.conductor.test_manager.NodeInspectHardware.test_inspect_hardware_raises_error [0.270501s] ... ok GET: /v1/portgroups?sort_key=uuid {} GOT:{u'portgroups': [{u'address': u'52:54:00:cf:2d:31', u'uuid': u'424dd135-076d-4f68-8061-28cd3e332620', u'links': [{u'href': u'http://localhost/v1/portgroups/424dd135-076d-4f68-8061-28cd3e332620', u'rel': u'self'}, {u'href': u'http://localhost/portgroups/424dd135-076d-4f68-8061-28cd3e332620', u'rel': u'bookmark'}], u'name': u'portgroup1'}, {u'address': u'52:54:00:cf:2d:32', u'uuid': u'5124c3f1-5195-427f-b2cc-3807829e3f66', u'links': [{u'href': u'http://localhost/v1/portgroups/5124c3f1-5195-427f-b2cc-3807829e3f66', u'rel': u'self'}, {u'href': u'http://localhost/portgroups/5124c3f1-5195-427f-b2cc-3807829e3f66', u'rel': u'bookmark'}], u'name': u'portgroup2'}, {u'address': u'52:54:00:cf:2d:30', u'uuid': u'ab678eee-93d1-4530-be60-f9c166981a83', u'links': [{u'href': u'http://localhost/v1/portgroups/ab678eee-93d1-4530-be60-f9c166981a83', u'rel': u'self'}, {u'href': u'http://localhost/portgroups/ab678eee-93d1-4530-be60-f9c166981a83', u'rel': u'bookmark'}], u'name': u'portgroup0'}]} {13} ironic.tests.unit.api.controllers.v1.test_portgroup.TestListPortgroups.test_sort_key [0.123961s] ... ok {3} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolShellinaboxTestCase.test__start_console [0.082406s] ... ok {30} ironic.tests.unit.conductor.test_manager.ParallelPowerSyncTestCase.test__sync_power_states_node_prioritization [0.094492s] ... ok {30} ironic.tests.unit.conductor.test_manager.UpdateNodeTestCase.test_update_node_protected_reason_without_protected [0.051645s] ... ok {30} ironic.tests.unit.conductor.test_manager.VifTestCase.test_vif_detach [0.092705s] ... ok {3} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolShellinaboxTestCase.test_console_validate_missing_port [0.051927s] ... ok {30} ironic.tests.unit.conductor.test_rpcapi.RPCAPITestCase.test_create_port [0.025380s] ... ok {3} ironic.tests.unit.drivers.modules.test_ipxe.iPXEBootTestCase.test_prepare_instance_netboot_missing_root_uuid [0.080394s] ... ok {30} ironic.tests.unit.conductor.test_rpcapi.RPCAPITestCase.test_get_conductor_for [0.039503s] ... ok {3} ironic.tests.unit.drivers.modules.test_ipxe.iPXEBootTestCase.test_prepare_ramdisk_set_boot_mode_on_bm [0.127228s] ... ok {3} ironic.tests.unit.drivers.modules.test_iscsi_deploy.IscsiDeployMethodsTestCase.test_continue_deploy_fail [0.735202s] ... ok {30} ironic.tests.unit.conductor.test_steps.NodeDeployStepsTestCase.test__get_all_deployment_steps_no_user_steps [0.111674s] ... ok {30} ironic.tests.unit.conductor.test_utils.ErrorHandlersTestCase.test_power_state_error_handler_other_error [0.019210s] ... ok {3} ironic.tests.unit.drivers.modules.test_iscsi_deploy.IscsiDeployMethodsTestCase.test_do_agent_iscsi_deploy_start_iscsi_failure [0.178390s] ... ok GET: /v1/volume/targets/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 {} GOT:{u'boot_index': 0, u'uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c781', u'links': [{u'href': u'http://localhost/v1/volume/targets/1be26c0b-03f2-4d2e-ae87-c02d7f33c781', u'rel': u'self'}, {u'href': u'http://localhost/volume/targets/1be26c0b-03f2-4d2e-ae87-c02d7f33c781', u'rel': u'bookmark'}], u'extra': {}, u'created_at': u'2019-06-06T07:02:22.132461+00:00', u'updated_at': None, u'volume_type': u'iscsi', u'node_uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'volume_id': u'12345678', u'properties': {u'target_iqn': u'iqn.foo'}} {30} ironic.tests.unit.conductor.test_utils.ValidatePortPhysnetTestCase.test_validate_port_physnet_2_port_portgroup_no_physnet_update_2 [0.118949s] ... ok {27} ironic.tests.unit.api.controllers.v1.test_volume_target.TestListVolumeTargets.test_get_one [3.668523s] ... ok POST: /v1/volume/connectors {'node_uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123', 'extra': {}, 'type': 'iqn', 'uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c781', 'connector_id': 'iqn.2012-06.com.example:initiator'} GOT:Response: 201 Created Content-Type: application/json Location: http://localhost/v1/volume/connectors/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 Openstack-Request-Id: req-509d3321-58c6-4198-92ee-779086e0810a X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"node_uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "links": [{"href": "http://localhost/v1/volume/connectors/1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "rel": "self"}, {"href": "http://localhost/volume/connectors/1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "rel": "bookmark"}], "extra": {}, "created_at": "2019-06-06T07:02:18.746630+00:00", "updated_at": null, "connector_id": "iqn.2012-06.com.example:initiator", "type": "iqn"} {3} ironic.tests.unit.drivers.modules.test_pxe.PXEBootTestCase.test_prepare_ramdisk_ipxe_with_copy_no_file [0.134909s] ... ok {14} ironic.tests.unit.api.controllers.v1.test_volume_connector.TestPost.test_node_uuid_to_node_id_mapping [0.100625s] ... ok {24} ironic.tests.unit.drivers.modules.test_ipxe.iPXEBootTestCase.test_prepare_instance_netboot_active [0.082522s] ... ok {3} ironic.tests.unit.drivers.modules.test_pxe.PXEBootTestCase.test_validate_fail_glance_image_doesnt_exists [0.064105s] ... ok {30} ironic.tests.unit.db.sqlalchemy.test_migrations.TestMigrationsPostgreSQL.test_upgrade_twice ... SKIPPED: Backend 'postgresql' is unavailable: Could not connect {14} ironic.tests.unit.api.test_ospmiddleware.TestOsprofilerWsgiMiddleware.test_enable_osp_wsgi_request [0.034275s] ... ok {30} ironic.tests.unit.db.test_conductor.DbConductorTestCase.test_list_hardware_type_interfaces [0.048895s] ... ok {3} ironic.tests.unit.drivers.modules.test_pxe.PXERamdiskDeployTestCase.test_validate [0.076009s] ... ok {14} ironic.tests.unit.common.test_cinder.TestCinderActions.test_attach_volumes_attach_record_failure [0.140371s] ... ok {3} ironic.tests.unit.drivers.modules.test_snmp.SNMPClientTestCase.test__get_auth_v1_write [0.026901s] ... ok {30} ironic.tests.unit.db.test_node_traits.DbNodeTraitTestCase.test_add_node_trait_over_limit [0.623743s] ... ok {30} ironic.tests.unit.db.test_ports.DbPortTestCase.test_create_port_duplicated_uuid [0.025924s] ... ok {3} ironic.tests.unit.drivers.modules.test_snmp.SNMPDeviceDriverTestCase.test_teltronix_power_reset [0.016280s] ... ok {30} ironic.tests.unit.db.test_ports.DbPortTestCase.test_get_ports_by_portgroup_id_that_does_not_exist [0.639782s] ... ok {14} ironic.tests.unit.common.test_cinder.TestCinderActions.test_detach_volumes_detach_failure_errors_allowed [0.145240s] ... ok {30} ironic.tests.unit.dhcp.test_factory.TestDHCPFactory.test_set_none_dhcp [0.011633s] ... ok PATCH: /v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 [{'path': '/portgroup_uuid', 'value': 'd2f90573-c8bb-4e63-8bf5-a09f414680e2', 'op': 'remove'}, {'path': '/portgroup_uuid', 'value': 'fbee729c-7342-45db-bb1f-69d98ee66d08', 'op': 'add'}] GOT:Response: 200 OK Content-Type: application/json Openstack-Request-Id: req-77269f85-4751-4212-90e5-25426d833a73 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.24 {"local_link_connection": {"switch_info": "switch1", "port_id": "Ethernet3/1", "switch_id": "0a:1b:2c:3d:4e:5f"}, "node_uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "links": [{"href": "http://localhost/v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "rel": "self"}, {"href": "http://localhost/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "rel": "bookmark"}], "extra": {}, "pxe_enabled": true, "portgroup_uuid": "fbee729c-7342-45db-bb1f-69d98ee66d08", "updated_at": "2019-06-06T07:02:18.050674+00:00", "address": "52:54:00:cf:2d:31", "internal_info": {"bar": "buzz"}, "created_at": "2019-06-06T07:02:17.965011+00:00"} {15} ironic.tests.unit.api.controllers.v1.test_port.TestPatch.test_replace_portgroup_uuid_remove_add [0.152018s] ... ok {14} ironic.tests.unit.common.test_driver_factory.CheckAndUpdateNodeInterfacesTestCase.test_create_node_valid_interfaces [0.040105s] ... ok {3} ironic.tests.unit.drivers.modules.test_snmp.SNMPDriverTestCase.test_get_properties [0.060213s] ... ok {30} ironic.tests.unit.drivers.modules.ansible.test_deploy.TestAnsibleDeploy.test_reboot_to_instance_deprecated [0.096669s] ... ok {14} ironic.tests.unit.common.test_driver_factory.HardwareTypeLoadTestCase.test_no_storage_interface [0.034526s] ... ok {3} ironic.tests.unit.drivers.modules.test_snmp.SNMPValidateParametersTestCase.test__parse_driver_info_default_version_and_missing_community [0.012858s] ... ok {30} ironic.tests.unit.drivers.modules.ansible.test_deploy.TestAnsibleDeploy.test_validate [0.105593s] ... ok {14} ironic.tests.unit.common.test_driver_factory.NewFactoryTestCase.test_new_driver_factory_unknown_entrypoint [0.025209s] ... ok GET: /v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 {} GOT:{u'local_link_connection': {u'switch_info': u'switch1', u'port_id': u'Ethernet3/1', u'switch_id': u'0a:1b:2c:3d:4e:5f'}, u'node_uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c781', u'links': [{u'href': u'http://localhost/v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781', u'rel': u'self'}, {u'href': u'http://localhost/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781', u'rel': u'bookmark'}], u'extra': {}, u'pxe_enabled': True, u'portgroup_uuid': None, u'updated_at': None, u'address': u'52:54:00:cf:2d:31', u'internal_info': {u'bar': u'buzz'}, u'created_at': u'2019-06-06T07:02:17.034341+00:00'} GET: /v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 {} GOT:{u'local_link_connection': {u'switch_info': u'switch1', u'port_id': u'Ethernet3/1', u'switch_id': u'0a:1b:2c:3d:4e:5f'}, u'node_uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c781', u'links': [{u'href': u'http://localhost/v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781', u'rel': u'self'}, {u'href': u'http://localhost/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781', u'rel': u'bookmark'}], u'extra': {}, u'pxe_enabled': True, u'portgroup_uuid': None, u'updated_at': None, u'physical_network': u'physnet1', u'address': u'52:54:00:cf:2d:31', u'internal_info': {u'bar': u'buzz'}, u'created_at': u'2019-06-06T07:02:17.034341+00:00'} {3} ironic.tests.unit.drivers.test_base.TestDeployInterface.test_warning_on_heartbeat [0.010753s] ... ok {20} ironic.tests.unit.api.controllers.v1.test_port.TestListPorts.test_hide_fields_in_newer_versions_physical_network [0.108320s] ... ok {30} ironic.tests.unit.drivers.modules.ansible.test_deploy.TestAnsibleMethods.test__run_playbook_default_verbosity_debug [0.036592s] ... ok {14} ironic.tests.unit.common.test_fsm.FSMTest.test_is_stable_not [0.015899s] ... ok {20} ironic.tests.unit.api.controllers.v1.test_port.TestPortsController__CheckAllowedPortFields.test__check_allowed_port_fields_physnet_not_allow [0.025712s] ... ok {3} ironic.tests.unit.drivers.test_fake_hardware.FakeHardwareTestCase.test_management_interface_get_supported_boot_devices [0.081508s] ... ok {30} ironic.tests.unit.drivers.modules.cimc.test_management.CIMCManagementTestCase.test_get_supported_boot_devices [0.070617s] ... ok {14} ironic.tests.unit.common.test_glance_service.CheckImageServiceTestCase.test_check_image_service__token_auth [0.033802s] ... ok {14} ironic.tests.unit.common.test_glance_service.TestServiceUtils.test_get_glance_api_server [0.016111s] ... ok {3} ironic.tests.unit.drivers.test_utils.UtilsTestCase.test_force_persistent_boot_false [0.084423s] ... ok {30} ironic.tests.unit.drivers.modules.cimc.test_power.PowerTestCase.test_set_power_state_off_fail [0.065661s] ... ok {3} ironic.tests.unit.objects.test_allocation.TestAllocationObject.test_save [0.019271s] ... ok {30} ironic.tests.unit.drivers.modules.cimc.test_power.PowerTestCase.test_set_power_state_on_fail [0.064896s] ... ok {14} ironic.tests.unit.common.test_hash_ring.HashRingManagerWithGroupsTestCase.test_hash_ring_manager_uncached [0.023084s] ... ok {30} ironic.tests.unit.drivers.modules.drac.test_inspect.DracInspectionTestCase.test__get_pxe_dev_nics_list_boot_setting_failure [0.061796s] ... ok {3} ironic.tests.unit.objects.test_bios.TestBIOSSettingObject.test_save [0.017077s] ... ok {14} ironic.tests.unit.common.test_images.FsImageTestCase.test__generate_isolinux_cfg [0.016947s] ... ok {30} ironic.tests.unit.drivers.modules.drac.test_inspect.DracInspectionTestCase.test_inspect_hardware_no_cpu [0.057972s] ... ok {3} ironic.tests.unit.objects.test_node.TestConvertToVersion.test_allocation_id_unsupported_set_remove [0.014612s] ... ok {30} ironic.tests.unit.drivers.modules.drac.test_inspect.DracInspectionTestCase.test_inspect_hardware_with_existing_ports [0.079760s] ... ok {3} ironic.tests.unit.objects.test_node.TestConvertToVersion.test_description_supported_set [0.015530s] ... ok {14} ironic.tests.unit.common.test_images.IronicImagesTestCase.test_fetch_image_service [0.016629s] ... ok {30} ironic.tests.unit.drivers.modules.drac.test_raid.DracManageVirtualDisksTestCase.test_commit_config_with_reboot [0.021207s] ... ok {14} ironic.tests.unit.common.test_network.TestRemoveVifsTestCase.test_remove_vifs_from_node_failure [0.150795s] ... ok {3} ironic.tests.unit.objects.test_node.TestConvertToVersion.test_fault_unsupported_set_remove_in_maintenance [0.014648s] ... ok {30} ironic.tests.unit.drivers.modules.ibmc.test_power.IBMCPowerTestCase.test_reboot_fail [0.074922s] ... ok {3} ironic.tests.unit.objects.test_node.TestNodePayloads.test_node_corrected_power_state_payload [0.014989s] ... ok {14} ironic.tests.unit.common.test_policy.PolicyInCodeTestCase.test_is_member [0.019120s] ... ok {30} ironic.tests.unit.drivers.modules.ibmc.test_utils.IBMCUtilsTestCase.test_parse_driver_info_missing_info [0.019454s] ... ok {3} ironic.tests.unit.objects.test_notification.TestNotificationBase.test_event_type_invalid_status_fails [0.010431s] ... ok {14} ironic.tests.unit.common.test_policy.PolicyInCodeTestCaseNegative.test_node_get [0.017623s] ... ok {30} ironic.tests.unit.drivers.modules.ilo.test_bios.IloBiosTestCase.test__execute_pre_boot_bios_step_reset_bios_failed [0.048755s] ... ok {3} ironic.tests.unit.objects.test_objects.TestObject.test_convert_to_version_new [0.009370s] ... ok {30} ironic.tests.unit.drivers.modules.ilo.test_boot.IloPXEBootTestCase.test_prepare_ramdisk_in_deploying [0.072750s] ... ok {14} ironic.tests.unit.common.test_pxe_utils.PXEInterfacesTestCase.test_build_pxe_config_options_ipxe_and_ipxe_timeout [0.115213s] ... ok {3} ironic.tests.unit.objects.test_objects.TestObject.test_do_version_changes_for_db [0.014329s] ... ok {30} ironic.tests.unit.drivers.modules.ilo.test_common.IloCommonMethodsTestCase.test_destroy_floppy_image_from_web_server [0.060201s] ... ok {3} ironic.tests.unit.objects.test_objects.TestObject.test_get_target_version_no_pin [0.009622s] ... ok {14} ironic.tests.unit.common.test_pxe_utils.TestPXEUtils.test_clean_up_ipxe_config_uefi [0.082609s] ... ok {30} ironic.tests.unit.drivers.modules.ilo.test_common.IloCommonMethodsTestCase.test_get_secure_boot_mode_fail [0.098305s] ... ok {30} ironic.tests.unit.drivers.modules.ilo.test_common.IloCommonMethodsTestCase.test_set_secure_boot_mode [0.082336s] ... ok {14} ironic.tests.unit.common.test_pxe_utils.TestPXEUtils.test_get_root_dir [0.029486s] ... ok {3} ironic.tests.unit.objects.test_objects.TestObject.test_hydration [0.009176s] ... ok {30} ironic.tests.unit.drivers.modules.ilo.test_common.IloValidateParametersTestCase.test_parse_driver_info_missing_username [0.026325s] ... ok {14} ironic.tests.unit.common.test_swift.SwiftTestCase.test_create_object_put_object_fails [0.113063s] ... ok PATCH: /v1/volume/connectors/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 [{'path': '/foo', 'value': 'bar', 'op': 'add'}] GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-d2d85f56-55aa-4fdb-92c5-59dd33c47d35 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Adding a new attribute (/foo) to the root of the resource is not allowed\"}"} {30} ironic.tests.unit.drivers.modules.ilo.test_common.IloValidateParametersTestCase.test_parse_driver_info_snmp_true_no_auth_priv_protocols [0.026390s] ... ok {3} ironic.tests.unit.objects.test_objects.TestObjectSerializer.test_deserialize_entity_newer_version_passes_revision [0.010940s] ... ok {29} ironic.tests.unit.api.controllers.v1.test_volume_connector.TestPatch.test_add_root_non_existent [0.290359s] ... ok {14} ironic.tests.unit.common.test_utils.GetUpdatedCapabilitiesTestCase.test_get_updated_capabilities [0.016626s] ... ok {30} ironic.tests.unit.drivers.modules.ilo.test_inspect.TestInspectPrivateMethods.test__get_essential_properties_fail_invalid_format [0.028452s] ... ok {3} ironic.tests.unit.objects.test_objects.TestObjectSerializer.test_deserialize_entity_same_revision_does_not_backport [0.010406s] ... ok {14} ironic.tests.unit.common.test_wsgi_service.TestWSGIService.test_wsgi_service_with_ssl_enabled [0.068564s] ... ok {3} ironic.tests.unit.objects.test_portgroup.TestPortgroupObject.test_get_by_name [0.016752s] ... ok {30} ironic.tests.unit.drivers.modules.ilo.test_management.IloManagementTestCase.test_get_sensor_data [0.073885s] ... ok {14} ironic.tests.unit.conductor.test_allocations.AllocationTestCase.test_destroy_allocation_with_transient_node [0.152790s] ... ok {30} ironic.tests.unit.drivers.modules.ilo.test_power.IloPowerInternalMethodsTestCase.test__set_power_state_soft_reboot_fail_to_on [4.105241s] ... ok {14} ironic.tests.unit.conductor.test_base_manager.KeepAliveTestCase.test__conductor_service_record_keepalive_failed_error [0.255594s] ... ok {30} ironic.tests.unit.drivers.modules.ilo.test_raid.Ilo5RAIDTestCase.test_delete_configuration_ilo_error [0.102661s] ... ok {14} ironic.tests.unit.conductor.test_base_manager.StartConsolesTestCase.test__start_consoles_no_console_enabled [0.212509s] ... ok {30} ironic.tests.unit.drivers.modules.irmc.test_bios.IRMCBIOSTestCase.test_apply_configuration_failed [0.072201s] ... ok {14} ironic.tests.unit.conductor.test_manager.ChangeNodePowerStateTestCase.test_change_node_power_state_exception_in_background_task [0.275901s] ... ok {30} ironic.tests.unit.drivers.modules.irmc.test_boot.IRMCDeployPrivateMethodsTestCase.test__detach_virtual_cd_fail [0.070593s] ... ok {14} ironic.tests.unit.conductor.test_manager.ChangeNodePowerStateTestCase.test_change_node_power_state_soft_power_off_timeout [0.322004s] ... ok {14} ironic.tests.unit.conductor.test_manager.DoNodeCleanAbortTestCase.test__do_node_clean_abort [2.568854s] ... ok {30} ironic.tests.unit.drivers.modules.irmc.test_boot.IRMCDeployPrivateMethodsTestCase.test__parse_driver_info_with_iso_missing [0.024218s] ... ok {14} ironic.tests.unit.conductor.test_manager.DoNodeCleanTestCase.test_continue_node_clean_manual_abort [0.268645s] ... ok {30} ironic.tests.unit.drivers.modules.irmc.test_boot.IRMCPXEBootBasicTestCase.test_validate_fail_no_image_kernel_ramdisk_props [0.060986s] ... ok {24} ironic.tests.unit.drivers.modules.test_ipxe.iPXEBootTestCase.test_prepare_ramdisk_force_persistent_boot_device_default [0.102307s] ... ok {14} ironic.tests.unit.conductor.test_manager.DoNodeCleanTestCase.test_continue_node_clean_no_skip_step [0.393782s] ... ok {30} ironic.tests.unit.drivers.modules.irmc.test_inspect.IRMCInspectInternalMethodsTestCase.test__get_mac_addresses [0.068940s] ... ok {30} ironic.tests.unit.drivers.modules.irmc.test_inspect.IRMCInspectInternalMethodsTestCase.test__inspect_hardware_exception [0.055368s] ... ok {14} ironic.tests.unit.conductor.test_manager.DoNodeRescueTestCase.test__do_node_rescue_errors [0.382835s] ... ok {30} ironic.tests.unit.drivers.modules.irmc.test_inspect.IRMCInspectTestCase.test_inspect_hardware_inspect_exception [0.179193s] ... ok {14} ironic.tests.unit.conductor.test_manager.DoNodeRescueTestCase.test_do_node_rescue_maintenance [0.064616s] ... ok {30} ironic.tests.unit.drivers.modules.irmc.test_power.IRMCPowerTestCase.test_reboot_power_on [0.067967s] ... ok {30} ironic.tests.unit.drivers.modules.irmc.test_raid.IRMCRaidConfigurationInternalMethodsTestCase.test__commit_raid_config_with_logical_drives [0.055887s] ... ok {14} ironic.tests.unit.conductor.test_manager.ManagerDoSyncPowerStateTestCase.test_wrong_provision_state_on_upgrade_lock [0.028985s] ... ok {30} ironic.tests.unit.drivers.modules.network.test_common.TestCommonFunctions.test__get_free_portgroups_and_ports_neutron [0.067685s] ... ok {30} ironic.tests.unit.drivers.modules.network.test_common.TestNeutronVifPortIDMixin.test_update_portgroup_standalone_ports_novif_pxe_ports [0.072304s] ... ok {14} ironic.tests.unit.conductor.test_manager.ManagerSyncPowerStatesTestCase.test_single_node [0.043183s] ... ok {30} ironic.tests.unit.drivers.modules.network.test_neutron.NeutronInterfaceTestCase.test_add_provisioning_network [0.076915s] ... ok {30} ironic.tests.unit.drivers.modules.network.test_neutron.NeutronInterfaceTestCase.test_need_power_on_true [0.067865s] ... ok {14} ironic.tests.unit.conductor.test_manager.NodeInspectHardware.test_inspect_hardware_unexpected_error [0.301437s] ... ok {30} ironic.tests.unit.drivers.modules.network.test_noop.NoopInterfaceTestCase.test_remove_provisioning_network [0.069049s] ... ok {14} ironic.tests.unit.conductor.test_manager.SensorsTestCase.test__filter_out_unsupported_types_part [0.148186s] ... ok {30} ironic.tests.unit.drivers.modules.redfish.test_bios.RedfishBiosTestCase.test_get_properties [0.050870s] ... ok {14} ironic.tests.unit.conductor.test_manager.ServiceDoNodeDeployTestCase.test_do_node_deploy_rebuild_protected [0.181291s] ... ok {30} ironic.tests.unit.drivers.modules.redfish.test_power.RedfishPowerTestCase.test_get_supported_power_states [0.049825s] ... ok {14} ironic.tests.unit.conductor.test_manager.TestIndirectionApiConductor.test_object_class_action_on_object [0.013229s] ... ok {30} ironic.tests.unit.drivers.modules.storage.test_cinder.CinderInterfaceTestCase.test_attach_volumes_failure_no_attach_error [0.086595s] ... ok {14} ironic.tests.unit.conductor.test_manager.UpdatePortgroupTestCase.test_update_portgroup [0.077664s] ... ok {14} ironic.tests.unit.conductor.test_manager.VendorPassthruTestCase.test_driver_vendor_passthru_sync [0.122835s] ... ok {30} ironic.tests.unit.drivers.modules.test_agent.TestAgentDeploy.test_clean_up_manage_agent_boot_false [0.073984s] ... ok {14} ironic.tests.unit.conductor.test_manager.VendorPassthruTestCase.test_vendor_passthru_http_method_not_supported [0.247317s] ... ok {30} ironic.tests.unit.drivers.modules.test_agent.TestAgentDeploy.test_deploy_has_started_other_commands [0.072215s] ... ok {14} ironic.tests.unit.conductor.test_manager.VifTestCase.test_vif_list [0.063751s] ... ok {30} ironic.tests.unit.drivers.modules.test_agent.TestAgentDeploy.test_deploy_is_done_empty_response [0.072362s] ... ok PATCH: /v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 [{'path': '/address', 'value': 'aa:aa:aa:aa:aa:aa', 'op': 'replace'}] GOT:Response: 409 Conflict Content-Type: application/json Openstack-Request-Id: req-ed3f7026-6457-45de-b81f-877ecac9e557 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"A port with MAC address aa:aa:aa:aa:aa:aa already exists.\"}"} {30} ironic.tests.unit.drivers.modules.test_agent.TestAgentDeploy.test_deploy_storage_should_write_image_false [0.157592s] ... ok {14} ironic.tests.unit.conductor.test_rpcapi.RPCAPITestCase.test_do_node_clean [0.018032s] ... ok {4} ironic.tests.unit.api.controllers.v1.test_port.TestPatch.test_replace_address_already_exist [0.388268s] ... ok {30} ironic.tests.unit.drivers.modules.test_agent.TestAgentDeploy.test_tear_down_cleaning [0.073339s] ... ok {14} ironic.tests.unit.conductor.test_rpcapi.RPCAPITestCase.test_get_topic_for_driver_unknown_driver [0.044721s] ... ok {4} ironic.tests.unit.api.controllers.v1.test_port.TestPortsController__CheckAllowedPortFields.test__check_allowed_port_fields_none [0.022541s] ... ok {14} ironic.tests.unit.conductor.test_steps.NodeCleaningStepsTestCase.test__validate_user_clean_steps_not_supported [0.073759s] ... ok {30} ironic.tests.unit.drivers.modules.test_agent.TestAgentMethods.test_check_image_size [0.070425s] ... ok {14} ironic.tests.unit.conductor.test_utils.NodePowerActionTestCase.test_node_power_action_power_on [0.142472s] ... ok {30} ironic.tests.unit.drivers.modules.test_agent_base_vendor.AgentRescueTests.test__finalize_rescue_missing_command_result [0.693069s] ... ok {14} ironic.tests.unit.conductor.test_utils.ValidatePortPhysnetTestCase.test_validate_port_physnet_inconsistent_physnets [0.116409s] ... ok {30} ironic.tests.unit.drivers.modules.test_agent_base_vendor.TestRefreshCleanSteps.test_refresh_clean_steps_missing_steps [0.067612s] ... ok {14} ironic.tests.unit.db.test_conductor.DbConductorTestCase.test_clear_node_target_power_state [0.073669s] ... ok {30} ironic.tests.unit.drivers.modules.test_console_utils.ConsoleUtilsTestCase.test_make_persistent_password_file [0.014626s] ... ok {14} ironic.tests.unit.db.test_conductor.DbConductorTestCase.test_register_conductor_override [0.040081s] ... ok {14} ironic.tests.unit.db.test_deploy_templates.DbDeployTemplateTestCase.test_get_deploy_template_by_uuid [0.048861s] ... ok {30} ironic.tests.unit.drivers.modules.test_console_utils.ConsoleUtilsTestCase.test_start_socat_console_check_arg_timeout_disabled [0.033950s] ... ok {14} ironic.tests.unit.db.test_nodes.DbNodeTestCase.test_get_node_list_chassis_not_found [0.023602s] ... ok {30} ironic.tests.unit.drivers.modules.test_deploy_utils.InstanceImageCacheTestCase.test_with_master_path [0.015118s] ... ok {14} ironic.tests.unit.db.test_nodes.DbNodeTestCase.test_tags_get_destroyed_after_destroying_a_node_by_uuid [0.091195s] ... ok {14} ironic.tests.unit.db.test_portgroups.DbportgroupTestCase.test_destroy_portgroup [0.049677s] ... ok {30} ironic.tests.unit.drivers.modules.test_deploy_utils.InstanceInfoTestCase.test_parse_instance_info_missing_instance_source [0.021241s] ... ok {14} ironic.tests.unit.db.test_ports.DbPortTestCase.test_create_port_duplicated_address [0.039616s] ... ok {30} ironic.tests.unit.drivers.modules.test_deploy_utils.InstanceInfoTestCase.test_parse_instance_info_missing_root_gb [0.021080s] ... ok {14} ironic.tests.unit.drivers.modules.drac.test_management.DracManagementInternalMethodsTestCase.test__is_boot_order_flexibly_programmable_with_no_bios_setting [0.026906s] ... ok {30} ironic.tests.unit.drivers.modules.test_deploy_utils.PhysicalWorkTestCase.test_deploy_partition_image_localboot [0.026067s] ... ok {14} ironic.tests.unit.drivers.modules.drac.test_periodic_task.DracPeriodicTaskTestCase.test__check_node_raid_jobs_with_completed_job [0.105038s] ... ok {14} ironic.tests.unit.drivers.modules.drac.test_periodic_task.DracPeriodicTaskTestCase.test__check_node_raid_jobs_with_multiple_jobs_completed [0.101699s] ... ok {30} ironic.tests.unit.drivers.modules.test_image_cache.TestUpdateImages.test__delete_dest_path_if_stale_no_dest [0.010746s] ... ok {30} ironic.tests.unit.drivers.modules.test_inspector.GetClientTestCase.test__get_client_standalone [0.022517s] ... ok {14} ironic.tests.unit.drivers.modules.ibmc.test_management.IBMCManagementTestCase.test_inject_nmi [0.092211s] ... ok GET: /v1/portgroups?sort_key=mode {} GOT:Response: 406 Not Acceptable Content-Type: application/json Openstack-Request-Id: req-3a1e55ab-4da4-4b7e-a7cd-30d31d9e3efb X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.25 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Request not acceptable.\"}"} {30} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolCheckInitTestCase.test_management_init_calls [0.013689s] ... ok {13} ironic.tests.unit.api.controllers.v1.test_portgroup.TestListPortgroups.test_sort_key_not_allowed [0.058738s] ... ok {14} ironic.tests.unit.drivers.modules.ibmc.test_power.IBMCPowerTestCase.test_set_power_state_not_reached [13.377323s] ... ok POST: /v1/ports {'local_link_connection': {'switch_info': 'switch1', 'port_id': 'Ethernet3/1', 'switch_id': '0a:1b:2c:3d:4e:5f'}, 'node_uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123', 'uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c781', 'extra': {}, 'pxe_enabled': True, 'portgroup_uuid': '6eb02b44-18a3-4659-8c0b-8d2802581ae4', 'physical_network': 'physnet1', 'address': '52:54:00:cf:2d:31', 'is_smartnic': False} GOT:Response: 201 Created Content-Type: application/json Location: http://localhost/v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 Openstack-Request-Id: req-1b3e4fec-7634-4abe-9d45-7a89551aa856 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"local_link_connection": {"switch_info": "switch1", "port_id": "Ethernet3/1", "switch_id": "0a:1b:2c:3d:4e:5f"}, "node_uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "links": [{"href": "http://localhost/v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "rel": "self"}, {"href": "http://localhost/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "rel": "bookmark"}], "extra": {}, "pxe_enabled": true, "portgroup_uuid": "6eb02b44-18a3-4659-8c0b-8d2802581ae4", "updated_at": null, "physical_network": "physnet1", "address": "52:54:00:cf:2d:31", "internal_info": {}, "created_at": "2019-06-06T07:02:17.842089+00:00", "is_smartnic": false} {16} ironic.tests.unit.api.controllers.v1.test_port.TestPost.test_create_port_with_physical_network [0.143422s] ... ok {30} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolCheckOptionSupportedTestCase.test_check_timing_pass [0.012508s] ... ok {14} ironic.tests.unit.drivers.modules.ibmc.test_vendor.IBMCVendorTestCase.test_get_properties [0.057913s] ... ok {30} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolDriverTestCase.test_management_interface_inject_nmi_ok [0.068230s] ... ok {14} ironic.tests.unit.drivers.modules.ilo.test_common.IloCommonMethodsTestCase.test_get_ilo_object_no_cafile [0.155598s] ... ok {30} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolDriverTestCase.test_vendor_passthru_call_bmc_reset_cold [0.200994s] ... ok {14} ironic.tests.unit.drivers.modules.ilo.test_firmware_processor.FirmwareProcessorTestCase.test_fw_processor_ctor_throws_exception_with_invalid_firmware_url [0.009272s] ... ok {30} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolPrivateMethodTestCase.test__make_password_file_tempfile_known_exception [0.023363s] ... ok {14} ironic.tests.unit.drivers.modules.ilo.test_management.IloManagementTestCase.test_get_boot_device_persistent [0.069990s] ... ok {14} ironic.tests.unit.drivers.modules.ilo.test_management.IloManagementTestCase.test_inject_nmi [0.067554s] ... ok {30} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolPrivateMethodTestCase.test__parse_driver_info_numeric_password [0.023855s] ... ok {14} ironic.tests.unit.drivers.modules.ilo.test_management.IloManagementTestCase.test_reset_ilo_credential_no_password [0.078231s] ... ok {30} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolPrivateMethodTestCase.test_exec_ipmitool_exception_retries_exceeded_bmc_initialization_in_progress [0.030322s] ... ok {14} ironic.tests.unit.drivers.modules.ilo.test_raid.Ilo5RAIDTestCase.test_delete_configuration_no_logical_drive [0.067453s] ... ok {30} ironic.tests.unit.drivers.modules.test_ipxe.iPXEBootTestCase.test_prepare_ramdisk [0.155156s] ... ok {14} ironic.tests.unit.drivers.modules.irmc.test_boot.IRMCDeployPrivateMethodsTestCase.test__parse_driver_info_in_share [0.022656s] ... ok {30} ironic.tests.unit.drivers.modules.test_ipxe.iPXEBootTestCase.test_prepare_ramdisk_ipxe_swift_whole_disk_image [0.142179s] ... ok {14} ironic.tests.unit.drivers.modules.irmc.test_boot.IRMCDeployPrivateMethodsTestCase.test__parse_driver_info_with_iso_invalid [0.068499s] ... ok {30} ironic.tests.unit.drivers.modules.test_ipxe.iPXEBootTestCase.test_validate_good_whole_disk_image [0.057397s] ... ok {14} ironic.tests.unit.drivers.modules.irmc.test_boot.IRMCPXEBootBasicTestCase.test_prepare_ramdisk_force_persistent_boot_device_bool_false [0.123563s] ... ok {14} ironic.tests.unit.drivers.modules.irmc.test_boot.IRMCVirtualMediaBootTestCase.test_clean_up_instance_with_secure_boot_false [0.095529s] ... ok {14} ironic.tests.unit.drivers.modules.irmc.test_boot.IRMCVirtualMediaBootTestCase.test_validate_rescue [0.081692s] ... ok {30} ironic.tests.unit.drivers.modules.test_iscsi_deploy.IscsiDeployMethodsTestCase.test_get_deploy_info_cpu_arch_none [0.021207s] ... ok {14} ironic.tests.unit.drivers.modules.irmc.test_common.IRMCCommonMethodsTestCase.test_out_range_auth_method [0.020413s] ... ok {30} ironic.tests.unit.drivers.modules.test_noop.NoInterfacesTestCase.test_inspect [0.009829s] ... ok {14} ironic.tests.unit.drivers.modules.irmc.test_common.IRMCValidateParametersTestCase.test_parse_driver_info_invalid_sensor_method [0.021048s] ... ok {14} ironic.tests.unit.drivers.modules.irmc.test_inspect.IRMCInspectTestCase.test__init_fail_invalid_fpga_ids_input [0.020687s] ... ok {24} ironic.tests.unit.drivers.modules.test_ipxe.iPXEBootTestCase.test_prepare_ramdisk_force_persistent_boot_device_never [0.105065s] ... ok {30} ironic.tests.unit.drivers.modules.test_noop_mgmt.TestNoopManagement.test_set_boot_device [0.009727s] ... ok {14} ironic.tests.unit.drivers.modules.irmc.test_inspect.IRMCInspectTestCase.test_get_properties [0.051696s] ... ok {30} ironic.tests.unit.drivers.modules.test_pxe.PXEBootTestCase.test_prepare_instance_netboot [0.086117s] ... ok {14} ironic.tests.unit.drivers.modules.irmc.test_raid.IRMCRaidConfigurationInternalMethodsTestCase.test___fail_validation_without_raid_level [0.052731s] ... ok {14} ironic.tests.unit.drivers.modules.network.test_common.TestCommonFunctions.test__get_free_portgroups_and_ports_no_matching_physnet [0.113707s] ... ok {30} ironic.tests.unit.drivers.modules.test_pxe.PXEBootTestCase.test_prepare_instance_netboot_iscsi [0.093795s] ... ok {14} ironic.tests.unit.drivers.modules.network.test_common.TestVifPortIDMixin.test__get_port_like_obj_by_vif_id_in_extra [0.066304s] ... ok {30} ironic.tests.unit.drivers.modules.test_pxe.PXEBootTestCase.test_validate_fail_missing_image_source [0.052859s] ... ok {14} ironic.tests.unit.drivers.modules.network.test_neutron.NeutronInterfaceTestCase.test_add_rescuing_network_from_node [0.092595s] ... ok {30} ironic.tests.unit.drivers.modules.test_pxe.PXEValidateRescueTestCase.test_validate_rescue [0.057330s] ... ok {30} ironic.tests.unit.drivers.modules.test_pxe.PXEValidateRescueTestCase.test_validate_rescue_fails_no_rescue_kernel [0.071815s] ... ok {14} ironic.tests.unit.drivers.modules.redfish.test_inspect.RedfishInspectTestCase.test_inspect_hardware_fail_missing_cpu [0.057142s] ... ok {14} ironic.tests.unit.drivers.modules.redfish.test_inspect.RedfishInspectTestCase.test_inspect_hardware_ignore_missing_boot_mode [0.086842s] ... ok {30} ironic.tests.unit.drivers.modules.test_snmp.SNMPDeviceDriverTestCase.test_eaton_power_power_state_pending_off [0.015751s] ... ok {14} ironic.tests.unit.drivers.modules.redfish.test_inspect.RedfishInspectTestCase.test_inspect_hardware_ignore_missing_memory_mb [0.079826s] ... ok {30} ironic.tests.unit.drivers.modules.test_snmp.SNMPDriverTestCase.test_set_power_state_off_snmp_failure [0.064915s] ... ok {30} ironic.tests.unit.drivers.modules.test_snmp.SNMPValidateParametersTestCase.test__parse_driver_info_invalid_outlet [0.013836s] ... ok {14} ironic.tests.unit.drivers.modules.redfish.test_management.RedfishManagementTestCase.test_inject_nmi [0.070387s] ... ok {30} ironic.tests.unit.drivers.modules.ucs.test_management.UcsManagementTestCase.test_set_boot_device_fail [0.702722s] ... ok {14} ironic.tests.unit.drivers.modules.redfish.test_utils.RedfishUtilsTestCase.test_auth_basic [0.061225s] ... ok {30} ironic.tests.unit.drivers.modules.xclarity.test_management.XClarityManagementDriverTestCase.test_get_boot_device_current_none [1.220371s] ... ok {14} ironic.tests.unit.drivers.modules.storage.test_cinder.CinderInterfaceTestCase.test_detach_volumes_failure [0.096610s] ... ok {30} ironic.tests.unit.drivers.test_base.PassthruDecoratorTestCase.test_passthru_exclusive_task_metadata [0.009891s] ... ok {14} ironic.tests.unit.drivers.modules.storage.test_cinder.CinderInterfaceTestCase.test_validate_fails_fc_conn_iscsi_target [0.105833s] ... ok {30} ironic.tests.unit.drivers.test_base.RAIDInterfaceTestCase.test_get_logical_disk_properties [0.011271s] ... ok {14} ironic.tests.unit.drivers.modules.test_agent.TestAgentDeploy.test_continue_deploy_partition_image [0.120744s] ... ok {30} ironic.tests.unit.drivers.test_generic.ManualManagementHardwareTestCase.test_get_properties [0.023581s] ... ok {14} ironic.tests.unit.drivers.modules.test_agent.TestAgentDeploy.test_deploy_has_started [0.071629s] ... ok {14} ironic.tests.unit.drivers.modules.test_agent.TestAgentDeploy.test_prepare_cleaning [0.074787s] ... ok {14} ironic.tests.unit.drivers.modules.test_agent.TestAgentDeploy.test_prepare_manage_agent_boot_false [0.143156s] ... ok {30} ironic.tests.unit.drivers.test_irmc.IRMCHardwareTestCase.test_default_interfaces [0.065409s] ... ok {14} ironic.tests.unit.drivers.modules.test_agent.TestAgentMethods.test_validate_http_provisioning_missing_args [0.021853s] ... ok {30} ironic.tests.unit.drivers.test_utils.UtilsRamdiskLogsTestCase.test_collect_ramdisk_logs_storage_fail_swift [0.016701s] ... ok {14} ironic.tests.unit.drivers.modules.test_console_utils.ConsoleUtilsTestCase.test_get_socat_console_url_tcp6 [0.013723s] ... ok {30} ironic.tests.unit.drivers.test_utils.UtilsTestCase.test_add_node_capability_append [0.074999s] ... ok {24} ironic.tests.unit.drivers.modules.test_ipxe.iPXEBootTestCase.test_validate_skip_check_write_image_false [0.047051s] ... ok {14} ironic.tests.unit.drivers.modules.test_console_utils.ConsoleUtilsTestCase.test_get_socat_console_url_tcp_with_address_conf [0.014133s] ... ok {30} ironic.tests.unit.objects.test_node.TestConvertToVersion.test_automated_clean_unsupported_set_remove [0.014978s] ... ok {14} ironic.tests.unit.drivers.modules.test_console_utils.ConsoleUtilsTestCase.test_start_shellinabox_console_fail [0.030502s] ... ok {14} ironic.tests.unit.drivers.modules.test_deploy_utils.InstanceInfoTestCase.test_parse_instance_info_invalid_ephemeral_disk [0.023631s] ... ok {30} ironic.tests.unit.objects.test_node.TestConvertToVersion.test_description_supported_missing [0.014247s] ... ok {30} ironic.tests.unit.objects.test_node.TestConvertToVersion.test_fault_supported_missing [0.015294s] ... ok {14} ironic.tests.unit.drivers.modules.test_deploy_utils.OtherFunctionTestCase.test_get_boot_option_instance_info_priority [0.023919s] ... ok {30} ironic.tests.unit.objects.test_node.TestConvertToVersion.test_rescue_unsupported_set_no_remove_non_default [0.014622s] ... ok {14} ironic.tests.unit.drivers.modules.test_deploy_utils.PhysicalWorkTestCase.test_deploy_partition_image_localboot_bios [0.028049s] ... ok {30} ironic.tests.unit.objects.test_node.TestNodeObject.test_reserve [0.017003s] ... ok {14} ironic.tests.unit.drivers.modules.test_deploy_utils.ValidateImagePropertiesTestCase.test_validate_image_properties_glance_image [0.025249s] ... ok {30} ironic.tests.unit.objects.test_node.TestNodeObject.test_touch_provisioning [0.018909s] ... ok {14} ironic.tests.unit.drivers.modules.test_deploy_utils.ValidateParametersTestCase.test__get_img_instance_info_good_non_glance_image [0.022612s] ... ok {30} ironic.tests.unit.objects.test_objects.TestObjectSerializer.test_serialize_entity_pinned_api [0.010317s] ... ok {14} ironic.tests.unit.drivers.modules.test_inspector.CheckStatusTestCase.test_not_inspecting [0.017682s] ... ok {30} ironic.tests.unit.objects.test_objects.TestObjectSerializer.test_serialize_entity_unpinned_api [0.011790s] ... ok {14} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolDriverTestCase.test_management_interface_force_set_boot_device_ok [0.101959s] ... ok {30} ironic.tests.unit.objects.test_port.TestConvertToVersion.test_is_smartnic_supported_set [0.013623s] ... ok {14} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolDriverTestCase.test_management_interface_get_supported_boot_devices [0.073496s] ... ok {30} ironic.tests.unit.objects.test_volume_target.TestVolumeTargetObject.test_get [0.018607s] ... ok {14} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolDriverTestCase.test_management_interface_set_boot_device_uefi_and_persistent [0.072172s] ... ok {14} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolDriverTestCase.test_set_power_on_ok [0.072615s] ... ok {14} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolDriverTestCase.test_set_power_on_with_next_boot_timeout [0.078907s] ... ok {14} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolPrivateMethodTestCase.test__exec_ipmitool_second_call_to_address_no_sleep [0.027408s] ... ok {24} ironic.tests.unit.drivers.modules.test_iscsi_deploy.IscsiDeployMethodsTestCase.test_destroy_images [0.033265s] ... ok {14} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolPrivateMethodTestCase.test__power_status_off [0.025185s] ... ok {14} ironic.tests.unit.drivers.modules.test_ipxe.iPXEBootTestCase.test_clean_up_instance [0.075261s] ... ok {14} ironic.tests.unit.drivers.modules.test_pxe.PXERamdiskDeployTestCase.test_prepare_unrescuing [0.092952s] ... ok {14} ironic.tests.unit.drivers.modules.test_snmp.SNMPClientTestCase.test__get_transport_err [0.034077s] ... ok {14} ironic.tests.unit.drivers.modules.test_snmp.SNMPClientTestCase.test_get [0.025271s] ... ok {14} ironic.tests.unit.drivers.modules.test_snmp.SNMPDeviceDriverTestCase.test_eaton_power_power_state_pending_on [0.015108s] ... ok {14} ironic.tests.unit.drivers.modules.test_snmp.SNMPDeviceDriverTestCase.test_power_state_off [0.014917s] ... ok {14} ironic.tests.unit.drivers.modules.test_snmp.SNMPDeviceDriverTestCase.test_teltronix_power_state_on [0.015057s] ... ok {14} ironic.tests.unit.drivers.modules.test_snmp.SNMPValidateParametersTestCase.test__parse_driver_info_invalid_version [0.013351s] ... ok {24} ironic.tests.unit.drivers.modules.test_iscsi_deploy.IscsiDeployMethodsTestCase.test_get_deploy_info_whole_disk_image [0.018595s] ... ok {14} ironic.tests.unit.drivers.modules.test_snmp.SNMPValidateParametersTestCase.test__parse_driver_info_snmp_v3_compat [0.013544s] ... ok {14} ironic.tests.unit.drivers.modules.test_snmp.SNMPValidateParametersTestCase.test__parse_driver_info_snmp_v3_priv_key_proto [0.013262s] ... ok {14} ironic.tests.unit.drivers.modules.ucs.test_helper.UcsValidateParametersTestCase.test_parse_driver_info_missing_username [0.054666s] ... ok {14} ironic.tests.unit.drivers.modules.ucs.test_power.UcsPowerTestCase.test_reboot_timeout [0.143911s] ... ok {14} ironic.tests.unit.drivers.test_utils.UtilsRamdiskLogsTestCase.test_store_ramdisk_logs_local [0.015464s] ... ok {14} ironic.tests.unit.drivers.test_utils.UtilsTestCase.test_add_node_capability_append_duplicate [0.083917s] ... ok {24} ironic.tests.unit.drivers.modules.test_snmp.SNMPDeviceDriverTestCase.test_apc_masterswitchplus_power_on [0.014619s] ... ok {14} ironic.tests.unit.drivers.test_utils.UtilsTestCase.test_capabilities_not_string [0.021222s] ... ok {14} ironic.tests.unit.objects.test_node.TestConvertToVersion.test_bios_unsupported_set_remove [0.013773s] ... ok {14} ironic.tests.unit.objects.test_node.TestConvertToVersion.test_protected_unsupported_set_no_remove_non_default [0.014636s] ... ok {14} ironic.tests.unit.objects.test_node.TestNodeObject.test_get_bad_id_and_uuid [0.013256s] ... ok {14} ironic.tests.unit.objects.test_objects.TestObjectSerializer.test_object_serialization [0.008427s] ... ok PATCH: /v1/volume/connectors/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 [{'path': '/node_uuid', 'value': '12506333-a81c-4d59-9987-889ed5f8687b', 'op': 'replace'}] GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-9e17c69e-dce7-4420-8e85-3640bbe080ca X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Node 12506333-a81c-4d59-9987-889ed5f8687b could not be found.\"}"} {14} ironic.tests.unit.objects.test_volume_connector.TestVolumeConnectorObject.test_list_none [0.017535s] ... ok {29} ironic.tests.unit.api.controllers.v1.test_volume_connector.TestPatch.test_replace_non_existent_node_uuid [0.091118s] ... ok {14} ironic.tests.unit.objects.test_volume_connector.TestVolumeConnectorObject.test_payload_schemas [0.012731s] ... ok {14} ironic.tests.unit.objects.test_volume_connector.TestVolumeConnectorObject.test_save [0.017796s] ... ok {14} ironic.tests.unit.objects.test_volume_target.TestVolumeTargetObject.test_create [0.015119s] ... ok GET: /v1/portgroups?address=aa:bb:cc:dd:ee:f1 {} GOT:{u'portgroups': [{u'address': u'aa:bb:cc:dd:ee:f1', u'uuid': u'20808aac-4c5a-4d5c-b5f6-1ed83120968a', u'links': [{u'href': u'http://localhost/v1/portgroups/20808aac-4c5a-4d5c-b5f6-1ed83120968a', u'rel': u'self'}, {u'href': u'http://localhost/portgroups/20808aac-4c5a-4d5c-b5f6-1ed83120968a', u'rel': u'bookmark'}], u'name': u'portgroup1'}]} {16} ironic.tests.unit.api.controllers.v1.test_portgroup.TestListPortgroups.test_portgroup_by_address [0.091638s] ... ok PATCH: /v1/volume/targets/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 [{'path': '/node_uuid', 'value': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123', 'op': 'replace'}] GOT:Response: 200 OK Content-Type: application/json Openstack-Request-Id: req-ce9b1e85-b27d-4c5f-a9d0-92ae91c009c9 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"boot_index": 0, "uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "links": [{"href": "http://localhost/v1/volume/targets/1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "rel": "self"}, {"href": "http://localhost/volume/targets/1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "rel": "bookmark"}], "extra": {}, "created_at": "2019-06-06T07:02:18.101836+00:00", "updated_at": null, "volume_type": "iscsi", "node_uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "volume_id": "12345678", "properties": {"target_iqn": "iqn.foo"}} {31} ironic.tests.unit.api.controllers.v1.test_volume_target.TestPatch.test_replace_node_uuid [0.114951s] ... ok POST: /v1/ports {'local_link_connection': {'switch_info': 'switch', 'port_id': 'Gig0/1', 'switch_id': 'aa:bb:cc:dd:ee:ff'}, 'node_uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123', 'uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c781', 'extra': {}, 'pxe_enabled': True, 'portgroup_uuid': '6eb02b44-18a3-4659-8c0b-8d2802581ae4', 'physical_network': None, 'address': '52:54:00:cf:2d:31', 'is_smartnic': True} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-f88517ff-6ceb-4e8d-ab44-207101884dac X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Smart NIC port must have port_id and hostname in local_link_connection\"}"} {20} ironic.tests.unit.api.controllers.v1.test_port.TestPost.test_create_port_with_is_smartnic_missing_hostname [0.097667s] ... ok PATCH: /v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4 [{'path': '/address', 'value': 'aa:aa:aa:aa:aa:aa', 'op': 'replace'}] GOT:Response: 409 Conflict Content-Type: application/json Openstack-Request-Id: req-25e66c09-ea6d-4e47-ac22-08375c5796c4 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"A port with MAC address aa:aa:aa:aa:aa:aa already exists.\"}"} {13} ironic.tests.unit.api.controllers.v1.test_portgroup.TestPatch.test_replace_address_already_exist [0.103557s] ... ok GET: /v1/portgroups {} GOT:{u'portgroups': []} {20} ironic.tests.unit.api.controllers.v1.test_portgroup.TestListPortgroups.test_empty [0.052297s] ... ok PATCH: /v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 [{'path': '/pxe_enabled', 'value': True, 'op': 'replace'}] GOT:Response: 200 OK Content-Type: application/json Openstack-Request-Id: req-1b6c5875-a012-4a0a-9843-a179c08eaac8 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.19 {"local_link_connection": {"switch_info": "switch1", "port_id": "Ethernet3/1", "switch_id": "0a:1b:2c:3d:4e:5f"}, "node_uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "links": [{"href": "http://localhost/v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "rel": "self"}, {"href": "http://localhost/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "rel": "bookmark"}], "extra": {}, "pxe_enabled": true, "created_at": "2019-06-06T07:02:18.117668+00:00", "updated_at": null, "address": "52:54:00:cf:2d:31", "internal_info": {"bar": "buzz"}} {15} ironic.tests.unit.api.controllers.v1.test_port.TestPatch.test_update_pxe_enabled_allowed [0.123263s] ... ok PATCH: /v1/volume/targets/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 [{'path': '/extra/foo1', 'value': 'bar1', 'op': 'add'}, {'path': '/extra/foo2', 'value': 'bar2', 'op': 'add'}, {'path': '/extra/foo3', 'value': 'bar3', 'op': 'add'}] GOT:Response: 200 OK Content-Type: application/json Openstack-Request-Id: req-596f8591-9592-4898-9f57-9934cb056519 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"boot_index": 0, "uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "links": [{"href": "http://localhost/v1/volume/targets/1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "rel": "self"}, {"href": "http://localhost/volume/targets/1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "rel": "bookmark"}], "extra": {"foo1": "bar1", "foo2": "bar2", "foo3": "bar3"}, "created_at": "2019-06-06T07:02:22.190053+00:00", "updated_at": null, "volume_type": "iscsi", "node_uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "volume_id": "12345678", "properties": {"target_iqn": "iqn.foo"}} {27} ironic.tests.unit.api.controllers.v1.test_volume_target.TestPatch.test_add_multi [0.088864s] ... ok {27} ironic.tests.unit.api.test_middleware.TestCORSMiddleware.test_valid_cors_get_request [0.107084s] ... ok {27} ironic.tests.unit.common.test_driver_factory.DriverLoadTestCase.test_driver_duplicated_entry [0.047382s] ... ok {27} ironic.tests.unit.common.test_driver_factory.WarnUnsupportedDriversTestCase.test__warn_if_unsupported_with_unsupported [0.021772s] ... ok {27} ironic.tests.unit.common.test_exception.TestIronicException.test___init___invalid_kwarg_reraise [0.025391s] ... ok {27} ironic.tests.unit.common.test_fsm.FSMTest.test_process_event [0.019401s] ... ok {27} ironic.tests.unit.common.test_image_service.HttpImageServiceTestCase.test_download_fail_connerror [0.020994s] ... ok {27} ironic.tests.unit.common.test_images.FsImageTestCase.test_create_vfat_image_mkfs_fails [0.026934s] ... ok {27} ironic.tests.unit.common.test_images.IronicImagesTestCase.test_image_show_image_service [0.019084s] ... ok {27} ironic.tests.unit.common.test_network.TestNetwork.test_get_node_vif_ids_during_provisioning [0.123567s] ... ok POST: /v1/ports {'local_link_connection': {'switch_info': 'switch1', 'port_id': 'Ethernet3/1', 'switch_id': '0a:1b:2c:3d:4e:5f'}, 'node_uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123', 'uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c781', 'extra': {}, 'pxe_enabled': True, 'portgroup_uuid': '6eb02b44-18a3-4659-8c0b-8d2802581ae4', 'physical_network': None, 'address': 'invalid-format', 'is_smartnic': False} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-9ab212a2-8d55-4fbf-ba0f-704164ba6f73 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Expected a MAC address but received invalid-format.\"}"} {27} ironic.tests.unit.common.test_neutron.TestNeutronNetworkActions.test_add_ports_to_network_instance_uuid [3.303668s] ... ok {4} ironic.tests.unit.api.controllers.v1.test_port.TestPost.test_create_port_invalid_addr_format [0.066927s] ... ok {27} ironic.tests.unit.common.test_neutron.TestNeutronNetworkActions.test_is_smartnic_port_true [0.024598s] ... ok {27} ironic.tests.unit.common.test_neutron.TestNeutronNetworkActions.test_validate_port_info_neutron_with_no_smartnic_and_link_info [0.056066s] ... ok {27} ironic.tests.unit.common.test_neutron.TestNeutronNetworkActions.test_wait_for_port_status_down_max_retry [0.036257s] ... ok {27} ironic.tests.unit.common.test_neutron.TestValidateNetwork.test_not_found [0.011837s] ... ok {27} ironic.tests.unit.common.test_policy.PolicyTestCase.test_authorize_access_forbidden [0.015290s] ... ok {27} ironic.tests.unit.common.test_pxe_utils.PXEInterfacesTestCase.test_build_pxe_config_options_pxe_local_boot [0.078827s] ... ok {27} ironic.tests.unit.common.test_pxe_utils.PXEInterfacesTestCase.test_validate_boot_parameters_for_trusted_boot_three [0.023892s] ... ok {27} ironic.tests.unit.common.test_pxe_utils.TestPXEUtils.test_clean_up_pxe_config_uefi_mac_address [0.076522s] ... ok {27} ironic.tests.unit.common.test_pxe_utils.TestPXEUtils.test_dhcp_options_for_instance_ipv6 [0.063685s] ... ok {27} ironic.tests.unit.common.test_raid.RaidPublicMethodsTestCase.test_filter_target_raid_config_skip_root [0.020576s] ... ok {27} ironic.tests.unit.common.test_swift.SwiftTestCase.test_create_object_create_container_fails [0.071002s] ... ok {27} ironic.tests.unit.common.test_utils.BareMetalUtilsTestCase.test_create_link_EEXIST [0.010454s] ... ok {27} ironic.tests.unit.common.test_utils.GenericUtilsTestCase.test_unix_file_modification_datetime [0.012842s] ... ok {27} ironic.tests.unit.conductor.test_base_manager.StartStopTestCase.test_start_fails_on_hw_types [0.017691s] ... ok {27} ironic.tests.unit.conductor.test_base_manager.StartStopTestCase.test_stop_doesnt_unregister_conductor [0.156652s] ... ok {27} ironic.tests.unit.conductor.test_manager.BootDeviceTestCase.test_set_boot_device_node_locked [0.040769s] ... ok {27} ironic.tests.unit.conductor.test_manager.ChangeNodePowerStateTestCase.test_change_node_power_state_validate_fail [0.211873s] ... ok {27} ironic.tests.unit.conductor.test_manager.DoNextDeployStepTestCase.test__do_next_deploy_step_async [0.259736s] ... ok {27} ironic.tests.unit.conductor.test_manager.DoNodeCleanTestCase.test_do_node_clean_worker_pool_full [0.229369s] ... ok {27} ironic.tests.unit.conductor.test_manager.DoNodeDeployTestCase.test__do_node_deploy_driver_unexpected_exception_old [0.266439s] ... ok {27} ironic.tests.unit.conductor.test_manager.DoNodeRescueTestCase.test_do_node_rescue_when_power_validate_fail [0.109698s] ... ok {27} ironic.tests.unit.conductor.test_manager.DoNodeRescueTestCase.test_do_node_unrescue_invalid_state [0.236812s] ... ok {27} ironic.tests.unit.conductor.test_manager.DoProvisioningActionTestCase.test_do_provision_action_abort_automated_clean [0.286727s] ... ok {27} ironic.tests.unit.conductor.test_manager.ManagerDoSyncPowerStateTestCase.test_power_state_sync_max_retries_gps_exception [0.047182s] ... ok {27} ironic.tests.unit.conductor.test_manager.ManagerPowerRecoveryTestCase.test_node_in_enroll_on_acquire [0.022174s] ... ok {27} ironic.tests.unit.conductor.test_manager.ManagerTestProperties.test_driver_properties_snmp [0.218555s] ... ok {27} ironic.tests.unit.conductor.test_manager.ServiceDoNodeDeployTestCase.test_do_node_deploy_rebuild_active_state_old [0.517962s] ... ok {27} ironic.tests.unit.conductor.test_manager.UpdateVolumeTargetTestCase.test_update_volume_target_node_not_found [0.066943s] ... ok {27} ironic.tests.unit.conductor.test_manager.VendorPassthruTestCase.test_vendor_passthru_async [0.174889s] ... ok {27} ironic.tests.unit.conductor.test_manager.VendorPassthruTestCase.test_vendor_passthru_sync [0.177091s] ... ok GET: /v1/volume/targets?detail=False {} GOT:{u'targets': [{u'boot_index': 0, u'uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c781', u'links': [{u'href': u'http://localhost/v1/volume/targets/1be26c0b-03f2-4d2e-ae87-c02d7f33c781', u'rel': u'self'}, {u'href': u'http://localhost/volume/targets/1be26c0b-03f2-4d2e-ae87-c02d7f33c781', u'rel': u'bookmark'}], u'volume_type': u'iscsi', u'node_uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'volume_id': u'12345678'}]} {29} ironic.tests.unit.api.controllers.v1.test_volume_target.TestListVolumeTargets.test_detail_false [0.098222s] ... ok {27} ironic.tests.unit.conductor.test_rpcapi.RPCAPITestCase.test_create_node [0.015034s] ... ok {27} ironic.tests.unit.conductor.test_rpcapi.RPCAPITestCase.test_do_node_tear_down [0.015157s] ... ok {27} ironic.tests.unit.conductor.test_rpcapi.RPCAPITestCase.test_do_node_unrescue [0.014923s] ... ok {27} ironic.tests.unit.conductor.test_rpcapi.RPCAPITestCase.test_heartbeat [0.015295s] ... ok {27} ironic.tests.unit.conductor.test_steps.NodeCleaningStepsTestCase.test_set_node_cleaning_steps_manual [0.148486s] ... ok {27} ironic.tests.unit.conductor.test_steps.NodeDeployStepsTestCase.test__get_all_deployment_steps_no_driver_steps [0.065826s] ... ok {27} ironic.tests.unit.conductor.test_task_manager.TaskManagerStateModelTestCases.test_release_clears_resources [0.011572s] ... ok {27} ironic.tests.unit.conductor.test_utils.FastTrackTestCase.test_is_fast_track_error_blocks [0.077899s] ... ok {27} ironic.tests.unit.conductor.test_utils.MiscTestCase.test_power_on_node_if_needed_with_smart_nic_port [0.074865s] ... ok {27} ironic.tests.unit.conductor.test_utils.NodePowerActionTestCase.test_node_power_action_power_on_storage_attach [0.098833s] ... ok {27} ironic.tests.unit.conductor.test_utils.ValidatePortPhysnetTestCase.test_validate_port_physnet_1_port_portgroup_w_physnet_update_add_2 [0.084984s] ... ok {27} ironic.tests.unit.db.test_chassis.DbChassisTestCase.test_update_chassis [0.019893s] ... ok {27} ironic.tests.unit.db.test_deploy_templates.DbDeployTemplateTestCase.test_update_steps_replace [0.026558s] ... ok {27} ironic.tests.unit.db.test_node_traits.DbNodeTraitTestCase.test_add_node_trait_duplicate [0.045116s] ... ok {27} ironic.tests.unit.db.test_node_traits.DbNodeTraitTestCase.test_set_node_traits_duplicate [0.024246s] ... ok {27} ironic.tests.unit.db.test_node_traits.DbNodeTraitTestCase.test_unset_node_traits_node_not_exist [0.021812s] ... ok {27} ironic.tests.unit.db.test_nodes.DbNodeTestCase.test_check_node_list [0.027923s] ... ok {27} ironic.tests.unit.db.test_nodes.DbNodeTestCase.test_destroy_node [0.034725s] ... ok {27} ironic.tests.unit.db.test_nodes.DbNodeTestCase.test_update_node_no_provision [0.029722s] ... ok {27} ironic.tests.unit.db.test_portgroups.DbportgroupTestCase.test_get_portgroup_by_id_that_does_not_exist [0.022397s] ... ok {27} ironic.tests.unit.db.test_volume_targets.DbVolumeTargetTestCase.test_update_volume_target_fails_invalid_id [0.021638s] ... ok {27} ironic.tests.unit.drivers.modules.ansible.test_deploy.TestAnsibleDeploy.test_get_clean_steps_priority [0.059653s] ... ok {27} ironic.tests.unit.drivers.modules.ansible.test_deploy.TestAnsibleMethods.test__get_node_ip [1.385353s] ... ok {27} ironic.tests.unit.drivers.modules.cimc.test_management.CIMCManagementTestCase.test_get_boot_device_fail [0.076828s] ... ok GET: /v1/ {} GOT:{u'media_types': [{u'base': u'application/json', u'type': u'application/vnd.openstack.ironic.v1+json'}], u'links': [{u'href': u'http://localhost/v1/', u'rel': u'self'}, {u'href': u'https://docs.openstack.org//ironic/latest/contributor//webapi.html', u'type': u'text/html', u'rel': u'describedby'}], u'drivers': [{u'href': u'http://localhost/v1/drivers/', u'rel': u'self'}, {u'href': u'http://localhost/drivers/', u'rel': u'bookmark'}], u'portgroups': [{u'href': u'http://localhost/v1/portgroups/', u'rel': u'self'}, {u'href': u'http://localhost/portgroups/', u'rel': u'bookmark'}], u'id': u'v1', u'volume': [{u'href': u'http://localhost/v1/volume/', u'rel': u'self'}, {u'href': u'http://localhost/volume/', u'rel': u'bookmark'}], u'version': {u'status': u'CURRENT', u'min_version': u'1.1', u'version': u'1.56', u'id': u'v1', u'links': [{u'href': u'http://localhost/v1/', u'rel': u'self'}]}, u'lookup': [{u'href': u'http://localhost/v1/lookup/', u'rel': u'self'}, {u'href': u'http://localhost/lookup/', u'rel': u'bookmark'}], u'heartbeat': [{u'href': u'http://localhost/v1/heartbeat/', u'rel': u'self'}, {u'href': u'http://localhost/heartbeat/', u'rel': u'bookmark'}], u'nodes': [{u'href': u'http://localhost/v1/nodes/', u'rel': u'self'}, {u'href': u'http://localhost/nodes/', u'rel': u'bookmark'}], u'ports': [{u'href': u'http://localhost/v1/ports/', u'rel': u'self'}, {u'href': u'http://localhost/ports/', u'rel': u'bookmark'}], u'chassis': [{u'href': u'http://localhost/v1/chassis/', u'rel': u'self'}, {u'href': u'http://localhost/chassis/', u'rel': u'bookmark'}]} {22} ironic.tests.unit.api.test_root.TestV1Root.test_get_v1_32_root [0.041225s] ... ok {27} ironic.tests.unit.drivers.modules.drac.test_common.DracCommonMethodsTestCase.test_get_drac_client [0.140885s] ... ok {22} ironic.tests.unit.common.test_context.RequestContextTestCase.test_from_dict [0.012771s] ... ok {27} ironic.tests.unit.drivers.modules.drac.test_raid.DracManageVirtualDisksTestCase.test_commit_config_fail [0.023703s] ... ok {22} ironic.tests.unit.common.test_driver_factory.CheckAndUpdateNodeInterfacesTestCase.test_no_network_interface [0.032608s] ... ok {27} ironic.tests.unit.drivers.modules.drac.test_raid.DracQueryRaidConfigurationTestCase.test_list_raid_controllers [0.023500s] ... ok {27} ironic.tests.unit.drivers.modules.ibmc.test_management.IBMCManagementTestCase.test_set_boot_device_fail [0.082821s] ... ok {27} ironic.tests.unit.drivers.modules.ilo.test_bios.IloBiosTestCase.test__execute_pre_boot_bios_step_iloobj_failed [0.054536s] ... ok {27} ironic.tests.unit.drivers.modules.ilo.test_boot.IloBootPrivateMethodsTestCase.test__get_boot_iso_create [0.092920s] ... ok {22} ironic.tests.unit.common.test_driver_factory.DefaultInterfaceTestCase.test_calculated_no_answer_drivername [0.019833s] ... ok {27} ironic.tests.unit.drivers.modules.ilo.test_boot.IloVirtualMediaBootTestCase.test_validate [0.096821s] ... ok {22} ironic.tests.unit.common.test_driver_factory.DefaultInterfaceTestCase.test_calculated_with_one [0.018973s] ... ok {27} ironic.tests.unit.drivers.modules.ilo.test_boot.IloVirtualMediaBootTestCase.test_validate_rescue [0.080472s] ... ok {22} ironic.tests.unit.common.test_glance_service.TestGlanceImageService.test_show_makes_datetimes [0.016028s] ... ok GET: /v1/portgroups?address=invalid-mac-format {} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-fb4e9540-5cd2-4023-9d50-dab7b952664a X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Invalid input for field/attribute address. Value: 'invalid-mac-format'. unable to convert to macaddress. Error: Expected a MAC address but received invalid-mac-format.\"}"} {27} ironic.tests.unit.drivers.modules.ilo.test_common.IloCommonMethodsTestCase.test_set_secure_boot_mode_not_supported [0.071620s] ... ok {16} ironic.tests.unit.api.controllers.v1.test_portgroup.TestListPortgroups.test_portgroup_by_address_invalid_address_format [0.062994s] ... ok {22} ironic.tests.unit.common.test_images.FsImageTestCase.test_create_isolinux_image_uefi_rootfs_fails [3.869833s] ... ok {27} ironic.tests.unit.drivers.modules.ilo.test_common.IloValidateParametersTestCase.test_parse_driver_info_invalid_port [0.024114s] ... ok {27} ironic.tests.unit.drivers.modules.ilo.test_firmware_processor.FirmwareProcessorTestCase.test_process_fw_on_calls__download_fw_to [0.085823s] ... ok {22} ironic.tests.unit.common.test_images.IronicImagesTestCase.test_is_whole_disk_image_partition_non_glance [0.017797s] ... ok {22} ironic.tests.unit.common.test_json_rpc.TestService.test_malformed_context [0.029915s] ... ok {27} ironic.tests.unit.drivers.modules.ilo.test_management.IloManagementTestCase.test_get_properties [0.063595s] ... ok {22} ironic.tests.unit.common.test_json_rpc.TestService.test_unexpected_failure [0.055032s] ... ok {27} ironic.tests.unit.drivers.modules.ilo.test_management.IloManagementTestCase.test_update_firmware_throws_error_for_no_firmware_url [0.062379s] ... ok {22} ironic.tests.unit.common.test_neutron.TestNeutronClient.test_out_range_auth_strategy [0.027990s] ... ok {27} ironic.tests.unit.drivers.modules.ilo.test_power.IloPowerInternalMethodsTestCase.test__attach_boot_iso_if_needed_on_rebuild [0.064636s] ... ok {22} ironic.tests.unit.common.test_neutron.TestNeutronNetworkActions.test_add_ports_to_network [0.106647s] ... ok {27} ironic.tests.unit.drivers.modules.ilo.test_power.IloPowerInternalMethodsTestCase.test__set_power_state_reboot_fail [1.728783s] ... ok {22} ironic.tests.unit.common.test_policy.PolicyTestCase.test_get_oslo_policy_enforcer_namespace [0.067230s] ... ok {27} ironic.tests.unit.drivers.modules.ilo.test_power.IloPowerTestCase.test_get_power_state [0.064836s] ... ok {22} ironic.tests.unit.common.test_pxe_utils.PXEInterfacesTestCase.test_get_volume_pxe_options_unsupported_additional_volume_type [0.088073s] ... ok {27} ironic.tests.unit.drivers.modules.irmc.test_common.IRMCCommonMethodsTestCase.test_update_ipmi_properties [0.068775s] ... ok {22} ironic.tests.unit.common.test_pxe_utils.TestPXEUtils.test_get_rescue_kr_info [0.033706s] ... ok {27} ironic.tests.unit.drivers.modules.irmc.test_power.IRMCPowerInternalMethodsTestCase.test__wait_power_state_soft_reboot [2.102393s] ... ok {22} ironic.tests.unit.common.test_rpc.TestRequestContextSerializer.test_deserialize_context [0.012144s] ... ok {27} ironic.tests.unit.drivers.modules.irmc.test_power.IRMCPowerTestCase.test_reboot_reboot [0.064797s] ... ok {27} ironic.tests.unit.drivers.modules.network.test_common.TestCommonFunctions.test_plug_port_to_tenant_network_no_tenant_vif [0.069559s] ... ok {22} ironic.tests.unit.conductor.test_base_manager.CheckInterfacesTestCase.test__check_enabled_interfaces_success [0.015298s] ... ok {27} ironic.tests.unit.drivers.modules.network.test_common.TestNeutronVifPortIDMixin.test_port_changed_address_VIF_MAC_update_fail [0.068973s] ... ok {22} ironic.tests.unit.conductor.test_base_manager.ManagerSpawnWorkerTestCase.test__spawn_worker [0.017364s] ... ok {27} ironic.tests.unit.drivers.modules.network.test_common.TestVifPortIDMixin.test_get_current_vif_none [0.073824s] ... ok {22} ironic.tests.unit.conductor.test_manager.ChangeNodePowerStateTestCase.test_node_set_power_state_notif_get_power_fail [0.286157s] ... ok {27} ironic.tests.unit.drivers.modules.network.test_noop.NoopInterfaceTestCase.test_unconfigure_tenant_networks [0.067051s] ... ok {22} ironic.tests.unit.conductor.test_manager.DoNextDeployStepTestCase.test__do_next_deploy_step_continue_from_last_step [0.313631s] ... ok {27} ironic.tests.unit.drivers.modules.redfish.test_management.RedfishManagementTestCase.test_set_boot_mode [0.069148s] ... ok {22} ironic.tests.unit.conductor.test_manager.DoNodeAdoptionTestCase.test_heartbeat_agent_version_deprecated [0.289866s] ... ok {27} ironic.tests.unit.drivers.modules.test_agent_base_vendor.AgentDeployMixinTest.test_configure_local_boot_enforce_persistent_boot_device_always [0.067481s] ... ok {22} ironic.tests.unit.conductor.test_manager.DoNodeCleanAbortTestCase.test__do_node_clean_abort_with_step_name [0.087326s] ... ok {27} ironic.tests.unit.drivers.modules.test_agent_base_vendor.AgentDeployMixinTest.test_configure_local_boot_uefi [0.069981s] ... ok {22} ironic.tests.unit.conductor.test_manager.DoNodeCleanTestCase.test__do_node_clean_automated_prepare_clean_wait [0.101940s] ... ok {27} ironic.tests.unit.drivers.modules.test_agent_base_vendor.AgentDeployMixinTest.test_reboot_and_finish_deploy_get_power_state_fails [0.097204s] ... ok {22} ironic.tests.unit.conductor.test_manager.DoNodeRescueTestCase.test__do_node_unrescue_other_error [0.281726s] ... ok {27} ironic.tests.unit.drivers.modules.test_agent_base_vendor.AgentRescueTests.test__finalize_rescue [0.090009s] ... ok {27} ironic.tests.unit.drivers.modules.test_agent_base_vendor.HeartbeatMixinTest.test_heartbeat_with_reservation [0.161632s] ... ok {22} ironic.tests.unit.conductor.test_manager.ManagerPowerRecoveryTestCase.test_node_recovery_failed [0.046462s] ... ok {27} ironic.tests.unit.drivers.modules.test_agent_client.TestAgentClient.test_prepare_image [0.011057s] ... ok {22} ironic.tests.unit.conductor.test_manager.ManagerPowerRecoveryTestCase.test_node_recovery_success [0.018832s] ... ok {22} ironic.tests.unit.conductor.test_manager.ManagerSyncPowerStatesTestCase.test_node_in_deploywait_on_acquire [0.023820s] ... ok {27} ironic.tests.unit.drivers.modules.test_console_utils.ConsoleUtilsTestCase.test_start_socat_console_check_arg_timeout [0.033159s] ... ok {22} ironic.tests.unit.conductor.test_manager.ManagerTestProperties.test_driver_properties_ilo [0.136344s] ... ok {27} ironic.tests.unit.drivers.modules.test_deploy_utils.AgentMethodsTestCase.test_build_agent_options_keystone [0.024709s] ... ok {22} ironic.tests.unit.conductor.test_manager.NodeTraitsTestCase.test_remove_node_traits_node_locked [0.099747s] ... ok {27} ironic.tests.unit.drivers.modules.test_deploy_utils.AgentMethodsTestCase.test_direct_deploy_should_convert_raw_image_no_force_raw [0.022824s] ... ok {22} ironic.tests.unit.conductor.test_manager.TestIndirectionApiConductor.test_object_action_on_raise [0.023248s] ... ok {22} ironic.tests.unit.conductor.test_manager.UpdateNodeTestCase.test_update_node_interface_in_not_allowed_state [0.282294s] ... ok {27} ironic.tests.unit.drivers.modules.test_deploy_utils.AgentMethodsTestCase.test_get_clean_steps_missing_steps [0.080409s] ... ok {22} ironic.tests.unit.conductor.test_manager.UpdateNodeTestCase.test_update_node_protected_set [0.146564s] ... ok {27} ironic.tests.unit.drivers.modules.test_deploy_utils.GetSingleNicTestCase.test_get_single_nic_with_cleaning_vif_port_id [0.063904s] ... ok {22} ironic.tests.unit.conductor.test_manager.VifTestCase.test_vif_detach_node_locked [0.047293s] ... ok {27} ironic.tests.unit.drivers.modules.test_deploy_utils.PhysicalWorkTestCase.test_deploy_partition_image_image_exceeds_root_partition [0.020342s] ... ok {27} ironic.tests.unit.drivers.modules.test_image_cache.TestImageCacheCleanUp.test_clean_up_cache_still_large [0.014985s] ... ok {22} ironic.tests.unit.conductor.test_notification_utils.TestNotificationUtils.test_emit_power_state_corrected_notification [0.022720s] ... ok {27} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolDriverTestCase.test_set_soft_power_off_ok [0.070370s] ... ok {27} ironic.tests.unit.drivers.modules.test_ipxe.iPXEBootTestCase.test_prepare_instance_whole_disk_image_missing_root_uuid [0.630562s] ... ok {22} ironic.tests.unit.conductor.test_rpcapi.ConductorRPCAPITestCase.test_versions_in_sync [0.009803s] ... ok {22} ironic.tests.unit.conductor.test_steps.NodeDeployStepsTestCase.test__validate_user_deploy_steps_duplicates [0.072018s] ... ok {27} ironic.tests.unit.drivers.modules.test_ipxe.iPXEBootTestCase.test_prepare_ramdisk_force_persistent_boot_device_sloppy_false [0.539820s] ... ok {22} ironic.tests.unit.conductor.test_steps.NodeDeployStepsTestCase.test__validate_user_deploy_steps_get_steps_exception [0.077758s] ... ok {22} ironic.tests.unit.conductor.test_task_manager.TaskManagerStateModelTestCases.test_process_event_callback_stable_state [0.016123s] ... ok {27} ironic.tests.unit.drivers.modules.test_noop.NoInterfacesTestCase.test_load_by_name [0.020781s] ... ok {22} ironic.tests.unit.conductor.test_task_manager.TaskManagerStateModelTestCases.test_process_event_sets_callback_and_error_handler [0.015586s] ... ok {27} ironic.tests.unit.drivers.modules.test_pxe.PXEBootTestCase.test_clean_up_ramdisk_rescue [0.089536s] ... ok {22} ironic.tests.unit.conductor.test_utils.ErrorHandlersTestCase.test_cleanup_rescuewait_timeout_unknown_exc [0.017566s] ... ok {27} ironic.tests.unit.drivers.modules.test_snmp.SNMPDeviceDriverTestCase.test_apc_masterswitch_power_off [0.018181s] ... ok {22} ironic.tests.unit.conductor.test_utils.FastTrackTestCase.test_is_fast_track_power_off_false [0.073918s] ... ok {27} ironic.tests.unit.drivers.modules.test_snmp.SNMPDeviceDriverTestCase.test_apc_masterswitchplus_snmp_objects [0.016445s] ... ok {22} ironic.tests.unit.conductor.test_utils.ValidatePortPhysnetTestCase.test_validate_port_physnet_empty_portgroup_create_1 [0.067822s] ... ok {27} ironic.tests.unit.drivers.modules.test_snmp.SNMPDriverTestCase.test_set_power_state_on_snmp_failure [0.069040s] ... ok {22} ironic.tests.unit.db.test_allocations.AllocationsTestCase.test_destroy_allocation_that_does_not_exist [0.024439s] ... ok {27} ironic.tests.unit.drivers.modules.ucs.test_helper.UcsValidateParametersTestCase.test_parse_driver_info_missing_password [0.050621s] ... ok {22} ironic.tests.unit.db.test_allocations.AllocationsTestCase.test_get_allocation_list_filter_by_rsc [0.040814s] ... ok {27} ironic.tests.unit.drivers.modules.ucs.test_power.UcsPowerTestCase.test_get_power_state_down [0.624687s] ... ok {22} ironic.tests.unit.db.test_nodes.DbNodeTestCase.test_create_node_already_exists [0.029476s] ... ok {27} ironic.tests.unit.drivers.modules.xclarity.test_management.XClarityManagementDriverTestCase.test_get_boot_device [0.061030s] ... ok {22} ironic.tests.unit.db.test_nodes.DbNodeTestCase.test_create_node_with_tags [0.017517s] ... ok {22} ironic.tests.unit.db.test_portgroups.DbportgroupTestCase.test_create_portgroup_duplicated_uuid [0.024083s] ... ok {27} ironic.tests.unit.drivers.modules.xclarity.test_management.XClarityManagementDriverTestCase.test_get_properties [0.021272s] ... ok {22} ironic.tests.unit.dhcp.test_neutron.TestNeutron.test_update_dhcp_set_sleep_and_fake [0.098009s] ... ok {27} ironic.tests.unit.drivers.test_fake_hardware.FakeHardwareTestCase.test_management_interface_set_boot_mode_good [0.057654s] ... ok {22} ironic.tests.unit.drivers.modules.ansible.test_deploy.TestAnsibleDeploy.test__ansible_deploy [0.096109s] ... ok {27} ironic.tests.unit.drivers.test_utils.UtilsTestCase.test_get_node_capability [0.019724s] ... ok {22} ironic.tests.unit.drivers.modules.ansible.test_deploy.TestAnsibleDeploy.test_deploy [0.064649s] ... ok {27} ironic.tests.unit.objects.test_conductor.TestConductorObject.test_register_into_group_with_update [0.015973s] ... ok {22} ironic.tests.unit.drivers.modules.ansible.test_deploy.TestAnsibleDeploy.test_get_properties [0.021252s] ... ok {27} ironic.tests.unit.objects.test_fields.TestStringFieldThatAcceptsCallable.test_coerce_function [0.010891s] ... ok {27} ironic.tests.unit.objects.test_fields.TestStringFieldThatAcceptsCallable.test_coerce_invalid_type [0.009358s] ... ok {22} ironic.tests.unit.drivers.modules.cimc.test_common.CIMCHandleTestCase.test_cimc_handle [0.081238s] ... ok {27} ironic.tests.unit.objects.test_node.TestConvertToVersion.test_fault_unsupported_set_remove [0.014431s] ... ok {22} ironic.tests.unit.drivers.modules.drac.test_power.DracPowerTestCase.test_reboot_while_powered_off [0.066607s] ... ok {27} ironic.tests.unit.objects.test_objects.TestObject.test_as_dict_with_nested_object_list [0.009593s] ... ok {22} ironic.tests.unit.drivers.modules.drac.test_raid.DracCreateRaidConfigurationHelpersTestCase.test__calculate_spans_for_7_disk_and_raid_level_10 [0.034773s] ... ok {22} ironic.tests.unit.drivers.modules.drac.test_raid.DracManageVirtualDisksTestCase.test_create_virtual_disk_with_optional_attrs [0.024017s] ... ok {27} ironic.tests.unit.objects.test_objects.TestObject.test_get_changes_pinned_2versions [0.013769s] ... ok {22} ironic.tests.unit.drivers.modules.ibmc.test_power.IBMCPowerTestCase.test_set_power_state_fail [0.087855s] ... ok {22} ironic.tests.unit.drivers.modules.ibmc.test_utils.IBMCUtilsTestCase.test_parse_driver_info [0.023649s] ... ok {27} ironic.tests.unit.objects.test_objects.TestObject.test_unknown_objtype [0.009498s] ... ok {27} ironic.tests.unit.objects.test_objects.TestObjectSerializer.test_deserialize_entity_newer_version_backports [0.010929s] ... ok {27} ironic.tests.unit.objects.test_port.TestPortObject.test_supports_is_smartnic_unsupported [0.014469s] ... ok {22} ironic.tests.unit.drivers.modules.ilo.test_bios.IloBiosTestCase.test_cache_bios_settings_missing_parameter [0.052196s] ... ok {22} ironic.tests.unit.drivers.modules.ilo.test_boot.IloBootPrivateMethodsTestCase.test__get_boot_iso_http_url [1.035249s] ... ok {27} ironic.tests.unit.objects.test_trait.TestTraitObject.test_as_dict [0.014139s] ... ok {27} ironic.tests.unit.objects.test_volume_target.TestVolumeTargetObject.test_list_by_node_id [0.018045s] ... ok {22} ironic.tests.unit.drivers.modules.ilo.test_boot.IloVirtualMediaBootTestCase.test_prepare_ramdisk_in_takeover [0.318747s] ... ok {22} ironic.tests.unit.drivers.modules.ilo.test_boot.IloVirtualMediaBootTestCase.test_validate_boot_from_volume [0.082346s] ... ok {22} ironic.tests.unit.drivers.modules.ilo.test_common.IloCommonMethodsTestCase.test__prepare_floppy_image [0.089734s] ... ok {22} ironic.tests.unit.drivers.modules.ilo.test_common.IloCommonMethodsTestCase.test_update_secure_boot_mode_passed_true [0.067031s] ... ok {22} ironic.tests.unit.drivers.modules.ilo.test_firmware_processor.FirmwareProcessorTestCase.test__remove_file_based_me [0.033900s] ... ok {22} ironic.tests.unit.drivers.modules.irmc.test_boot.IRMCDeployPrivateMethodsTestCase.test__prepare_floppy_image [0.070778s] ... ok {22} ironic.tests.unit.drivers.modules.irmc.test_boot.IRMCDeployPrivateMethodsTestCase.test_check_share_fs_mounted_ok [0.022345s] ... ok {22} ironic.tests.unit.drivers.modules.irmc.test_boot.IRMCPXEBootBasicTestCase.test_prepare_ramdisk_force_persistent_boot_device_sloppy_true [0.486007s] ... ok {22} ironic.tests.unit.drivers.modules.irmc.test_common.IRMCValidateParametersTestCase.test_parse_driver_option_default [0.022993s] ... ok {22} ironic.tests.unit.drivers.modules.irmc.test_management.IRMCManagementTestCase.test_management_interface_set_boot_device_ok_safe [0.293178s] ... ok {22} ironic.tests.unit.drivers.modules.irmc.test_periodic_task.iRMCPeriodicTaskTestCase.test__query_raid_config_fgi_status_without_raid_object [0.031318s] ... ok {22} ironic.tests.unit.drivers.modules.irmc.test_power.IRMCPowerInternalMethodsTestCase.test__set_power_state_scci_exception [0.054672s] ... ok {22} ironic.tests.unit.drivers.modules.network.test_common.TestVifPortIDMixin.test__clear_vif_from_port_like_obj_in_extra_port [0.030431s] ... ok {22} ironic.tests.unit.drivers.modules.network.test_common.TestVifPortIDMixin.test__clear_vif_from_port_like_obj_in_extra_portgroup [0.035894s] ... ok {22} ironic.tests.unit.drivers.modules.network.test_common.TestVifPortIDMixin.test_get_current_vif_extra_vif_port_id [1.174174s] ... ok {22} ironic.tests.unit.drivers.modules.network.test_flat.TestFlatInterface.test_vif_attach [0.078389s] ... ok {22} ironic.tests.unit.drivers.modules.network.test_neutron.NeutronInterfaceTestCase.test_validate [0.066635s] ... ok {22} ironic.tests.unit.drivers.modules.network.test_neutron.NeutronInterfaceTestCase.test_vif_detach [0.064035s] ... ok {22} ironic.tests.unit.drivers.modules.redfish.test_utils.RedfishUtilsTestCase.test_auth_auto [0.068711s] ... ok {22} ironic.tests.unit.drivers.modules.redfish.test_utils.RedfishUtilsTestCase.test_parse_driver_info [0.022080s] ... ok GET: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123 {} GOT:Response: 403 Forbidden Content-Type: application/json Openstack-Request-Id: req-ab7cec84-7c9c-4cf1-97ac-b6601de9d6fd X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.1 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Access was denied to the following resource: baremetal:node:get\"}"} {22} ironic.tests.unit.drivers.modules.storage.test_cinder.CinderInterfaceTestCase.test_validate_success_fc_targets [0.102069s] ... ok {29} ironic.tests.unit.api.test_acl.TestACL.test_non_admin_with_admin_header [0.086429s] ... ok {22} ironic.tests.unit.drivers.modules.storage.test_cinder.CinderInterfaceTestCase.test_validate_success_no_settings [0.077529s] ... ok {22} ironic.tests.unit.drivers.modules.test_agent.AgentRescueTestCase.test_agent_rescue_clean_up_no_manage_boot [0.083966s] ... ok {22} ironic.tests.unit.drivers.modules.test_agent.TestAgentDeploy.test_clean_up [0.074588s] ... ok {22} ironic.tests.unit.drivers.modules.test_agent.TestAgentDeploy.test_continue_deploy_with_no_proxy_without_proxies [0.122753s] ... ok {22} ironic.tests.unit.drivers.modules.test_agent_base_vendor.HeartbeatMixinTest.test_heartbeat_rescue [0.092520s] ... ok {22} ironic.tests.unit.drivers.modules.test_agent_client.TestAgentClient.test__get_command_url [0.010418s] ... ok {22} ironic.tests.unit.drivers.modules.test_agent_client.TestAgentClientAttempts.test__command_succeed_after_one_timeout [0.013609s] ... ok {22} ironic.tests.unit.drivers.modules.test_console_utils.ConsoleUtilsTestCase.test__get_console_pid_dir_tempdir [0.020561s] ... ok {22} ironic.tests.unit.drivers.modules.test_console_utils.ConsoleUtilsTestCase.test__stop_console [0.022620s] ... ok {22} ironic.tests.unit.drivers.modules.test_deploy_utils.GetPxeBootConfigTestCase.test_get_pxe_boot_file_emtpy_property [0.015111s] ... ok {22} ironic.tests.unit.drivers.modules.test_deploy_utils.ParseInstanceInfoCapabilitiesTestCase.test_is_secure_boot_requested_invalid [2.714167s] ... ok {22} ironic.tests.unit.drivers.modules.test_image_cache.CleanupImageCacheTestCase.test_one_clean_up [0.018415s] ... ok {22} ironic.tests.unit.drivers.modules.test_image_cache.TestImageCacheCleanUp.test_clean_up_files_with_links_untouched [0.012399s] ... ok {22} ironic.tests.unit.drivers.modules.test_image_cache.TestImageCacheFetch.test__download_image [0.015408s] ... ok {22} ironic.tests.unit.drivers.modules.test_inspector.CheckStatusTestCase.test_not_check_inspecting [0.016954s] ... ok {22} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolCheckOptionSupportedTestCase.test_check_single_bridge_no_ipmitool [0.012681s] ... ok {22} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolDriverTestCase.test_power_validate [0.067614s] ... ok {22} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolPrivateMethodTestCase.test__exec_ipmitool_with_check_exit_code [0.027137s] ... ok {22} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolPrivateMethodTestCase.test__exec_ipmitool_without_username [0.026486s] ... ok {22} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolPrivateMethodTestCase.test__parse_driver_info [0.025687s] ... ok {22} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolSocatDriverTestCase.test__start_console [0.067817s] ... ok {22} ironic.tests.unit.drivers.modules.test_ipxe.iPXEBootTestCase.test_prepare_ramdisk_set_boot_mode_on_ironic [0.157094s] ... ok {22} ironic.tests.unit.drivers.modules.test_iscsi_deploy.IscsiDeployMethodsTestCase.test_check_image_size_whole_disk_image [0.063792s] ... ok Running batches of 50 until migrations have been completed. Data migrations have completed. {22} ironic.tests.unit.drivers.modules.test_iscsi_deploy.IscsiDeployMethodsTestCase.test_get_deploy_info_cpu_arch [0.020106s] ... ok {29} ironic.tests.unit.cmd.test_dbsync.OnlineMigrationTestCase.test__run_online_data_migrations [0.028059s] ... ok {29} ironic.tests.unit.common.test_driver_factory.DriverLoadTestCase.test_driver_load_error_if_driver_enabled [0.025878s] ... ok {22} ironic.tests.unit.drivers.modules.test_iscsi_deploy.IscsiDeployMethodsTestCase.test_get_deploy_info_localboot [0.019735s] ... ok {22} ironic.tests.unit.drivers.modules.test_pxe.PXERamdiskDeployTestCase.test_prepare [0.117858s] ... ok {29} ironic.tests.unit.common.test_exception.TestIronicException.test___init___invalid_kwarg [0.023177s] ... ok {29} ironic.tests.unit.common.test_glance_service.CheckImageServiceTestCase.test_check_image_service__no_auth [0.034135s] ... ok {22} ironic.tests.unit.drivers.modules.test_snmp.SNMPDeviceDriverTestCase.test_apc_masterswitchplus_power_off [0.017310s] ... ok {29} ironic.tests.unit.common.test_hash_ring.HashRingManagerTestCase.test_hash_ring_manager_hardware_type_success [0.078804s] ... ok {29} ironic.tests.unit.common.test_image_service.FileImageServiceTestCase.test_validate_href [0.019601s] ... ok {22} ironic.tests.unit.drivers.modules.test_snmp.SNMPDeviceDriverTestCase.test_auto_power_state_unknown_pdu [0.017273s] ... ok {29} ironic.tests.unit.common.test_network.GetPhysnetsByPortgroupID.test_exclude_port [0.126222s] ... ok {22} ironic.tests.unit.drivers.modules.test_snmp.SNMPDeviceDriverTestCase.test_eaton_power_power_state_off [0.015748s] ... ok GET: /v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4 {} GOT:{u'node_uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'uuid': u'6eb02b44-18a3-4659-8c0b-8d2802581ae4', u'links': [{u'href': u'http://localhost/v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4', u'rel': u'self'}, {u'href': u'http://localhost/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4', u'rel': u'bookmark'}], u'extra': {}, u'created_at': u'2019-06-06T07:02:17.328518+00:00', u'updated_at': None, u'properties': {}, u'standalone_ports_supported': True, u'mode': u'active-backup', u'address': u'52:54:00:cf:2d:31', u'internal_info': {u'bar': u'buzz'}, u'ports': [{u'href': u'http://localhost/v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4/ports', u'rel': u'self'}, {u'href': u'http://localhost/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4/ports', u'rel': u'bookmark'}], u'name': u'pg.json'} {20} ironic.tests.unit.api.controllers.v1.test_portgroup.TestListPortgroups.test_get_one_with_json_in_name [0.089249s] ... ok {22} ironic.tests.unit.drivers.modules.test_snmp.SNMPDeviceDriverTestCase.test_power_on_timeout [9.029360s] ... ok {29} ironic.tests.unit.common.test_neutron.TestNeutronNetworkActions.test_wait_for_host_agent_up_target_state_up [0.043019s] ... ok {22} ironic.tests.unit.drivers.modules.test_snmp.SNMPDeviceDriverTestCase.test_power_reset [0.017869s] ... ok {29} ironic.tests.unit.common.test_policy.PolicyInCodeTestCaseNegative.test_node_create [0.027504s] ... ok {29} ironic.tests.unit.common.test_pxe_utils.PXEInterfacesTestCase.test_build_pxe_config_options_pxe_rescue [0.141961s] ... ok {22} ironic.tests.unit.drivers.modules.test_snmp.SNMPValidateParametersTestCase.test__parse_driver_info_snmp_v1 [0.013872s] ... ok {29} ironic.tests.unit.common.test_pxe_utils.TestPXEUtils.test_get_path_relative_to_tftp_root_without_trailing_slash [0.036773s] ... ok {29} ironic.tests.unit.common.test_raid.RaidPublicMethodsTestCase.test_filter_target_raid_config_no_target_raid_config_after_skipping [0.036350s] ... ok {22} ironic.tests.unit.drivers.modules.ucs.test_power.UcsPowerTestCase.test_reboot__wait_state_change_fail [0.793137s] ... ok {29} ironic.tests.unit.common.test_swift.SwiftTestCase.test___init__ [0.093816s] ... ok {22} ironic.tests.unit.drivers.modules.xclarity.test_common.XClarityCommonTestCase.test_parse_driver_info_invalid_port [0.022531s] ... ok {29} ironic.tests.unit.conductor.test_manager.DestroyNodeTestCase.test_destroy_node_console_enabled [0.328331s] ... ok {29} ironic.tests.unit.conductor.test_manager.DestroyPortTestCase.test_destroy_port_node_active_state [0.122690s] ... ok {22} ironic.tests.unit.drivers.modules.xclarity.test_management.XClarityManagementDriverTestCase.test_set_boot_device [0.067834s] ... ok {29} ironic.tests.unit.conductor.test_manager.DoNextDeployStepTestCase.test__get_node_next_deploy_steps [0.112506s] ... ok POST: /v1/ports {'local_link_connection': {'switch_info': 'switch1', 'port_id': 'Ethernet3/1', 'switch_id': '0a:1b:2c:3d:4e:5f'}, 'node_uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123', 'uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c781', 'extra': {}, 'pxe_enabled': True, 'portgroup_uuid': '6eb02b44-18a3-4659-8c0b-8d2802581ae4', 'physical_network': None, 'address': 'AA:AA:AA:11:22:33', 'is_smartnic': False} GOT:Response: 409 Conflict Content-Type: application/json Openstack-Request-Id: req-2283c6de-8e0c-4e3f-b16f-c0e4a3aeae66 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"A port with MAC address AA:AA:AA:11:22:33 already exists.\"}"} {29} ironic.tests.unit.conductor.test_manager.DoNextDeployStepTestCase.test_do_next_deploy_step_no_steps [0.517909s] ... ok {15} ironic.tests.unit.api.controllers.v1.test_port.TestPost.test_create_port_address_already_exist [3.257987s] ... ok {22} ironic.tests.unit.drivers.test_base.CleanStepDecoratorTestCase.test_clean_step_priority_only [0.010087s] ... ok {29} ironic.tests.unit.conductor.test_manager.DoNodeAdoptionTestCase.test__do_adoption_boot_validate_failure [0.296640s] ... ok {22} ironic.tests.unit.drivers.test_base.DeployAndCleanStepDecoratorTestCase.test_deploy_and_clean_step_all_args [0.009514s] ... ok {29} ironic.tests.unit.conductor.test_manager.DoNodeCleanTestCase.test__do_node_clean_automated_disabled_individual_enabled [0.305740s] ... ok {22} ironic.tests.unit.drivers.test_base.PassthruDecoratorTestCase.test_passthru_shared_task_metadata [0.011948s] ... ok {29} ironic.tests.unit.conductor.test_manager.DoNodeCleanTestCase.test__do_node_clean_manual_prepare_clean_fail [0.164213s] ... ok {22} ironic.tests.unit.drivers.test_fake_hardware.FakeHardwareTestCase.test_management_interface_get_properties [0.059579s] ... ok {29} ironic.tests.unit.conductor.test_manager.DoNodeTearDownTestCase.test__do_node_tear_down_ok_with_console [0.266572s] ... ok {22} ironic.tests.unit.objects.test_node.TestConvertToVersion.test_fault_supported_untouched [0.014765s] ... ok {22} ironic.tests.unit.objects.test_node.TestConvertToVersion.test_protected_unsupported_set_remove [0.014401s] ... ok {29} ironic.tests.unit.conductor.test_manager.ManagerCheckDeployTimeoutsTestCase.test_acquire_node_disappears [0.016542s] ... ok {22} ironic.tests.unit.objects.test_node.TestConvertToVersion.test_rescue_unsupported_missing [0.015313s] ... ok {29} ironic.tests.unit.conductor.test_manager.ManagerCheckDeployTimeoutsTestCase.test_acquire_node_locked [0.025073s] ... ok {29} ironic.tests.unit.conductor.test_manager.ManagerTestProperties.test_driver_properties_fail [0.113650s] ... ok {22} ironic.tests.unit.objects.test_node.TestConvertToVersion.test_rescue_unsupported_set_remove [0.014269s] ... ok {29} ironic.tests.unit.conductor.test_manager.ServiceDoNodeDeployTestCase.test_do_node_deploy_power_validate_fail [0.084528s] ... ok {22} ironic.tests.unit.objects.test_node.TestConvertToVersion.test_traits_unsupported_missing_remove [0.014816s] ... ok {29} ironic.tests.unit.conductor.test_manager.ServiceDoNodeDeployTestCase.test_do_node_deploy_rebuild_active_state_waiting_old [0.278533s] ... ok {22} ironic.tests.unit.objects.test_node.TestNodeObject.test_create [0.017318s] ... ok {29} ironic.tests.unit.conductor.test_manager.StoreConfigDriveTestCase.test_store_configdrive [0.042135s] ... ok {29} ironic.tests.unit.conductor.test_manager.UpdatePortgroupTestCase.test_update_portgroup_to_node_in_inspect_wait_state [0.282524s] ... ok {22} ironic.tests.unit.objects.test_node.TestNodeObject.test_save_updated_at_field [0.021111s] ... ok {29} ironic.tests.unit.conductor.test_rpcapi.RPCAPITestCase.test_add_node_traits_replace [0.027373s] ... ok {22} ironic.tests.unit.objects.test_node.TestNodeObject.test_update_with_invalid_properties [0.018680s] ... ok {29} ironic.tests.unit.conductor.test_rpcapi.RPCAPITestCase.test_destroy_node [0.027934s] ... ok {22} ironic.tests.unit.objects.test_objects.TestObject.test_supports_version [0.010151s] ... ok {29} ironic.tests.unit.conductor.test_rpcapi.RPCAPITestCase.test_get_console_information [0.027597s] ... ok {22} ironic.tests.unit.objects.test_trait.TestTraitObject.test_create_list [0.016974s] ... ok {29} ironic.tests.unit.conductor.test_task_manager.ProvisionNotifyTestCase.test_notify_stable_to_unstable [0.025944s] ... ok {29} ironic.tests.unit.conductor.test_task_manager.TaskManagerTestCase.test_excl_lock_exception_then_lock [0.040774s] ... ok {29} ironic.tests.unit.conductor.test_task_manager.TaskManagerTestCase.test_no_driver [0.042891s] ... ok {29} ironic.tests.unit.conductor.test_task_manager.TaskManagerTestCase.test_spawn_after_on_error_hook [0.051382s] ... ok {29} ironic.tests.unit.conductor.test_task_manager.ThreadExceptionTestCase.test_set_node_last_error_no_error [0.012554s] ... ok {29} ironic.tests.unit.conductor.test_utils.DeployingErrorHandlerTestCase.test_deploying_error_handler [0.013155s] ... ok {29} ironic.tests.unit.conductor.test_utils.ErrorHandlersTestCase.test_spawn_cleaning_error_handler_other_error [0.012954s] ... ok {29} ironic.tests.unit.conductor.test_utils.NodePowerActionTestCase.test_node_power_action_invalid_state [0.141098s] ... ok {29} ironic.tests.unit.conductor.test_utils.NodeSoftPowerActionTestCase.test_node_power_action_soft_power_off_timeout [0.130300s] ... ok {29} ironic.tests.unit.db.sqlalchemy.test_types.SqlAlchemyCustomTypesTestCase.test_JSONEncodedDict_default_value [2.127033s] ... ok {29} ironic.tests.unit.db.test_api.UpgradingTestCase.test_check_versions_node_old [0.087066s] ... ok {29} ironic.tests.unit.db.test_node_traits.DbNodeTraitTestCase.test_add_node_trait [0.034001s] ... ok {29} ironic.tests.unit.db.test_nodes.DbNodeTestCase.test_ports_get_destroyed_after_destroying_a_node_by_uuid [0.040238s] ... ok {29} ironic.tests.unit.db.test_nodes.DbNodeTestCase.test_update_node_uuid [0.023680s] ... ok {29} ironic.tests.unit.db.test_nodes.DbNodeTestCase.test_volume_target_gets_destroyed_after_destroying_a_node_uuid [0.039077s] ... ok {29} ironic.tests.unit.db.test_portgroups.DbportgroupTestCase.test_update_portgroup_duplicated_address [0.031087s] ... ok {29} ironic.tests.unit.db.test_volume_targets.DbVolumeTargetTestCase.test_destroy_volume_target [0.034399s] ... ok {29} ironic.tests.unit.dhcp.test_neutron.TestNeutron.test__get_ip_addresses_portgroup_int_info [0.125633s] ... ok {29} ironic.tests.unit.drivers.modules.ansible.test_deploy.TestAnsibleMethods.test__calculate_memory_req [0.072018s] ... ok {29} ironic.tests.unit.drivers.modules.drac.test_raid.DracCreateRaidConfigurationHelpersTestCase.test__filter_logical_disks_root_only [0.040366s] ... ok {29} ironic.tests.unit.drivers.modules.drac.test_raid.DracRaidInterfaceTestCase.test_create_configuration_with_share_physical_disks [0.226716s] ... ok {29} ironic.tests.unit.drivers.modules.ibmc.test_power.IBMCPowerTestCase.test_validate [0.093486s] ... ok {29} ironic.tests.unit.drivers.modules.ilo.test_bios.IloBiosTestCase.test__execute_pre_boot_bios_step_apply_configuration [0.119318s] ... ok {29} ironic.tests.unit.drivers.modules.ilo.test_boot.IloBootPrivateMethodsTestCase.test__clean_up_boot_iso_for_instance [0.088327s] ... ok {29} ironic.tests.unit.drivers.modules.ilo.test_boot.IloBootPrivateMethodsTestCase.test_prepare_node_for_deploy_inst_info [0.129513s] ... ok {29} ironic.tests.unit.drivers.modules.ilo.test_boot.IloVirtualMediaBootTestCase.test_prepare_instance_whole_disk_image [0.149004s] ... ok {29} ironic.tests.unit.drivers.modules.ilo.test_common.IloCommonMethodsTestCase.test__prepare_floppy_image_use_webserver [2.229924s] ... ok {29} ironic.tests.unit.drivers.modules.ilo.test_common.IloCommonMethodsTestCase.test_get_server_post_state_not_supported [0.063834s] ... ok {29} ironic.tests.unit.drivers.modules.ilo.test_common.IloCommonMethodsTestCase.test_update_boot_mode [0.077692s] ... ok {29} ironic.tests.unit.drivers.modules.ilo.test_common.IloCommonMethodsTestCase.test_verify_image_checksum [0.022131s] ... ok {29} ironic.tests.unit.drivers.modules.ilo.test_firmware_processor.FirmwareProcessorTestCase.test__download_http_based_fw_to_gets_invoked_for_http_based_firmware [0.012574s] ... ok {29} ironic.tests.unit.drivers.modules.ilo.test_firmware_processor.FirmwareProcessorTestCase.test__validate_sum_components_fails [0.010486s] ... ok {29} ironic.tests.unit.drivers.modules.ilo.test_firmware_processor.FirmwareProcessorTestCase.test_fw_img_loc_sets_these_attributes [0.008821s] ... ok {29} ironic.tests.unit.drivers.modules.ilo.test_inspect.TestInspectPrivateMethods.test__get_essential_properties_hardware_port_not_dict [0.020959s] ... ok {29} ironic.tests.unit.drivers.modules.ilo.test_vendor.VendorPassthruTestCase.test__validate_boot_into_iso_invalid_state [0.063431s] ... ok {29} ironic.tests.unit.drivers.modules.irmc.test_boot.IRMCDeployPrivateMethodsTestCase.test__get_iso_name [0.020023s] ... ok {29} ironic.tests.unit.drivers.modules.irmc.test_boot.IRMCDeployPrivateMethodsTestCase.test__parse_instance_info_with_boot_iso_file_name_ok [0.020808s] ... ok {29} ironic.tests.unit.drivers.modules.irmc.test_boot.IRMCPXEBootBasicTestCase.test_prepare_instance_netboot_active [0.125408s] ... ok {29} ironic.tests.unit.drivers.modules.irmc.test_boot.IRMCPXEBootBasicTestCase.test_prepare_ramdisk_conflicting_boot_modes [0.124556s] ... ok PATCH: /v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4 [{'path': '/extra/foo', 'value': 'bar', 'op': 'add'}] GOT:Response: 200 OK Content-Type: application/json Openstack-Request-Id: req-174afd13-efc9-4dfb-9f65-9b7c3905b230 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"node_uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "uuid": "6eb02b44-18a3-4659-8c0b-8d2802581ae4", "links": [{"href": "http://localhost/v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4", "rel": "self"}, {"href": "http://localhost/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4", "rel": "bookmark"}], "extra": {"foo": "bar"}, "created_at": "2019-06-06T07:02:17.689643+00:00", "updated_at": null, "ports": [{"href": "http://localhost/v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4/ports", "rel": "self"}, {"href": "http://localhost/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4/ports", "rel": "bookmark"}], "standalone_ports_supported": true, "mode": "active-backup", "address": "52:54:00:cf:2d:31", "internal_info": {"bar": "buzz"}, "properties": {}, "name": "pg.1"} {13} ironic.tests.unit.api.controllers.v1.test_portgroup.TestPatch.test_update_byid [0.298477s] ... ok {29} ironic.tests.unit.drivers.modules.irmc.test_boot.IRMCPXEBootBasicTestCase.test_prepare_ramdisk_ipxe_with_copy_no_file [0.136366s] ... ok {29} ironic.tests.unit.drivers.modules.irmc.test_power.IRMCPowerInternalMethodsTestCase.test__is_expected_power_state [0.020996s] ... ok {29} ironic.tests.unit.drivers.modules.irmc.test_raid.IRMCRaidConfigurationInternalMethodsTestCase.test__fail_validation_with_physical_disk_not_enough_disks [0.054992s] ... ok {29} ironic.tests.unit.drivers.modules.network.test_common.TestCommonFunctions.test__get_free_portgroups_and_ports_no_physnets [0.111695s] ... ok {29} ironic.tests.unit.drivers.modules.network.test_common.TestCommonFunctions.test_get_free_port_like_object_ports_physnet_match_first [0.098670s] ... ok {29} ironic.tests.unit.drivers.modules.network.test_common.TestNeutronVifPortIDMixin.test_port_changed_novif_pxe_portgroup_standalone_ports [0.234153s] ... ok {29} ironic.tests.unit.drivers.modules.network.test_flat.TestFlatInterface.test_vif_detach [0.070542s] ... ok {29} ironic.tests.unit.drivers.modules.redfish.test_bios.RedfishBiosTestCase.test_apply_configuration_step1 [0.095211s] ... ok {29} ironic.tests.unit.drivers.modules.redfish.test_management.RedfishManagementTestCase.test_get_boot_device [0.050199s] ... ok {29} ironic.tests.unit.drivers.modules.storage.test_cinder.CinderInterfaceTestCase.test_attach_detach_called_with_target_and_connector [0.100297s] ... ok {29} ironic.tests.unit.drivers.modules.test_agent.AgentRescueTestCase.test_agent_rescue_clean_up [0.073309s] ... ok {29} ironic.tests.unit.drivers.modules.test_agent.TestAgentDeploy.test_prepare_fast_track [0.096085s] ... ok {29} ironic.tests.unit.drivers.modules.test_agent.TestAgentDeploy.test_prepare_storage_write_false [0.135098s] ... ok {29} ironic.tests.unit.drivers.modules.test_agent_base_vendor.AgentDeployMixinTest.test_continue_cleaning [0.093142s] ... ok {29} ironic.tests.unit.drivers.modules.test_agent_base_vendor.AgentDeployMixinTest.test_continue_cleaning_clean_version_mismatch_fail [0.098262s] ... ok {29} ironic.tests.unit.drivers.modules.test_agent_client.TestAgentClient.test__command_fail_json [0.012193s] ... ok {29} ironic.tests.unit.drivers.modules.test_agent_client.TestAgentClient.test__get_command_url_fail [0.010514s] ... ok {29} ironic.tests.unit.drivers.modules.test_boot_mode_utils.GetBootModeTestCase.test_get_boot_mode_default [0.011416s] ... ok {29} ironic.tests.unit.drivers.modules.test_console_utils.ConsoleUtilsTestCase.test__get_console_pid_dir [0.014659s] ... ok {29} ironic.tests.unit.drivers.modules.test_console_utils.ConsoleUtilsTestCase.test_start_shellinabox_console [0.033900s] ... ok {29} ironic.tests.unit.drivers.modules.test_deploy_utils.GetPxeBootConfigTestCase.test_get_pxe_config_template_per_node [0.020964s] ... ok {29} ironic.tests.unit.drivers.modules.test_deploy_utils.InstanceInfoTestCase.test_parse_instance_info_unicode_swap_mb [0.020777s] ... ok {29} ironic.tests.unit.drivers.modules.test_deploy_utils.OtherFunctionTestCase.test_get_dev [0.020766s] ... ok {29} ironic.tests.unit.drivers.modules.test_deploy_utils.TestBuildInstanceInfoForDeploy.test_build_instance_info_for_deploy_nonsupported_image [0.082802s] ... ok {29} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolDriverTestCase.test_get_power_state [0.079995s] ... ok {29} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolDriverTestCase.test_management_interface_set_boot_device_bad_device [0.069689s] ... ok {29} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolDriverTestCase.test_management_interface_set_boot_device_ok [0.068635s] ... ok {29} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolDriverTestCase.test_reboot_fail_power_on [0.069026s] ... ok {29} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolDriverTestCase.test_reboot_ok [0.065520s] ... ok {29} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolDriverTestCase.test_send_raw_bytes_ok [0.064506s] ... ok {29} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolDriverTestCase.test_set_power_on_with_next_boot [0.066117s] ... ok {29} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolPrivateMethodTestCase.test__exec_ipmitool_with_empty_password [0.028599s] ... ok {29} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolPrivateMethodTestCase.test__parse_driver_info_undefined_credentials [0.030792s] ... ok {29} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolSocatDriverTestCase.test_console_validate [0.050397s] ... ok {29} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolSocatDriverTestCase.test_console_validate_missing_port [0.050563s] ... ok {29} ironic.tests.unit.drivers.modules.test_ipxe.iPXEValidateRescueTestCase.test_validate_rescue_no_rescue_ramdisk [0.073508s] ... ok {29} ironic.tests.unit.drivers.modules.test_iscsi_deploy.ISCSIDeployTestCase.test_continue_deploy_netboot [0.100993s] ... ok {29} ironic.tests.unit.drivers.modules.test_iscsi_deploy.ISCSIDeployTestCase.test_deploy [0.075307s] ... ok {29} ironic.tests.unit.drivers.modules.test_iscsi_deploy.ISCSIDeployTestCase.test_prepare_cleaning [0.086201s] ... ok {29} ironic.tests.unit.drivers.modules.test_pxe.PXEBootTestCase.test_get_properties [0.062515s] ... ok {29} ironic.tests.unit.drivers.modules.test_pxe.PXEBootTestCase.test_prepare_ramdisk_force_persistent_boot_device_bool_false [0.676944s] ... ok {29} ironic.tests.unit.drivers.modules.test_pxe.PXEBootTestCase.test_prepare_ramdisk_force_persistent_boot_device_bool_true [0.128943s] ... ok {29} ironic.tests.unit.drivers.modules.test_pxe.PXEBootTestCase.test_validate_fail_missing_deploy_kernel [0.057270s] ... ok {29} ironic.tests.unit.drivers.modules.test_pxe.PXERamdiskDeployTestCase.test_deploy_with_smartnic_port [0.346462s] ... ok {29} ironic.tests.unit.drivers.modules.test_pxe.PXERamdiskDeployTestCase.test_prepare_active [0.114777s] ... ok {29} ironic.tests.unit.drivers.modules.test_snmp.SNMPClientTestCase.test__get_transport [0.040314s] ... ok {29} ironic.tests.unit.drivers.modules.test_snmp.SNMPDeviceDriverTestCase.test_apc_power_reset [0.020139s] ... ok {29} ironic.tests.unit.drivers.modules.test_snmp.SNMPDeviceDriverTestCase.test_baytech_mrp27_power_on [0.019163s] ... ok {29} ironic.tests.unit.drivers.modules.test_snmp.SNMPValidateParametersTestCase.test__parse_driver_info_cyberpower [0.015593s] ... ok {29} ironic.tests.unit.drivers.modules.test_snmp.SNMPValidateParametersTestCase.test__parse_driver_info_snmp_v3_auth_short_key [0.015403s] ... ok {29} ironic.tests.unit.drivers.test_ipmi.IPMIHardwareTestCase.test_override_with_noop_mgmt [0.069503s] ... ok {29} ironic.tests.unit.objects.test_allocation.TestAllocationObject.test_get_by_uuid [0.017333s] ... ok {29} ironic.tests.unit.objects.test_conductor.TestConductorObject.test_list [0.016714s] ... ok {29} ironic.tests.unit.objects.test_conductor.TestConductorObject.test_register [0.015793s] ... ok {29} ironic.tests.unit.objects.test_conductor.TestConductorObject.test_register_into_group [0.016218s] ... ok {29} ironic.tests.unit.objects.test_conductor.TestConductorObject.test_save [0.016668s] ... ok {29} ironic.tests.unit.objects.test_deploy_template.TestDeployTemplateObject.test_get_by_name [0.017446s] ... ok {29} ironic.tests.unit.objects.test_objects.TestObject.test_changed_2 [0.009868s] ... ok {29} ironic.tests.unit.objects.test_objects.TestObject.test_convert_to_version_same [0.009408s] ... ok {29} ironic.tests.unit.objects.test_objects.TestObject.test_dehydration [0.009726s] ... ok {29} ironic.tests.unit.objects.test_objects.TestObject.test_load_in_base [0.009435s] ... ok {29} ironic.tests.unit.objects.test_port.TestConvertToVersion.test_vif_in_extra_in_internal_info [0.013621s] ... ok {29} ironic.tests.unit.objects.test_port.TestPortObject.test_payload_schemas [0.013712s] ... ok GET: /v1/portgroups?detail=True {} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-243e8d7c-bb61-4814-bca0-3def96bdc567 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.42 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Invalid query parameter ?detail=True received.\"}"} {29} ironic.tests.unit.objects.test_portgroup.TestPortgroupObject.test_refresh [0.016823s] ... ok {15} ironic.tests.unit.api.controllers.v1.test_portgroup.TestListPortgroups.test_detail_using_query_old_version [0.045583s] ... ok {29} ironic.tests.unit.objects.test_trait.TestTraitObject.test_exists [0.016646s] ... ok GET: /v1/lookup?addresses=not-a-valid-address,80:00:02:48:fe:80:00:00:00:00:00:00:f4:52:14:03:00:54:06:c2,11:22:33:44:55:66,66:55:44:33:22:11 {} GOT:{u'node': {u'instance_info': {u'foo': u'bar', u'image_url': u'******', u'configdrive': u'******'}, u'uuid': u'07a57efb-792f-4469-a1bb-bd6b304e1fbc', u'driver_internal_info': {u'private_state': u'secret value'}, u'links': [{u'href': u'http://localhost/v1/nodes/07a57efb-792f-4469-a1bb-bd6b304e1fbc', u'rel': u'self'}, {u'href': u'http://localhost/nodes/07a57efb-792f-4469-a1bb-bd6b304e1fbc', u'rel': u'bookmark'}], u'properties': {u'memory_mb': u'4096', u'cpu_arch': u'x86_64', u'local_gb': u'10', u'cpus': u'8'}}, u'config': {u'metrics': {u'prepend_host': False, u'prepend_uuid': False, u'backend': u'statsd', u'prepend_host_reverse': True, u'global_prefix': None}, u'heartbeat_timeout': 300, u'metrics_statsd': {u'statsd_port': 8125, u'statsd_host': u'localhost'}}} {16} ironic.tests.unit.api.controllers.v1.test_ramdisk.TestLookup.test_ignore_malformed_address [0.145896s] ... ok {16} ironic.tests.unit.api.controllers.v1.test_types.TestVifType.test_vif_type [0.010133s] ... ok {16} ironic.tests.unit.api.controllers.v1.test_utils.TestApiUtils.test_allow_deploy_templates [0.010827s] ... ok {16} ironic.tests.unit.api.controllers.v1.test_utils.TestApiUtils.test_check_allowed_portgroup_fields_mode_properties_fail [0.014170s] ... ok {16} ironic.tests.unit.api.controllers.v1.test_utils.TestVendorPassthru.test_vendor_passthru_sync [0.012316s] ... ok POST: /v1/volume/targets {'boot_index': 0, 'uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c781', 'extra': {}, 'volume_type': 'iscsi', 'node_uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123', 'volume_id': '12345678', 'properties': {'target_iqn': 'iqn.foo'}} GOT:Response: 201 Created Content-Type: application/json Location: http://localhost/v1/volume/targets/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 Openstack-Request-Id: req-86351fbc-b37e-400a-9c2d-e19607c45da0 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"boot_index": 0, "uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "links": [{"href": "http://localhost/v1/volume/targets/1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "rel": "self"}, {"href": "http://localhost/volume/targets/1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "rel": "bookmark"}], "extra": {}, "created_at": "2000-01-01T00:00:00+00:00", "updated_at": null, "volume_type": "iscsi", "node_uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "volume_id": "12345678", "properties": {"target_iqn": "iqn.foo"}} GET: /v1/volume/targets/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 {} GOT:{u'boot_index': 0, u'uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c781', u'links': [{u'href': u'http://localhost/v1/volume/targets/1be26c0b-03f2-4d2e-ae87-c02d7f33c781', u'rel': u'self'}, {u'href': u'http://localhost/volume/targets/1be26c0b-03f2-4d2e-ae87-c02d7f33c781', u'rel': u'bookmark'}], u'extra': {}, u'created_at': u'2000-01-01T00:00:00+00:00', u'updated_at': None, u'volume_type': u'iscsi', u'node_uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'volume_id': u'12345678', u'properties': {u'target_iqn': u'iqn.foo'}} {31} ironic.tests.unit.api.controllers.v1.test_volume_target.TestPost.test_create_volume_target [0.369397s] ... ok {31} ironic.tests.unit.common.test_glance_service.CheckImageServiceTestCase.test_check_image_service__deprecated_opts [0.036768s] ... ok {31} ironic.tests.unit.common.test_glance_service.TestGlanceImageService.test_client_forbidden_converts_to_imagenotauthed [0.017950s] ... ok {31} ironic.tests.unit.common.test_image_service.HttpImageServiceTestCase.test_validate_href_error_code [0.019277s] ... ok {31} ironic.tests.unit.common.test_image_service.HttpImageServiceTestCase.test_validate_href_error_with_secret_parameter [0.019578s] ... ok {31} ironic.tests.unit.common.test_images.FsImageTestCase.test__mount_deploy_iso [0.024812s] ... ok {31} ironic.tests.unit.common.test_json_rpc.TestService.test_expected_failure_oslo [0.050102s] ... ok {31} ironic.tests.unit.common.test_json_rpc.TestService.test_notification [0.037475s] ... ok {31} ironic.tests.unit.common.test_neutron.TestGetPhysnetsByPortUUID.test_get_physnets_by_port_uuid_port_failure [0.014978s] ... ok {31} ironic.tests.unit.common.test_neutron.TestNeutronNetworkActions.test_add_network_all_ports_fail [0.096886s] ... ok {31} ironic.tests.unit.common.test_neutron.TestNeutronNetworkActions.test_add_ports_with_client_id_to_network [0.109050s] ... ok {31} ironic.tests.unit.common.test_policy.PolicyInCodeTestCase.test_show_password [0.018286s] ... ok {31} ironic.tests.unit.common.test_pxe_utils.PXEInterfacesTestCase.test_build_pxe_config_options_ipxe_local_boot [4.580204s] ... ok {31} ironic.tests.unit.common.test_pxe_utils.TestPXEUtils.test_dhcp_options_for_ipxe_ipv6 [0.069021s] ... ok {31} ironic.tests.unit.common.test_raid.ValidateRaidConfigurationTestCase.test_validate_configuration_invalid_multiple_is_root_volume [0.028493s] ... ok {31} ironic.tests.unit.common.test_release_mappings.GetObjectVersionsTestCase.test_get_object_versions [0.011008s] ... ok {31} ironic.tests.unit.common.test_release_mappings.GetObjectVersionsTestCase.test_get_object_versions_objects [0.008815s] ... ok POST: /v1/ports {'local_link_connection': {'switch_info': 'switch1', 'port_id': 'Ethernet3/1', 'switch_id': '0a:1b:2c:3d:4e:5f'}, 'node_uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123', 'uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c781', 'extra': {'vif_port_id': 'foo'}, 'pxe_enabled': False, 'portgroup_uuid': '6eb02b44-18a3-4659-8c0b-8d2802581ae4', 'address': '52:54:00:cf:2d:31'} GOT:Response: 201 Created Content-Type: application/json Location: http://localhost/v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 Openstack-Request-Id: req-a08b029a-6b7f-4444-9940-d35533e78c5c X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"local_link_connection": {"switch_info": "switch1", "port_id": "Ethernet3/1", "switch_id": "0a:1b:2c:3d:4e:5f"}, "node_uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "links": [{"href": "http://localhost/v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "rel": "self"}, {"href": "http://localhost/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "rel": "bookmark"}], "extra": {"vif_port_id": "foo"}, "pxe_enabled": false, "portgroup_uuid": "6eb02b44-18a3-4659-8c0b-8d2802581ae4", "updated_at": null, "physical_network": null, "address": "52:54:00:cf:2d:31", "internal_info": {"tenant_vif_port_id": "foo"}, "created_at": "2019-06-06T07:02:18.535598+00:00", "is_smartnic": false} {31} ironic.tests.unit.common.test_rpc.TestUtils.test_get_sensors_notifier_no_notifier [0.013568s] ... ok {4} ironic.tests.unit.api.controllers.v1.test_port.TestPost.test_create_port_with_extra_vif_port_id_deprecated [0.142296s] ... ok {31} ironic.tests.unit.common.test_utils.ExecuteTestCase.test_execute_use_standard_locale_no_env_variables [0.015793s] ... ok {31} ironic.tests.unit.common.test_utils.GenericUtilsTestCase.test__get_hash_object [0.016853s] ... ok {31} ironic.tests.unit.common.test_utils.GenericUtilsTestCase.test_file_has_content_equal [0.013387s] ... ok {31} ironic.tests.unit.common.test_utils.GenericUtilsTestCase.test_is_hostname_safe [0.012050s] ... ok {31} ironic.tests.unit.common.test_utils.GenericUtilsTestCase.test_is_valid_logical_name [0.009953s] ... ok {31} ironic.tests.unit.conductor.test_base_manager.RegisterInterfacesTestCase.test__register_and_validate_hardware_interfaces [0.169159s] ... ok PATCH: /v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4 [{'path': '/standalone_ports_supported', 'value': False, 'op': 'replace'}] GOT:Response: 404 Not Found Content-Type: application/json {"error_message": "{\"code\": 404, \"description\": \"\", \"title\": \"Not Found\"}"} {15} ironic.tests.unit.api.controllers.v1.test_portgroup.TestPatch.test_update_portgroup_standalone_ports_supported_bad_api_version [0.036520s] ... ok {31} ironic.tests.unit.conductor.test_base_manager.StartConsolesTestCase.test__start_consoles_failed [0.299016s] ... ok {15} ironic.tests.unit.api.controllers.v1.test_utils.TestApiUtils.test_allow_port_advanced_net_fields [0.012347s] ... ok {31} ironic.tests.unit.conductor.test_manager.ConsoleTestCase.test_set_console_mode_disabled [0.266370s] ... ok {15} ironic.tests.unit.api.controllers.v1.test_utils.TestApiUtils.test_allow_portgroups_subcontrollers [0.021854s] ... ok {31} ironic.tests.unit.conductor.test_manager.ConsoleTestCase.test_set_console_mode_stop_fail [0.272443s] ... ok {31} ironic.tests.unit.conductor.test_manager.DestroyPortgroupTestCase.test_destroy_portgroup_node_locked [0.047277s] ... ok {31} ironic.tests.unit.conductor.test_manager.DoNextDeployStepTestCase.test_do_next_deploy_step_execute_exception [0.309741s] ... ok {15} ironic.tests.unit.api.controllers.v1.test_utils.TestApiUtils.test_allow_volume [0.012027s] ... ok {15} ironic.tests.unit.api.controllers.v1.test_utils.TestApiUtils.test_check_allow_filter_by_conductor_group_fail [0.012937s] ... ok {31} ironic.tests.unit.conductor.test_manager.DoNodeCleanTestCase.test__do_node_clean_manual [0.227138s] ... ok {15} ironic.tests.unit.api.controllers.v1.test_utils.TestApiUtils.test_check_allowed_fields_rescue_interface_fail [0.017296s] ... ok {31} ironic.tests.unit.conductor.test_manager.DoNodeCleanTestCase.test_continue_node_clean_automated_abort [0.254238s] ... ok {15} ironic.tests.unit.api.controllers.v1.test_utils.TestNodeIdent.test_get_rpc_node_by_name_no_logical_name [0.018323s] ... ok {31} ironic.tests.unit.conductor.test_manager.DoNodeInspectAbortTestCase.test_do_inspect_abort_succeeded [0.284681s] ... ok {31} ironic.tests.unit.conductor.test_manager.DoNodeRescueTestCase.test_provision_rescue_abort [0.256271s] ... ok {31} ironic.tests.unit.conductor.test_manager.ManagerCheckInspectWaitTimeoutsTestCase.test__check_inspect_timeouts_exiting_no_worker_avail [0.017732s] ... ok {31} ironic.tests.unit.conductor.test_manager.ManagerTestProperties.test_driver_properties_ipmi [0.124125s] ... ok {31} ironic.tests.unit.conductor.test_manager.NodeTraitsTestCase.test_add_node_traits [0.132877s] ... ok {31} ironic.tests.unit.conductor.test_manager.UpdateNodeTestCase.test_update_resource_class_not_allowed [0.138228s] ... ok {31} ironic.tests.unit.conductor.test_manager.UpdatePortTestCase.test_update_port_physnet_maintenance [0.076271s] ... ok {31} ironic.tests.unit.conductor.test_rpcapi.RPCAPITestCase.test_add_node_traits [0.014675s] ... ok {31} ironic.tests.unit.conductor.test_rpcapi.RPCAPITestCase.test_destroy_portgroup [0.015020s] ... ok {31} ironic.tests.unit.conductor.test_rpcapi.RPCAPITestCase.test_get_topic_doesnt_cache [0.029272s] ... ok {31} ironic.tests.unit.conductor.test_rpcapi.RPCAPITestCase.test_object_backport_versions_invalid_version [0.015916s] ... ok {31} ironic.tests.unit.conductor.test_steps.NodeDeployStepsTestCase.test__validate_user_deploy_steps_not_supported [0.060862s] ... ok {31} ironic.tests.unit.conductor.test_task_manager.TaskManagerTestCase.test_excl_nested_acquire [0.031653s] ... ok {31} ironic.tests.unit.conductor.test_utils.ErrorHandlersTestCase.test_cleaning_error_handler_cleanwait [0.010828s] ... ok {31} ironic.tests.unit.conductor.test_utils.ErrorHandlersTestCase.test_rescuing_error_handler_other_exc [0.014426s] ... ok {31} ironic.tests.unit.conductor.test_utils.NodePowerActionTestCase.test_node_power_action_reboot_no_timeout [0.093297s] ... ok {31} ironic.tests.unit.conductor.test_utils.NodeSetBootDeviceTestCase.test_node_set_boot_device_non_existent_device [2.154192s] ... ok {31} ironic.tests.unit.conductor.test_utils.NodeSetBootDeviceTestCase.test_node_set_boot_device_valid [0.109422s] ... ok {31} ironic.tests.unit.conductor.test_utils.NodeSoftPowerActionTestCase.test_node_power_action_soft_power_off_storage_detach [0.164315s] ... ok {31} ironic.tests.unit.conductor.test_utils.ValidatePortPhysnetTestCase.test_validate_port_physnet_2_port_portgroup_no_physnet_update_1 [0.072768s] ... ok {31} ironic.tests.unit.db.sqlalchemy.test_migrations.TestMigrationsMySQL.test_create_schema_and_version ... SKIPPED: Backend 'mysql+pymysql' is unavailable: Could not connect {31} ironic.tests.unit.db.test_allocations.AllocationsTestCase.test_get_allocation_list_filter_by_state [0.046678s] ... ok {31} ironic.tests.unit.db.test_chassis.DbChassisTestCase.test_get_chassis_that_does_not_exist [0.020500s] ... ok {31} ironic.tests.unit.db.test_conductor.DbConductorTestCase.test_get_active_hardware_type_dict_with_old_conductor [0.046051s] ... ok {31} ironic.tests.unit.db.test_conductor.DbConductorTestCase.test_get_inactive_conductor_ignore_online [0.023339s] ... ok {31} ironic.tests.unit.db.test_node_tags.DbNodeTagTestCase.test_get_node_tags_node_not_exist [0.026070s] ... ok {31} ironic.tests.unit.db.test_nodes.DbNodeTestCase.test_get_node_by_port_addresses_multiple_found [0.063264s] ... ok {31} ironic.tests.unit.db.test_portgroups.DbportgroupTestCase.test_destroy_portgroup_not_empty [0.034018s] ... ok {31} ironic.tests.unit.drivers.modules.ansible.test_deploy.TestAnsibleMethods.test__prepare_variables_noglance [0.087971s] ... ok {31} ironic.tests.unit.drivers.modules.ansible.test_deploy.TestAnsibleMethods.test__run_playbook [0.024019s] ... ok {31} ironic.tests.unit.drivers.modules.ansible.test_deploy.TestAnsibleMethods.test__run_playbook_default_verbosity_nodebug [0.024643s] ... ok {31} ironic.tests.unit.drivers.modules.drac.test_bios.DracBIOSConfigurationTestCase.test_get_config [0.056450s] ... ok {31} ironic.tests.unit.drivers.modules.drac.test_job.DracJobTestCase.test_get_job_fail [0.200001s] ... ok {31} ironic.tests.unit.drivers.modules.drac.test_management.DracManagementTestCase.test_get_sensors_data [0.070442s] ... ok {31} ironic.tests.unit.drivers.modules.drac.test_periodic_task.DracPeriodicTaskTestCase.test__query_raid_config_job_status [0.035546s] ... ok {31} ironic.tests.unit.drivers.modules.drac.test_raid.DracQueryRaidConfigurationTestCase.test_list_physical_disks [0.021416s] ... ok {31} ironic.tests.unit.drivers.modules.ilo.test_bios.IloBiosTestCase.test_cache_bios_settings_with_unknown_error [0.052358s] ... ok {31} ironic.tests.unit.drivers.modules.ilo.test_bios.IloBiosTestCase.test_get_properties [0.057616s] ... ok {31} ironic.tests.unit.drivers.modules.ilo.test_boot.IloPXEBootTestCase.test_prepare_ramdisk_in_rescuing [0.078594s] ... ok {31} ironic.tests.unit.drivers.modules.ilo.test_boot.IloVirtualMediaBootTestCase.test__configure_vmedia_boot_with_boot_iso [0.082164s] ... ok {31} ironic.tests.unit.drivers.modules.ilo.test_common.IloCommonMethodsTestCase.test_attach_vmedia_fails [0.028302s] ... ok {31} ironic.tests.unit.drivers.modules.ilo.test_firmware_processor.FirmwareProcessorTestCase.test__remove_webserver_based_me [0.030860s] ... ok {31} ironic.tests.unit.drivers.modules.ilo.test_management.IloManagementTestCase.test_set_iscsi_boot_target_without_auth [0.086264s] ... ok {31} ironic.tests.unit.drivers.modules.ilo.test_vendor.VendorPassthruTestCase.test_validate_boot_into_iso [0.066267s] ... ok {31} ironic.tests.unit.drivers.modules.irmc.test_boot.IRMCDeployPrivateMethodsTestCase.test__detach_virtual_fd_ok [0.069512s] ... ok {31} ironic.tests.unit.drivers.modules.irmc.test_boot.IRMCPXEBootBasicTestCase.test_prepare_ramdisk_force_persistent_boot_device_never [0.124628s] ... ok {31} ironic.tests.unit.drivers.modules.irmc.test_boot.IRMCPXEBootBasicTestCase.test_validate_fail_missing_deploy_kernel [0.057674s] ... ok {31} ironic.tests.unit.drivers.modules.irmc.test_boot.IRMCPXEBootBasicTestCase.test_validate_fail_missing_image_source [0.058643s] ... ok {31} ironic.tests.unit.drivers.modules.irmc.test_boot.IRMCVirtualMediaBootTestCase.test_prepare_ramdisk_not_deploying_not_cleaning [2.705447s] ... ok {31} ironic.tests.unit.drivers.modules.irmc.test_boot.IRMCVirtualMediaBootWithVolumeTestCase.test_prepare_ramdisk_skip [0.105997s] ... ok {31} ironic.tests.unit.drivers.modules.irmc.test_boot.IRMCVirtualMediaBootWithVolumeTestCase.test_validate_iscsi_connector_no_ip [0.113873s] ... ok {31} ironic.tests.unit.drivers.modules.irmc.test_power.IRMCPowerTestCase.test_get_properties [0.053455s] ... ok {31} ironic.tests.unit.drivers.modules.irmc.test_power.IRMCPowerTestCase.test_reboot_reboot_timeout [0.071231s] ... ok {31} ironic.tests.unit.drivers.modules.irmc.test_raid.IRMCRaidConfigurationInternalMethodsTestCase.test__fail_validation_with_physical_disk_insufficient [0.069414s] ... ok {31} ironic.tests.unit.drivers.modules.network.test_common.TestCommonFunctions.test__get_free_portgroups_and_ports_physnet3 [0.125642s] ... ok {31} ironic.tests.unit.drivers.modules.network.test_common.TestNeutronVifPortIDMixin.test_port_changed_vif_nopxe_portgroup_standalone_ports [0.200972s] ... ok {31} ironic.tests.unit.drivers.modules.network.test_neutron.NeutronInterfaceTestCase.test_configure_tenant_networks_no_instance_uuid [0.076959s] ... ok {31} ironic.tests.unit.drivers.modules.network.test_neutron.NeutronInterfaceTestCase.test_configure_tenant_networks_update_fail [0.071982s] ... ok {31} ironic.tests.unit.drivers.modules.redfish.test_bios.RedfishBiosTestCase.test_validate [0.054193s] ... ok {31} ironic.tests.unit.drivers.modules.redfish.test_management.RedfishManagementTestCase.test_get_supported_boot_modes [0.049370s] ... ok {31} ironic.tests.unit.drivers.modules.redfish.test_power.RedfishPowerTestCase.test_validate [0.051561s] ... ok {31} ironic.tests.unit.drivers.modules.storage.test_cinder.CinderInterfaceTestCase.test_attach_detach_volumes_fails_without_connectors [0.069645s] ... ok {31} ironic.tests.unit.drivers.modules.test_agent.TestAgentDeploy.test_continue_deploy [0.107193s] ... ok {31} ironic.tests.unit.drivers.modules.test_agent.TestAgentDeploy.test_deploy [0.078015s] ... ok {31} ironic.tests.unit.drivers.modules.test_agent_base_vendor.HeartbeatMixinTest.test_heartbeat_continue_cleaning_fails [0.103678s] ... ok {31} ironic.tests.unit.drivers.modules.test_agent_base_vendor.TestRefreshCleanSteps.test_refresh_clean_steps [0.086584s] ... ok {31} ironic.tests.unit.drivers.modules.test_console_utils.ConsoleUtilsTestCase.test_start_socat_console_check_arg_bind_addr_ipv4 [0.036340s] ... ok {31} ironic.tests.unit.drivers.modules.test_deploy_utils.AgentMethodsTestCase.test_build_agent_options_conf [0.028543s] ... ok {31} ironic.tests.unit.drivers.modules.test_deploy_utils.PhysicalWorkTestCase.test_always_logout_and_delete_iscsi [0.018404s] ... ok {31} ironic.tests.unit.drivers.modules.test_deploy_utils.PhysicalWorkTestCase.test_deploy_partition_image_without_boot_option [0.029721s] ... ok {31} ironic.tests.unit.drivers.modules.test_deploy_utils.PhysicalWorkTestCase.test_deploy_partition_image_without_swap [0.026546s] ... ok {31} ironic.tests.unit.drivers.modules.test_deploy_utils.ValidateParametersTestCase.test__get_img_instance_info_missing_image_source [0.021989s] ... ok {31} ironic.tests.unit.drivers.modules.test_inspector.CommonFunctionsTestCase.test_get_properties [0.015713s] ... ok {31} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolCheckInitTestCase.test_console_init_calls_already_checked [0.013392s] ... ok {31} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolCheckInitTestCase.test_power_init_calls_raises_1 [0.013359s] ... ok {31} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolCheckOptionSupportedTestCase.test_check_all_options_no_ipmitool [0.012727s] ... ok {31} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolDriverTestCase.test_get_properties [0.065725s] ... ok {31} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolPrivateMethodTestCase.test__parse_driver_info_with_dual_bridging_pass [0.027474s] ... ok {31} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolPrivateMethodTestCase.test__power_status_error [0.025134s] ... ok {31} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolPrivateMethodTestCase.test__soft_power_off_max_retries [4.270215s] ... ok {31} ironic.tests.unit.drivers.modules.test_iscsi_deploy.ISCSIDeployTestCase.test_execute_clean_step [0.064367s] ... ok {31} ironic.tests.unit.drivers.modules.test_iscsi_deploy.IscsiDeployMethodsTestCase.test_continue_deploy_whole_disk_image [0.111234s] ... ok DELETE: /v1/volume/connectors/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 GOT:Response: 204 No Content Openstack-Request-Id: req-bd43c489-24bf-4369-bd1e-f0412dae8eb2 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {31} ironic.tests.unit.drivers.modules.test_iscsi_deploy.IscsiDeployMethodsTestCase.test_validate_fail_no_api_url [0.050344s] ... ok {15} ironic.tests.unit.api.controllers.v1.test_volume_connector.TestDelete.test_delete_volume_connector_byid [0.054294s] ... ok {31} ironic.tests.unit.drivers.modules.test_pxe.PXEBootTestCase.test_prepare_instance_netboot_missing_root_uuid [0.076696s] ... ok {31} ironic.tests.unit.drivers.modules.test_pxe.PXEBootTestCase.test_prepare_ramdisk_force_persistent_boot_device_default [0.119644s] ... ok {31} ironic.tests.unit.drivers.modules.test_snmp.SNMPDeviceDriverTestCase.test_baytech_mrp27_power_reset [0.018312s] ... ok {31} ironic.tests.unit.drivers.modules.test_snmp.SNMPDeviceDriverTestCase.test_power_on_snmp_get_failure [0.016979s] ... ok {31} ironic.tests.unit.drivers.modules.test_snmp.SNMPDeviceDriverTestCase.test_power_reset_off_delay [1.023368s] ... ok {31} ironic.tests.unit.drivers.modules.test_snmp.SNMPDriverTestCase.test_get_power_state_off [0.063183s] ... ok {31} ironic.tests.unit.drivers.modules.test_snmp.SNMPValidateParametersTestCase.test__parse_driver_info_snmp_v3_context_engine_id [0.013726s] ... ok {31} ironic.tests.unit.drivers.modules.ucs.test_power.UcsPowerTestCase.test_get_power_state_error [0.668025s] ... ok {31} ironic.tests.unit.drivers.modules.xclarity.test_power.XClarityPowerDriverTestCase.test_set_power [0.066590s] ... ok {31} ironic.tests.unit.drivers.test_base.CleanStepDecoratorTestCase.test_clean_step_bad_argsinfo [0.011724s] ... ok {31} ironic.tests.unit.drivers.test_fake_hardware.FakeHardwareTestCase.test_boot_interface [0.063509s] ... ok {31} ironic.tests.unit.drivers.test_utils.UtilsRamdiskLogsTestCase.test_collect_ramdisk_logs_IPA_command_fail [0.016481s] ... ok {31} ironic.tests.unit.drivers.test_utils.UtilsTestCase.test_get_node_mac_addresses [0.069533s] ... ok {31} ironic.tests.unit.objects.test_conductor.TestConductorObject.test_refresh [0.017363s] ... ok {31} ironic.tests.unit.objects.test_fields.TestFlexibleDictField.test_coerce_bad_values [0.009750s] ... ok {31} ironic.tests.unit.objects.test_node.TestConvertToVersion.test_conductor_group_unsupported_set_no_remove [0.014752s] ... ok {31} ironic.tests.unit.objects.test_node.TestConvertToVersion.test_description_unsupported_set_no_remove_non_default [0.015823s] ... ok {31} ironic.tests.unit.objects.test_node.TestConvertToVersion.test_rescue_supported_missing [0.015035s] ... ok {31} ironic.tests.unit.objects.test_node.TestConvertToVersion.test_rescue_supported_set [0.015481s] ... ok {31} ironic.tests.unit.objects.test_node.TestNodeObject.test_payload_schemas [0.015773s] ... ok {31} ironic.tests.unit.objects.test_node.TestNodeObject.test_save_with_conductor_group [0.021914s] ... ok {31} ironic.tests.unit.objects.test_notification.TestNotificationBase.test_emit_notification [0.023395s] ... ok {31} ironic.tests.unit.objects.test_notification.TestNotificationBase.test_populate_schema_nullable_field_auto_populates [0.009471s] ... ok {31} ironic.tests.unit.objects.test_objects.TestObject.test_loaded_in_primitive [0.010131s] ... ok {31} ironic.tests.unit.objects.test_port.TestConvertToVersion.test_is_smartnic_unsupported_set_remove [0.013965s] ... ok {31} ironic.tests.unit.objects.test_port.TestConvertToVersion.test_vif_in_extra_lower_version [0.013732s] ... ok POST: /v1/volume/connectors {'extra': {}, 'type': 'iqn', 'uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c781', 'connector_id': 'iqn.2012-06.com.example:initiator'} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-f642b50a-bf80-493b-a976-7b3dd6010242 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Invalid input for field/attribute node_uuid. Value: 'None'. Mandatory field missing.\"}"} {15} ironic.tests.unit.api.controllers.v1.test_volume_connector.TestPost.test_create_volume_connector_no_mandatory_field_node_uuid [3.825746s] ... ok GET: /v1/volume/targets {} GOT:{u'targets': []} {15} ironic.tests.unit.api.controllers.v1.test_volume_target.TestListVolumeTargets.test_empty [0.063581s] ... ok PATCH: /v1/volume/targets/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 [{'path': '/extra/foo', 'value': 'bar', 'op': 'add'}] GOT:Response: 404 Not Found Content-Type: application/json {"error_message": "{\"code\": 404, \"description\": \"\", \"title\": \"Not Found\"}"} {15} ironic.tests.unit.api.controllers.v1.test_volume_target.TestPatch.test_update_byid_invalid_api_version [0.033118s] ... ok GET: /v1/volume/ {} GOT:{u'connectors': [{u'href': u'http://localhost/v1/volume/connectors', u'rel': u'self'}, {u'href': u'http://localhost/volume/connectors', u'rel': u'bookmark'}], u'targets': [{u'href': u'http://localhost/v1/volume/targets', u'rel': u'self'}, {u'href': u'http://localhost/volume/targets', u'rel': u'bookmark'}], u'links': [{u'href': u'http://localhost/v1/volume/', u'rel': u'self'}, {u'href': u'http://localhost/volume/', u'rel': u'bookmark'}]} GET: /v1/volume/ {} GOT:{u'connectors': [{u'href': u'http://localhost/v1/volume/connectors', u'rel': u'self'}, {u'href': u'http://localhost/volume/connectors', u'rel': u'bookmark'}], u'targets': [{u'href': u'http://localhost/v1/volume/targets', u'rel': u'self'}, {u'href': u'http://localhost/volume/targets', u'rel': u'bookmark'}], u'links': [{u'href': u'http://localhost/v1/volume/', u'rel': u'self'}, {u'href': u'http://localhost/volume/', u'rel': u'bookmark'}]} GET: /volume/ {} GOT:{u'connectors': [{u'href': u'http://localhost/v1/volume/connectors', u'rel': u'self'}, {u'href': u'http://localhost/volume/connectors', u'rel': u'bookmark'}], u'targets': [{u'href': u'http://localhost/v1/volume/targets', u'rel': u'self'}, {u'href': u'http://localhost/volume/targets', u'rel': u'bookmark'}], u'links': [{u'href': u'http://localhost/v1/volume/', u'rel': u'self'}, {u'href': u'http://localhost/volume/', u'rel': u'bookmark'}]} GET: /v1/volume/connectors {} GOT:{u'connectors': []} GET: /volume/connectors {} GOT:{u'connectors': []} GET: /v1/volume/targets {} GOT:{u'targets': []} GET: /volume/targets {} GOT:{u'targets': []} {16} ironic.tests.unit.api.controllers.v1.test_volume.TestGetVolume.test_get_volume [0.106930s] ... ok POST: /v1/portgroups {'node_uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123', 'uuid': '6eb02b44-18a3-4659-8c0b-8d2802581ae4', 'extra': {}, 'standalone_ports_supported': True, 'address': '52:54:00:cf:2d:31', 'name': 'fooname'} GOT:Response: 201 Created Content-Type: application/json Location: http://localhost/v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4 Openstack-Request-Id: req-bfce4913-f02f-4e4e-8030-9f18eb28feca X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.26 {"node_uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "uuid": "6eb02b44-18a3-4659-8c0b-8d2802581ae4", "links": [{"href": "http://localhost/v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4", "rel": "self"}, {"href": "http://localhost/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4", "rel": "bookmark"}], "extra": {}, "created_at": "2019-06-06T07:02:18.640424+00:00", "updated_at": null, "ports": [{"href": "http://localhost/v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4/ports", "rel": "self"}, {"href": "http://localhost/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4/ports", "rel": "bookmark"}], "standalone_ports_supported": true, "mode": "active-backup", "address": "52:54:00:cf:2d:31", "internal_info": {}, "properties": {}, "name": "fooname"} {4} ironic.tests.unit.api.controllers.v1.test_portgroup.TestPost.test_create_portgroup_default_mode [4.197391s] ... ok POST: /v1/portgroups {'node_uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123', 'uuid': '6eb02b44-18a3-4659-8c0b-8d2802581ae4', 'extra': {}, 'standalone_ports_supported': True, 'address': '52:54:00:cf:2d:31', 'name': 'fooname'} GOT:Response: 201 Created Content-Type: application/json Location: http://localhost/v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4 Openstack-Request-Id: req-85bb3e9d-e4fa-43f8-a549-cdc21ef24a9c X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"node_uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "uuid": "6eb02b44-18a3-4659-8c0b-8d2802581ae4", "links": [{"href": "http://localhost/v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4", "rel": "self"}, {"href": "http://localhost/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4", "rel": "bookmark"}], "extra": {}, "created_at": "2000-01-01T00:00:00+00:00", "updated_at": null, "ports": [{"href": "http://localhost/v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4/ports", "rel": "self"}, {"href": "http://localhost/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4/ports", "rel": "bookmark"}], "standalone_ports_supported": true, "mode": "active-backup", "address": "52:54:00:cf:2d:31", "internal_info": {}, "properties": {}, "name": "fooname"} GET: /v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4 {} GOT:{u'node_uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'uuid': u'6eb02b44-18a3-4659-8c0b-8d2802581ae4', u'links': [{u'href': u'http://localhost/v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4', u'rel': u'self'}, {u'href': u'http://localhost/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4', u'rel': u'bookmark'}], u'extra': {}, u'created_at': u'2000-01-01T00:00:00+00:00', u'updated_at': None, u'properties': {}, u'standalone_ports_supported': True, u'mode': u'active-backup', u'address': u'52:54:00:cf:2d:31', u'internal_info': {}, u'ports': [{u'href': u'http://localhost/v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4/ports', u'rel': u'self'}, {u'href': u'http://localhost/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4/ports', u'rel': u'bookmark'}], u'name': u'fooname'} {20} ironic.tests.unit.api.controllers.v1.test_portgroup.TestPost.test_create_portgroup [0.614418s] ... ok POST: /v1/volume/targets {'boot_index': 0, 'uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c781', 'extra': {}, 'volume_type': 'iscsi', 'node_uuid': 123, 'volume_id': '12345678', 'properties': {'target_iqn': 'iqn.foo'}} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-a5fa3751-8cd9-4d04-a820-6b4736d1f6f8 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Expected a UUID but received 123.\"}"} {15} ironic.tests.unit.api.controllers.v1.test_volume_target.TestPost.test_create_volume_target_invalid_node_uuid_format [0.038777s] ... ok {15} ironic.tests.unit.common.test_cinder.TestCinderActions.test_attach_volumes_reserve_failure [0.083298s] ... ok {15} ironic.tests.unit.common.test_cinder.TestCinderActions.test_attach_volumes_vol_not_found [0.086345s] ... ok {15} ironic.tests.unit.common.test_fsm.FSMTest.test_is_stable_invalid_state [0.010159s] ... ok {15} ironic.tests.unit.common.test_glance_service.TestGlanceImageService.test_download_with_retries [0.011872s] ... ok {15} ironic.tests.unit.common.test_glance_service.TestGlanceImageService.test_show_passes_through_to_client [0.012276s] ... ok POST: /v1/portgroups {'node_uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123', 'uuid': '6eb02b44-18a3-4659-8c0b-8d2802581ae4', 'extra': {'none': None, 'int': 123, 'float': 0.1, 'list': [1, 2], 'bool': True, 'str': 'foo', 'dict': {'cat': 'meow'}}, 'standalone_ports_supported': True, 'address': '52:54:00:cf:2d:31', 'name': 'fooname'} GOT:Response: 201 Created Content-Type: application/json Location: http://localhost/v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4 Openstack-Request-Id: req-15acd0ef-3994-4c71-80fe-a7821864f3c7 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"node_uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "uuid": "6eb02b44-18a3-4659-8c0b-8d2802581ae4", "links": [{"href": "http://localhost/v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4", "rel": "self"}, {"href": "http://localhost/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4", "rel": "bookmark"}], "extra": {"none": null, "int": 123, "float": 0.1, "list": [1, 2], "dict": {"cat": "meow"}, "str": "foo", "bool": true}, "created_at": "2019-06-06T07:02:18.028462+00:00", "updated_at": null, "ports": [{"href": "http://localhost/v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4/ports", "rel": "self"}, {"href": "http://localhost/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4/ports", "rel": "bookmark"}], "standalone_ports_supported": true, "mode": "active-backup", "address": "52:54:00:cf:2d:31", "internal_info": {}, "properties": {}, "name": "fooname"} GET: /v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4 {} GOT:{u'node_uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'uuid': u'6eb02b44-18a3-4659-8c0b-8d2802581ae4', u'links': [{u'href': u'http://localhost/v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4', u'rel': u'self'}, {u'href': u'http://localhost/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4', u'rel': u'bookmark'}], u'extra': {u'none': None, u'int': 123, u'float': 0.1, u'list': [1, 2], u'bool': True, u'str': u'foo', u'dict': {u'cat': u'meow'}}, u'created_at': u'2019-06-06T07:02:18.028462+00:00', u'updated_at': None, u'properties': {}, u'standalone_ports_supported': True, u'mode': u'active-backup', u'address': u'52:54:00:cf:2d:31', u'internal_info': {}, u'ports': [{u'href': u'http://localhost/v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4/ports', u'rel': u'self'}, {u'href': u'http://localhost/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4/ports', u'rel': u'bookmark'}], u'name': u'fooname'} {13} ironic.tests.unit.api.controllers.v1.test_portgroup.TestPost.test_create_portgroup_valid_extra [0.135356s] ... ok {15} ironic.tests.unit.common.test_hash_ring.HashRingManagerTestCase.test_hash_ring_manager_hardware_type_success_groups [0.045272s] ... ok {15} ironic.tests.unit.common.test_images.IronicImagesTestCase.test_is_whole_disk_image_partition_image [0.012901s] ... ok {15} ironic.tests.unit.common.test_json_rpc.TestClient.test_cast_success [0.011953s] ... ok {15} ironic.tests.unit.common.test_json_rpc.TestService.test_no_context [0.027636s] ... ok {15} ironic.tests.unit.common.test_keystone.KeystoneTestCase.test_get_auth [0.014092s] ... ok {15} ironic.tests.unit.common.test_network.TestNetwork.test_get_node_vif_ids_two_ports_int_info [0.105580s] ... ok {15} ironic.tests.unit.common.test_neutron.TestUpdatePortAddress.test_update_port_address_show_failed [0.022800s] ... ok {15} ironic.tests.unit.common.test_policy.PolicyInCodeTestCase.test_admin_api [0.025432s] ... ok {15} ironic.tests.unit.common.test_pxe_utils.TestPXEUtils.test_create_pxe_config_existing_dirs [0.091588s] ... ok {15} ironic.tests.unit.conductor.test_allocations.DoAllocateTestCase.test_with_candidates [0.115164s] ... ok {15} ironic.tests.unit.conductor.test_manager.ChangeNodePowerStateTestCase.test_node_set_power_state_notif_spawn_fail [0.347552s] ... ok {15} ironic.tests.unit.conductor.test_manager.DoNodeCleanTestCase.test__do_node_clean_automated_cache_bios_exception [0.166383s] ... ok {15} ironic.tests.unit.conductor.test_manager.DoNodeCleanTestCase.test__do_node_clean_manual_cache_bios_exception [0.181263s] ... ok {15} ironic.tests.unit.conductor.test_manager.DoNodeDeployTestCase.test__do_node_deploy_configdrive_swift_error [0.305534s] ... ok {15} ironic.tests.unit.conductor.test_manager.DoNodeRescueTestCase.test__do_node_rescue_returns_rescue [0.280855s] ... ok {15} ironic.tests.unit.conductor.test_manager.ManagerCheckInspectWaitTimeoutsTestCase.test__check_inspect_timeouts_to_maintenance_after_lock [0.022623s] ... ok {15} ironic.tests.unit.conductor.test_manager.ManagerDoSyncPowerStateTestCase.test_state_changed_no_sync [0.045314s] ... ok POST: /v1/portgroups {'node_uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123', 'uuid': '6eb02b44-18a3-4659-8c0b-8d2802581ae4', 'extra': {}, 'standalone_ports_supported': True, 'address': 'invalid-format', 'name': 'fooname'} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-2313a6a3-9178-4ff0-9b03-8c101ba77af1 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Expected a MAC address but received invalid-format.\"}"} {15} ironic.tests.unit.conductor.test_manager.MiscTestCase.test_validate_driver_interfaces_validation_fail [0.060309s] ... ok {20} ironic.tests.unit.api.controllers.v1.test_portgroup.TestPost.test_create_portgroup_invalid_addr_format [0.060003s] ... ok {15} ironic.tests.unit.conductor.test_manager.NodeInspectHardware.test_inspect_hardware_return_inspecting [0.229655s] ... ok {15} ironic.tests.unit.conductor.test_manager.NodeTraitsTestCase.test_add_node_traits_node_locked [0.075789s] ... ok {15} ironic.tests.unit.conductor.test_manager.VendorPassthruTestCase.test_driver_vendor_passthru_validation_failed [0.116900s] ... ok {15} ironic.tests.unit.conductor.test_rpcapi.RPCAPITestCase.test_remove_node_traits_all [0.564080s] ... ok {15} ironic.tests.unit.conductor.test_rpcapi.RPCAPITestCase.test_validate_driver_interfaces [0.016278s] ... ok {15} ironic.tests.unit.conductor.test_steps.NodeDeployStepsTestCase.test__validate_user_deploy_steps [0.097923s] ... ok {15} ironic.tests.unit.conductor.test_task_manager.ThreadExceptionTestCase.test_set_node_last_error [0.016755s] ... ok {15} ironic.tests.unit.conductor.test_utils.DeployingErrorHandlerTestCase.test_deploying_error_handler_not_deploy [0.011520s] ... ok {15} ironic.tests.unit.conductor.test_utils.ErrorHandlersTestCase.test_spawn_deploying_error_handler_no_worker [0.024178s] ... ok {15} ironic.tests.unit.conductor.test_utils.NodeGetBootModeTestCase.test_node_get_boot_mode_unsupported [0.085996s] ... ok {15} ironic.tests.unit.db.test_allocations.AllocationsTestCase.test_get_allocation_list [0.050391s] ... ok {15} ironic.tests.unit.db.test_api.UpgradingTestCase.test_check_versions_emptyDB [0.336416s] ... ok {15} ironic.tests.unit.db.test_chassis.DbChassisTestCase.test_update_chassis_uuid [0.018258s] ... ok {15} ironic.tests.unit.db.test_node_tags.DbNodeTagTestCase.test_node_tag_not_exists [0.032416s] ... ok {15} ironic.tests.unit.db.test_nodes.DbNodeTestCase.test_get_node_that_does_not_exist [0.094438s] ... ok {15} ironic.tests.unit.db.test_portgroups.DbportgroupTestCase.test_get_portgroup_by_id [0.045364s] ... ok {15} ironic.tests.unit.dhcp.test_neutron.TestNeutron.test__get_port_ip_address_provisioning [0.091810s] ... ok {15} ironic.tests.unit.drivers.modules.ansible.test_deploy.TestAnsibleDeploy.test_clean_up [0.066756s] ... ok {15} ironic.tests.unit.drivers.modules.ansible.test_deploy.TestAnsibleMethods.test__prepare_variables_configdrive_url [0.077854s] ... ok {15} ironic.tests.unit.drivers.modules.cimc.test_common.ParseDriverInfoTestCase.test_parse_driver_info [0.021380s] ... ok {15} ironic.tests.unit.drivers.modules.drac.test_management.DracManagementInternalMethodsTestCase.test__get_next_persistent_boot_mode_with_non_persistent_boot_mode [0.028658s] ... ok {15} ironic.tests.unit.drivers.modules.drac.test_management.DracManagementInternalMethodsTestCase.test__is_boot_order_flexibly_programmable_not_persistent [1.564846s] ... ok {15} ironic.tests.unit.drivers.modules.drac.test_periodic_task.DracPeriodicTaskTestCase.test__query_raid_config_job_status_no_nodes [0.020459s] ... ok {15} ironic.tests.unit.drivers.modules.drac.test_power.DracPowerTestCase.test_reboot_while_powered_on_timeout [0.068543s] ... ok {15} ironic.tests.unit.drivers.modules.ibmc.test_management.IBMCManagementTestCase.test_set_boot_mode_fail [0.074075s] ... ok POST: /v1/heartbeat/48ef9953-fe1e-4c42-987e-2d52679d83b5 {'callback_url': 'url'} GOT:Response: 404 Not Found Content-Type: application/json Openstack-Request-Id: req-7811976f-4ee7-496e-bac9-82e56422c9e3 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Node 48ef9953-fe1e-4c42-987e-2d52679d83b5 could not be found.\"}"} {20} ironic.tests.unit.api.controllers.v1.test_ramdisk.TestHeartbeat.test_node_not_found [0.060099s] ... ok GET: /v1/volume/targets?detail=True&limit=3 {} GOT:{u'targets': [{u'boot_index': 0, u'uuid': u'b4772ec1-c555-4b16-8258-ee09b5bf07be', u'links': [{u'href': u'http://localhost/v1/volume/targets/b4772ec1-c555-4b16-8258-ee09b5bf07be', u'rel': u'self'}, {u'href': u'http://localhost/volume/targets/b4772ec1-c555-4b16-8258-ee09b5bf07be', u'rel': u'bookmark'}], u'extra': {}, u'created_at': u'2019-06-06T07:02:18.379102+00:00', u'updated_at': None, u'volume_type': u'iscsi', u'node_uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'volume_id': u'12345678', u'properties': {u'target_iqn': u'iqn.foo'}}, {u'boot_index': 1, u'uuid': u'db4f0aff-4329-4cc2-ba39-660db564cc91', u'links': [{u'href': u'http://localhost/v1/volume/targets/db4f0aff-4329-4cc2-ba39-660db564cc91', u'rel': u'self'}, {u'href': u'http://localhost/volume/targets/db4f0aff-4329-4cc2-ba39-660db564cc91', u'rel': u'bookmark'}], u'extra': {}, u'created_at': u'2019-06-06T07:02:18.383409+00:00', u'updated_at': None, u'volume_type': u'iscsi', u'node_uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'volume_id': u'12345678', u'properties': {u'target_iqn': u'iqn.foo'}}, {u'boot_index': 2, u'uuid': u'48d7d961-6153-4636-bdac-2bac19ff92f1', u'links': [{u'href': u'http://localhost/v1/volume/targets/48d7d961-6153-4636-bdac-2bac19ff92f1', u'rel': u'self'}, {u'href': u'http://localhost/volume/targets/48d7d961-6153-4636-bdac-2bac19ff92f1', u'rel': u'bookmark'}], u'extra': {}, u'created_at': u'2019-06-06T07:02:18.386988+00:00', u'updated_at': None, u'volume_type': u'iscsi', u'node_uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'volume_id': u'12345678', u'properties': {u'target_iqn': u'iqn.foo'}}], u'next': u'http://localhost/v1/volume/targets?sort_key=id&sort_dir=asc&detail=True&limit=3&marker=48d7d961-6153-4636-bdac-2bac19ff92f1'} {16} ironic.tests.unit.api.controllers.v1.test_volume_target.TestListVolumeTargets.test_collection_links_detail [3.668202s] ... ok POST: /v1/portgroups {'node_uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123', 'uuid': '6eb02b44-18a3-4659-8c0b-8d2802581ae4', 'extra': {'vif_port_id': 'foo'}, 'standalone_ports_supported': True, 'address': '52:54:00:cf:2d:31', 'name': 'fooname'} GOT:Response: 201 Created Content-Type: application/json Location: http://localhost/v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4 Openstack-Request-Id: req-3b3305cd-5f9a-4881-94ff-d01c494c2a02 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.27 {"node_uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "uuid": "6eb02b44-18a3-4659-8c0b-8d2802581ae4", "links": [{"href": "http://localhost/v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4", "rel": "self"}, {"href": "http://localhost/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4", "rel": "bookmark"}], "extra": {"vif_port_id": "foo"}, "created_at": "2019-06-06T07:02:20.416384+00:00", "updated_at": null, "ports": [{"href": "http://localhost/v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4/ports", "rel": "self"}, {"href": "http://localhost/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4/ports", "rel": "bookmark"}], "standalone_ports_supported": true, "mode": "active-backup", "address": "52:54:00:cf:2d:31", "internal_info": {"tenant_vif_port_id": "foo"}, "properties": {}, "name": "fooname"} {13} ironic.tests.unit.api.controllers.v1.test_portgroup.TestPost.test_create_portgroup_with_extra_vif_port_id [2.352228s] ... ok {13} ironic.tests.unit.api.controllers.v1.test_root.TestCheckVersions.test_check_version_too_high [0.016799s] ... ok {13} ironic.tests.unit.api.controllers.v1.test_utils.TestApiUtils.test_get_patch_values_success [0.011859s] ... ok {13} ironic.tests.unit.api.controllers.v1.test_versions.TestVersionConstants.test_max_ver_str [0.011741s] ... ok GET: /v1/ {} GOT:{u'media_types': [{u'base': u'application/json', u'type': u'application/vnd.openstack.ironic.v1+json'}], u'links': [{u'href': u'http://localhost/v1/', u'rel': u'self'}, {u'href': u'https://docs.openstack.org//ironic/latest/contributor//webapi.html', u'type': u'text/html', u'rel': u'describedby'}], u'drivers': [{u'href': u'http://localhost/v1/drivers/', u'rel': u'self'}, {u'href': u'http://localhost/drivers/', u'rel': u'bookmark'}], u'id': u'v1', u'version': {u'status': u'CURRENT', u'min_version': u'1.1', u'version': u'1.56', u'id': u'v1', u'links': [{u'href': u'http://localhost/v1/', u'rel': u'self'}]}, u'nodes': [{u'href': u'http://localhost/v1/nodes/', u'rel': u'self'}, {u'href': u'http://localhost/nodes/', u'rel': u'bookmark'}], u'ports': [{u'href': u'http://localhost/v1/ports/', u'rel': u'self'}, {u'href': u'http://localhost/ports/', u'rel': u'bookmark'}], u'chassis': [{u'href': u'http://localhost/v1/chassis/', u'rel': u'self'}, {u'href': u'http://localhost/chassis/', u'rel': u'bookmark'}]} {20} ironic.tests.unit.api.controllers.v1.test_root.TestV1Routing.test_route_checks_version [4.176583s] ... ok {20} ironic.tests.unit.api.controllers.v1.test_utils.TestApiUtils.test_allow_portgroups [0.017331s] ... ok {20} ironic.tests.unit.api.controllers.v1.test_utils.TestApiUtils.test_check_allowed_fields_network_interface_fail [0.018132s] ... ok {20} ironic.tests.unit.api.controllers.v1.test_utils.TestApiUtils.test_get_patch_values_multiple_success [0.015848s] ... ok POST: /v1/portgroups {'node_uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123', 'uuid': '6eb02b44-18a3-4659-8c0b-8d2802581ae4', 'extra': {}, 'standalone_ports_supported': True, 'address': '52:54:00:cf:2d:31', 'name': 'fooname'} GOT:Response: 201 Created Content-Type: application/json Location: http://localhost/v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4 Openstack-Request-Id: req-a88cf9ef-8465-4e30-bc12-5cdb2eb635fc X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.23 {"node_uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "uuid": "6eb02b44-18a3-4659-8c0b-8d2802581ae4", "links": [{"href": "http://localhost/v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4", "rel": "self"}, {"href": "http://localhost/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4", "rel": "bookmark"}], "extra": {}, "created_at": "2000-01-01T00:00:00+00:00", "updated_at": null, "ports": [{"href": "http://localhost/v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4/ports", "rel": "self"}, {"href": "http://localhost/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4/ports", "rel": "bookmark"}], "standalone_ports_supported": true, "mode": "active-backup", "address": "52:54:00:cf:2d:31", "internal_info": {}, "properties": {}, "name": "fooname"} GET: /v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4 {} GOT:{u'node_uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'uuid': u'6eb02b44-18a3-4659-8c0b-8d2802581ae4', u'links': [{u'href': u'http://localhost/v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4', u'rel': u'self'}, {u'href': u'http://localhost/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4', u'rel': u'bookmark'}], u'extra': {}, u'created_at': u'2000-01-01T00:00:00+00:00', u'updated_at': None, u'properties': {}, u'standalone_ports_supported': True, u'mode': u'active-backup', u'address': u'52:54:00:cf:2d:31', u'internal_info': {}, u'ports': [{u'href': u'http://localhost/v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4/ports', u'rel': u'self'}, {u'href': u'http://localhost/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4/ports', u'rel': u'bookmark'}], u'name': u'fooname'} {4} ironic.tests.unit.api.controllers.v1.test_portgroup.TestPost.test_create_portgroup_v123 [0.105006s] ... ok GET: /v1/volume/targets/detail {} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-b4792dc3-74b5-46a4-9acb-dfacdcca08f6 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Invalid input for field/attribute target_uuid. Value: 'detail'. unable to convert to uuid. Error: Expected a UUID but received detail.\"}"} {16} ironic.tests.unit.api.controllers.v1.test_volume_target.TestListVolumeTargets.test_detail_sepecified_by_path [0.061816s] ... ok GET: /v1/volume/targets/1be26c0b-03f2-4d2e-ae87-c02d7f33c781?fields=boot_index,extra {} GOT:{u'boot_index': 0, u'links': [{u'href': u'http://localhost/v1/volume/targets/1be26c0b-03f2-4d2e-ae87-c02d7f33c781', u'rel': u'self'}, {u'href': u'http://localhost/volume/targets/1be26c0b-03f2-4d2e-ae87-c02d7f33c781', u'rel': u'bookmark'}], u'extra': {}} {13} ironic.tests.unit.api.controllers.v1.test_volume_target.TestListVolumeTargets.test_get_one_custom_fields [0.091110s] ... ok GET: /v1/volume/targets/1be26c0b-03f2-4d2e-ae87-c02d7f33c781?fields=uuid,spongebob {} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-8bca9f2a-9496-4a46-b430-4030246990d6 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Field(s) \\\"spongebob\\\" are not valid\"}"} {16} ironic.tests.unit.api.controllers.v1.test_volume_target.TestListVolumeTargets.test_get_custom_fields_invalid_fields [0.086251s] ... ok POST: /v1/heartbeat/1be26c0b-03f2-4d2e-ae87-c02d7f33c123 {'callback_url': 'url', 'agent_version': '1.4.1'} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-ddc4908b-82af-41b4-8581-bc2c6e5bb720 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.35 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Field \\\"agent_version\\\" not recognised\"}"} {4} ironic.tests.unit.api.controllers.v1.test_ramdisk.TestHeartbeat.test_old_API_agent_version_error [3.853912s] ... ok {4} ironic.tests.unit.api.controllers.v1.test_types.TestJsonPatchType.test_valid_patches [0.026352s] ... ok PATCH: /v1/volume/connectors/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 [{'path': '/connector_id', 'value': 'test-connector-id-123', 'op': 'add'}] GOT:Response: 200 OK Content-Type: application/json Openstack-Request-Id: req-3df7687a-4e91-4226-9a51-8a68072fdfdd X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"node_uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "links": [{"href": "http://localhost/v1/volume/connectors/1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "rel": "self"}, {"href": "http://localhost/volume/connectors/1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "rel": "bookmark"}], "extra": {}, "created_at": "2019-06-06T07:02:26.777943+00:00", "updated_at": null, "connector_id": "test-connector-id-123", "type": "iqn"} {4} ironic.tests.unit.api.controllers.v1.test_volume_connector.TestPatch.test_add_root [0.087364s] ... ok GET: /v1/volume/targets?sort_key=uuid {} GOT:{u'targets': [{u'boot_index': 2, u'uuid': u'bd5f466b-3b69-4f33-8f78-4260697accc1', u'links': [{u'href': u'http://localhost/v1/volume/targets/bd5f466b-3b69-4f33-8f78-4260697accc1', u'rel': u'self'}, {u'href': u'http://localhost/volume/targets/bd5f466b-3b69-4f33-8f78-4260697accc1', u'rel': u'bookmark'}], u'volume_type': u'iscsi', u'node_uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'volume_id': u'12345678'}, {u'boot_index': 1, u'uuid': u'ee6894e3-5124-42da-9d70-15323d1fdb76', u'links': [{u'href': u'http://localhost/v1/volume/targets/ee6894e3-5124-42da-9d70-15323d1fdb76', u'rel': u'self'}, {u'href': u'http://localhost/volume/targets/ee6894e3-5124-42da-9d70-15323d1fdb76', u'rel': u'bookmark'}], u'volume_type': u'iscsi', u'node_uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'volume_id': u'12345678'}, {u'boot_index': 0, u'uuid': u'f8e6067f-e42e-4d7c-b19f-03b6d9c53671', u'links': [{u'href': u'http://localhost/v1/volume/targets/f8e6067f-e42e-4d7c-b19f-03b6d9c53671', u'rel': u'self'}, {u'href': u'http://localhost/volume/targets/f8e6067f-e42e-4d7c-b19f-03b6d9c53671', u'rel': u'bookmark'}], u'volume_type': u'iscsi', u'node_uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'volume_id': u'12345678'}]} {16} ironic.tests.unit.api.controllers.v1.test_volume_target.TestListVolumeTargets.test_sort_key [4.097696s] ... ok GET: /v1/volume/connectors {} GOT:{u'connectors': [{u'node_uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'type': u'iqn', u'uuid': u'8ee7827c-68ec-4914-9202-0f3d331997f9', u'links': [{u'href': u'http://localhost/v1/volume/connectors/8ee7827c-68ec-4914-9202-0f3d331997f9', u'rel': u'self'}, {u'href': u'http://localhost/volume/connectors/8ee7827c-68ec-4914-9202-0f3d331997f9', u'rel': u'bookmark'}], u'connector_id': u'test-connector_id-0'}, {u'node_uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'type': u'iqn', u'uuid': u'c18b3d81-431d-468b-8108-51ff90147aee', u'links': [{u'href': u'http://localhost/v1/volume/connectors/c18b3d81-431d-468b-8108-51ff90147aee', u'rel': u'self'}, {u'href': u'http://localhost/volume/connectors/c18b3d81-431d-468b-8108-51ff90147aee', u'rel': u'bookmark'}], u'connector_id': u'test-connector_id-1'}, {u'node_uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'type': u'iqn', u'uuid': u'708dd966-43d1-4305-9e6f-f6fd513336a3', u'links': [{u'href': u'http://localhost/v1/volume/connectors/708dd966-43d1-4305-9e6f-f6fd513336a3', u'rel': u'self'}, {u'href': u'http://localhost/volume/connectors/708dd966-43d1-4305-9e6f-f6fd513336a3', u'rel': u'bookmark'}], u'connector_id': u'test-connector_id-2'}, {u'node_uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'type': u'iqn', u'uuid': u'9a24256f-753a-4e7b-abca-726425798526', u'links': [{u'href': u'http://localhost/v1/volume/connectors/9a24256f-753a-4e7b-abca-726425798526', u'rel': u'self'}, {u'href': u'http://localhost/volume/connectors/9a24256f-753a-4e7b-abca-726425798526', u'rel': u'bookmark'}], u'connector_id': u'test-connector_id-3'}, {u'node_uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'type': u'iqn', u'uuid': u'9e0b519a-1214-4bb8-a4f8-914a15568cb3', u'links': [{u'href': u'http://localhost/v1/volume/connectors/9e0b519a-1214-4bb8-a4f8-914a15568cb3', u'rel': u'self'}, {u'href': u'http://localhost/volume/connectors/9e0b519a-1214-4bb8-a4f8-914a15568cb3', u'rel': u'bookmark'}], u'connector_id': u'test-connector_id-4'}]} {20} ironic.tests.unit.api.controllers.v1.test_volume_connector.TestListVolumeConnectors.test_many [0.128939s] ... ok GET: /v1/volume/targets/1be26c0b-03f2-4d2e-ae87-c02d7f33c781?detail=True&fields=boot_index,extra {} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-ae039df4-42ef-4378-b354-32d624454dc8 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Unknown argument: \\\"detail\\\"\"}"} {4} ironic.tests.unit.api.controllers.v1.test_volume_target.TestListVolumeTargets.test_detail_and_fields [0.065061s] ... ok GET: /v1/volume/targets {} GOT:{u'targets': [{u'boot_index': 0, u'uuid': u'31134dda-2ae0-440d-854c-7daa29551303', u'links': [{u'href': u'http://localhost/v1/volume/targets/31134dda-2ae0-440d-854c-7daa29551303', u'rel': u'self'}, {u'href': u'http://localhost/volume/targets/31134dda-2ae0-440d-854c-7daa29551303', u'rel': u'bookmark'}], u'volume_type': u'iscsi', u'node_uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'volume_id': u'12345678'}, {u'boot_index': 1, u'uuid': u'9a6c30fc-22b4-4b6f-af87-c4f891e48234', u'links': [{u'href': u'http://localhost/v1/volume/targets/9a6c30fc-22b4-4b6f-af87-c4f891e48234', u'rel': u'self'}, {u'href': u'http://localhost/volume/targets/9a6c30fc-22b4-4b6f-af87-c4f891e48234', u'rel': u'bookmark'}], u'volume_type': u'iscsi', u'node_uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'volume_id': u'12345678'}, {u'boot_index': 2, u'uuid': u'f6c1618a-db9f-438a-a72d-771ddb420f4b', u'links': [{u'href': u'http://localhost/v1/volume/targets/f6c1618a-db9f-438a-a72d-771ddb420f4b', u'rel': u'self'}, {u'href': u'http://localhost/volume/targets/f6c1618a-db9f-438a-a72d-771ddb420f4b', u'rel': u'bookmark'}], u'volume_type': u'iscsi', u'node_uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'volume_id': u'12345678'}, {u'boot_index': 3, u'uuid': u'a37d9a03-74c8-4db5-ae7b-43b2e01721a5', u'links': [{u'href': u'http://localhost/v1/volume/targets/a37d9a03-74c8-4db5-ae7b-43b2e01721a5', u'rel': u'self'}, {u'href': u'http://localhost/volume/targets/a37d9a03-74c8-4db5-ae7b-43b2e01721a5', u'rel': u'bookmark'}], u'volume_type': u'iscsi', u'node_uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'volume_id': u'12345678'}, {u'boot_index': 4, u'uuid': u'664e2679-8f47-42c5-a8c3-9ab8d0e0d3eb', u'links': [{u'href': u'http://localhost/v1/volume/targets/664e2679-8f47-42c5-a8c3-9ab8d0e0d3eb', u'rel': u'self'}, {u'href': u'http://localhost/volume/targets/664e2679-8f47-42c5-a8c3-9ab8d0e0d3eb', u'rel': u'bookmark'}], u'volume_type': u'iscsi', u'node_uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'volume_id': u'12345678'}]} {13} ironic.tests.unit.api.controllers.v1.test_volume_target.TestListVolumeTargets.test_many [4.212301s] ... ok GET: /v1/volume/targets?fields=boot_index&limit=2 {} GOT:{u'targets': [{u'boot_index': 0, u'links': [{u'href': u'http://localhost/v1/volume/targets/486abb23-31e7-4141-82e6-1da586c33290', u'rel': u'self'}, {u'href': u'http://localhost/volume/targets/486abb23-31e7-4141-82e6-1da586c33290', u'rel': u'bookmark'}]}, {u'boot_index': 1, u'links': [{u'href': u'http://localhost/v1/volume/targets/12bd30d4-f063-42d3-96d2-5a171d92a5ec', u'rel': u'self'}, {u'href': u'http://localhost/volume/targets/12bd30d4-f063-42d3-96d2-5a171d92a5ec', u'rel': u'bookmark'}]}], u'next': u'http://localhost/v1/volume/targets?sort_key=id&sort_dir=asc&limit=2&marker=12bd30d4-f063-42d3-96d2-5a171d92a5ec'} {4} ironic.tests.unit.api.controllers.v1.test_volume_target.TestListVolumeTargets.test_get_collection_pagination_no_uuid [0.071180s] ... ok PATCH: /v1/volume/targets/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 [{'path': '/node_id', 'value': '1', 'op': 'add'}] GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-9abebdae-9dd1-44e9-8461-8ff269a52a0d X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Adding a new attribute (/node_id) to the root of the resource is not allowed\"}"} {13} ironic.tests.unit.api.controllers.v1.test_volume_target.TestPatch.test_add_node_id [0.053351s] ... ok GET: /v1/volume/targets?sort_key=foo {} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-33f463bf-d4f4-459b-8216-0a8d17f5102f X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"The sort_key value \\\"foo\\\" is an invalid field for sorting\"}"} GET: /v1/volume/targets?sort_key=extra {} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-9a60062b-815b-4e45-9d33-ac2c5ed2e279 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"The sort_key value extra is an invalid field for sorting\"}"} GET: /v1/volume/targets?sort_key=properties {} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-68e04a34-7367-456d-ae35-4e84b14d62c9 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"The sort_key value properties is an invalid field for sorting\"}"} {16} ironic.tests.unit.api.controllers.v1.test_volume_target.TestListVolumeTargets.test_sort_key_invalid [0.051063s] ... ok DELETE: /v1/v1 GOT:Response: 405 Method Not Allowed Allow: GET Content-Type: application/json {"error_message": "{\"code\": 405, \"description\": \"\", \"title\": \"Method Not Allowed\"}"} {16} ironic.tests.unit.api.test_root.TestRoot.test_no_html_errors2 [0.021694s] ... ok GET: /v1/volume/targets?node=test-node {} GOT:{u'targets': [{u'boot_index': 0, u'uuid': u'68f6667c-6e60-416a-bedd-88cd194b2614', u'links': [{u'href': u'http://localhost/v1/volume/targets/68f6667c-6e60-416a-bedd-88cd194b2614', u'rel': u'self'}, {u'href': u'http://localhost/volume/targets/68f6667c-6e60-416a-bedd-88cd194b2614', u'rel': u'bookmark'}], u'volume_type': u'iscsi', u'node_uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'volume_id': u'12345678'}, {u'boot_index': 1, u'uuid': u'89d2abec-0c2b-41ae-a5dc-d52b39a6a41f', u'links': [{u'href': u'http://localhost/v1/volume/targets/89d2abec-0c2b-41ae-a5dc-d52b39a6a41f', u'rel': u'self'}, {u'href': u'http://localhost/volume/targets/89d2abec-0c2b-41ae-a5dc-d52b39a6a41f', u'rel': u'bookmark'}], u'volume_type': u'iscsi', u'node_uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'volume_id': u'12345678'}, {u'boot_index': 2, u'uuid': u'91008dbd-8540-4a2b-9f0f-f134c9aff1b3', u'links': [{u'href': u'http://localhost/v1/volume/targets/91008dbd-8540-4a2b-9f0f-f134c9aff1b3', u'rel': u'self'}, {u'href': u'http://localhost/volume/targets/91008dbd-8540-4a2b-9f0f-f134c9aff1b3', u'rel': u'bookmark'}], u'volume_type': u'iscsi', u'node_uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'volume_id': u'12345678'}]} {20} ironic.tests.unit.api.controllers.v1.test_volume_target.TestListVolumeTargets.test_get_all_by_node_name_ok [4.443676s] ... ok PATCH: /v1/volume/targets/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 [{'path': '/node_uuid', 'value': 123, 'op': 'add'}] GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-942332e3-c650-4f89-878b-04346b3c252e X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Expected a UUID for node_uuid, but received 123.\"}"} {13} ironic.tests.unit.api.controllers.v1.test_volume_target.TestPatch.test_add_node_uuid_invalid_type [0.043543s] ... ok PATCH: /v1/volume/targets/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 [{'path': '/node_id', 'value': '1', 'op': 'replace'}] GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-354e9fde-0724-419e-8005-e53cd0b94d52 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Couldn't apply patch '{'path': '/node_id', 'value': u'1', 'op': 'replace'}'. Reason: can't replace non-existent object 'node_id'\"}"} {4} ironic.tests.unit.api.controllers.v1.test_volume_target.TestPatch.test_replace_node_id [2.736228s] ... ok PATCH: /v1/volume/targets/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 [{'path': '/extra/non-existent', 'op': 'remove'}] GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-814f75cc-a43d-4a83-a884-21536e2deede X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Couldn't apply patch '{'path': '/extra/non-existent', 'op': 'remove'}'. Reason: can't remove non-existent object 'non-existent'\"}"} {20} ironic.tests.unit.api.controllers.v1.test_volume_target.TestPatch.test_remove_non_existent_property_fail [0.044590s] ... ok PATCH: /v1/volume/targets/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 [{'path': '/uuid', 'op': 'remove'}] GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-a5a96d02-7532-4036-a2e9-d469630bef1a X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"'/uuid' is an internal attribute and can not be updated\"}"} {13} ironic.tests.unit.api.controllers.v1.test_volume_target.TestPatch.test_remove_uuid [2.009426s] ... ok POST: /v1/volume/targets {'boot_index': 0, 'uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c781', 'extra': {}, 'volume_type': 'iscsi', 'volume_id': '12345678', 'properties': {'target_iqn': 'iqn.foo'}} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-a61a1dda-df78-4419-b896-eea8e131e938 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Invalid input for field/attribute node_uuid. Value: 'None'. Mandatory field missing.\"}"} {4} ironic.tests.unit.api.controllers.v1.test_volume_target.TestPost.test_create_volume_target_no_mandatory_field_node_uuid [0.051504s] ... ok GET: /v1/ {} GOT:{u'media_types': [{u'base': u'application/json', u'type': u'application/vnd.openstack.ironic.v1+json'}], u'links': [{u'href': u'http://localhost/v1/', u'rel': u'self'}, {u'href': u'https://docs.openstack.org//ironic/latest/contributor//webapi.html', u'type': u'text/html', u'rel': u'describedby'}], u'drivers': [{u'href': u'http://localhost/v1/drivers/', u'rel': u'self'}, {u'href': u'http://localhost/drivers/', u'rel': u'bookmark'}], u'id': u'v1', u'version': {u'status': u'CURRENT', u'min_version': u'1.1', u'version': u'1.56', u'id': u'v1', u'links': [{u'href': u'http://localhost/v1/', u'rel': u'self'}]}, u'nodes': [{u'href': u'http://localhost/v1/nodes/', u'rel': u'self'}, {u'href': u'http://localhost/nodes/', u'rel': u'bookmark'}], u'ports': [{u'href': u'http://localhost/v1/ports/', u'rel': u'self'}, {u'href': u'http://localhost/ports/', u'rel': u'bookmark'}], u'chassis': [{u'href': u'http://localhost/v1/chassis/', u'rel': u'self'}, {u'href': u'http://localhost/chassis/', u'rel': u'bookmark'}]} {16} ironic.tests.unit.api.test_root.TestV1Root.test_get_v1_root [3.358439s] ... ok {16} ironic.tests.unit.cmd.test_conductor.ConductorStartTestCase.test_warn_about_unsafe_shred_parameters_zeros [0.032795s] ... ok {16} ironic.tests.unit.common.test_cinder.TestCinderActions.test_detach_volumes_vol_not_found [0.085777s] ... ok {16} ironic.tests.unit.common.test_glance_service.TestServiceUtils.test_parse_image_id_from_glance [0.010411s] ... ok {16} ironic.tests.unit.common.test_image_service.HttpImageServiceTestCase.test_show_rfc_822 [0.017036s] ... ok {16} ironic.tests.unit.common.test_images.FsImageTestCase.test_get_glance_image_properties_default_all [0.012689s] ... ok {16} ironic.tests.unit.common.test_neutron.TestGetNetworkByUUIDOrName.test__get_network_by_uuid_or_name_name [0.010529s] ... ok {16} ironic.tests.unit.common.test_neutron.TestUpdatePortAddress.test_update_port_address_unbind_port_failed [0.015691s] ... ok {16} ironic.tests.unit.common.test_neutron.TestUpdatePortAddress.test_update_port_address_with_exception [0.014054s] ... ok {16} ironic.tests.unit.common.test_pxe_utils.PXEInterfacesTestCase.test_get_instance_image_info_localboot [0.066470s] ... ok {16} ironic.tests.unit.common.test_pxe_utils.TestPXEUtils.test_clean_up_pxe_config_uefi [0.077784s] ... ok {16} ironic.tests.unit.common.test_pxe_utils.TestPXEUtils.test_create_pxe_config_uefi_grub [0.074288s] ... ok {16} ironic.tests.unit.common.test_pxe_utils.TestPXEUtils.test_get_rescue_kr_info_ipxe [0.022040s] ... ok {16} ironic.tests.unit.common.test_raid.ValidateRaidConfigurationTestCase.test_validate_configuration_with_jbod_volume [0.017290s] ... ok {16} ironic.tests.unit.common.test_swift.SwiftTestCase.test_delete_object_exc_resource_not_found [2.275099s] ... ok {16} ironic.tests.unit.common.test_utils.ExecuteTestCase.test_execute_without_root_helper [0.012467s] ... ok {16} ironic.tests.unit.common.test_utils.GenericUtilsTestCase.test_safe_rstrip_not_raises_exceptions [0.009474s] ... ok {16} ironic.tests.unit.common.test_utils.GetUpdatedCapabilitiesTestCase.test_get_updated_capabilities_add_to_existing_capabilities [0.009316s] ... ok {16} ironic.tests.unit.common.test_utils.TempFilesTestCase.test_tempdir_mocked [0.013439s] ... ok {16} ironic.tests.unit.conductor.test_manager.BootDeviceTestCase.test_get_supported_boot_devices [0.050500s] ... ok {16} ironic.tests.unit.conductor.test_manager.ChangeNodePowerStateTestCase.test_node_set_power_state_notif_success [0.236640s] ... ok {16} ironic.tests.unit.conductor.test_manager.ContinueNodeDeployTestCase.test_continue_node_deploy_deprecated [0.199966s] ... ok {16} ironic.tests.unit.conductor.test_manager.DoNodeAdoptionTestCase.test_do_provisioning_action_adopt_node_retry [0.206975s] ... ok {16} ironic.tests.unit.conductor.test_manager.DoNodeCleanTestCase.test__get_node_next_clean_steps_no_skip [0.062537s] ... ok {16} ironic.tests.unit.conductor.test_manager.DoNodeCleanTestCase.test_do_next_clean_step_automated_all [0.315119s] ... ok {16} ironic.tests.unit.conductor.test_manager.DoNodeCleanTestCase.test_do_node_clean_invalid_state [0.202029s] ... ok {16} ironic.tests.unit.conductor.test_manager.DoNodeRescueTestCase.test_do_node_unrescue [0.154105s] ... ok {16} ironic.tests.unit.conductor.test_manager.ManagerCheckInspectWaitTimeoutsTestCase.test__check_inspect_timeouts_no_acquire_after_lock [0.017691s] ... ok {16} ironic.tests.unit.conductor.test_manager.NmiTestCase.test_inject_nmi_not_implemented [0.063221s] ... ok {16} ironic.tests.unit.conductor.test_manager.ParallelPowerSyncTestCase.test__sync_power_states_6_nodes_8_workers [0.017241s] ... ok {16} ironic.tests.unit.conductor.test_manager.RaidHardwareTypeTestCases.test_set_target_raid_config [0.100144s] ... ok {16} ironic.tests.unit.conductor.test_manager.RaidTestCases.test_get_raid_logical_disk_properties [1.553061s] ... ok {16} ironic.tests.unit.conductor.test_manager.ServiceDoNodeDeployTestCase.test_do_node_deploy_rebuild_active_state_waiting [0.279799s] ... ok {16} ironic.tests.unit.conductor.test_manager.UpdatePortTestCase.test_update_port_to_node_in_inspect_wait_state [0.072482s] ... ok {16} ironic.tests.unit.conductor.test_manager.VendorPassthruTestCase.test_driver_vendor_passthru_no_default_interface [0.122065s] ... ok PATCH: /v1/volume/targets/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 [{'path': '/node_uuid', 'value': 123, 'op': 'replace'}] GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-39ac7e39-2bf4-41dd-a73b-0ae099f446b6 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Expected a UUID for node_uuid, but received 123.\"}"} {16} ironic.tests.unit.conductor.test_manager.VendorPassthruTestCase.test_vendor_passthru_unsupported_method [0.183315s] ... ok {20} ironic.tests.unit.api.controllers.v1.test_volume_target.TestPatch.test_replace_node_uuid_inalid_type [0.048094s] ... ok {16} ironic.tests.unit.conductor.test_rpcapi.RPCAPITestCase.test_continue_node_clean [0.025079s] ... ok {20} ironic.tests.unit.api.test_hooks.TestContextHook.test_context_hook_not_admin [0.017911s] ... ok {16} ironic.tests.unit.conductor.test_steps.NodeCleaningStepsTestCase.test__validate_user_clean_steps [0.071832s] ... ok {16} ironic.tests.unit.conductor.test_utils.NodePowerActionTestCase.test__can_skip_state_change_same_state [0.101501s] ... ok {16} ironic.tests.unit.db.sqlalchemy.test_migrations.TestMigrationsMySQL.test_upgrade_and_version ... SKIPPED: Backend 'mysql+pymysql' is unavailable: Could not connect {16} ironic.tests.unit.db.sqlalchemy.test_migrations.TestWalkVersions.test_walk_versions_all_false [0.017517s] ... ok {16} ironic.tests.unit.db.sqlalchemy.test_types.SqlAlchemyCustomTypesTestCase.test_JSONEncodedList_type_check [0.022925s] ... ok {16} ironic.tests.unit.db.test_allocations.AllocationsTestCase.test_create [0.023846s] ... ok {16} ironic.tests.unit.db.test_api.UpgradingTestCase.test_check_versions_conductor [0.260024s] ... ok {16} ironic.tests.unit.db.test_chassis.DbChassisTestCase.test_get_chassis_list [0.029573s] ... ok {16} ironic.tests.unit.db.test_node_tags.DbNodeTagTestCase.test_get_node_tags_by_node_id [0.036615s] ... ok Malformed option m1key1=value1 {20} ironic.tests.unit.cmd.test_dbsync.OnlineMigrationTestCase.test__run_online_data_migrations_invalid_option1 [0.016371s] ... ok {20} ironic.tests.unit.common.test_driver_factory.DefaultInterfaceTestCase.test_from_config [0.016245s] ... ok {20} ironic.tests.unit.common.test_fsm.FSMTest.test__validate_target_state [0.010550s] ... ok {16} ironic.tests.unit.db.test_nodes.DbNodeTestCase.test_reserve_node [0.073326s] ... ok {16} ironic.tests.unit.db.test_ports.DbPortTestCase.test_get_port_list_sorted [0.038036s] ... ok {20} ironic.tests.unit.common.test_glance_service.TestGlanceSwiftTempURL.test_swift_temp_url [0.017120s] ... ok {20} ironic.tests.unit.common.test_glance_service.TestGlanceSwiftTempURL.test_swift_temp_url_invalid_image_info [0.020680s] ... ok {16} ironic.tests.unit.dhcp.test_factory.TestDHCPFactory.test_set_bad_dhcp [0.010750s] ... ok {20} ironic.tests.unit.common.test_glance_service.TestGlanceSwiftTempURL.test_swift_temp_url_key_detected [0.047598s] ... ok {16} ironic.tests.unit.drivers.modules.cimc.test_management.CIMCManagementTestCase.test_get_sensors_data [0.762077s] ... ok {16} ironic.tests.unit.drivers.modules.drac.test_inspect.DracInspectionTestCase.test_inspect_hardware_fail [0.076227s] ... ok {20} ironic.tests.unit.common.test_glance_service.TestSwiftTempUrlCache.test_do_not_return_expired_tempurls [0.022251s] ... ok {16} ironic.tests.unit.drivers.modules.drac.test_power.DracPowerTestCase.test_get_properties [0.037642s] ... ok {20} ironic.tests.unit.common.test_images.FsImageTestCase.test__umount_without_raise [0.019247s] ... ok {20} ironic.tests.unit.common.test_json_rpc.TestClient.test_call_success [0.021867s] ... ok {16} ironic.tests.unit.drivers.modules.ilo.test_bios.IloBiosTestCase.test_validate [0.048011s] ... ok {20} ironic.tests.unit.common.test_json_rpc.TestClient.test_cast_success_with_version [0.016066s] ... ok {16} ironic.tests.unit.drivers.modules.ilo.test_boot.IloBootPrivateMethodsTestCase.test__get_boot_iso_unsupported_url [0.074271s] ... ok {20} ironic.tests.unit.common.test_neutron.TestNeutronClient.test_get_neutron_client_with_deprecated_opts [0.020535s] ... ok {16} ironic.tests.unit.drivers.modules.ilo.test_boot.IloBootPrivateMethodsTestCase.test__validate_driver_info_valid_uuid [0.069909s] ... ok {20} ironic.tests.unit.common.test_neutron.TestNeutronNetworkActions.test_validate_port_info_flat_interface [0.058758s] ... ok {16} ironic.tests.unit.drivers.modules.ilo.test_common.IloCommonMethodsTestCase.test_cleanup_vmedia_boot_exc [0.075332s] ... ok {20} ironic.tests.unit.common.test_neutron.TestNeutronNetworkActions.test_wait_for_port_status_up [0.026878s] ... ok {16} ironic.tests.unit.drivers.modules.ilo.test_common.IloCommonMethodsTestCase.test_setup_vmedia [0.062558s] ... ok {20} ironic.tests.unit.common.test_raid.RaidPublicMethodsTestCase.test_filter_target_raid_config_skip_nonroot [0.021805s] ... ok {16} ironic.tests.unit.drivers.modules.ilo.test_common.IloCommonMethodsTestCase.test_update_secure_boot_mode_passed_false [0.058318s] ... ok {20} ironic.tests.unit.common.test_states.StatesTest.test_state_values_length [0.010148s] ... ok {16} ironic.tests.unit.drivers.modules.ilo.test_common.IloValidateParametersTestCase.test_parse_driver_info_ca_file_and_snmp_inspection_true [0.020044s] ... ok {20} ironic.tests.unit.conductor.test_allocations.DoAllocateTestCase.test_nodes_locked [0.177525s] ... ok {16} ironic.tests.unit.drivers.modules.ilo.test_firmware_processor.FirmwareProcessorTestCase.test_get_and_validate_firmware_image_info_fails_for_missing_parameter [0.009588s] ... ok {16} ironic.tests.unit.drivers.modules.ilo.test_inspect.TestInspectPrivateMethods.test___create_supported_capabilities_dict_excluded_capability [0.020091s] ... ok {20} ironic.tests.unit.conductor.test_base_manager.StartStopTestCase.test_prevent_double_start [0.175310s] ... ok {16} ironic.tests.unit.drivers.modules.ilo.test_management.IloManagementTestCase.test_activate_license_no_or_invalid_format_license_key [0.063113s] ... ok {20} ironic.tests.unit.conductor.test_manager.ContinueNodeDeployTestCase.test_continue_node_deploy [0.219220s] ... ok {20} ironic.tests.unit.conductor.test_manager.CreatePortTestCase.test_create_port [0.074244s] ... ok {16} ironic.tests.unit.drivers.modules.ilo.test_management.IloManagementTestCase.test_set_boot_device_fail [0.064156s] ... ok {20} ironic.tests.unit.conductor.test_manager.DestroyVolumeConnectorTestCase.test_destroy_volume_connector_node_locked [0.042158s] ... ok {16} ironic.tests.unit.drivers.modules.ilo.test_raid.Ilo5RAIDTestCase.test_create_configuration_with_read_raid_failed [0.106308s] ... ok {20} ironic.tests.unit.conductor.test_manager.DoNodeCleanTestCase.test__do_next_clean_step_automated_last_step_noop [0.235599s] ... ok {16} ironic.tests.unit.drivers.modules.ilo.test_raid.Ilo5RAIDTestCase.test_delete_configuration_with_read_raid [0.122066s] ... ok {20} ironic.tests.unit.conductor.test_manager.DoNodeCleanTestCase.test_continue_node_clean_manual [0.204836s] ... ok {16} ironic.tests.unit.drivers.modules.irmc.test_bios.IRMCBIOSTestCase.test_apply_configuration [0.078036s] ... ok {20} ironic.tests.unit.conductor.test_manager.DoNodeDeployTestCase.test__do_node_deploy_configdrive_as_dict [0.246403s] ... ok {16} ironic.tests.unit.drivers.modules.irmc.test_bios.IRMCBIOSTestCase.test_cache_bios_settings_failed [0.070593s] ... ok {20} ironic.tests.unit.conductor.test_manager.DoNodeDeployTestCase.test__do_node_deploy_driver_unexpected_exception [0.265215s] ... ok {16} ironic.tests.unit.drivers.modules.irmc.test_bios.IRMCBIOSTestCase.test_validate [0.058485s] ... ok {20} ironic.tests.unit.conductor.test_manager.DoNodeTearDownTestCase.test_do_node_tear_down_protected [0.177190s] ... ok {20} ironic.tests.unit.conductor.test_manager.ManagerCheckDeployTimeoutsTestCase.test_no_deploywait_after_lock [0.017448s] ... ok {16} ironic.tests.unit.drivers.modules.irmc.test_boot.IRMCDeployPrivateMethodsTestCase.test__parse_config_option_non_existed_root [0.020676s] ... ok {20} ironic.tests.unit.conductor.test_manager.ManagerDoSyncPowerStateTestCase.test_correct_power_state_on_upgrade_lock [0.021741s] ... ok {16} ironic.tests.unit.drivers.modules.irmc.test_boot.IRMCDeployPrivateMethodsTestCase.test__parse_instance_info_without_boot_iso_ok [0.018672s] ... ok {20} ironic.tests.unit.conductor.test_manager.ManagerPowerRecoveryTestCase.test_node_not_mapped [0.015605s] ... ok {20} ironic.tests.unit.conductor.test_manager.SensorsTestCase.test__filter_out_unsupported_types_non [0.142484s] ... ok {16} ironic.tests.unit.drivers.modules.irmc.test_boot.IRMCPXEBootBasicTestCase.test_get_properties [0.053657s] ... ok {20} ironic.tests.unit.conductor.test_manager.UpdateVolumeTargetTestCase.test_update_volume_target_volume_type [0.072825s] ... ok {16} ironic.tests.unit.drivers.modules.irmc.test_boot.IRMCPXEBootBasicTestCase.test_prepare_ramdisk_force_persistent_boot_device_default [0.110008s] ... ok {16} ironic.tests.unit.drivers.modules.irmc.test_boot.IRMCPXEBootTestCase.test_prepare_ramdisk_without_backup_bios [0.069819s] ... ok {20} ironic.tests.unit.conductor.test_notification_utils.ProvisionNotifyTestCase.test_mask_secrets [0.012216s] ... ok {16} ironic.tests.unit.drivers.modules.irmc.test_common.IRMCValidateParametersTestCase.test_parse_driver_info_missing_multiple_params [0.018014s] ... ok {20} ironic.tests.unit.conductor.test_rpcapi.RPCAPITestCase.test_create_allocation [0.016129s] ... ok {20} ironic.tests.unit.conductor.test_rpcapi.RPCAPITestCase.test_serialized_instance_has_uuid [0.013503s] ... ok {16} ironic.tests.unit.drivers.modules.irmc.test_common.IRMCValidateParametersTestCase.test_parse_driver_info_missing_username [0.017766s] ... ok {20} ironic.tests.unit.conductor.test_rpcapi.RPCAPITestCase.test_update_node [0.015658s] ... ok {16} ironic.tests.unit.drivers.modules.irmc.test_management.IRMCManagementFunctionsTestCase.test_backup_bios_config [0.073978s] ... ok {20} ironic.tests.unit.conductor.test_steps.NodeCleaningStepsTestCase.test__get_cleaning_steps_unsorted [0.066235s] ... ok {16} ironic.tests.unit.drivers.modules.irmc.test_periodic_task.iRMCPeriodicTaskTestCase.test__query_raid_config_fgi_status_with_complete_cleaning [0.042786s] ... ok {20} ironic.tests.unit.conductor.test_task_manager.TaskManagerTestCase.test_excl_lock_get_ports_exception [0.024675s] ... ok {16} ironic.tests.unit.drivers.modules.irmc.test_periodic_task.iRMCPeriodicTaskTestCase.test__query_raid_config_fgi_status_without_raid_config [0.035394s] ... ok {20} ironic.tests.unit.conductor.test_task_manager.TaskManagerTestCase.test_shared_lock_get_voltgt_exception [0.024073s] ... ok {20} ironic.tests.unit.conductor.test_task_manager.TaskManagerTestCase.test_upgrade_lock [0.028441s] ... ok {16} ironic.tests.unit.drivers.modules.irmc.test_power.IRMCPowerInternalMethodsTestCase.test__set_power_state_reboot_ok [0.056678s] ... ok POST: /v1/volume/targets {'boot_index': 0, 'uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c781', 'extra': {}, 'node_uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123', 'volume_id': '12345678', 'properties': {'target_iqn': 'iqn.foo'}} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-04019829-3e07-4db3-b156-e49079a70bfa X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Invalid input for field/attribute volume_type. Value: 'None'. Mandatory field missing.\"}"} {13} ironic.tests.unit.api.controllers.v1.test_volume_target.TestPost.test_create_volume_target_no_mandatory_field_type [0.042266s] ... ok {16} ironic.tests.unit.drivers.modules.irmc.test_raid.IRMCRaidConfigurationInternalMethodsTestCase.test___fail_validation_with_raid_level_outside_list [0.045353s] ... ok {16} ironic.tests.unit.drivers.modules.network.test_common.TestNeutronVifPortIDMixin.test_vif_detach_portgroup [0.073623s] ... ok {20} ironic.tests.unit.conductor.test_task_manager.ThreadExceptionTestCase.test_set_node_last_error_cancelled [0.012891s] ... ok {20} ironic.tests.unit.conductor.test_utils.ErrorHandlersTestCase.test_cleanup_cleanwait_timeout_handler_call [1.846269s] ... ok {20} ironic.tests.unit.conductor.test_utils.MiscTestCase.test_restore_power_state_if_needed_true [0.064735s] ... ok {16} ironic.tests.unit.drivers.modules.network.test_common.TestVifPortIDMixin.test__clear_vif_from_port_like_obj_in_internal_info_port [0.035760s] ... ok {20} ironic.tests.unit.conductor.test_utils.NodePowerActionTestCase.test_node_power_action_power_off_storage_detach [0.099413s] ... ok {20} ironic.tests.unit.conductor.test_utils.ValidateInstanceInfoTraitsTestCase.test_validate_instance_info_traits_invalid_type [0.010595s] ... ok {16} ironic.tests.unit.drivers.modules.network.test_neutron.NeutronInterfaceTestCase.test_add_cleaning_network_from_node [0.140805s] ... ok {16} ironic.tests.unit.drivers.modules.network.test_neutron.NeutronInterfaceTestCase.test_remove_provisioning_network [0.078436s] ... ok {20} ironic.tests.unit.conductor.test_utils.ValidatePortPhysnetTestCase.test_validate_port_physnet_1_port_portgroup_w_physnet_update_2 [0.069098s] ... ok {16} ironic.tests.unit.drivers.modules.redfish.test_inspect.RedfishInspectTestCase.test_get_properties [0.051037s] ... ok {20} ironic.tests.unit.conductor.test_utils.ValidatePortPhysnetTestCase.test_validate_port_physnet_1_port_portgroup_w_physnet_update_3 [0.072138s] ... ok {16} ironic.tests.unit.drivers.modules.redfish.test_management.RedfishManagementTestCase.test_get_boot_mode [0.050249s] ... ok {16} ironic.tests.unit.drivers.modules.redfish.test_utils.RedfishUtilsTestCase.test_get_system_resource_not_found [0.058355s] ... ok {20} ironic.tests.unit.db.sqlalchemy.test_api.TestDBWriteMethodsRetryOnDeadlock.test_retry_on_deadlock [0.102408s] ... ok {20} ironic.tests.unit.db.test_allocations.AllocationsTestCase.test_get_allocation_list_invalid_fields [0.023184s] ... ok {20} ironic.tests.unit.db.test_api.UpgradingTestCase.test_check_versions_conductor_old [0.043222s] ... ok {16} ironic.tests.unit.drivers.modules.redfish.test_utils.RedfishUtilsTestCase.test_parse_driver_info_invalid_string_value_verify_ca [0.022132s] ... ok {20} ironic.tests.unit.db.test_chassis.DbChassisTestCase.test_get_chassis_by_uuid [0.018795s] ... ok {20} ironic.tests.unit.db.test_conductor.DbConductorTestCase.test_get_inactive_conductor_with_online_true [0.024002s] ... ok {16} ironic.tests.unit.drivers.modules.storage.test_external.ExternalInterfaceTestCase.test_validate_fails_with_ipxe_not_enabled [0.078874s] ... ok {20} ironic.tests.unit.db.test_conductor.DbConductorTestCase.test_touch_conductor_deadlock [0.023588s] ... ok {16} ironic.tests.unit.drivers.modules.test_agent.AgentRAIDTestCase.test_create_configuration_skip_root [0.062673s] ... ok {20} ironic.tests.unit.db.test_deploy_templates.DbDeployTemplateTestCase.test_create_duplicate_name [0.022500s] ... ok {16} ironic.tests.unit.drivers.modules.test_agent.TestAgentDeploy.test_validate_storage_should_write_image_false [0.054730s] ... ok {20} ironic.tests.unit.db.test_deploy_templates.DbDeployTemplateTestCase.test_update_steps_remove_all [0.028269s] ... ok {16} ironic.tests.unit.drivers.modules.test_agent.TestAgentMethods.test_check_image_size_raw_stream_enabled [0.060971s] ... ok {20} ironic.tests.unit.db.test_node_tags.DbNodeTagTestCase.test_unset_empty_node_tags [0.034845s] ... ok {16} ironic.tests.unit.drivers.modules.test_agent_base_vendor.HeartbeatMixinTest.test_heartbeat_in_maintenance [0.132930s] ... ok {20} ironic.tests.unit.db.test_node_traits.DbNodeTraitTestCase.test_add_node_trait_duplicate_at_limit [0.530392s] ... ok {16} ironic.tests.unit.drivers.modules.test_console_utils.ConsoleUtilsTestCase.test_start_socat_console_check_arg_default_timeout [0.030670s] ... ok {20} ironic.tests.unit.db.test_node_traits.DbNodeTraitTestCase.test_get_node_traits_node_not_exist [0.024444s] ... ok {20} ironic.tests.unit.db.test_nodes.DbNodeTestCase.test_get_nodeinfo_list_defaults [1.242499s] ... ok {16} ironic.tests.unit.drivers.modules.test_deploy_utils.AgentMethodsTestCase.test_direct_deploy_should_convert_raw_image_no_stream [0.021070s] ... ok {16} ironic.tests.unit.drivers.modules.test_deploy_utils.OtherFunctionTestCase.test_get_boot_option_default_value [1.358180s] ... ok {20} ironic.tests.unit.db.test_nodes.DbNodeTestCase.test_tags_get_destroyed_after_destroying_a_node [0.047543s] ... ok {20} ironic.tests.unit.db.test_nodes.DbNodeTestCase.test_update_node_associate_and_disassociate [0.042521s] ... ok {16} ironic.tests.unit.drivers.modules.test_deploy_utils.SwitchPxeConfigTestCase.test_switch_uefi_grub_config_whole_disk_image [0.029241s] ... ok {20} ironic.tests.unit.db.test_nodes.DbNodeTestCase.test_volume_connector_get_destroyed_after_destroying_a_node [0.032979s] ... ok {20} ironic.tests.unit.db.test_portgroups.DbportgroupTestCase.test_update_portgroup [0.024031s] ... ok {16} ironic.tests.unit.drivers.modules.test_deploy_utils.TestStorageInterfaceUtils.test_populate_storage_driver_internal_info_fc [0.684684s] ... ok {16} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolCheckOptionSupportedTestCase.test_check_all_options_fail [0.013763s] ... ok {20} ironic.tests.unit.db.test_volume_targets.DbVolumeTargetTestCase.test_get_volume_targets_by_node_id_that_does_not_exist [0.021278s] ... ok {16} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolDriverTestCase.test__bmc_reset_ok [0.067104s] ... ok {20} ironic.tests.unit.dhcp.test_neutron.TestNeutron.test_update_dhcp [0.092655s] ... ok {16} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolDriverTestCase.test_management_interface_set_boot_device_uefi [0.066094s] ... ok {20} ironic.tests.unit.drivers.modules.ansible.test_deploy.TestAnsibleDeploy.test_prepare_cleaning_with_smartnic_port [0.079944s] ... ok {16} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolSocatDriverTestCase.test__start_console_empty_password [0.079230s] ... ok {20} ironic.tests.unit.drivers.modules.cimc.test_power.PowerTestCase.test_set_power_state_on_ok [0.069406s] ... ok {20} ironic.tests.unit.drivers.modules.cimc.test_power.PowerTestCase.test_set_power_state_on_timeout [0.076824s] ... ok {20} ironic.tests.unit.drivers.modules.drac.test_common.DracCommonMethodsTestCase.test_parse_driver_info_missing_username [0.020897s] ... ok {16} ironic.tests.unit.drivers.modules.test_ipxe.iPXEBootTestCase.test_prepare_ramdisk_uefi [0.124687s] ... ok {20} ironic.tests.unit.drivers.modules.drac.test_job.DracJobTestCase.test_validate_job_queue_invalid [0.020879s] ... ok {16} ironic.tests.unit.drivers.modules.test_ipxe.iPXEBootTestCase.test_validate_fail_missing_deploy_kernel [0.054081s] ... ok {20} ironic.tests.unit.drivers.modules.drac.test_management.DracManagementTestCase.test_get_supported_boot_devices [0.051322s] ... ok {20} ironic.tests.unit.drivers.modules.drac.test_raid.DracRaidInterfaceTestCase.test_create_configuration_with_backing_physical_disks [0.118848s] ... ok {20} ironic.tests.unit.drivers.modules.drac.test_raid.DracRaidInterfaceTestCase.test_create_configuration_with_multiple_max_and_sharing_same_disks [0.092941s] ... ok {16} ironic.tests.unit.drivers.modules.test_noop.NoInterfacesTestCase.test_vendor [0.010193s] ... ok {20} ironic.tests.unit.drivers.modules.drac.test_raid.DracRaidInterfaceTestCase.test_delete_configuration [0.104446s] ... ok {16} ironic.tests.unit.drivers.modules.test_pxe.PXEBootTestCase.test_prepare_instance_whole_disk_image_missing_root_uuid [0.076665s] ... ok {16} ironic.tests.unit.drivers.modules.test_pxe.PXEBootTestCase.test_prepare_ramdisk_ipxe_swift_whole_disk_image [0.123920s] ... ok {20} ironic.tests.unit.drivers.modules.ilo.test_boot.IloBootPrivateMethodsTestCase.test__get_boot_iso_create_use_webserver_true_ramdisk_webserver [0.090541s] ... ok {16} ironic.tests.unit.drivers.modules.test_pxe.PXEBootTestCase.test_validate_good [0.055442s] ... ok {20} ironic.tests.unit.drivers.modules.ilo.test_boot.IloBootPrivateMethodsTestCase.test__parse_deploy_info [0.025557s] ... ok {16} ironic.tests.unit.drivers.modules.test_pxe.PXERamdiskDeployTestCase.test_validate_calls_boot_validate [0.067154s] ... ok {20} ironic.tests.unit.drivers.modules.ilo.test_boot.IloPXEBootTestCase.test_clean_up_instance_boot_from_volume_bios [0.070718s] ... ok {16} ironic.tests.unit.drivers.modules.test_snmp.SNMPClientTestCase.test__get_transport_custom_retries [0.035668s] ... ok {20} ironic.tests.unit.drivers.modules.ilo.test_common.IloCommonMethodsTestCase.test__get_floppy_image_name [0.019698s] ... ok {16} ironic.tests.unit.drivers.modules.test_snmp.SNMPClientTestCase.test_get_next [0.025287s] ... ok POST: /v1/volume/targets {'boot_index': 0, 'uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c781', 'extra': {}, 'volume_type': 'iscsi', 'node_uuid': '1a1a1a1a-2b2b-3c3c-4d4d-5e5e5e5e5e5e', 'volume_id': '12345678', 'properties': {'target_iqn': 'iqn.foo'}} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-5f20e084-3421-41db-a9ea-7e7766c8c97d X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Node 1a1a1a1a-2b2b-3c3c-4d4d-5e5e5e5e5e5e could not be found.\"}"} {4} ironic.tests.unit.api.controllers.v1.test_volume_target.TestPost.test_create_volume_target_node_uuid_not_found [0.056722s] ... ok {20} ironic.tests.unit.drivers.modules.ilo.test_common.IloValidateParametersTestCase.test_parse_driver_info_invalid_cafile [0.021037s] ... ok {16} ironic.tests.unit.drivers.modules.test_snmp.SNMPDeviceDriverTestCase.test_eaton_power_power_reset [0.017864s] ... ok {16} ironic.tests.unit.drivers.modules.test_snmp.SNMPDeviceDriverTestCase.test_power_reset_off_timeout [10.157524s] ... ok {20} ironic.tests.unit.drivers.modules.ilo.test_console.IloConsoleInterfaceTestCase.test_validate [0.064797s] ... ok {16} ironic.tests.unit.drivers.modules.test_snmp.SNMPValidateParametersTestCase.test__parse_driver_info_snmp_port_default [0.014839s] ... ok {20} ironic.tests.unit.drivers.modules.ilo.test_power.IloPowerInternalMethodsTestCase.test__attach_boot_iso_if_needed [0.060254s] ... ok {16} ironic.tests.unit.drivers.modules.xclarity.test_power.XClarityPowerDriverTestCase.test_get_power_state_fail [0.061671s] ... ok {20} ironic.tests.unit.drivers.modules.ilo.test_power.IloPowerInternalMethodsTestCase.test__set_power_state_soft_power_off_timeout [3.076262s] ... ok {16} ironic.tests.unit.drivers.modules.xclarity.test_power.XClarityPowerDriverTestCase.test_reboot_timeout [0.051185s] ... ok {20} ironic.tests.unit.drivers.modules.ilo.test_raid.Ilo5RAIDTestCase.test_create_configuration_empty_target_raid_config [0.078792s] ... ok {16} ironic.tests.unit.drivers.test_base.DeployAndCleanStepDecoratorTestCase.test_deploy_and_clean_step_priority_only [0.007651s] ... ok {20} ironic.tests.unit.drivers.modules.irmc.test_boot.IRMCDeployPrivateMethodsTestCase.test__detach_virtual_fd_fail [0.063401s] ... ok {16} ironic.tests.unit.drivers.test_base.TestBareDriver.test_class_variables [0.007256s] ... ok {16} ironic.tests.unit.drivers.test_fake_hardware.FakeHardwareTestCase.test_driver_interfaces [0.046354s] ... ok {20} ironic.tests.unit.drivers.modules.irmc.test_boot.IRMCDeployPrivateMethodsTestCase.test_check_share_fs_mounted_exception [0.022101s] ... ok {16} ironic.tests.unit.drivers.test_ilo.IloHardwareTestCase.test_override_with_no_bios [0.049196s] ... ok {20} ironic.tests.unit.drivers.modules.irmc.test_boot.IRMCPXEBootBasicTestCase.test_validate_fail_missing_deploy_ramdisk [0.052941s] ... ok {20} ironic.tests.unit.drivers.modules.irmc.test_boot.IRMCPXEBootTestCase.test_prepare_ramdisk_with_backup_bios [0.080479s] ... ok {16} ironic.tests.unit.drivers.test_utils.UtilsTestCase.test_ensure_next_boot_device_clears_is_next_boot_persistent [0.070846s] ... ok {20} ironic.tests.unit.drivers.modules.irmc.test_boot.IRMCVirtualMediaBootWithVolumeTestCase.test_validate_iscsi_connector_no_netmask [0.106919s] ... ok {16} ironic.tests.unit.objects.test_chassis.TestChassisObject.test_create [0.013970s] ... ok {20} ironic.tests.unit.drivers.modules.irmc.test_boot.IRMCVirtualMediaBootWithVolumeTestCase.test_validate_iscsi_connector_no_physical_id [0.106790s] ... ok {16} ironic.tests.unit.objects.test_node.TestNodeObject.test_get_by_name_node_not_found [0.014297s] ... ok {20} ironic.tests.unit.drivers.modules.irmc.test_common.IRMCCommonMethodsTestCase.test_set_secure_boot_mode_enable [0.022122s] ... ok {16} ironic.tests.unit.objects.test_node.TestNodeObject.test_refresh [0.015064s] ... ok {20} ironic.tests.unit.drivers.modules.irmc.test_common.IRMCValidateParametersTestCase.test_parse_driver_info_invalid_timeout [0.023575s] ... ok {16} ironic.tests.unit.objects.test_objects.TestObject.test_do_version_changes_for_db_pinned [0.009841s] ... ok {20} ironic.tests.unit.drivers.modules.irmc.test_raid.IRMCRaidConfigurationTestCase.test_create_raid_with_raid_1_and_0 [0.054690s] ... ok {20} ironic.tests.unit.drivers.modules.network.test_common.TestNeutronVifPortIDMixin.test_vif_detach [0.066060s] ... ok {16} ironic.tests.unit.objects.test_objects.TestObject.test_object_property [0.007596s] ... ok {20} ironic.tests.unit.drivers.modules.network.test_flat.TestFlatInterface.test__unbind_flat_ports [0.067476s] ... ok {16} ironic.tests.unit.objects.test_port.TestConvertToVersion.test_physnet_supported_missing [0.011006s] ... ok {16} ironic.tests.unit.objects.test_port.TestConvertToVersion.test_physnet_unsupported_set_no_remove_default [0.011223s] ... ok {20} ironic.tests.unit.drivers.modules.network.test_neutron.NeutronInterfaceTestCase.test_vif_attach [0.062611s] ... ok {16} ironic.tests.unit.objects.test_port.TestPortObject.test_get_bad_id_and_uuid_and_address [0.010880s] ... ok {20} ironic.tests.unit.drivers.modules.network.test_neutron.NeutronInterfaceTestCase.test_vif_port_changed [0.069137s] ... ok {16} ironic.tests.unit.objects.test_portgroup.TestPortgroupObject.test_payload_schemas [0.010671s] ... ok {20} ironic.tests.unit.drivers.modules.redfish.test_management.RedfishManagementTestCase.test_get_properties [0.053093s] ... ok {20} ironic.tests.unit.drivers.modules.redfish.test_utils.RedfishUtilsTestCase.test_ensure_new_session_username [0.063404s] ... ok {16} ironic.tests.unit.objects.test_portgroup.TestPortgroupObject.test_save_after_refresh [0.029968s] ... ok {20} ironic.tests.unit.drivers.modules.storage.test_cinder.CinderInterfaceTestCase.test_validate_failure_if_fc_boot_no_connectors [0.096810s] ... ok {16} ironic.tests.unit.test_base.BlockExecuteTestCase.test_exception_raised_for_execute [0.010652s] ... ok {20} ironic.tests.unit.drivers.modules.test_agent_base_vendor.AgentDeployMixinTest.test_configure_local_boot [0.069723s] ... ok {20} ironic.tests.unit.drivers.modules.test_agent_base_vendor.AgentDeployMixinTest.test_prepare_instance_to_boot_netboot [0.090992s] ... ok {20} ironic.tests.unit.drivers.modules.test_deploy_utils.GetPxeBootConfigTestCase.test_get_pxe_boot_file_uefi_without_by_arch [0.015291s] ... ok {20} ironic.tests.unit.drivers.modules.test_deploy_utils.GetPxeBootConfigTestCase.test_get_pxe_config_template_cpu_not_in_by_arch [0.021145s] ... ok {20} ironic.tests.unit.drivers.modules.test_deploy_utils.PhysicalWorkTestCase.test_verify_iscsi_connection_raises [0.013511s] ... ok GET: / {} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-04204e4b-513d-479e-8a91-49fa3646d0c3 {"error_message": "{\"debuginfo\":null,\"faultcode\":\"Client\",\"faultstring\":\"Test exception message.\"}"} {13} ironic.tests.unit.api.test_hooks.TestNoExceptionTracebackHook.test_hook_on_clientfault_debug [0.040234s] ... ok {20} ironic.tests.unit.drivers.modules.test_deploy_utils.SwitchPxeConfigTestCase.test_switch_ipxe_iscsi_boot [0.029059s] ... ok {20} ironic.tests.unit.drivers.modules.test_image_cache.TestImageCacheFetch.test__download_image_linkfail [0.025247s] ... ok {20} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolCheckOptionSupportedTestCase.test_check_timing_fail [0.019317s] ... ok {20} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolDriverTestCase.test_management_interface_set_boot_device_without_timeout_1 [0.068276s] ... ok {20} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolPrivateMethodTestCase.test__exec_ipmitool_wait [0.025168s] ... ok {20} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolPrivateMethodTestCase.test__parse_driver_info_with_single_bridging_not_supported [0.024440s] ... ok {20} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolPrivateMethodTestCase.test__power_status_exception [0.024388s] ... ok {20} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolPrivateMethodTestCase.test_exec_ipmitool_exception_non_retryable_failure_bmc_initialization_in_progress [0.026867s] ... ok {20} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolPrivateMethodTestCase.test_exec_ipmitool_exception_retries_exceeded_node_busy [0.026517s] ... ok {20} ironic.tests.unit.drivers.modules.test_ipxe.iPXEBootTestCase.test_validate_fail_trusted_boot_with_secure_boot [0.054872s] ... ok {20} ironic.tests.unit.drivers.modules.test_iscsi_deploy.ISCSIDeployTestCase.test_prepare_node_active [0.064732s] ... ok {20} ironic.tests.unit.drivers.modules.test_noop.NoInterfacesTestCase.test_console [0.009927s] ... ok {20} ironic.tests.unit.drivers.modules.test_snmp.SNMPDeviceDriverTestCase.test_apc_masterswitchplus_power_state_off [0.015555s] ... ok foo() migrated 15 of 15 objects. {20} ironic.tests.unit.drivers.modules.test_snmp.SNMPDeviceDriverTestCase.test_apc_power_state_off [0.015288s] ... ok {13} ironic.tests.unit.cmd.test_dbsync.OnlineMigrationTestCase.test__run_migration_functions [0.019247s] ... ok {20} ironic.tests.unit.drivers.modules.test_snmp.SNMPDeviceDriverTestCase.test_cyberpower_power_on [0.016175s] ... ok {13} ironic.tests.unit.cmd.test_dbsync.OnlineMigrationTestCase.test__run_migration_functions_none [0.016215s] ... ok {20} ironic.tests.unit.drivers.modules.test_snmp.SNMPDeviceDriverTestCase.test_power_on_invalid_state [9.026956s] ... ok {13} ironic.tests.unit.common.test_driver_factory.HardwareTypeLoadTestCase.test_build_driver_for_task_incorrect [0.075370s] ... ok {20} ironic.tests.unit.drivers.modules.test_snmp.SNMPDeviceDriverTestCase.test_power_reset_off_snmp_get_failure [0.016062s] ... ok {13} ironic.tests.unit.common.test_driver_factory.HardwareTypeLoadTestCase.test_no_raid_interface_no_default [0.029940s] ... ok {20} ironic.tests.unit.drivers.modules.test_snmp.SNMPDeviceDriverTestCase.test_snmp_auto_cache_supports_pdu_replacement [0.019050s] ... ok {13} ironic.tests.unit.common.test_exception.TestIronicException.test___str__encoding [0.016494s] ... ok {20} ironic.tests.unit.drivers.modules.test_snmp.SNMPDriverTestCase.test_reboot_timeout [0.057416s] ... ok {13} ironic.tests.unit.common.test_glance_service.TestSwiftTempUrlCache.test_add_items_to_cache [0.024397s] ... ok {20} ironic.tests.unit.drivers.modules.test_snmp.SNMPDriverTestCase.test_set_power_state_off_error [0.056528s] ... ok {13} ironic.tests.unit.common.test_glance_service.TestSwiftTempUrlCache.test_swift_temp_url_cache_disabled [0.022213s] ... ok {20} ironic.tests.unit.drivers.modules.test_snmp.SNMPValidateParametersTestCase.test__parse_driver_info_default_version [0.012313s] ... ok {13} ironic.tests.unit.common.test_image_service.ServiceGetterTestCase.test_get_glance_image_service [0.021508s] ... ok {20} ironic.tests.unit.drivers.modules.test_snmp.SNMPValidateParametersTestCase.test__parse_driver_info_snmp_v2c [0.012160s] ... ok {13} ironic.tests.unit.common.test_images.FsImageTestCase.test_create_isolinux_image_for_uefi_with_esp_image [0.023142s] ... ok {20} ironic.tests.unit.drivers.modules.ucs.test_helper.UcsValidateParametersTestCase.test_logout [0.047531s] ... ok {20} ironic.tests.unit.drivers.test_base.RAIDInterfaceTestCase.test_validate_raid_config [0.010568s] ... ok {13} ironic.tests.unit.common.test_images.FsImageTestCase.test_get_glance_image_properties_with_prop_subset [0.013276s] ... ok {13} ironic.tests.unit.common.test_json_rpc.TestService.test_non_json_body [0.044208s] ... ok {20} ironic.tests.unit.drivers.test_base.TestBootInterface.test_validate_rescue_default_impl [0.011764s] ... ok {13} ironic.tests.unit.common.test_json_rpc.TestService.test_serialize_objects [0.038252s] ... ok {13} ironic.tests.unit.common.test_keystone.KeystoneTestCase.test_get_service_auth [0.008542s] ... ok {20} ironic.tests.unit.drivers.test_generic.ManualManagementHardwareTestCase.test_get_properties_none [0.017912s] ... ok {13} ironic.tests.unit.common.test_neutron.TestUnbindPort.test_unbind_neutron_port [0.015069s] ... ok {20} ironic.tests.unit.drivers.test_generic.ManualManagementHardwareTestCase.test_supported_interfaces [0.056466s] ... ok {20} ironic.tests.unit.drivers.test_utils.MixinVendorInterfaceTestCase.test_vendor_interface_validate_bad_method [0.056853s] ... ok {13} ironic.tests.unit.common.test_neutron.TestUpdatePortAddress.test_update_port_address_without_binding [0.014777s] ... ok {20} ironic.tests.unit.objects.test_bios.TestBIOSSettingObject.test_delete [0.014304s] ... ok {13} ironic.tests.unit.common.test_pxe_utils.PXEInterfacesTestCase.test_build_pxe_config_options_ipxe_rescue_timeout [0.123956s] ... ok {20} ironic.tests.unit.objects.test_bios.TestBIOSSettingObject.test_sync_node_setting_create_and_update [0.026882s] ... ok {13} ironic.tests.unit.common.test_pxe_utils.PXEInterfacesTestCase.test_validate_boot_parameters_for_trusted_boot_pass [0.024490s] ... ok {20} ironic.tests.unit.objects.test_node.TestConvertToVersion.test_allocation_id_supported_set [0.013239s] ... ok {13} ironic.tests.unit.common.test_pxe_utils.TestPXEUtils.test_get_tftp_path_prefix_with_trailing_slash [0.022912s] ... ok {20} ironic.tests.unit.objects.test_node.TestConvertToVersion.test_automated_clean_unsupported_set_no_remove_default [0.014069s] ... ok {13} ironic.tests.unit.common.test_swift.SwiftTestCase.test_delete_object_exc [0.084050s] ... ok {20} ironic.tests.unit.objects.test_node.TestConvertToVersion.test_owner_unsupported_set_no_remove_non_default [0.012986s] ... ok {13} ironic.tests.unit.common.test_utils.ValidateConductorGroupTestCase.test_validate_conductor_group_success [0.009564s] ... ok {20} ironic.tests.unit.objects.test_node.TestNodeObject.test_get_by_instance_uuid [0.016011s] ... ok {20} ironic.tests.unit.objects.test_objects.TestObjectSerializer.test_object_serialization_iterables [0.008893s] ... ok {20} ironic.tests.unit.objects.test_objects.TestObjectSerializer.test_serialize_entity_pinned_conductor [0.009305s] ... ok {13} ironic.tests.unit.common.test_wsgi_service.TestWSGIService.test_workers_set_default [0.051117s] ... ok {20} ironic.tests.unit.objects.test_objects.TestRegistry.test_hook_keeps_newer_properly [0.100940s] ... ok {13} ironic.tests.unit.conductor.test_allocations.AllocationTestCase.test_create_allocation [0.201479s] ... ok {13} ironic.tests.unit.conductor.test_allocations.DoAllocateTestCase.test_nodes_filtered_out [0.079211s] ... ok {20} ironic.tests.unit.objects.test_port.TestConvertToVersion.test_is_smartnic_unsupported_missing [0.012941s] ... ok {13} ironic.tests.unit.conductor.test_base_manager.StartStopTestCase.test_start_fails_on_missing_driver [0.027143s] ... ok {13} ironic.tests.unit.conductor.test_manager.BootDeviceTestCase.test_get_boot_device_validate_fail [0.098176s] ... ok {13} ironic.tests.unit.conductor.test_manager.CreateNodeTestCase.test_create_node [0.040551s] ... ok {13} ironic.tests.unit.conductor.test_manager.DestroyNodeTestCase.test_destroy_node_protected [0.203825s] ... ok {13} ironic.tests.unit.conductor.test_manager.DoNextDeployStepTestCase.test__do_next_deploy_step_last_step_done [0.265509s] ... ok {13} ironic.tests.unit.conductor.test_manager.DoNodeAdoptionTestCase.test_do_provisioning_action_manage_of_failed_adoption [2.357667s] ... ok {13} ironic.tests.unit.conductor.test_manager.DoNodeCleanTestCase.test__do_node_clean_automated_network_validate_fail [0.113880s] ... ok {13} ironic.tests.unit.conductor.test_manager.DoNodeCleanTestCase.test_do_node_clean_power_validate_fail [0.214807s] ... ok {13} ironic.tests.unit.conductor.test_manager.DoNodeDeployTestCase.test__do_node_deploy_ok_configdrive [0.286309s] ... ok {13} ironic.tests.unit.conductor.test_manager.DoNodeTakeOverTestCase.test__do_takeover_with_console_exception [0.244934s] ... ok {13} ironic.tests.unit.conductor.test_manager.DoProvisioningActionTestCase.test_do_provision_action_manage [0.223045s] ... ok {13} ironic.tests.unit.conductor.test_manager.ManagerSyncLocalStateTestCase.test_no_free_worker [0.019294s] ... ok {13} ironic.tests.unit.conductor.test_manager.ManagerSyncPowerStatesTestCase.test__sync_power_state_multiple_nodes [0.028571s] ... ok {13} ironic.tests.unit.conductor.test_manager.ManagerSyncPowerStatesTestCase.test_node_locked_on_acquire [0.020699s] ... ok {13} ironic.tests.unit.conductor.test_manager.NodeInspectHardware.test_inspect_hardware_return_inspect_wait [0.213690s] ... ok {13} ironic.tests.unit.conductor.test_manager.SensorsTestCase.test_send_sensor_task_no_management [0.155916s] ... ok {13} ironic.tests.unit.conductor.test_manager.ServiceDoNodeDeployTestCase.test_do_node_deploy_rebuild_error_state_old [0.279076s] ... ok {13} ironic.tests.unit.conductor.test_manager.ServiceDoNodeDeployTestCase.test_do_node_deploy_rebuild_from_available_state [0.227813s] ... ok {13} ironic.tests.unit.conductor.test_manager.UpdateNodeTestCase.test_update_node [0.100854s] ... ok {13} ironic.tests.unit.conductor.test_manager.UpdateNodeTestCase.test_update_node_deleting_allocation_forbidden [0.110166s] ... ok {13} ironic.tests.unit.conductor.test_manager.UpdatePortTestCase.test_update_port [0.090151s] ... ok {13} ironic.tests.unit.conductor.test_steps.NodeCleaningStepsTestCase.test__get_cleaning_steps_only_enabled [0.057025s] ... ok {13} ironic.tests.unit.conductor.test_task_manager.TaskManagerTestCase.test_excl_lock_get_voltgt_exception [0.549622s] ... ok {13} ironic.tests.unit.conductor.test_task_manager.TaskManagerTestCase.test_spawn_after [0.040630s] ... ok {13} ironic.tests.unit.conductor.test_utils.ErrorHandlersTestCase.test_spawn_rescue_error_handler_no_worker [0.013020s] ... ok {13} ironic.tests.unit.db.test_api.GetNotVersionsTestCase.test_get_not_versions [0.048296s] ... ok {13} ironic.tests.unit.db.test_api.UpdateToLatestVersionsTestCase.test_version_exists [0.092928s] ... ok {13} ironic.tests.unit.db.test_nodes.DbNodeTestCase.test_destroy_node_that_does_not_exist [0.021132s] ... ok {13} ironic.tests.unit.db.test_portgroups.DbportgroupTestCase.test_destroy_portgroup_that_does_not_exist [0.038844s] ... ok {13} ironic.tests.unit.db.test_ports.DbPortTestCase.test_get_port_by_id [0.027101s] ... ok {13} ironic.tests.unit.db.test_volume_connectors.DbVolumeConnectorTestCase.test_create_volume_connector_duplicated_uuid [0.027078s] ... ok {13} ironic.tests.unit.dhcp.test_neutron.TestNeutron.test_update_dhcp_no_vif_data [0.075204s] ... ok {13} ironic.tests.unit.drivers.modules.ansible.test_deploy.TestAnsibleDeploy.test_reboot_and_finish_deploy_soft_poweroff_retry [0.092685s] ... ok {13} ironic.tests.unit.drivers.modules.ansible.test_deploy.TestAnsibleMethods.test__parse_ansible_driver_info_defaults [0.022016s] ... ok {13} ironic.tests.unit.drivers.modules.ansible.test_deploy.TestAnsibleMethods.test__run_playbook_ansible_interpreter_override [0.024929s] ... ok {13} ironic.tests.unit.drivers.modules.cimc.test_management.CIMCManagementTestCase.test_get_properties [0.082038s] ... ok {13} ironic.tests.unit.drivers.modules.drac.test_bios.DracBIOSConfigurationTestCase.test_get_config_fail [0.056153s] ... ok {13} ironic.tests.unit.drivers.modules.drac.test_management.DracManagementInternalMethodsTestCase.test__get_boot_device_with_empty_boot_mode_list [0.025217s] ... ok {13} ironic.tests.unit.drivers.modules.drac.test_raid.DracCreateRaidConfigurationHelpersTestCase.test__filter_logical_disks_nonroot_only [0.034833s] ... ok {13} ironic.tests.unit.drivers.modules.ilo.test_bios.IloBiosTestCase.test__execute_post_boot_bios_step_apply_configuration [2.284533s] ... ok {13} ironic.tests.unit.drivers.modules.ilo.test_bios.IloBiosTestCase.test_cache_bios_settings_with_ilo_error [0.059577s] ... ok {13} ironic.tests.unit.drivers.modules.ilo.test_boot.IloBootPrivateMethodsTestCase.test__disable_secure_boot_false [0.071448s] ... ok {13} ironic.tests.unit.drivers.modules.ilo.test_common.IloCommonMethodsTestCase.test_copy_image_to_web_server [0.024974s] ... ok {13} ironic.tests.unit.drivers.modules.ilo.test_common.IloCommonMethodsTestCase.test_remove_image_from_swift_suppresses_notfound_exc [0.049137s] ... ok {13} ironic.tests.unit.drivers.modules.ilo.test_common.IloValidateParametersTestCase.test_parse_driver_info_invalid_timeout [0.021800s] ... ok {13} ironic.tests.unit.drivers.modules.ilo.test_inspect.IloInspectTestCase.test_inspect_ok_gen10 [0.107054s] ... ok {13} ironic.tests.unit.drivers.modules.ilo.test_management.IloManagementTestCase.test_inject_nmi_failed [0.067302s] ... ok {13} ironic.tests.unit.drivers.modules.ilo.test_management.IloManagementTestCase.test_set_boot_device_invalid_device [0.062275s] ... ok {13} ironic.tests.unit.drivers.modules.ilo.test_power.IloPowerTestCase.test_validate [0.052276s] ... ok {13} ironic.tests.unit.drivers.modules.ilo.test_vendor.VendorPassthruTestCase.test__validate_boot_into_iso_maintenance [0.068508s] ... ok {13} ironic.tests.unit.drivers.modules.irmc.test_boot.IRMCDeployPrivateMethodsTestCase.test__parse_instance_info_with_boot_iso_uuid_ok [0.020958s] ... ok {13} ironic.tests.unit.drivers.modules.irmc.test_boot.IRMCDeployPrivateMethodsTestCase.test__setup_vmedia_for_boot_with_parameters [0.071549s] ... ok {13} ironic.tests.unit.drivers.modules.irmc.test_boot.IRMCPXEBootBasicTestCase.test_clean_up_ramdisk [0.081943s] ... ok {13} ironic.tests.unit.drivers.modules.irmc.test_boot.IRMCPXEBootBasicTestCase.test_prepare_instance_netboot_iscsi [0.105222s] ... ok {13} ironic.tests.unit.drivers.modules.irmc.test_boot.IRMCPXEBootBasicTestCase.test_prepare_ramdisk_cleaning [0.115144s] ... ok {13} ironic.tests.unit.drivers.modules.irmc.test_boot.IRMCPXEBootTestCase.test_prepare_instance_with_secure_boot_false [2.402878s] ... ok {13} ironic.tests.unit.drivers.modules.irmc.test_boot.IRMCVirtualMediaBootTestCase.test_prepare_instance_without_secure_boot [0.091586s] ... ok {13} ironic.tests.unit.drivers.modules.irmc.test_boot.IRMCVirtualMediaBootTestCase.test_validate_non_glance_image [0.083583s] ... ok {13} ironic.tests.unit.drivers.modules.irmc.test_boot.IsImageHrefOrdinaryFileNameTestCase.test_is_image_href_ordinary_file_name_true [0.009849s] ... ok {13} ironic.tests.unit.drivers.modules.irmc.test_inspect.IRMCInspectTestCase.test_inspect_hardware_props_pci_gpu_devices_return_zero [0.059951s] ... ok {13} ironic.tests.unit.drivers.modules.irmc.test_management.IRMCManagementTestCase.test_management_interface_restore_irmc_bios_config [0.063776s] ... ok {13} ironic.tests.unit.drivers.modules.irmc.test_periodic_task.iRMCPeriodicTaskTestCase.test__query_raid_config_fgi_status_other_clean_state [0.043193s] ... ok {13} ironic.tests.unit.drivers.modules.network.test_common.TestCommonFunctions.test_get_free_port_like_object_vif_attached_to_port_extra [0.074815s] ... ok {13} ironic.tests.unit.drivers.modules.network.test_common.TestNeutronVifPortIDMixin.test_vif_attach_multiple_segment_mappings [0.077941s] ... ok {13} ironic.tests.unit.drivers.modules.network.test_neutron.NeutronInterfaceTestCase.test_add_cleaning_network [0.078875s] ... ok {13} ironic.tests.unit.drivers.modules.redfish.test_utils.RedfishUtilsTestCase.test_parse_driver_info_invalid_address [0.027055s] ... ok {13} ironic.tests.unit.drivers.modules.test_agent.AgentRAIDTestCase.test__delete_configuration_final_registered [0.098259s] ... ok {13} ironic.tests.unit.drivers.modules.test_agent.TestAgentDeploy.test_get_clean_steps_config_priority [0.082452s] ... ok {13} ironic.tests.unit.drivers.modules.test_agent.TestAgentMethods.test_check_image_size_fail_by_agent_consumed_memory [0.073094s] ... ok {13} ironic.tests.unit.drivers.modules.test_agent_base_vendor.AgentDeployMixinTest.test_continue_cleaning_running [0.071280s] ... ok {13} ironic.tests.unit.drivers.modules.test_agent_base_vendor.AgentRescueTests.test__finalize_rescue_bad_command_result [2.555883s] ... ok {13} ironic.tests.unit.drivers.modules.test_agent_client.TestAgentClient.test__command_fail_post [0.011469s] ... ok {13} ironic.tests.unit.drivers.modules.test_agent_client.TestAgentClient.test_sync [0.016546s] ... ok {13} ironic.tests.unit.drivers.modules.test_deploy_utils.OtherFunctionTestCase.test_set_failed_state [0.272129s] ... ok {13} ironic.tests.unit.drivers.modules.test_deploy_utils.TestStorageInterfaceUtils.test_is_iscsi_boot [0.078482s] ... ok {13} ironic.tests.unit.drivers.modules.test_deploy_utils.TestStorageInterfaceUtils.test_populate_storage_driver_internal_info_iscsi [0.110947s] ... ok {13} ironic.tests.unit.drivers.modules.test_deploy_utils.ValidateParametersTestCase.test__get_img_instance_info_whole_disk_image [0.020645s] ... ok {13} ironic.tests.unit.drivers.modules.test_image_cache.TestImageCacheFetch.test_fetch_image_not_uuid [0.014827s] ... ok {13} ironic.tests.unit.drivers.modules.test_image_cache.TestUpdateImages.test__delete_dest_path_if_stale_no_master [0.010752s] ... ok GET: / {} GOT:Response: 500 Internal Server Error Content-Type: application/json Openstack-Request-Id: req-85c3a739-6d40-4d99-84be-b266663fe829 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Server\", \"faultstring\": \"Test exception message.\\nTraceback (most recent call last):\\n File \\\"/opt/stack/ironic/ironic/common/rpc/amqp.py\\\", line 434, in _process_data\\\\n **args)\\n File \\\"/opt/stack/ironic/ironic/common/rpc/dispatcher.py\\\", line 172, in dispatch\\\\n result = getattr(proxyobj, method)(ctxt, **kwargs)\"}"} {4} ironic.tests.unit.api.test_hooks.TestNoExceptionTracebackHook.test_hook_on_serverfault_debug_tracebacks [0.032634s] ... ok {13} ironic.tests.unit.drivers.modules.test_image_cache.TestUpdateImages.test__delete_master_path_if_stale_master_same_time [0.012945s] ... ok {13} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolDriverTestCase.test__bmc_reset_fail [0.065352s] ... ok {13} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolDriverTestCase.test_management_interface_inject_nmi_fail [0.067337s] ... ok {13} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolDriverTestCase.test_reboot_fail_power_off [0.065948s] ... ok {13} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolPrivateMethodTestCase.test_exec_ipmitool_exception_retry_bmc_initialization_in_progress [0.026384s] ... ok {13} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolShellinaboxTestCase.test_get_console [0.059452s] ... ok {13} ironic.tests.unit.drivers.modules.test_ipxe.iPXEBootTestCase.test_validate_good [0.053327s] ... ok {13} ironic.tests.unit.drivers.modules.test_iscsi_deploy.ISCSIDeployTestCase.test_tear_down [0.129438s] ... ok {13} ironic.tests.unit.drivers.modules.test_iscsi_deploy.IscsiDeployMethodsTestCase.test_continue_deploy_unexpected_fail [0.151969s] ... ok {13} ironic.tests.unit.drivers.modules.test_iscsi_deploy.IscsiDeployPrivateMethodsTestCase.test__get_image_dir_path [0.018010s] ... ok {13} ironic.tests.unit.drivers.modules.test_noop.NoInterfacesTestCase.test_bios [0.008799s] ... ok {13} ironic.tests.unit.drivers.modules.test_pxe.PXEBootTestCase.test_prepare_instance_ramdisk_pxe_conf_exists [0.103195s] ... ok {13} ironic.tests.unit.drivers.modules.test_snmp.SNMPDeviceDriverTestCase.test_apc_snmp_objects [0.013835s] ... ok {13} ironic.tests.unit.drivers.modules.test_snmp.SNMPDeviceDriverTestCase.test_aten_power_reset [0.016186s] ... ok {13} ironic.tests.unit.drivers.modules.test_snmp.SNMPDeviceDriverTestCase.test_baytech_mrp27_power_state_off [0.014108s] ... ok {13} ironic.tests.unit.drivers.modules.test_snmp.SNMPDeviceDriverTestCase.test_eaton_power_power_state_on [0.016322s] ... ok {13} ironic.tests.unit.drivers.modules.test_snmp.SNMPDeviceDriverTestCase.test_eaton_power_snmp_objects [0.013772s] ... ok func1() migrated 10 of 10 objects. func2() migrated 0 of 0 objects. {4} ironic.tests.unit.cmd.test_dbsync.OnlineMigrationTestCase.test__run_migration_functions_2_done [0.027381s] ... ok {13} ironic.tests.unit.drivers.modules.test_snmp.SNMPDriverTestCase.test_get_power_state_snmp_failure [0.056065s] ... ok {4} ironic.tests.unit.cmd.test_dbsync.OnlineMigrationTestCase.test_check_versions_bad [0.018978s] ... ok {13} ironic.tests.unit.drivers.modules.test_snmp.SNMPDriverTestCase.test_reboot [0.055676s] ... ok {4} ironic.tests.unit.cmd.test_status.TestUpgradeChecks.test__check_obj_versions [0.249159s] ... ok {13} ironic.tests.unit.drivers.modules.test_snmp.SNMPValidateParametersTestCase.test__parse_driver_info_apc_masterswitch [0.012420s] ... ok {13} ironic.tests.unit.drivers.modules.xclarity.test_common.XClarityCommonTestCase.test_parse_driver_info_get_param_from_config [0.025930s] ... ok {13} ironic.tests.unit.drivers.modules.xclarity.test_management.XClarityManagementDriverTestCase.test_get_boot_device_fail [0.060978s] ... ok {4} ironic.tests.unit.common.test_driver_factory.HardwareTypeLoadTestCase.test_no_storage_interface_default_from_conf [0.036041s] ... ok {13} ironic.tests.unit.drivers.modules.xclarity.test_power.XClarityPowerDriverTestCase.test_get_power_state [0.539647s] ... ok {4} ironic.tests.unit.common.test_hash_ring.HashRingManagerTestCase.test_hash_ring_manager_uncached [0.021409s] ... ok {4} ironic.tests.unit.common.test_image_service.FileImageServiceTestCase.test_download_hard_link_fail [0.015265s] ... ok {13} ironic.tests.unit.drivers.modules.xclarity.test_power.XClarityPowerDriverTestCase.test_set_power_fail [0.057268s] ... ok {4} ironic.tests.unit.common.test_images.FsImageTestCase.test_create_isolinux_image_bios_rootfs_fails [0.016139s] ... ok {13} ironic.tests.unit.drivers.test_fake_hardware.FakeHardwareTestCase.test_inspect_interface [0.052366s] ... ok {4} ironic.tests.unit.common.test_images.IronicImagesTestCase.test_is_whole_disk_image_whole_disk_non_glance [0.011661s] ... ok {13} ironic.tests.unit.drivers.test_utils.UtilsTestCase.test_get_node_capability_returns_none [0.018432s] ... ok {4} ironic.tests.unit.common.test_neutron.TestGetNetworkByUUIDOrName.test__get_network_by_uuid_or_name_missing [0.009615s] ... ok {13} ironic.tests.unit.objects.test_conductor.TestConductorObject.test_register_hardware_interfaces [0.016772s] ... ok {4} ironic.tests.unit.common.test_neutron.TestGetPhysnetsByPortUUID.test_get_physnets_by_port_uuid_network_missing [0.012882s] ... ok {13} ironic.tests.unit.objects.test_deploy_template.TestDeployTemplateObject.test_list_by_names [0.014865s] ... ok {4} ironic.tests.unit.common.test_neutron.TestUnbindPort.test_unbind_neutron_port_client_passed [0.011264s] ... ok {13} ironic.tests.unit.objects.test_fields.TestMacAddressField.test_coerce_bad_values [0.008540s] ... ok {4} ironic.tests.unit.common.test_neutron.TestUnbindPort.test_unbind_neutron_port_failure [0.021276s] ... ok {4} ironic.tests.unit.common.test_policy.PolicyTestCase.test_get_oslo_policy_enforcer_config_file [0.062059s] ... ok {13} ironic.tests.unit.objects.test_fields.TestNotificationStatusField.test_coerce_good_value [0.008230s] ... ok {4} ironic.tests.unit.common.test_pxe_utils.CleanUpPxeEnvTestCase.test__clean_up_pxe_env [0.066816s] ... ok {13} ironic.tests.unit.objects.test_node.TestConvertToVersion.test_allocation_id_unsupported_set_no_remove_default [0.013147s] ... ok {4} ironic.tests.unit.common.test_pxe_utils.TestPXEUtils.test_create_ipxe_boot_script_already_exists [0.023934s] ... ok {13} ironic.tests.unit.objects.test_node.TestNodeObject.test_get_by_id [0.017483s] ... ok {4} ironic.tests.unit.common.test_pxe_utils.TestPXEUtils.test_get_tftp_path_prefix_without_trailing_slash [0.018897s] ... ok {13} ironic.tests.unit.objects.test_node.TestNodeObject.test_get_by_instance_not_found [0.023890s] ... ok {13} ironic.tests.unit.objects.test_node.TestNodeObject.test_save_after_refresh [0.067756s] ... ok {13} ironic.tests.unit.objects.test_objects.TestObject.test_assign_value_without_DictCompat [0.008557s] ... ok {4} ironic.tests.unit.common.test_raid.ValidateRaidConfigurationTestCase.test_validate_configuration_invalid_int_type [0.017753s] ... ok {4} ironic.tests.unit.common.test_raid.ValidateRaidConfigurationTestCase.test_validate_configuration_invalid_physical_disks [0.015028s] ... ok {13} ironic.tests.unit.objects.test_objects.TestObject.test_obj_attr_is_set [0.008425s] ... ok {4} ironic.tests.unit.common.test_raid.ValidateRaidConfigurationTestCase.test_validate_configuration_zero_logical_disks [0.014788s] ... ok {13} ironic.tests.unit.objects.test_objects.TestObjectSerializer.test_serialize_entity_unpinned_conductor [0.010638s] ... ok {4} ironic.tests.unit.conductor.test_base_manager.StartStopTestCase.test_conductor_shutdown_flag [0.138934s] ... ok {13} ironic.tests.unit.objects.test_port.TestConvertToVersion.test_is_smartnic_unsupported_set_no_remove_non_default [0.012393s] ... ok {4} ironic.tests.unit.conductor.test_manager.ChangeNodePowerStateTestCase.test_change_node_power_state_unsupported_state [0.196156s] ... ok {4} ironic.tests.unit.conductor.test_manager.DoNodeAdoptionTestCase.test_do_provisioning_action_adopt_node [0.223819s] ... ok {4} ironic.tests.unit.conductor.test_manager.DoNodeCleanTestCase.test_do_next_clean_step_continue_from_last_cleaning [0.239140s] ... ok {4} ironic.tests.unit.conductor.test_manager.DoNodeDeployTestCase.test__do_node_deploy_driver_raises_prepare_error [0.267946s] ... ok {4} ironic.tests.unit.conductor.test_manager.ManagerDoSyncPowerStateTestCase.test_max_retries_exceeded2 [0.042517s] ... ok {4} ironic.tests.unit.conductor.test_manager.NmiTestCase.test_inject_nmi_node_locked [0.043127s] ... ok {4} ironic.tests.unit.conductor.test_manager.UpdateNodeTestCase.test_update_node_already_associated [0.078663s] ... ok {4} ironic.tests.unit.conductor.test_manager.UpdateVolumeConnectorTestCase.test_update_volume_connector_node_locked [0.044572s] ... ok {4} ironic.tests.unit.conductor.test_manager.VendorPassthruTestCase.test_driver_vendor_passthru_async [0.119886s] ... ok {4} ironic.tests.unit.conductor.test_manager.VendorPassthruTestCase.test_vendor_passthru_missing_method_parameters [0.204654s] ... ok {4} ironic.tests.unit.conductor.test_manager.VifTestCase.test_vif_attach_raises_portgroup_physnet_inconsistent [0.065565s] ... ok {4} ironic.tests.unit.conductor.test_notification_utils.TestNotificationUtils.test__emit_conductor_node_notification [0.023544s] ... ok {4} ironic.tests.unit.conductor.test_rpcapi.RPCAPITestCase.test_object_class_action_versions [0.016970s] ... ok {4} ironic.tests.unit.conductor.test_utils.ErrorHandlersTestCase.test_abort_on_conductor_take_over_deploying [0.011472s] ... ok {4} ironic.tests.unit.conductor.test_utils.MiscTestCase.test_restore_power_state_if_needed_false [0.070107s] ... ok {4} ironic.tests.unit.conductor.test_utils.NodePowerActionTestCase.test_node_power_action_failed_getting_state_notify [0.091596s] ... ok {4} ironic.tests.unit.conductor.test_utils.NodeSetBootModeTestCase.test_node_set_boot_mode_non_existent_mode [0.066680s] ... ok {4} ironic.tests.unit.conductor.test_utils.ValidatePortPhysnetTestCase.test_validate_port_physnet_1_port_portgroup_no_physnet_update_2 [1.607479s] ... ok {4} ironic.tests.unit.conductor.test_utils.ValidatePortPhysnetTestCase.test_validate_port_physnet_no_portgroup_create [0.067872s] ... ok {4} ironic.tests.unit.db.sqlalchemy.test_types.SqlAlchemyCustomTypesTestCase.test_JSONEncodedDict_type_check [0.017168s] ... ok {4} ironic.tests.unit.db.test_bios_settings.DbBIOSSettingTestCase.test_delete_bios_setting_list_setting_not_exist [0.036348s] ... ok {4} ironic.tests.unit.db.test_conductor.DbConductorTestCase.test_clear_node_reservations_for_conductor [0.059563s] ... ok {4} ironic.tests.unit.db.test_deploy_templates.DbDeployTemplateTestCase.test_get_deploy_template_list [0.045324s] ... ok {4} ironic.tests.unit.db.test_node_traits.DbNodeTraitTestCase.test_add_node_trait_at_limit [0.524883s] ... ok {4} ironic.tests.unit.db.test_nodes.DbNodeTestCase.test_reservation_non_existent_node [0.051364s] ... ok {4} ironic.tests.unit.db.test_nodes.DbNodeTestCase.test_touch_node_provisioning [0.032439s] ... ok {4} ironic.tests.unit.db.test_nodes.DbNodeTestCase.test_update_node_name_duplicate [0.034697s] ... ok {4} ironic.tests.unit.db.test_portgroups.DbportgroupTestCase.test_create_portgroup_duplicated_name [0.025580s] ... ok {4} ironic.tests.unit.db.test_ports.DbPortTestCase.test_get_ports_by_node_id [0.027737s] ... ok {4} ironic.tests.unit.db.test_volume_connectors.DbVolumeConnectorTestCase.test_get_volume_connector_list_sorted [0.034832s] ... ok {4} ironic.tests.unit.db.test_volume_targets.DbVolumeTargetTestCase.test_create_volume_target_duplicated_uuid [0.024763s] ... ok {4} ironic.tests.unit.dhcp.test_neutron.TestNeutron.test__get_ip_addresses_portgroup_extra [0.079767s] ... ok {4} ironic.tests.unit.dhcp.test_neutron.TestNeutron.test_get_ip_addresses_for_port_and_portgroup [0.076417s] ... ok {4} ironic.tests.unit.drivers.modules.ansible.test_deploy.TestAnsibleDeploy.test_execute_clean_step [0.083650s] ... ok {4} ironic.tests.unit.drivers.modules.cimc.test_common.ParseDriverInfoTestCase.test_parse_driver_info_missing_password [0.022293s] ... ok {4} ironic.tests.unit.drivers.modules.drac.test_bios.DracBIOSConfigurationTestCase.test_set_config [0.066883s] ... ok {4} ironic.tests.unit.drivers.modules.drac.test_job.DracVendorPassthruJobTestCase.test_list_unfinished_jobs_fail [0.066667s] ... ok {4} ironic.tests.unit.drivers.modules.drac.test_management.DracManagementInternalMethodsTestCase.test__flexibly_program_boot_order_for_cdrom [0.023877s] ... ok {4} ironic.tests.unit.drivers.modules.drac.test_management.DracManagementInternalMethodsTestCase.test__get_boot_device_with_no_boot_device [0.025510s] ... ok {4} ironic.tests.unit.drivers.modules.drac.test_raid.DracQueryRaidConfigurationTestCase.test_list_virtual_disks_fail [0.030330s] ... ok {4} ironic.tests.unit.drivers.modules.ibmc.test_power.IBMCPowerTestCase.test_reboot [5.466391s] ... ok {4} ironic.tests.unit.drivers.modules.ibmc.test_utils.IBMCUtilsTestCase.test_revert_dictionary [0.018951s] ... ok {4} ironic.tests.unit.drivers.modules.ilo.test_boot.IloBootCommonMethodsTestCase.test_parse_driver_info [0.018184s] ... ok {4} ironic.tests.unit.drivers.modules.ilo.test_boot.IloVirtualMediaBootTestCase.test_prepare_instance_whole_disk_image_local [0.091238s] ... ok {4} ironic.tests.unit.drivers.modules.ilo.test_common.IloCommonMethodsTestCase.test_cleanup_vmedia_boot_for_webserver [0.058055s] ... ok {4} ironic.tests.unit.drivers.modules.ilo.test_common.IloCommonMethodsTestCase.test_eject_vmedia_devices_raises [0.065158s] ... ok {4} ironic.tests.unit.drivers.modules.ilo.test_common.IloCommonMethodsTestCase.test_remove_single_or_list_of_files_with_file_str [0.022709s] ... ok {4} ironic.tests.unit.drivers.modules.ilo.test_firmware_processor.FirmwareProcessorTestCase.test__download_swift_based_fw_to_gets_invoked_for_swift_based_firmware [0.016734s] ... ok {4} ironic.tests.unit.drivers.modules.irmc.test_boot.IRMCPXEBootBasicTestCase.test_clean_up_instance [0.080290s] ... ok {4} ironic.tests.unit.drivers.modules.irmc.test_boot.IRMCPXEBootBasicTestCase.test_prepare_ramdisk_conflicting_boot_modes_set_unsupported [0.101796s] ... ok {4} ironic.tests.unit.drivers.modules.irmc.test_boot.IRMCPXEBootBasicTestCase.test_prepare_ramdisk_uefi [0.117061s] ... ok {4} ironic.tests.unit.drivers.modules.irmc.test_boot.IRMCVirtualMediaBootTestCase.test__configure_vmedia_boot [0.065783s] ... ok {4} ironic.tests.unit.drivers.modules.irmc.test_periodic_task.iRMCPeriodicTaskTestCase.test__query_raid_config_fgi_status_without_node [0.027836s] ... ok {4} ironic.tests.unit.drivers.modules.irmc.test_power.IRMCPowerInternalMethodsTestCase.test__set_power_state_snmp_exception [0.057039s] ... ok {4} ironic.tests.unit.drivers.modules.irmc.test_power.IRMCPowerTestCase.test_validate_fail [0.051292s] ... ok {4} ironic.tests.unit.drivers.modules.network.test_common.TestCommonFunctions.test__get_free_portgroups_and_ports_no_port_physnets [0.098773s] ... ok {4} ironic.tests.unit.drivers.modules.network.test_common.TestCommonFunctions.test_get_free_port_like_object_ports_pxe_enabled_first [0.069605s] ... ok {4} ironic.tests.unit.drivers.modules.network.test_common.TestCommonFunctions.test_get_free_port_like_object_vif_attached_to_port [0.064056s] ... ok {4} ironic.tests.unit.drivers.modules.network.test_neutron.NeutronInterfaceTestCase.test_remove_cleaning_network_from_node [0.079265s] ... ok {4} ironic.tests.unit.drivers.modules.redfish.test_inspect.RedfishInspectTestCase.test_inspect_hardware_preserve_boot_mode [0.070231s] ... ok {4} ironic.tests.unit.drivers.modules.redfish.test_utils.RedfishUtilsTestCase.test_parse_driver_info_default_scheme_with_port [0.018915s] ... ok {4} ironic.tests.unit.drivers.modules.storage.test_cinder.CinderInterfaceTestCase.test__generate_connector_multiple_fc_wwns [0.065266s] ... ok {4} ironic.tests.unit.drivers.modules.storage.test_external.ExternalInterfaceTestCase.test_should_write_image [0.098569s] ... ok {4} ironic.tests.unit.drivers.modules.test_agent.TestAgentDeploy.test_deploy_has_started_did_start [0.060173s] ... ok {4} ironic.tests.unit.drivers.modules.test_agent.TestAgentDeploy.test_prepare_boot_from_volume [0.105024s] ... ok {4} ironic.tests.unit.drivers.modules.test_agent.TestAgentDeploy.test_reboot_to_instance_no_manage_agent_boot [0.115180s] ... ok {4} ironic.tests.unit.drivers.modules.test_agent.TestAgentDeploy.test_validate_instance_info_missing_params [0.072767s] ... ok {4} ironic.tests.unit.drivers.modules.test_agent_base_vendor.AgentDeployMixinTest.test_continue_cleaning_reboot [0.085951s] ... ok {4} ironic.tests.unit.drivers.modules.test_agent_base_vendor.AgentDeployMixinTest.test_reboot_and_finish_deploy_soft_poweroff_fails [0.095900s] ... ok {4} ironic.tests.unit.drivers.modules.test_agent_base_vendor.AgentRescueTests.test__finalize_rescue_exc [0.070847s] ... ok {4} ironic.tests.unit.drivers.modules.test_agent_client.TestAgentClient.test__get_command_body [0.009378s] ... ok {4} ironic.tests.unit.drivers.modules.test_agent_client.TestAgentClient.test_get_commands_status [0.021709s] ... ok {4} ironic.tests.unit.drivers.modules.test_agent_client.TestAgentClient.test_install_bootloader [0.009984s] ... ok {4} ironic.tests.unit.drivers.modules.test_console_utils.ConsoleUtilsTestCase.test_stop_shellinabox_console [0.014767s] ... ok {4} ironic.tests.unit.drivers.modules.test_deploy_utils.InstanceInfoTestCase.test_parse_instance_info_invalid_preserve_ephemeral [0.019128s] ... ok {4} ironic.tests.unit.drivers.modules.test_deploy_utils.ParseInstanceInfoCapabilitiesTestCase.test_get_disk_label [0.008769s] ... ok {4} ironic.tests.unit.drivers.modules.test_deploy_utils.PhysicalWorkTestCase.test_deploy_partition_image_wo_boot_option_and_wo_boot_mode [0.025931s] ... ok {4} ironic.tests.unit.drivers.modules.test_deploy_utils.TestStorageInterfaceUtils.test_tear_down_storage_configuration [0.120883s] ... ok {4} ironic.tests.unit.drivers.modules.test_image_cache.CleanupImageCacheTestCase.test_clean_up_another_fs [0.018092s] ... ok {4} ironic.tests.unit.drivers.modules.test_image_cache.TestFetchCleanup.test__fetch [0.015205s] ... ok {4} ironic.tests.unit.drivers.modules.test_inspect_utils.InspectFunctionTestCase.test_create_ports_if_not_exist_mac_exception [0.060109s] ... ok {4} ironic.tests.unit.drivers.modules.test_inspector.CheckStatusTestCase.test_status_error [0.016923s] ... ok {4} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolDriverTestCase.test__parse_ipmi_sensor_data_missing_sensor_reading [0.019417s] ... ok {4} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolDriverTestCase.test_management_interface_get_boot_device_fail [0.059948s] ... ok {4} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolDriverTestCase.test_management_interface_get_boot_device_persistent [0.061609s] ... ok {4} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolDriverTestCase.test_set_soft_reboot_timeout_ok [0.067117s] ... ok {4} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolPrivateMethodTestCase.test__parse_driver_info_with_single_bridging_pass [0.024666s] ... ok {4} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolSocatDriverTestCase.test__get_ipmi_cmd [0.054965s] ... ok {4} ironic.tests.unit.drivers.modules.test_ipxe.iPXEBootTestCase.test_prepare_ramdisk_ipxe_with_copy_no_file [0.116907s] ... ok {4} ironic.tests.unit.drivers.modules.test_iscsi_deploy.IscsiDeployMethodsTestCase.test_cache_instance_images_master_path [0.021334s] ... ok {4} ironic.tests.unit.drivers.modules.test_iscsi_deploy.IscsiDeployMethodsTestCase.test_check_image_size_fails [0.057613s] ... ok {4} ironic.tests.unit.drivers.modules.test_pxe.PXEBootTestCase.test_clean_up_instance [0.065744s] ... ok {4} ironic.tests.unit.drivers.modules.test_pxe.PXEBootTestCase.test_prepare_ramdisk_rescue [0.104533s] ... ok {4} ironic.tests.unit.drivers.modules.test_pxe.PXEBootTestCase.test_validate_fail_no_port [0.057088s] ... ok {4} ironic.tests.unit.drivers.modules.test_pxe.PXEBootTestCase.test_validate_fail_trusted_boot_with_secure_boot [0.051479s] ... ok {4} ironic.tests.unit.drivers.modules.test_pxe.PXERamdiskDeployTestCase.test_deploy [0.276593s] ... ok {4} ironic.tests.unit.drivers.modules.test_pxe.PXERamdiskDeployTestCase.test_prepare_instance_ramdisk [0.164453s] ... ok {4} ironic.tests.unit.drivers.modules.test_snmp.SNMPDeviceDriverTestCase.test_apc_rackpdu_power_reset [0.018723s] ... ok {4} ironic.tests.unit.drivers.modules.test_snmp.SNMPDeviceDriverTestCase.test_power_reset_off_snmp_set_failure [0.020043s] ... ok {4} ironic.tests.unit.drivers.modules.test_snmp.SNMPDeviceDriverTestCase.test_power_reset_on_snmp_get_failure [0.020895s] ... ok {4} ironic.tests.unit.drivers.modules.ucs.test_management.UcsManagementTestCase.test_set_boot_device [0.760645s] ... ok {4} ironic.tests.unit.drivers.test_cisco.CiscoUCSManagedHardwareTestCase.test_default_interfaces [0.058449s] ... ok {4} ironic.tests.unit.drivers.test_cisco.CiscoUCSStandaloneHardwareTestCase.test_default_interfaces [0.055215s] ... ok {4} ironic.tests.unit.drivers.test_drac.IDRACHardwareTestCase.test_override_with_raid [0.056865s] ... ok {4} ironic.tests.unit.drivers.test_utils.UtilsTestCase.test_capabilities_to_dict_with_invalid_character_fail [0.018382s] ... ok {4} ironic.tests.unit.drivers.test_utils.UtilsTestCase.test_normalize_mac_unicode [0.017670s] ... ok {4} ironic.tests.unit.objects.test_bios.TestBIOSSettingObject.test_get_by_node_id [0.015464s] ... ok {4} ironic.tests.unit.objects.test_bios.TestBIOSSettingObject.test_list_delete [0.014148s] ... ok {4} ironic.tests.unit.objects.test_node.TestConvertToVersion.test_conductor_group_supported_set [0.012863s] ... ok {4} ironic.tests.unit.objects.test_objects.TestObject.test_get_changes_pinned [0.009554s] ... ok {4} ironic.tests.unit.objects.test_objects.TestObject.test_obj_fields [0.008881s] ... ok {4} ironic.tests.unit.objects.test_objects.TestObjectSerializer.test_serialize_entity_invalid_pin [0.008959s] ... ok {4} ironic.tests.unit.objects.test_port.TestPortObject.test_supports_physical_network_unsupported [0.012406s] ... ok {4} ironic.tests.unit.objects.test_portgroup.TestPortgroupObject.test_create [0.014190s] ... ok {4} ironic.tests.unit.objects.test_trait.TestTraitObject.test_destroy [0.014178s] ... ok {4} ironic.tests.unit.objects.test_volume_target.TestVolumeTargetObject.test_save_after_refresh [0.026784s] ... ok {4} ironic.tests.unit.test_base.DontBlockExecuteTestCase.test_no_exception_raised_for_execute [0.010573s] ... ok POST: /v1/nodes {'instance_uuid': None, 'uuid': '3adb8c87-82e5-4694-8716-7d880237308f', 'driver_info': {'fake_password': 'fakepass', 'foo': 'bar'}, 'extra': {}, 'driver': 'fake-hardware', 'boot_interface': 'fake', 'properties': {'memory_mb': '4096', 'cpu_arch': 'x86_64', 'local_gb': '10', 'cpus': '8'}, 'maintenance': False, 'chassis_uuid': 'e74c40e0-d825-11e2-a28f-0800200c9a66', 'instance_info': {'foo': 'bar', 'image_url': 'http://example.com/test_image_url', 'configdrive': 'TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQ='}} GOT:Response: 201 Created Content-Type: application/json Location: http://localhost/v1/nodes/3adb8c87-82e5-4694-8716-7d880237308f Openstack-Request-Id: req-beb93e88-df9c-401d-962d-93d538eb490c X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.40 {"target_power_state": null, "inspect_interface": "fake", "links": [{"href": "http://localhost/v1/nodes/3adb8c87-82e5-4694-8716-7d880237308f", "rel": "self"}, {"href": "http://localhost/nodes/3adb8c87-82e5-4694-8716-7d880237308f", "rel": "bookmark"}], "target_provision_state": null, "last_error": null, "storage_interface": "noop", "updated_at": null, "maintenance_reason": null, "states": [{"href": "http://localhost/v1/nodes/3adb8c87-82e5-4694-8716-7d880237308f/states", "rel": "self"}, {"href": "http://localhost/nodes/3adb8c87-82e5-4694-8716-7d880237308f/states", "rel": "bookmark"}], "traits": [], "provision_state": "enroll", "clean_step": {}, "vendor_interface": "fake", "uuid": "3adb8c87-82e5-4694-8716-7d880237308f", "console_enabled": false, "extra": {}, "raid_config": {}, "provision_updated_at": null, "power_state": null, "target_raid_config": {}, "network_interface": "flat", "inspection_started_at": null, "inspection_finished_at": null, "maintenance": false, "power_interface": "fake", "driver": "fake-hardware", "volume": [{"href": "http://localhost/v1/nodes/3adb8c87-82e5-4694-8716-7d880237308f/volume", "rel": "self"}, {"href": "http://localhost/nodes/3adb8c87-82e5-4694-8716-7d880237308f/volume", "rel": "bookmark"}], "raid_interface": "fake", "rescue_interface": "fake", "boot_interface": "fake", "reservation": null, "management_interface": "fake", "properties": {"memory_mb": "4096", "cpu_arch": "x86_64", "local_gb": "10", "cpus": "8"}, "bios_interface": "fake", "instance_uuid": null, "name": null, "driver_info": {"fake_password": "******", "foo": "bar"}, "resource_class": null, "created_at": "2000-01-01T00:00:00+00:00", "portgroups": [{"href": "http://localhost/v1/nodes/3adb8c87-82e5-4694-8716-7d880237308f/portgroups", "rel": "self"}, {"href": "http://localhost/nodes/3adb8c87-82e5-4694-8716-7d880237308f/portgroups", "rel": "bookmark"}], "deploy_interface": "fake", "ports": [{"href": "http://localhost/v1/nodes/3adb8c87-82e5-4694-8716-7d880237308f/ports", "rel": "self"}, {"href": "http://localhost/nodes/3adb8c87-82e5-4694-8716-7d880237308f/ports", "rel": "bookmark"}], "console_interface": "fake", "driver_internal_info": {}, "chassis_uuid": "e74c40e0-d825-11e2-a28f-0800200c9a66", "instance_info": {"foo": "bar", "image_url": "******", "configdrive": "******"}} GET: /v1/nodes/3adb8c87-82e5-4694-8716-7d880237308f {} GOT:{u'target_power_state': None, u'inspect_interface': u'fake', u'links': [{u'href': u'http://localhost/v1/nodes/3adb8c87-82e5-4694-8716-7d880237308f', u'rel': u'self'}, {u'href': u'http://localhost/nodes/3adb8c87-82e5-4694-8716-7d880237308f', u'rel': u'bookmark'}], u'target_provision_state': None, u'last_error': None, u'storage_interface': u'noop', u'updated_at': None, u'maintenance_reason': None, u'states': [{u'href': u'http://localhost/v1/nodes/3adb8c87-82e5-4694-8716-7d880237308f/states', u'rel': u'self'}, {u'href': u'http://localhost/nodes/3adb8c87-82e5-4694-8716-7d880237308f/states', u'rel': u'bookmark'}], u'traits': [], u'provision_state': u'enroll', u'clean_step': {}, u'vendor_interface': u'fake', u'uuid': u'3adb8c87-82e5-4694-8716-7d880237308f', u'console_enabled': False, u'extra': {}, u'raid_config': {}, u'provision_updated_at': None, u'power_state': None, u'target_raid_config': {}, u'network_interface': u'flat', u'inspection_started_at': None, u'inspection_finished_at': None, u'maintenance': False, u'driver': u'fake-hardware', u'power_interface': u'fake', u'volume': [{u'href': u'http://localhost/v1/nodes/3adb8c87-82e5-4694-8716-7d880237308f/volume', u'rel': u'self'}, {u'href': u'http://localhost/nodes/3adb8c87-82e5-4694-8716-7d880237308f/volume', u'rel': u'bookmark'}], u'raid_interface': u'fake', u'rescue_interface': u'fake', u'boot_interface': u'fake', u'reservation': None, u'management_interface': u'fake', u'properties': {u'memory_mb': u'4096', u'cpu_arch': u'x86_64', u'local_gb': u'10', u'cpus': u'8'}, u'bios_interface': u'fake', u'instance_uuid': None, u'name': None, u'driver_info': {u'fake_password': u'******', u'foo': u'bar'}, u'resource_class': None, u'created_at': u'2000-01-01T00:00:00+00:00', u'portgroups': [{u'href': u'http://localhost/v1/nodes/3adb8c87-82e5-4694-8716-7d880237308f/portgroups', u'rel': u'self'}, {u'href': u'http://localhost/nodes/3adb8c87-82e5-4694-8716-7d880237308f/portgroups', u'rel': u'bookmark'}], u'deploy_interface': u'fake', u'instance_info': {u'foo': u'bar', u'image_url': u'******', u'configdrive': u'******'}, u'console_interface': u'fake', u'driver_internal_info': {}, u'chassis_uuid': u'e74c40e0-d825-11e2-a28f-0800200c9a66', u'ports': [{u'href': u'http://localhost/v1/nodes/3adb8c87-82e5-4694-8716-7d880237308f/ports', u'rel': u'self'}, {u'href': u'http://localhost/nodes/3adb8c87-82e5-4694-8716-7d880237308f/ports', u'rel': u'bookmark'}]} POST: /v1/nodes {'instance_uuid': None, 'uuid': '037ac3c9-2fbe-47ec-987d-220d95cb74cd', 'driver_info': {'fake_password': 'fakepass', 'foo': 'bar'}, 'extra': {}, 'driver': 'fake-hardware', 'properties': {'memory_mb': '4096', 'cpu_arch': 'x86_64', 'local_gb': '10', 'cpus': '8'}, 'console_interface': 'fake', 'maintenance': False, 'chassis_uuid': 'e74c40e0-d825-11e2-a28f-0800200c9a66', 'instance_info': {'foo': 'bar', 'image_url': 'http://example.com/test_image_url', 'configdrive': 'TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQ='}} GOT:Response: 201 Created Content-Type: application/json Location: http://localhost/v1/nodes/037ac3c9-2fbe-47ec-987d-220d95cb74cd Openstack-Request-Id: req-513555ac-6e82-4eb7-81e2-0127a5a9fb1a X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.40 {"target_power_state": null, "inspect_interface": "fake", "links": [{"href": "http://localhost/v1/nodes/037ac3c9-2fbe-47ec-987d-220d95cb74cd", "rel": "self"}, {"href": "http://localhost/nodes/037ac3c9-2fbe-47ec-987d-220d95cb74cd", "rel": "bookmark"}], "target_provision_state": null, "last_error": null, "storage_interface": "noop", "updated_at": null, "maintenance_reason": null, "states": [{"href": "http://localhost/v1/nodes/037ac3c9-2fbe-47ec-987d-220d95cb74cd/states", "rel": "self"}, {"href": "http://localhost/nodes/037ac3c9-2fbe-47ec-987d-220d95cb74cd/states", "rel": "bookmark"}], "traits": [], "provision_state": "enroll", "clean_step": {}, "vendor_interface": "fake", "uuid": "037ac3c9-2fbe-47ec-987d-220d95cb74cd", "console_enabled": false, "extra": {}, "raid_config": {}, "provision_updated_at": null, "power_state": null, "target_raid_config": {}, "network_interface": "flat", "inspection_started_at": null, "inspection_finished_at": null, "maintenance": false, "power_interface": "fake", "driver": "fake-hardware", "volume": [{"href": "http://localhost/v1/nodes/037ac3c9-2fbe-47ec-987d-220d95cb74cd/volume", "rel": "self"}, {"href": "http://localhost/nodes/037ac3c9-2fbe-47ec-987d-220d95cb74cd/volume", "rel": "bookmark"}], "raid_interface": "fake", "rescue_interface": "fake", "boot_interface": "fake", "reservation": null, "management_interface": "fake", "properties": {"memory_mb": "4096", "cpu_arch": "x86_64", "local_gb": "10", "cpus": "8"}, "bios_interface": "fake", "instance_uuid": null, "name": null, "driver_info": {"fake_password": "******", "foo": "bar"}, "resource_class": null, "created_at": "2000-01-01T00:00:00+00:00", "portgroups": [{"href": "http://localhost/v1/nodes/037ac3c9-2fbe-47ec-987d-220d95cb74cd/portgroups", "rel": "self"}, {"href": "http://localhost/nodes/037ac3c9-2fbe-47ec-987d-220d95cb74cd/portgroups", "rel": "bookmark"}], "deploy_interface": "fake", "ports": [{"href": "http://localhost/v1/nodes/037ac3c9-2fbe-47ec-987d-220d95cb74cd/ports", "rel": "self"}, {"href": "http://localhost/nodes/037ac3c9-2fbe-47ec-987d-220d95cb74cd/ports", "rel": "bookmark"}], "console_interface": "fake", "driver_internal_info": {}, "chassis_uuid": "e74c40e0-d825-11e2-a28f-0800200c9a66", "instance_info": {"foo": "bar", "image_url": "******", "configdrive": "******"}} GET: /v1/nodes/037ac3c9-2fbe-47ec-987d-220d95cb74cd {} GOT:{u'target_power_state': None, u'inspect_interface': u'fake', u'links': [{u'href': u'http://localhost/v1/nodes/037ac3c9-2fbe-47ec-987d-220d95cb74cd', u'rel': u'self'}, {u'href': u'http://localhost/nodes/037ac3c9-2fbe-47ec-987d-220d95cb74cd', u'rel': u'bookmark'}], u'target_provision_state': None, u'last_error': None, u'storage_interface': u'noop', u'updated_at': None, u'maintenance_reason': None, u'states': [{u'href': u'http://localhost/v1/nodes/037ac3c9-2fbe-47ec-987d-220d95cb74cd/states', u'rel': u'self'}, {u'href': u'http://localhost/nodes/037ac3c9-2fbe-47ec-987d-220d95cb74cd/states', u'rel': u'bookmark'}], u'traits': [], u'provision_state': u'enroll', u'clean_step': {}, u'vendor_interface': u'fake', u'uuid': u'037ac3c9-2fbe-47ec-987d-220d95cb74cd', u'console_enabled': False, u'extra': {}, u'raid_config': {}, u'provision_updated_at': None, u'power_state': None, u'target_raid_config': {}, u'network_interface': u'flat', u'inspection_started_at': None, u'inspection_finished_at': None, u'maintenance': False, u'driver': u'fake-hardware', u'power_interface': u'fake', u'volume': [{u'href': u'http://localhost/v1/nodes/037ac3c9-2fbe-47ec-987d-220d95cb74cd/volume', u'rel': u'self'}, {u'href': u'http://localhost/nodes/037ac3c9-2fbe-47ec-987d-220d95cb74cd/volume', u'rel': u'bookmark'}], u'raid_interface': u'fake', u'rescue_interface': u'fake', u'boot_interface': u'fake', u'reservation': None, u'management_interface': u'fake', u'properties': {u'memory_mb': u'4096', u'cpu_arch': u'x86_64', u'local_gb': u'10', u'cpus': u'8'}, u'bios_interface': u'fake', u'instance_uuid': None, u'name': None, u'driver_info': {u'fake_password': u'******', u'foo': u'bar'}, u'resource_class': None, u'created_at': u'2000-01-01T00:00:00+00:00', u'portgroups': [{u'href': u'http://localhost/v1/nodes/037ac3c9-2fbe-47ec-987d-220d95cb74cd/portgroups', u'rel': u'self'}, {u'href': u'http://localhost/nodes/037ac3c9-2fbe-47ec-987d-220d95cb74cd/portgroups', u'rel': u'bookmark'}], u'deploy_interface': u'fake', u'instance_info': {u'foo': u'bar', u'image_url': u'******', u'configdrive': u'******'}, u'console_interface': u'fake', u'driver_internal_info': {}, u'chassis_uuid': u'e74c40e0-d825-11e2-a28f-0800200c9a66', u'ports': [{u'href': u'http://localhost/v1/nodes/037ac3c9-2fbe-47ec-987d-220d95cb74cd/ports', u'rel': u'self'}, {u'href': u'http://localhost/nodes/037ac3c9-2fbe-47ec-987d-220d95cb74cd/ports', u'rel': u'bookmark'}]} POST: /v1/nodes {'instance_uuid': None, 'uuid': 'a48f929d-15ed-4328-b861-94dde34576b4', 'driver_info': {'fake_password': 'fakepass', 'foo': 'bar'}, 'extra': {}, 'driver': 'fake-hardware', 'deploy_interface': 'fake', 'properties': {'memory_mb': '4096', 'cpu_arch': 'x86_64', 'local_gb': '10', 'cpus': '8'}, 'maintenance': False, 'chassis_uuid': 'e74c40e0-d825-11e2-a28f-0800200c9a66', 'instance_info': {'foo': 'bar', 'image_url': 'http://example.com/test_image_url', 'configdrive': 'TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQ='}} GOT:Response: 201 Created Content-Type: application/json Location: http://localhost/v1/nodes/a48f929d-15ed-4328-b861-94dde34576b4 Openstack-Request-Id: req-7685c26d-c791-474d-a373-73d2b0bc8c78 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.40 {"target_power_state": null, "inspect_interface": "fake", "links": [{"href": "http://localhost/v1/nodes/a48f929d-15ed-4328-b861-94dde34576b4", "rel": "self"}, {"href": "http://localhost/nodes/a48f929d-15ed-4328-b861-94dde34576b4", "rel": "bookmark"}], "target_provision_state": null, "last_error": null, "storage_interface": "noop", "updated_at": null, "maintenance_reason": null, "states": [{"href": "http://localhost/v1/nodes/a48f929d-15ed-4328-b861-94dde34576b4/states", "rel": "self"}, {"href": "http://localhost/nodes/a48f929d-15ed-4328-b861-94dde34576b4/states", "rel": "bookmark"}], "traits": [], "provision_state": "enroll", "clean_step": {}, "vendor_interface": "fake", "uuid": "a48f929d-15ed-4328-b861-94dde34576b4", "console_enabled": false, "extra": {}, "raid_config": {}, "provision_updated_at": null, "power_state": null, "target_raid_config": {}, "network_interface": "flat", "inspection_started_at": null, "inspection_finished_at": null, "maintenance": false, "power_interface": "fake", "driver": "fake-hardware", "volume": [{"href": "http://localhost/v1/nodes/a48f929d-15ed-4328-b861-94dde34576b4/volume", "rel": "self"}, {"href": "http://localhost/nodes/a48f929d-15ed-4328-b861-94dde34576b4/volume", "rel": "bookmark"}], "raid_interface": "fake", "rescue_interface": "fake", "boot_interface": "fake", "reservation": null, "management_interface": "fake", "properties": {"memory_mb": "4096", "cpu_arch": "x86_64", "local_gb": "10", "cpus": "8"}, "bios_interface": "fake", "instance_uuid": null, "name": null, "driver_info": {"fake_password": "******", "foo": "bar"}, "resource_class": null, "created_at": "2000-01-01T00:00:00+00:00", "portgroups": [{"href": "http://localhost/v1/nodes/a48f929d-15ed-4328-b861-94dde34576b4/portgroups", "rel": "self"}, {"href": "http://localhost/nodes/a48f929d-15ed-4328-b861-94dde34576b4/portgroups", "rel": "bookmark"}], "deploy_interface": "fake", "ports": [{"href": "http://localhost/v1/nodes/a48f929d-15ed-4328-b861-94dde34576b4/ports", "rel": "self"}, {"href": "http://localhost/nodes/a48f929d-15ed-4328-b861-94dde34576b4/ports", "rel": "bookmark"}], "console_interface": "fake", "driver_internal_info": {}, "chassis_uuid": "e74c40e0-d825-11e2-a28f-0800200c9a66", "instance_info": {"foo": "bar", "image_url": "******", "configdrive": "******"}} GET: /v1/nodes/a48f929d-15ed-4328-b861-94dde34576b4 {} GOT:{u'target_power_state': None, u'inspect_interface': u'fake', u'links': [{u'href': u'http://localhost/v1/nodes/a48f929d-15ed-4328-b861-94dde34576b4', u'rel': u'self'}, {u'href': u'http://localhost/nodes/a48f929d-15ed-4328-b861-94dde34576b4', u'rel': u'bookmark'}], u'target_provision_state': None, u'last_error': None, u'storage_interface': u'noop', u'updated_at': None, u'maintenance_reason': None, u'states': [{u'href': u'http://localhost/v1/nodes/a48f929d-15ed-4328-b861-94dde34576b4/states', u'rel': u'self'}, {u'href': u'http://localhost/nodes/a48f929d-15ed-4328-b861-94dde34576b4/states', u'rel': u'bookmark'}], u'traits': [], u'provision_state': u'enroll', u'clean_step': {}, u'vendor_interface': u'fake', u'uuid': u'a48f929d-15ed-4328-b861-94dde34576b4', u'console_enabled': False, u'extra': {}, u'raid_config': {}, u'provision_updated_at': None, u'power_state': None, u'target_raid_config': {}, u'network_interface': u'flat', u'inspection_started_at': None, u'inspection_finished_at': None, u'maintenance': False, u'driver': u'fake-hardware', u'power_interface': u'fake', u'volume': [{u'href': u'http://localhost/v1/nodes/a48f929d-15ed-4328-b861-94dde34576b4/volume', u'rel': u'self'}, {u'href': u'http://localhost/nodes/a48f929d-15ed-4328-b861-94dde34576b4/volume', u'rel': u'bookmark'}], u'raid_interface': u'fake', u'rescue_interface': u'fake', u'boot_interface': u'fake', u'reservation': None, u'management_interface': u'fake', u'properties': {u'memory_mb': u'4096', u'cpu_arch': u'x86_64', u'local_gb': u'10', u'cpus': u'8'}, u'bios_interface': u'fake', u'instance_uuid': None, u'name': None, u'driver_info': {u'fake_password': u'******', u'foo': u'bar'}, u'resource_class': None, u'created_at': u'2000-01-01T00:00:00+00:00', u'portgroups': [{u'href': u'http://localhost/v1/nodes/a48f929d-15ed-4328-b861-94dde34576b4/portgroups', u'rel': u'self'}, {u'href': u'http://localhost/nodes/a48f929d-15ed-4328-b861-94dde34576b4/portgroups', u'rel': u'bookmark'}], u'deploy_interface': u'fake', u'instance_info': {u'foo': u'bar', u'image_url': u'******', u'configdrive': u'******'}, u'console_interface': u'fake', u'driver_internal_info': {}, u'chassis_uuid': u'e74c40e0-d825-11e2-a28f-0800200c9a66', u'ports': [{u'href': u'http://localhost/v1/nodes/a48f929d-15ed-4328-b861-94dde34576b4/ports', u'rel': u'self'}, {u'href': u'http://localhost/nodes/a48f929d-15ed-4328-b861-94dde34576b4/ports', u'rel': u'bookmark'}]} POST: /v1/nodes {'instance_uuid': None, 'uuid': 'bab2aca4-90fd-4d2f-a1c8-b870e9e283b9', 'driver_info': {'fake_password': 'fakepass', 'foo': 'bar'}, 'extra': {}, 'driver': 'fake-hardware', 'properties': {'memory_mb': '4096', 'cpu_arch': 'x86_64', 'local_gb': '10', 'cpus': '8'}, 'maintenance': False, 'chassis_uuid': 'e74c40e0-d825-11e2-a28f-0800200c9a66', 'instance_info': {'foo': 'bar', 'image_url': 'http://example.com/test_image_url', 'configdrive': 'TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQ='}, 'inspect_interface': 'fake'} GOT:Response: 201 Created Content-Type: application/json Location: http://localhost/v1/nodes/bab2aca4-90fd-4d2f-a1c8-b870e9e283b9 Openstack-Request-Id: req-9015603e-285f-4baa-80cf-661466556fe4 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.40 {"target_power_state": null, "inspect_interface": "fake", "links": [{"href": "http://localhost/v1/nodes/bab2aca4-90fd-4d2f-a1c8-b870e9e283b9", "rel": "self"}, {"href": "http://localhost/nodes/bab2aca4-90fd-4d2f-a1c8-b870e9e283b9", "rel": "bookmark"}], "target_provision_state": null, "last_error": null, "storage_interface": "noop", "updated_at": null, "maintenance_reason": null, "states": [{"href": "http://localhost/v1/nodes/bab2aca4-90fd-4d2f-a1c8-b870e9e283b9/states", "rel": "self"}, {"href": "http://localhost/nodes/bab2aca4-90fd-4d2f-a1c8-b870e9e283b9/states", "rel": "bookmark"}], "traits": [], "provision_state": "enroll", "clean_step": {}, "vendor_interface": "fake", "uuid": "bab2aca4-90fd-4d2f-a1c8-b870e9e283b9", "console_enabled": false, "extra": {}, "raid_config": {}, "provision_updated_at": null, "power_state": null, "target_raid_config": {}, "network_interface": "flat", "inspection_started_at": null, "inspection_finished_at": null, "maintenance": false, "power_interface": "fake", "driver": "fake-hardware", "volume": [{"href": "http://localhost/v1/nodes/bab2aca4-90fd-4d2f-a1c8-b870e9e283b9/volume", "rel": "self"}, {"href": "http://localhost/nodes/bab2aca4-90fd-4d2f-a1c8-b870e9e283b9/volume", "rel": "bookmark"}], "raid_interface": "fake", "rescue_interface": "fake", "boot_interface": "fake", "reservation": null, "management_interface": "fake", "properties": {"memory_mb": "4096", "cpu_arch": "x86_64", "local_gb": "10", "cpus": "8"}, "bios_interface": "fake", "instance_uuid": null, "name": null, "driver_info": {"fake_password": "******", "foo": "bar"}, "resource_class": null, "created_at": "2000-01-01T00:00:00+00:00", "portgroups": [{"href": "http://localhost/v1/nodes/bab2aca4-90fd-4d2f-a1c8-b870e9e283b9/portgroups", "rel": "self"}, {"href": "http://localhost/nodes/bab2aca4-90fd-4d2f-a1c8-b870e9e283b9/portgroups", "rel": "bookmark"}], "deploy_interface": "fake", "ports": [{"href": "http://localhost/v1/nodes/bab2aca4-90fd-4d2f-a1c8-b870e9e283b9/ports", "rel": "self"}, {"href": "http://localhost/nodes/bab2aca4-90fd-4d2f-a1c8-b870e9e283b9/ports", "rel": "bookmark"}], "console_interface": "fake", "driver_internal_info": {}, "chassis_uuid": "e74c40e0-d825-11e2-a28f-0800200c9a66", "instance_info": {"foo": "bar", "image_url": "******", "configdrive": "******"}} GET: /v1/nodes/bab2aca4-90fd-4d2f-a1c8-b870e9e283b9 {} GOT:{u'target_power_state': None, u'inspect_interface': u'fake', u'links': [{u'href': u'http://localhost/v1/nodes/bab2aca4-90fd-4d2f-a1c8-b870e9e283b9', u'rel': u'self'}, {u'href': u'http://localhost/nodes/bab2aca4-90fd-4d2f-a1c8-b870e9e283b9', u'rel': u'bookmark'}], u'target_provision_state': None, u'last_error': None, u'storage_interface': u'noop', u'updated_at': None, u'maintenance_reason': None, u'states': [{u'href': u'http://localhost/v1/nodes/bab2aca4-90fd-4d2f-a1c8-b870e9e283b9/states', u'rel': u'self'}, {u'href': u'http://localhost/nodes/bab2aca4-90fd-4d2f-a1c8-b870e9e283b9/states', u'rel': u'bookmark'}], u'traits': [], u'provision_state': u'enroll', u'clean_step': {}, u'vendor_interface': u'fake', u'uuid': u'bab2aca4-90fd-4d2f-a1c8-b870e9e283b9', u'console_enabled': False, u'extra': {}, u'raid_config': {}, u'provision_updated_at': None, u'power_state': None, u'target_raid_config': {}, u'network_interface': u'flat', u'inspection_started_at': None, u'inspection_finished_at': None, u'maintenance': False, u'driver': u'fake-hardware', u'power_interface': u'fake', u'volume': [{u'href': u'http://localhost/v1/nodes/bab2aca4-90fd-4d2f-a1c8-b870e9e283b9/volume', u'rel': u'self'}, {u'href': u'http://localhost/nodes/bab2aca4-90fd-4d2f-a1c8-b870e9e283b9/volume', u'rel': u'bookmark'}], u'raid_interface': u'fake', u'rescue_interface': u'fake', u'boot_interface': u'fake', u'reservation': None, u'management_interface': u'fake', u'properties': {u'memory_mb': u'4096', u'cpu_arch': u'x86_64', u'local_gb': u'10', u'cpus': u'8'}, u'bios_interface': u'fake', u'instance_uuid': None, u'name': None, u'driver_info': {u'fake_password': u'******', u'foo': u'bar'}, u'resource_class': None, u'created_at': u'2000-01-01T00:00:00+00:00', u'portgroups': [{u'href': u'http://localhost/v1/nodes/bab2aca4-90fd-4d2f-a1c8-b870e9e283b9/portgroups', u'rel': u'self'}, {u'href': u'http://localhost/nodes/bab2aca4-90fd-4d2f-a1c8-b870e9e283b9/portgroups', u'rel': u'bookmark'}], u'deploy_interface': u'fake', u'instance_info': {u'foo': u'bar', u'image_url': u'******', u'configdrive': u'******'}, u'console_interface': u'fake', u'driver_internal_info': {}, u'chassis_uuid': u'e74c40e0-d825-11e2-a28f-0800200c9a66', u'ports': [{u'href': u'http://localhost/v1/nodes/bab2aca4-90fd-4d2f-a1c8-b870e9e283b9/ports', u'rel': u'self'}, {u'href': u'http://localhost/nodes/bab2aca4-90fd-4d2f-a1c8-b870e9e283b9/ports', u'rel': u'bookmark'}]} POST: /v1/nodes {'instance_uuid': None, 'management_interface': 'fake', 'uuid': 'aa928cce-de3d-44e9-be3b-a60614156029', 'driver_info': {'fake_password': 'fakepass', 'foo': 'bar'}, 'extra': {}, 'driver': 'fake-hardware', 'properties': {'memory_mb': '4096', 'cpu_arch': 'x86_64', 'local_gb': '10', 'cpus': '8'}, 'maintenance': False, 'chassis_uuid': 'e74c40e0-d825-11e2-a28f-0800200c9a66', 'instance_info': {'foo': 'bar', 'image_url': 'http://example.com/test_image_url', 'configdrive': 'TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQ='}} GOT:Response: 201 Created Content-Type: application/json Location: http://localhost/v1/nodes/aa928cce-de3d-44e9-be3b-a60614156029 Openstack-Request-Id: req-321a545c-d37a-4977-a2e0-10cfc27816b2 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.40 {"target_power_state": null, "inspect_interface": "fake", "links": [{"href": "http://localhost/v1/nodes/aa928cce-de3d-44e9-be3b-a60614156029", "rel": "self"}, {"href": "http://localhost/nodes/aa928cce-de3d-44e9-be3b-a60614156029", "rel": "bookmark"}], "target_provision_state": null, "last_error": null, "storage_interface": "noop", "updated_at": null, "maintenance_reason": null, "states": [{"href": "http://localhost/v1/nodes/aa928cce-de3d-44e9-be3b-a60614156029/states", "rel": "self"}, {"href": "http://localhost/nodes/aa928cce-de3d-44e9-be3b-a60614156029/states", "rel": "bookmark"}], "traits": [], "provision_state": "enroll", "clean_step": {}, "vendor_interface": "fake", "uuid": "aa928cce-de3d-44e9-be3b-a60614156029", "console_enabled": false, "extra": {}, "raid_config": {}, "provision_updated_at": null, "power_state": null, "target_raid_config": {}, "network_interface": "flat", "inspection_started_at": null, "inspection_finished_at": null, "maintenance": false, "power_interface": "fake", "driver": "fake-hardware", "volume": [{"href": "http://localhost/v1/nodes/aa928cce-de3d-44e9-be3b-a60614156029/volume", "rel": "self"}, {"href": "http://localhost/nodes/aa928cce-de3d-44e9-be3b-a60614156029/volume", "rel": "bookmark"}], "raid_interface": "fake", "rescue_interface": "fake", "boot_interface": "fake", "reservation": null, "management_interface": "fake", "properties": {"memory_mb": "4096", "cpu_arch": "x86_64", "local_gb": "10", "cpus": "8"}, "bios_interface": "fake", "instance_uuid": null, "name": null, "driver_info": {"fake_password": "******", "foo": "bar"}, "resource_class": null, "created_at": "2000-01-01T00:00:00+00:00", "portgroups": [{"href": "http://localhost/v1/nodes/aa928cce-de3d-44e9-be3b-a60614156029/portgroups", "rel": "self"}, {"href": "http://localhost/nodes/aa928cce-de3d-44e9-be3b-a60614156029/portgroups", "rel": "bookmark"}], "deploy_interface": "fake", "ports": [{"href": "http://localhost/v1/nodes/aa928cce-de3d-44e9-be3b-a60614156029/ports", "rel": "self"}, {"href": "http://localhost/nodes/aa928cce-de3d-44e9-be3b-a60614156029/ports", "rel": "bookmark"}], "console_interface": "fake", "driver_internal_info": {}, "chassis_uuid": "e74c40e0-d825-11e2-a28f-0800200c9a66", "instance_info": {"foo": "bar", "image_url": "******", "configdrive": "******"}} GET: /v1/nodes/aa928cce-de3d-44e9-be3b-a60614156029 {} GOT:{u'target_power_state': None, u'inspect_interface': u'fake', u'links': [{u'href': u'http://localhost/v1/nodes/aa928cce-de3d-44e9-be3b-a60614156029', u'rel': u'self'}, {u'href': u'http://localhost/nodes/aa928cce-de3d-44e9-be3b-a60614156029', u'rel': u'bookmark'}], u'target_provision_state': None, u'last_error': None, u'storage_interface': u'noop', u'updated_at': None, u'maintenance_reason': None, u'states': [{u'href': u'http://localhost/v1/nodes/aa928cce-de3d-44e9-be3b-a60614156029/states', u'rel': u'self'}, {u'href': u'http://localhost/nodes/aa928cce-de3d-44e9-be3b-a60614156029/states', u'rel': u'bookmark'}], u'traits': [], u'provision_state': u'enroll', u'clean_step': {}, u'vendor_interface': u'fake', u'uuid': u'aa928cce-de3d-44e9-be3b-a60614156029', u'console_enabled': False, u'extra': {}, u'raid_config': {}, u'provision_updated_at': None, u'power_state': None, u'target_raid_config': {}, u'network_interface': u'flat', u'inspection_started_at': None, u'inspection_finished_at': None, u'maintenance': False, u'driver': u'fake-hardware', u'power_interface': u'fake', u'volume': [{u'href': u'http://localhost/v1/nodes/aa928cce-de3d-44e9-be3b-a60614156029/volume', u'rel': u'self'}, {u'href': u'http://localhost/nodes/aa928cce-de3d-44e9-be3b-a60614156029/volume', u'rel': u'bookmark'}], u'raid_interface': u'fake', u'rescue_interface': u'fake', u'boot_interface': u'fake', u'reservation': None, u'management_interface': u'fake', u'properties': {u'memory_mb': u'4096', u'cpu_arch': u'x86_64', u'local_gb': u'10', u'cpus': u'8'}, u'bios_interface': u'fake', u'instance_uuid': None, u'name': None, u'driver_info': {u'fake_password': u'******', u'foo': u'bar'}, u'resource_class': None, u'created_at': u'2000-01-01T00:00:00+00:00', u'portgroups': [{u'href': u'http://localhost/v1/nodes/aa928cce-de3d-44e9-be3b-a60614156029/portgroups', u'rel': u'self'}, {u'href': u'http://localhost/nodes/aa928cce-de3d-44e9-be3b-a60614156029/portgroups', u'rel': u'bookmark'}], u'deploy_interface': u'fake', u'instance_info': {u'foo': u'bar', u'image_url': u'******', u'configdrive': u'******'}, u'console_interface': u'fake', u'driver_internal_info': {}, u'chassis_uuid': u'e74c40e0-d825-11e2-a28f-0800200c9a66', u'ports': [{u'href': u'http://localhost/v1/nodes/aa928cce-de3d-44e9-be3b-a60614156029/ports', u'rel': u'self'}, {u'href': u'http://localhost/nodes/aa928cce-de3d-44e9-be3b-a60614156029/ports', u'rel': u'bookmark'}]} POST: /v1/nodes {'instance_uuid': None, 'uuid': '4aecf915-5a68-41fa-a5eb-34c6e04e1356', 'driver_info': {'fake_password': 'fakepass', 'foo': 'bar'}, 'extra': {}, 'power_interface': 'fake', 'driver': 'fake-hardware', 'properties': {'memory_mb': '4096', 'cpu_arch': 'x86_64', 'local_gb': '10', 'cpus': '8'}, 'maintenance': False, 'chassis_uuid': 'e74c40e0-d825-11e2-a28f-0800200c9a66', 'instance_info': {'foo': 'bar', 'image_url': 'http://example.com/test_image_url', 'configdrive': 'TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQ='}} GOT:Response: 201 Created Content-Type: application/json Location: http://localhost/v1/nodes/4aecf915-5a68-41fa-a5eb-34c6e04e1356 Openstack-Request-Id: req-76fddf81-e681-4b39-ab21-451158ea4c76 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.40 {"target_power_state": null, "inspect_interface": "fake", "links": [{"href": "http://localhost/v1/nodes/4aecf915-5a68-41fa-a5eb-34c6e04e1356", "rel": "self"}, {"href": "http://localhost/nodes/4aecf915-5a68-41fa-a5eb-34c6e04e1356", "rel": "bookmark"}], "target_provision_state": null, "last_error": null, "storage_interface": "noop", "updated_at": null, "maintenance_reason": null, "states": [{"href": "http://localhost/v1/nodes/4aecf915-5a68-41fa-a5eb-34c6e04e1356/states", "rel": "self"}, {"href": "http://localhost/nodes/4aecf915-5a68-41fa-a5eb-34c6e04e1356/states", "rel": "bookmark"}], "traits": [], "provision_state": "enroll", "clean_step": {}, "vendor_interface": "fake", "uuid": "4aecf915-5a68-41fa-a5eb-34c6e04e1356", "console_enabled": false, "extra": {}, "raid_config": {}, "provision_updated_at": null, "power_state": null, "target_raid_config": {}, "network_interface": "flat", "inspection_started_at": null, "inspection_finished_at": null, "maintenance": false, "power_interface": "fake", "driver": "fake-hardware", "volume": [{"href": "http://localhost/v1/nodes/4aecf915-5a68-41fa-a5eb-34c6e04e1356/volume", "rel": "self"}, {"href": "http://localhost/nodes/4aecf915-5a68-41fa-a5eb-34c6e04e1356/volume", "rel": "bookmark"}], "raid_interface": "fake", "rescue_interface": "fake", "boot_interface": "fake", "reservation": null, "management_interface": "fake", "properties": {"memory_mb": "4096", "cpu_arch": "x86_64", "local_gb": "10", "cpus": "8"}, "bios_interface": "fake", "instance_uuid": null, "name": null, "driver_info": {"fake_password": "******", "foo": "bar"}, "resource_class": null, "created_at": "2000-01-01T00:00:00+00:00", "portgroups": [{"href": "http://localhost/v1/nodes/4aecf915-5a68-41fa-a5eb-34c6e04e1356/portgroups", "rel": "self"}, {"href": "http://localhost/nodes/4aecf915-5a68-41fa-a5eb-34c6e04e1356/portgroups", "rel": "bookmark"}], "deploy_interface": "fake", "ports": [{"href": "http://localhost/v1/nodes/4aecf915-5a68-41fa-a5eb-34c6e04e1356/ports", "rel": "self"}, {"href": "http://localhost/nodes/4aecf915-5a68-41fa-a5eb-34c6e04e1356/ports", "rel": "bookmark"}], "console_interface": "fake", "driver_internal_info": {}, "chassis_uuid": "e74c40e0-d825-11e2-a28f-0800200c9a66", "instance_info": {"foo": "bar", "image_url": "******", "configdrive": "******"}} GET: /v1/nodes/4aecf915-5a68-41fa-a5eb-34c6e04e1356 {} GOT:{u'target_power_state': None, u'inspect_interface': u'fake', u'links': [{u'href': u'http://localhost/v1/nodes/4aecf915-5a68-41fa-a5eb-34c6e04e1356', u'rel': u'self'}, {u'href': u'http://localhost/nodes/4aecf915-5a68-41fa-a5eb-34c6e04e1356', u'rel': u'bookmark'}], u'target_provision_state': None, u'last_error': None, u'storage_interface': u'noop', u'updated_at': None, u'maintenance_reason': None, u'states': [{u'href': u'http://localhost/v1/nodes/4aecf915-5a68-41fa-a5eb-34c6e04e1356/states', u'rel': u'self'}, {u'href': u'http://localhost/nodes/4aecf915-5a68-41fa-a5eb-34c6e04e1356/states', u'rel': u'bookmark'}], u'traits': [], u'provision_state': u'enroll', u'clean_step': {}, u'vendor_interface': u'fake', u'uuid': u'4aecf915-5a68-41fa-a5eb-34c6e04e1356', u'console_enabled': False, u'extra': {}, u'raid_config': {}, u'provision_updated_at': None, u'power_state': None, u'target_raid_config': {}, u'network_interface': u'flat', u'inspection_started_at': None, u'inspection_finished_at': None, u'maintenance': False, u'driver': u'fake-hardware', u'power_interface': u'fake', u'volume': [{u'href': u'http://localhost/v1/nodes/4aecf915-5a68-41fa-a5eb-34c6e04e1356/volume', u'rel': u'self'}, {u'href': u'http://localhost/nodes/4aecf915-5a68-41fa-a5eb-34c6e04e1356/volume', u'rel': u'bookmark'}], u'raid_interface': u'fake', u'rescue_interface': u'fake', u'boot_interface': u'fake', u'reservation': None, u'management_interface': u'fake', u'properties': {u'memory_mb': u'4096', u'cpu_arch': u'x86_64', u'local_gb': u'10', u'cpus': u'8'}, u'bios_interface': u'fake', u'instance_uuid': None, u'name': None, u'driver_info': {u'fake_password': u'******', u'foo': u'bar'}, u'resource_class': None, u'created_at': u'2000-01-01T00:00:00+00:00', u'portgroups': [{u'href': u'http://localhost/v1/nodes/4aecf915-5a68-41fa-a5eb-34c6e04e1356/portgroups', u'rel': u'self'}, {u'href': u'http://localhost/nodes/4aecf915-5a68-41fa-a5eb-34c6e04e1356/portgroups', u'rel': u'bookmark'}], u'deploy_interface': u'fake', u'instance_info': {u'foo': u'bar', u'image_url': u'******', u'configdrive': u'******'}, u'console_interface': u'fake', u'driver_internal_info': {}, u'chassis_uuid': u'e74c40e0-d825-11e2-a28f-0800200c9a66', u'ports': [{u'href': u'http://localhost/v1/nodes/4aecf915-5a68-41fa-a5eb-34c6e04e1356/ports', u'rel': u'self'}, {u'href': u'http://localhost/nodes/4aecf915-5a68-41fa-a5eb-34c6e04e1356/ports', u'rel': u'bookmark'}]} POST: /v1/nodes {'instance_uuid': None, 'uuid': '2f1e2049-37f2-455d-9bff-138d77ea93c6', 'raid_interface': 'fake', 'extra': {}, 'driver': 'fake-hardware', 'properties': {'memory_mb': '4096', 'cpu_arch': 'x86_64', 'local_gb': '10', 'cpus': '8'}, 'driver_info': {'fake_password': 'fakepass', 'foo': 'bar'}, 'maintenance': False, 'chassis_uuid': 'e74c40e0-d825-11e2-a28f-0800200c9a66', 'instance_info': {'foo': 'bar', 'image_url': 'http://example.com/test_image_url', 'configdrive': 'TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQ='}} GOT:Response: 201 Created Content-Type: application/json Location: http://localhost/v1/nodes/2f1e2049-37f2-455d-9bff-138d77ea93c6 Openstack-Request-Id: req-f8aef0c9-b2fa-4a02-9b24-4ed465f17ad5 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.40 {"target_power_state": null, "inspect_interface": "fake", "links": [{"href": "http://localhost/v1/nodes/2f1e2049-37f2-455d-9bff-138d77ea93c6", "rel": "self"}, {"href": "http://localhost/nodes/2f1e2049-37f2-455d-9bff-138d77ea93c6", "rel": "bookmark"}], "target_provision_state": null, "last_error": null, "storage_interface": "noop", "updated_at": null, "maintenance_reason": null, "states": [{"href": "http://localhost/v1/nodes/2f1e2049-37f2-455d-9bff-138d77ea93c6/states", "rel": "self"}, {"href": "http://localhost/nodes/2f1e2049-37f2-455d-9bff-138d77ea93c6/states", "rel": "bookmark"}], "traits": [], "provision_state": "enroll", "clean_step": {}, "vendor_interface": "fake", "uuid": "2f1e2049-37f2-455d-9bff-138d77ea93c6", "console_enabled": false, "extra": {}, "raid_config": {}, "provision_updated_at": null, "power_state": null, "target_raid_config": {}, "network_interface": "flat", "inspection_started_at": null, "inspection_finished_at": null, "maintenance": false, "power_interface": "fake", "driver": "fake-hardware", "volume": [{"href": "http://localhost/v1/nodes/2f1e2049-37f2-455d-9bff-138d77ea93c6/volume", "rel": "self"}, {"href": "http://localhost/nodes/2f1e2049-37f2-455d-9bff-138d77ea93c6/volume", "rel": "bookmark"}], "raid_interface": "fake", "rescue_interface": "fake", "boot_interface": "fake", "reservation": null, "management_interface": "fake", "properties": {"memory_mb": "4096", "cpu_arch": "x86_64", "local_gb": "10", "cpus": "8"}, "bios_interface": "fake", "instance_uuid": null, "name": null, "driver_info": {"fake_password": "******", "foo": "bar"}, "resource_class": null, "created_at": "2000-01-01T00:00:00+00:00", "portgroups": [{"href": "http://localhost/v1/nodes/2f1e2049-37f2-455d-9bff-138d77ea93c6/portgroups", "rel": "self"}, {"href": "http://localhost/nodes/2f1e2049-37f2-455d-9bff-138d77ea93c6/portgroups", "rel": "bookmark"}], "deploy_interface": "fake", "ports": [{"href": "http://localhost/v1/nodes/2f1e2049-37f2-455d-9bff-138d77ea93c6/ports", "rel": "self"}, {"href": "http://localhost/nodes/2f1e2049-37f2-455d-9bff-138d77ea93c6/ports", "rel": "bookmark"}], "console_interface": "fake", "driver_internal_info": {}, "chassis_uuid": "e74c40e0-d825-11e2-a28f-0800200c9a66", "instance_info": {"foo": "bar", "image_url": "******", "configdrive": "******"}} GET: /v1/nodes/2f1e2049-37f2-455d-9bff-138d77ea93c6 {} GOT:{u'target_power_state': None, u'inspect_interface': u'fake', u'links': [{u'href': u'http://localhost/v1/nodes/2f1e2049-37f2-455d-9bff-138d77ea93c6', u'rel': u'self'}, {u'href': u'http://localhost/nodes/2f1e2049-37f2-455d-9bff-138d77ea93c6', u'rel': u'bookmark'}], u'target_provision_state': None, u'last_error': None, u'storage_interface': u'noop', u'updated_at': None, u'maintenance_reason': None, u'states': [{u'href': u'http://localhost/v1/nodes/2f1e2049-37f2-455d-9bff-138d77ea93c6/states', u'rel': u'self'}, {u'href': u'http://localhost/nodes/2f1e2049-37f2-455d-9bff-138d77ea93c6/states', u'rel': u'bookmark'}], u'traits': [], u'provision_state': u'enroll', u'clean_step': {}, u'vendor_interface': u'fake', u'uuid': u'2f1e2049-37f2-455d-9bff-138d77ea93c6', u'console_enabled': False, u'extra': {}, u'raid_config': {}, u'provision_updated_at': None, u'power_state': None, u'target_raid_config': {}, u'network_interface': u'flat', u'inspection_started_at': None, u'inspection_finished_at': None, u'maintenance': False, u'driver': u'fake-hardware', u'power_interface': u'fake', u'volume': [{u'href': u'http://localhost/v1/nodes/2f1e2049-37f2-455d-9bff-138d77ea93c6/volume', u'rel': u'self'}, {u'href': u'http://localhost/nodes/2f1e2049-37f2-455d-9bff-138d77ea93c6/volume', u'rel': u'bookmark'}], u'raid_interface': u'fake', u'rescue_interface': u'fake', u'boot_interface': u'fake', u'reservation': None, u'management_interface': u'fake', u'properties': {u'memory_mb': u'4096', u'cpu_arch': u'x86_64', u'local_gb': u'10', u'cpus': u'8'}, u'bios_interface': u'fake', u'instance_uuid': None, u'name': None, u'driver_info': {u'fake_password': u'******', u'foo': u'bar'}, u'resource_class': None, u'created_at': u'2000-01-01T00:00:00+00:00', u'portgroups': [{u'href': u'http://localhost/v1/nodes/2f1e2049-37f2-455d-9bff-138d77ea93c6/portgroups', u'rel': u'self'}, {u'href': u'http://localhost/nodes/2f1e2049-37f2-455d-9bff-138d77ea93c6/portgroups', u'rel': u'bookmark'}], u'deploy_interface': u'fake', u'instance_info': {u'foo': u'bar', u'image_url': u'******', u'configdrive': u'******'}, u'console_interface': u'fake', u'driver_internal_info': {}, u'chassis_uuid': u'e74c40e0-d825-11e2-a28f-0800200c9a66', u'ports': [{u'href': u'http://localhost/v1/nodes/2f1e2049-37f2-455d-9bff-138d77ea93c6/ports', u'rel': u'self'}, {u'href': u'http://localhost/nodes/2f1e2049-37f2-455d-9bff-138d77ea93c6/ports', u'rel': u'bookmark'}]} POST: /v1/nodes {'instance_uuid': None, 'uuid': '33abe9e8-ff10-4574-ab8f-888f7fef39a0', 'driver_info': {'fake_password': 'fakepass', 'foo': 'bar'}, 'extra': {}, 'driver': 'fake-hardware', 'properties': {'memory_mb': '4096', 'cpu_arch': 'x86_64', 'local_gb': '10', 'cpus': '8'}, 'maintenance': False, 'chassis_uuid': 'e74c40e0-d825-11e2-a28f-0800200c9a66', 'instance_info': {'foo': 'bar', 'image_url': 'http://example.com/test_image_url', 'configdrive': 'TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQ='}, 'vendor_interface': 'fake'} GOT:Response: 201 Created Content-Type: application/json Location: http://localhost/v1/nodes/33abe9e8-ff10-4574-ab8f-888f7fef39a0 Openstack-Request-Id: req-194acd48-2b0c-413a-8a02-129a669c5679 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.40 {"target_power_state": null, "inspect_interface": "fake", "links": [{"href": "http://localhost/v1/nodes/33abe9e8-ff10-4574-ab8f-888f7fef39a0", "rel": "self"}, {"href": "http://localhost/nodes/33abe9e8-ff10-4574-ab8f-888f7fef39a0", "rel": "bookmark"}], "target_provision_state": null, "last_error": null, "storage_interface": "noop", "updated_at": null, "maintenance_reason": null, "states": [{"href": "http://localhost/v1/nodes/33abe9e8-ff10-4574-ab8f-888f7fef39a0/states", "rel": "self"}, {"href": "http://localhost/nodes/33abe9e8-ff10-4574-ab8f-888f7fef39a0/states", "rel": "bookmark"}], "traits": [], "provision_state": "enroll", "clean_step": {}, "vendor_interface": "fake", "uuid": "33abe9e8-ff10-4574-ab8f-888f7fef39a0", "console_enabled": false, "extra": {}, "raid_config": {}, "provision_updated_at": null, "power_state": null, "target_raid_config": {}, "network_interface": "flat", "inspection_started_at": null, "inspection_finished_at": null, "maintenance": false, "power_interface": "fake", "driver": "fake-hardware", "volume": [{"href": "http://localhost/v1/nodes/33abe9e8-ff10-4574-ab8f-888f7fef39a0/volume", "rel": "self"}, {"href": "http://localhost/nodes/33abe9e8-ff10-4574-ab8f-888f7fef39a0/volume", "rel": "bookmark"}], "raid_interface": "fake", "rescue_interface": "fake", "boot_interface": "fake", "reservation": null, "management_interface": "fake", "properties": {"memory_mb": "4096", "cpu_arch": "x86_64", "local_gb": "10", "cpus": "8"}, "bios_interface": "fake", "instance_uuid": null, "name": null, "driver_info": {"fake_password": "******", "foo": "bar"}, "resource_class": null, "created_at": "2000-01-01T00:00:00+00:00", "portgroups": [{"href": "http://localhost/v1/nodes/33abe9e8-ff10-4574-ab8f-888f7fef39a0/portgroups", "rel": "self"}, {"href": "http://localhost/nodes/33abe9e8-ff10-4574-ab8f-888f7fef39a0/portgroups", "rel": "bookmark"}], "deploy_interface": "fake", "ports": [{"href": "http://localhost/v1/nodes/33abe9e8-ff10-4574-ab8f-888f7fef39a0/ports", "rel": "self"}, {"href": "http://localhost/nodes/33abe9e8-ff10-4574-ab8f-888f7fef39a0/ports", "rel": "bookmark"}], "console_interface": "fake", "driver_internal_info": {}, "chassis_uuid": "e74c40e0-d825-11e2-a28f-0800200c9a66", "instance_info": {"foo": "bar", "image_url": "******", "configdrive": "******"}} GET: /v1/nodes/33abe9e8-ff10-4574-ab8f-888f7fef39a0 {} GOT:{u'target_power_state': None, u'inspect_interface': u'fake', u'links': [{u'href': u'http://localhost/v1/nodes/33abe9e8-ff10-4574-ab8f-888f7fef39a0', u'rel': u'self'}, {u'href': u'http://localhost/nodes/33abe9e8-ff10-4574-ab8f-888f7fef39a0', u'rel': u'bookmark'}], u'target_provision_state': None, u'last_error': None, u'storage_interface': u'noop', u'updated_at': None, u'maintenance_reason': None, u'states': [{u'href': u'http://localhost/v1/nodes/33abe9e8-ff10-4574-ab8f-888f7fef39a0/states', u'rel': u'self'}, {u'href': u'http://localhost/nodes/33abe9e8-ff10-4574-ab8f-888f7fef39a0/states', u'rel': u'bookmark'}], u'traits': [], u'provision_state': u'enroll', u'clean_step': {}, u'vendor_interface': u'fake', u'uuid': u'33abe9e8-ff10-4574-ab8f-888f7fef39a0', u'console_enabled': False, u'extra': {}, u'raid_config': {}, u'provision_updated_at': None, u'power_state': None, u'target_raid_config': {}, u'network_interface': u'flat', u'inspection_started_at': None, u'inspection_finished_at': None, u'maintenance': False, u'driver': u'fake-hardware', u'power_interface': u'fake', u'volume': [{u'href': u'http://localhost/v1/nodes/33abe9e8-ff10-4574-ab8f-888f7fef39a0/volume', u'rel': u'self'}, {u'href': u'http://localhost/nodes/33abe9e8-ff10-4574-ab8f-888f7fef39a0/volume', u'rel': u'bookmark'}], u'raid_interface': u'fake', u'rescue_interface': u'fake', u'boot_interface': u'fake', u'reservation': None, u'management_interface': u'fake', u'properties': {u'memory_mb': u'4096', u'cpu_arch': u'x86_64', u'local_gb': u'10', u'cpus': u'8'}, u'bios_interface': u'fake', u'instance_uuid': None, u'name': None, u'driver_info': {u'fake_password': u'******', u'foo': u'bar'}, u'resource_class': None, u'created_at': u'2000-01-01T00:00:00+00:00', u'portgroups': [{u'href': u'http://localhost/v1/nodes/33abe9e8-ff10-4574-ab8f-888f7fef39a0/portgroups', u'rel': u'self'}, {u'href': u'http://localhost/nodes/33abe9e8-ff10-4574-ab8f-888f7fef39a0/portgroups', u'rel': u'bookmark'}], u'deploy_interface': u'fake', u'instance_info': {u'foo': u'bar', u'image_url': u'******', u'configdrive': u'******'}, u'console_interface': u'fake', u'driver_internal_info': {}, u'chassis_uuid': u'e74c40e0-d825-11e2-a28f-0800200c9a66', u'ports': [{u'href': u'http://localhost/v1/nodes/33abe9e8-ff10-4574-ab8f-888f7fef39a0/ports', u'rel': u'self'}, {u'href': u'http://localhost/nodes/33abe9e8-ff10-4574-ab8f-888f7fef39a0/ports', u'rel': u'bookmark'}]} POST: /v1/nodes {'instance_uuid': None, 'uuid': 'd226f480-b25f-4c69-8724-1ca1624561c0', 'driver_info': {'fake_password': 'fakepass', 'foo': 'bar'}, 'extra': {}, 'driver': 'fake-hardware', 'properties': {'memory_mb': '4096', 'cpu_arch': 'x86_64', 'local_gb': '10', 'cpus': '8'}, 'maintenance': False, 'chassis_uuid': 'e74c40e0-d825-11e2-a28f-0800200c9a66', 'instance_info': {'foo': 'bar', 'image_url': 'http://example.com/test_image_url', 'configdrive': 'TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQ='}, 'network_interface': 'flat'} GOT:Response: 201 Created Content-Type: application/json Location: http://localhost/v1/nodes/d226f480-b25f-4c69-8724-1ca1624561c0 Openstack-Request-Id: req-e3c2e234-9535-4071-8938-aa361b661960 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.40 {"target_power_state": null, "inspect_interface": "fake", "links": [{"href": "http://localhost/v1/nodes/d226f480-b25f-4c69-8724-1ca1624561c0", "rel": "self"}, {"href": "http://localhost/nodes/d226f480-b25f-4c69-8724-1ca1624561c0", "rel": "bookmark"}], "target_provision_state": null, "last_error": null, "storage_interface": "noop", "updated_at": null, "maintenance_reason": null, "states": [{"href": "http://localhost/v1/nodes/d226f480-b25f-4c69-8724-1ca1624561c0/states", "rel": "self"}, {"href": "http://localhost/nodes/d226f480-b25f-4c69-8724-1ca1624561c0/states", "rel": "bookmark"}], "traits": [], "provision_state": "enroll", "clean_step": {}, "vendor_interface": "fake", "uuid": "d226f480-b25f-4c69-8724-1ca1624561c0", "console_enabled": false, "extra": {}, "raid_config": {}, "provision_updated_at": null, "power_state": null, "target_raid_config": {}, "network_interface": "flat", "inspection_started_at": null, "inspection_finished_at": null, "maintenance": false, "power_interface": "fake", "driver": "fake-hardware", "volume": [{"href": "http://localhost/v1/nodes/d226f480-b25f-4c69-8724-1ca1624561c0/volume", "rel": "self"}, {"href": "http://localhost/nodes/d226f480-b25f-4c69-8724-1ca1624561c0/volume", "rel": "bookmark"}], "raid_interface": "fake", "rescue_interface": "fake", "boot_interface": "fake", "reservation": null, "management_interface": "fake", "properties": {"memory_mb": "4096", "cpu_arch": "x86_64", "local_gb": "10", "cpus": "8"}, "bios_interface": "fake", "instance_uuid": null, "name": null, "driver_info": {"fake_password": "******", "foo": "bar"}, "resource_class": null, "created_at": "2000-01-01T00:00:00+00:00", "portgroups": [{"href": "http://localhost/v1/nodes/d226f480-b25f-4c69-8724-1ca1624561c0/portgroups", "rel": "self"}, {"href": "http://localhost/nodes/d226f480-b25f-4c69-8724-1ca1624561c0/portgroups", "rel": "bookmark"}], "deploy_interface": "fake", "ports": [{"href": "http://localhost/v1/nodes/d226f480-b25f-4c69-8724-1ca1624561c0/ports", "rel": "self"}, {"href": "http://localhost/nodes/d226f480-b25f-4c69-8724-1ca1624561c0/ports", "rel": "bookmark"}], "console_interface": "fake", "driver_internal_info": {}, "chassis_uuid": "e74c40e0-d825-11e2-a28f-0800200c9a66", "instance_info": {"foo": "bar", "image_url": "******", "configdrive": "******"}} GET: /v1/nodes/d226f480-b25f-4c69-8724-1ca1624561c0 {} GOT:{u'target_power_state': None, u'inspect_interface': u'fake', u'links': [{u'href': u'http://localhost/v1/nodes/d226f480-b25f-4c69-8724-1ca1624561c0', u'rel': u'self'}, {u'href': u'http://localhost/nodes/d226f480-b25f-4c69-8724-1ca1624561c0', u'rel': u'bookmark'}], u'target_provision_state': None, u'last_error': None, u'storage_interface': u'noop', u'updated_at': None, u'maintenance_reason': None, u'states': [{u'href': u'http://localhost/v1/nodes/d226f480-b25f-4c69-8724-1ca1624561c0/states', u'rel': u'self'}, {u'href': u'http://localhost/nodes/d226f480-b25f-4c69-8724-1ca1624561c0/states', u'rel': u'bookmark'}], u'traits': [], u'provision_state': u'enroll', u'clean_step': {}, u'vendor_interface': u'fake', u'uuid': u'd226f480-b25f-4c69-8724-1ca1624561c0', u'console_enabled': False, u'extra': {}, u'raid_config': {}, u'provision_updated_at': None, u'power_state': None, u'target_raid_config': {}, u'network_interface': u'flat', u'inspection_started_at': None, u'inspection_finished_at': None, u'maintenance': False, u'driver': u'fake-hardware', u'power_interface': u'fake', u'volume': [{u'href': u'http://localhost/v1/nodes/d226f480-b25f-4c69-8724-1ca1624561c0/volume', u'rel': u'self'}, {u'href': u'http://localhost/nodes/d226f480-b25f-4c69-8724-1ca1624561c0/volume', u'rel': u'bookmark'}], u'raid_interface': u'fake', u'rescue_interface': u'fake', u'boot_interface': u'fake', u'reservation': None, u'management_interface': u'fake', u'properties': {u'memory_mb': u'4096', u'cpu_arch': u'x86_64', u'local_gb': u'10', u'cpus': u'8'}, u'bios_interface': u'fake', u'instance_uuid': None, u'name': None, u'driver_info': {u'fake_password': u'******', u'foo': u'bar'}, u'resource_class': None, u'created_at': u'2000-01-01T00:00:00+00:00', u'portgroups': [{u'href': u'http://localhost/v1/nodes/d226f480-b25f-4c69-8724-1ca1624561c0/portgroups', u'rel': u'self'}, {u'href': u'http://localhost/nodes/d226f480-b25f-4c69-8724-1ca1624561c0/portgroups', u'rel': u'bookmark'}], u'deploy_interface': u'fake', u'instance_info': {u'foo': u'bar', u'image_url': u'******', u'configdrive': u'******'}, u'console_interface': u'fake', u'driver_internal_info': {}, u'chassis_uuid': u'e74c40e0-d825-11e2-a28f-0800200c9a66', u'ports': [{u'href': u'http://localhost/v1/nodes/d226f480-b25f-4c69-8724-1ca1624561c0/ports', u'rel': u'self'}, {u'href': u'http://localhost/nodes/d226f480-b25f-4c69-8724-1ca1624561c0/ports', u'rel': u'bookmark'}]} POST: /v1/nodes {'instance_uuid': None, 'uuid': '2cc89088-420b-4147-a2e0-cce763b656bb', 'driver_info': {'fake_password': 'fakepass', 'foo': 'bar'}, 'extra': {}, 'driver': 'fake-hardware', 'properties': {'memory_mb': '4096', 'cpu_arch': 'x86_64', 'local_gb': '10', 'cpus': '8'}, 'rescue_interface': 'fake', 'maintenance': False, 'chassis_uuid': 'e74c40e0-d825-11e2-a28f-0800200c9a66', 'instance_info': {'foo': 'bar', 'image_url': 'http://example.com/test_image_url', 'configdrive': 'TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQ='}} GOT:Response: 201 Created Content-Type: application/json Location: http://localhost/v1/nodes/2cc89088-420b-4147-a2e0-cce763b656bb Openstack-Request-Id: req-92ae3632-7591-41b8-97ab-b885a8a26693 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.40 {"target_power_state": null, "inspect_interface": "fake", "links": [{"href": "http://localhost/v1/nodes/2cc89088-420b-4147-a2e0-cce763b656bb", "rel": "self"}, {"href": "http://localhost/nodes/2cc89088-420b-4147-a2e0-cce763b656bb", "rel": "bookmark"}], "target_provision_state": null, "last_error": null, "storage_interface": "noop", "updated_at": null, "maintenance_reason": null, "states": [{"href": "http://localhost/v1/nodes/2cc89088-420b-4147-a2e0-cce763b656bb/states", "rel": "self"}, {"href": "http://localhost/nodes/2cc89088-420b-4147-a2e0-cce763b656bb/states", "rel": "bookmark"}], "traits": [], "provision_state": "enroll", "clean_step": {}, "vendor_interface": "fake", "uuid": "2cc89088-420b-4147-a2e0-cce763b656bb", "console_enabled": false, "extra": {}, "raid_config": {}, "provision_updated_at": null, "power_state": null, "target_raid_config": {}, "network_interface": "flat", "inspection_started_at": null, "inspection_finished_at": null, "maintenance": false, "power_interface": "fake", "driver": "fake-hardware", "volume": [{"href": "http://localhost/v1/nodes/2cc89088-420b-4147-a2e0-cce763b656bb/volume", "rel": "self"}, {"href": "http://localhost/nodes/2cc89088-420b-4147-a2e0-cce763b656bb/volume", "rel": "bookmark"}], "raid_interface": "fake", "rescue_interface": "fake", "boot_interface": "fake", "reservation": null, "management_interface": "fake", "properties": {"memory_mb": "4096", "cpu_arch": "x86_64", "local_gb": "10", "cpus": "8"}, "bios_interface": "fake", "instance_uuid": null, "name": null, "driver_info": {"fake_password": "******", "foo": "bar"}, "resource_class": null, "created_at": "2000-01-01T00:00:00+00:00", "portgroups": [{"href": "http://localhost/v1/nodes/2cc89088-420b-4147-a2e0-cce763b656bb/portgroups", "rel": "self"}, {"href": "http://localhost/nodes/2cc89088-420b-4147-a2e0-cce763b656bb/portgroups", "rel": "bookmark"}], "deploy_interface": "fake", "ports": [{"href": "http://localhost/v1/nodes/2cc89088-420b-4147-a2e0-cce763b656bb/ports", "rel": "self"}, {"href": "http://localhost/nodes/2cc89088-420b-4147-a2e0-cce763b656bb/ports", "rel": "bookmark"}], "console_interface": "fake", "driver_internal_info": {}, "chassis_uuid": "e74c40e0-d825-11e2-a28f-0800200c9a66", "instance_info": {"foo": "bar", "image_url": "******", "configdrive": "******"}} GET: /v1/nodes/2cc89088-420b-4147-a2e0-cce763b656bb {} GOT:{u'target_power_state': None, u'inspect_interface': u'fake', u'links': [{u'href': u'http://localhost/v1/nodes/2cc89088-420b-4147-a2e0-cce763b656bb', u'rel': u'self'}, {u'href': u'http://localhost/nodes/2cc89088-420b-4147-a2e0-cce763b656bb', u'rel': u'bookmark'}], u'target_provision_state': None, u'last_error': None, u'storage_interface': u'noop', u'updated_at': None, u'maintenance_reason': None, u'states': [{u'href': u'http://localhost/v1/nodes/2cc89088-420b-4147-a2e0-cce763b656bb/states', u'rel': u'self'}, {u'href': u'http://localhost/nodes/2cc89088-420b-4147-a2e0-cce763b656bb/states', u'rel': u'bookmark'}], u'traits': [], u'provision_state': u'enroll', u'clean_step': {}, u'vendor_interface': u'fake', u'uuid': u'2cc89088-420b-4147-a2e0-cce763b656bb', u'console_enabled': False, u'extra': {}, u'raid_config': {}, u'provision_updated_at': None, u'power_state': None, u'target_raid_config': {}, u'network_interface': u'flat', u'inspection_started_at': None, u'inspection_finished_at': None, u'maintenance': False, u'driver': u'fake-hardware', u'power_interface': u'fake', u'volume': [{u'href': u'http://localhost/v1/nodes/2cc89088-420b-4147-a2e0-cce763b656bb/volume', u'rel': u'self'}, {u'href': u'http://localhost/nodes/2cc89088-420b-4147-a2e0-cce763b656bb/volume', u'rel': u'bookmark'}], u'raid_interface': u'fake', u'rescue_interface': u'fake', u'boot_interface': u'fake', u'reservation': None, u'management_interface': u'fake', u'properties': {u'memory_mb': u'4096', u'cpu_arch': u'x86_64', u'local_gb': u'10', u'cpus': u'8'}, u'bios_interface': u'fake', u'instance_uuid': None, u'name': None, u'driver_info': {u'fake_password': u'******', u'foo': u'bar'}, u'resource_class': None, u'created_at': u'2000-01-01T00:00:00+00:00', u'portgroups': [{u'href': u'http://localhost/v1/nodes/2cc89088-420b-4147-a2e0-cce763b656bb/portgroups', u'rel': u'self'}, {u'href': u'http://localhost/nodes/2cc89088-420b-4147-a2e0-cce763b656bb/portgroups', u'rel': u'bookmark'}], u'deploy_interface': u'fake', u'instance_info': {u'foo': u'bar', u'image_url': u'******', u'configdrive': u'******'}, u'console_interface': u'fake', u'driver_internal_info': {}, u'chassis_uuid': u'e74c40e0-d825-11e2-a28f-0800200c9a66', u'ports': [{u'href': u'http://localhost/v1/nodes/2cc89088-420b-4147-a2e0-cce763b656bb/ports', u'rel': u'self'}, {u'href': u'http://localhost/nodes/2cc89088-420b-4147-a2e0-cce763b656bb/ports', u'rel': u'bookmark'}]} POST: /v1/nodes {'instance_uuid': None, 'uuid': 'f32f0ec6-133e-4f10-b99d-053296e0ba9f', 'driver_info': {'fake_password': 'fakepass', 'foo': 'bar'}, 'extra': {}, 'storage_interface': 'noop', 'driver': 'fake-hardware', 'properties': {'memory_mb': '4096', 'cpu_arch': 'x86_64', 'local_gb': '10', 'cpus': '8'}, 'maintenance': False, 'chassis_uuid': 'e74c40e0-d825-11e2-a28f-0800200c9a66', 'instance_info': {'foo': 'bar', 'image_url': 'http://example.com/test_image_url', 'configdrive': 'TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQ='}} GOT:Response: 201 Created Content-Type: application/json Location: http://localhost/v1/nodes/f32f0ec6-133e-4f10-b99d-053296e0ba9f Openstack-Request-Id: req-1e7e7b8c-4ae2-4115-9d7e-f501b8c6e1c5 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.40 {"target_power_state": null, "inspect_interface": "fake", "links": [{"href": "http://localhost/v1/nodes/f32f0ec6-133e-4f10-b99d-053296e0ba9f", "rel": "self"}, {"href": "http://localhost/nodes/f32f0ec6-133e-4f10-b99d-053296e0ba9f", "rel": "bookmark"}], "target_provision_state": null, "last_error": null, "storage_interface": "noop", "updated_at": null, "maintenance_reason": null, "states": [{"href": "http://localhost/v1/nodes/f32f0ec6-133e-4f10-b99d-053296e0ba9f/states", "rel": "self"}, {"href": "http://localhost/nodes/f32f0ec6-133e-4f10-b99d-053296e0ba9f/states", "rel": "bookmark"}], "traits": [], "provision_state": "enroll", "clean_step": {}, "vendor_interface": "fake", "uuid": "f32f0ec6-133e-4f10-b99d-053296e0ba9f", "console_enabled": false, "extra": {}, "raid_config": {}, "provision_updated_at": null, "power_state": null, "target_raid_config": {}, "network_interface": "flat", "inspection_started_at": null, "inspection_finished_at": null, "maintenance": false, "power_interface": "fake", "driver": "fake-hardware", "volume": [{"href": "http://localhost/v1/nodes/f32f0ec6-133e-4f10-b99d-053296e0ba9f/volume", "rel": "self"}, {"href": "http://localhost/nodes/f32f0ec6-133e-4f10-b99d-053296e0ba9f/volume", "rel": "bookmark"}], "raid_interface": "fake", "rescue_interface": "fake", "boot_interface": "fake", "reservation": null, "management_interface": "fake", "properties": {"memory_mb": "4096", "cpu_arch": "x86_64", "local_gb": "10", "cpus": "8"}, "bios_interface": "fake", "instance_uuid": null, "name": null, "driver_info": {"fake_password": "******", "foo": "bar"}, "resource_class": null, "created_at": "2000-01-01T00:00:00+00:00", "portgroups": [{"href": "http://localhost/v1/nodes/f32f0ec6-133e-4f10-b99d-053296e0ba9f/portgroups", "rel": "self"}, {"href": "http://localhost/nodes/f32f0ec6-133e-4f10-b99d-053296e0ba9f/portgroups", "rel": "bookmark"}], "deploy_interface": "fake", "ports": [{"href": "http://localhost/v1/nodes/f32f0ec6-133e-4f10-b99d-053296e0ba9f/ports", "rel": "self"}, {"href": "http://localhost/nodes/f32f0ec6-133e-4f10-b99d-053296e0ba9f/ports", "rel": "bookmark"}], "console_interface": "fake", "driver_internal_info": {}, "chassis_uuid": "e74c40e0-d825-11e2-a28f-0800200c9a66", "instance_info": {"foo": "bar", "image_url": "******", "configdrive": "******"}} GET: /v1/nodes/f32f0ec6-133e-4f10-b99d-053296e0ba9f {} GOT:{u'target_power_state': None, u'inspect_interface': u'fake', u'links': [{u'href': u'http://localhost/v1/nodes/f32f0ec6-133e-4f10-b99d-053296e0ba9f', u'rel': u'self'}, {u'href': u'http://localhost/nodes/f32f0ec6-133e-4f10-b99d-053296e0ba9f', u'rel': u'bookmark'}], u'target_provision_state': None, u'last_error': None, u'storage_interface': u'noop', u'updated_at': None, u'maintenance_reason': None, u'states': [{u'href': u'http://localhost/v1/nodes/f32f0ec6-133e-4f10-b99d-053296e0ba9f/states', u'rel': u'self'}, {u'href': u'http://localhost/nodes/f32f0ec6-133e-4f10-b99d-053296e0ba9f/states', u'rel': u'bookmark'}], u'traits': [], u'provision_state': u'enroll', u'clean_step': {}, u'vendor_interface': u'fake', u'uuid': u'f32f0ec6-133e-4f10-b99d-053296e0ba9f', u'console_enabled': False, u'extra': {}, u'raid_config': {}, u'provision_updated_at': None, u'power_state': None, u'target_raid_config': {}, u'network_interface': u'flat', u'inspection_started_at': None, u'inspection_finished_at': None, u'maintenance': False, u'driver': u'fake-hardware', u'power_interface': u'fake', u'volume': [{u'href': u'http://localhost/v1/nodes/f32f0ec6-133e-4f10-b99d-053296e0ba9f/volume', u'rel': u'self'}, {u'href': u'http://localhost/nodes/f32f0ec6-133e-4f10-b99d-053296e0ba9f/volume', u'rel': u'bookmark'}], u'raid_interface': u'fake', u'rescue_interface': u'fake', u'boot_interface': u'fake', u'reservation': None, u'management_interface': u'fake', u'properties': {u'memory_mb': u'4096', u'cpu_arch': u'x86_64', u'local_gb': u'10', u'cpus': u'8'}, u'bios_interface': u'fake', u'instance_uuid': None, u'name': None, u'driver_info': {u'fake_password': u'******', u'foo': u'bar'}, u'resource_class': None, u'created_at': u'2000-01-01T00:00:00+00:00', u'portgroups': [{u'href': u'http://localhost/v1/nodes/f32f0ec6-133e-4f10-b99d-053296e0ba9f/portgroups', u'rel': u'self'}, {u'href': u'http://localhost/nodes/f32f0ec6-133e-4f10-b99d-053296e0ba9f/portgroups', u'rel': u'bookmark'}], u'deploy_interface': u'fake', u'instance_info': {u'foo': u'bar', u'image_url': u'******', u'configdrive': u'******'}, u'console_interface': u'fake', u'driver_internal_info': {}, u'chassis_uuid': u'e74c40e0-d825-11e2-a28f-0800200c9a66', u'ports': [{u'href': u'http://localhost/v1/nodes/f32f0ec6-133e-4f10-b99d-053296e0ba9f/ports', u'rel': u'self'}, {u'href': u'http://localhost/nodes/f32f0ec6-133e-4f10-b99d-053296e0ba9f/ports', u'rel': u'bookmark'}]} POST: /v1/nodes {'instance_uuid': None, 'uuid': 'ec0b75cc-f4df-446d-8b27-f7016582deba', 'driver_info': {'fake_password': 'fakepass', 'foo': 'bar'}, 'extra': {}, 'driver': 'fake-hardware', 'properties': {'memory_mb': '4096', 'cpu_arch': 'x86_64', 'local_gb': '10', 'cpus': '8'}, 'maintenance': False, 'chassis_uuid': 'e74c40e0-d825-11e2-a28f-0800200c9a66', 'instance_info': {'foo': 'bar', 'image_url': 'http://example.com/test_image_url', 'configdrive': 'TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQ='}, 'bios_interface': 'fake'} GOT:Response: 201 Created Content-Type: application/json Location: http://localhost/v1/nodes/ec0b75cc-f4df-446d-8b27-f7016582deba Openstack-Request-Id: req-5ad7d220-02bf-417d-b9a1-eed3bc37d6e6 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.40 {"target_power_state": null, "inspect_interface": "fake", "links": [{"href": "http://localhost/v1/nodes/ec0b75cc-f4df-446d-8b27-f7016582deba", "rel": "self"}, {"href": "http://localhost/nodes/ec0b75cc-f4df-446d-8b27-f7016582deba", "rel": "bookmark"}], "target_provision_state": null, "last_error": null, "storage_interface": "noop", "updated_at": null, "maintenance_reason": null, "states": [{"href": "http://localhost/v1/nodes/ec0b75cc-f4df-446d-8b27-f7016582deba/states", "rel": "self"}, {"href": "http://localhost/nodes/ec0b75cc-f4df-446d-8b27-f7016582deba/states", "rel": "bookmark"}], "traits": [], "provision_state": "enroll", "clean_step": {}, "vendor_interface": "fake", "uuid": "ec0b75cc-f4df-446d-8b27-f7016582deba", "console_enabled": false, "extra": {}, "raid_config": {}, "provision_updated_at": null, "power_state": null, "target_raid_config": {}, "network_interface": "flat", "inspection_started_at": null, "inspection_finished_at": null, "maintenance": false, "power_interface": "fake", "driver": "fake-hardware", "volume": [{"href": "http://localhost/v1/nodes/ec0b75cc-f4df-446d-8b27-f7016582deba/volume", "rel": "self"}, {"href": "http://localhost/nodes/ec0b75cc-f4df-446d-8b27-f7016582deba/volume", "rel": "bookmark"}], "raid_interface": "fake", "rescue_interface": "fake", "boot_interface": "fake", "reservation": null, "management_interface": "fake", "properties": {"memory_mb": "4096", "cpu_arch": "x86_64", "local_gb": "10", "cpus": "8"}, "bios_interface": "fake", "instance_uuid": null, "name": null, "driver_info": {"fake_password": "******", "foo": "bar"}, "resource_class": null, "created_at": "2000-01-01T00:00:00+00:00", "portgroups": [{"href": "http://localhost/v1/nodes/ec0b75cc-f4df-446d-8b27-f7016582deba/portgroups", "rel": "self"}, {"href": "http://localhost/nodes/ec0b75cc-f4df-446d-8b27-f7016582deba/portgroups", "rel": "bookmark"}], "deploy_interface": "fake", "ports": [{"href": "http://localhost/v1/nodes/ec0b75cc-f4df-446d-8b27-f7016582deba/ports", "rel": "self"}, {"href": "http://localhost/nodes/ec0b75cc-f4df-446d-8b27-f7016582deba/ports", "rel": "bookmark"}], "console_interface": "fake", "driver_internal_info": {}, "chassis_uuid": "e74c40e0-d825-11e2-a28f-0800200c9a66", "instance_info": {"foo": "bar", "image_url": "******", "configdrive": "******"}} GET: /v1/nodes/ec0b75cc-f4df-446d-8b27-f7016582deba {} GOT:{u'target_power_state': None, u'inspect_interface': u'fake', u'links': [{u'href': u'http://localhost/v1/nodes/ec0b75cc-f4df-446d-8b27-f7016582deba', u'rel': u'self'}, {u'href': u'http://localhost/nodes/ec0b75cc-f4df-446d-8b27-f7016582deba', u'rel': u'bookmark'}], u'target_provision_state': None, u'last_error': None, u'storage_interface': u'noop', u'updated_at': None, u'maintenance_reason': None, u'states': [{u'href': u'http://localhost/v1/nodes/ec0b75cc-f4df-446d-8b27-f7016582deba/states', u'rel': u'self'}, {u'href': u'http://localhost/nodes/ec0b75cc-f4df-446d-8b27-f7016582deba/states', u'rel': u'bookmark'}], u'traits': [], u'provision_state': u'enroll', u'clean_step': {}, u'vendor_interface': u'fake', u'uuid': u'ec0b75cc-f4df-446d-8b27-f7016582deba', u'console_enabled': False, u'extra': {}, u'raid_config': {}, u'provision_updated_at': None, u'power_state': None, u'target_raid_config': {}, u'network_interface': u'flat', u'inspection_started_at': None, u'inspection_finished_at': None, u'maintenance': False, u'driver': u'fake-hardware', u'power_interface': u'fake', u'volume': [{u'href': u'http://localhost/v1/nodes/ec0b75cc-f4df-446d-8b27-f7016582deba/volume', u'rel': u'self'}, {u'href': u'http://localhost/nodes/ec0b75cc-f4df-446d-8b27-f7016582deba/volume', u'rel': u'bookmark'}], u'raid_interface': u'fake', u'rescue_interface': u'fake', u'boot_interface': u'fake', u'reservation': None, u'management_interface': u'fake', u'properties': {u'memory_mb': u'4096', u'cpu_arch': u'x86_64', u'local_gb': u'10', u'cpus': u'8'}, u'bios_interface': u'fake', u'instance_uuid': None, u'name': None, u'driver_info': {u'fake_password': u'******', u'foo': u'bar'}, u'resource_class': None, u'created_at': u'2000-01-01T00:00:00+00:00', u'portgroups': [{u'href': u'http://localhost/v1/nodes/ec0b75cc-f4df-446d-8b27-f7016582deba/portgroups', u'rel': u'self'}, {u'href': u'http://localhost/nodes/ec0b75cc-f4df-446d-8b27-f7016582deba/portgroups', u'rel': u'bookmark'}], u'deploy_interface': u'fake', u'instance_info': {u'foo': u'bar', u'image_url': u'******', u'configdrive': u'******'}, u'console_interface': u'fake', u'driver_internal_info': {}, u'chassis_uuid': u'e74c40e0-d825-11e2-a28f-0800200c9a66', u'ports': [{u'href': u'http://localhost/v1/nodes/ec0b75cc-f4df-446d-8b27-f7016582deba/ports', u'rel': u'self'}, {u'href': u'http://localhost/nodes/ec0b75cc-f4df-446d-8b27-f7016582deba/ports', u'rel': u'bookmark'}]} {18} ironic.tests.unit.api.controllers.v1.test_node.TestPost.test_create_node_specify_interfaces [44.478470s] ... ok PUT: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states/provision {'target': 'inspect'} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-e4fb9774-cc4f-472a-94fd-8b42cb486499 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.6 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Failed to validate inspection or power info.\"}"} {18} ironic.tests.unit.api.controllers.v1.test_node.TestPut.test_inspect_validation_failed_status_code [0.048970s] ... ok PUT: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states/power {'target': 'soft power off'} GOT:Response: 406 Not Acceptable Content-Type: application/json Openstack-Request-Id: req-b0d3d645-8d85-40ec-afa5-3c3765013f80 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.26 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Request not acceptable.\"}"} {18} ironic.tests.unit.api.controllers.v1.test_node.TestPut.test_power_state_soft_power_off_no_timeout_invalid_soft_ver [0.035804s] ... ok PUT: /v1/nodes/1be26c0b-03f2-4d2e-ae87-c02d7f33c123/states/provision {'clean_steps': 'foo', 'target': 'provide'} GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-d23e62e7-b3df-4275-bf07-503a2f3cfc77 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.4 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"\\\"clean_steps\\\" is only valid when setting target provision state to clean\"}"} {18} ironic.tests.unit.api.controllers.v1.test_node.TestPut.test_provision_with_cleansteps_not_clean [0.050687s] ... ok GET: /v1/ports/detail {} GOT:{u'ports': [{u'local_link_connection': {u'switch_info': u'switch', u'port_id': u'Gig0/1', u'switch_id': u'aa:bb:cc:dd:ee:ff'}, u'node_uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c781', u'links': [{u'href': u'http://localhost/v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781', u'rel': u'self'}, {u'href': u'http://localhost/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781', u'rel': u'bookmark'}], u'extra': {}, u'pxe_enabled': False, u'portgroup_uuid': u'6eb02b44-18a3-4659-8c0b-8d2802581ae4', u'updated_at': None, u'physical_network': u'physnet1', u'address': u'52:54:00:cf:2d:31', u'internal_info': {u'bar': u'buzz'}, u'created_at': u'2019-06-06T07:03:02.448312+00:00', u'is_smartnic': True}]} {18} ironic.tests.unit.api.controllers.v1.test_port.TestListPorts.test_detail [0.048050s] ... ok GET: /v1/ports/detail?node=test-node&node_uuid=1be26c0b-03f2-4d2e-ae87-c02d7f33c123 {} GOT:{u'ports': []} {18} ironic.tests.unit.api.controllers.v1.test_port.TestListPorts.test_detail_with_incorrect_api_usage [0.027122s] ... ok GET: /v1/ports/detail?portgroup=6eb02b44-18a3-4659-8c0b-8d2802581ae4 {} GOT:{u'ports': [{u'local_link_connection': {u'switch_info': u'switch1', u'port_id': u'Ethernet3/1', u'switch_id': u'0a:1b:2c:3d:4e:5f'}, u'node_uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c781', u'links': [{u'href': u'http://localhost/v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781', u'rel': u'self'}, {u'href': u'http://localhost/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781', u'rel': u'bookmark'}], u'extra': {}, u'pxe_enabled': True, u'portgroup_uuid': u'6eb02b44-18a3-4659-8c0b-8d2802581ae4', u'updated_at': None, u'address': u'52:54:00:cf:2d:31', u'internal_info': {u'bar': u'buzz'}, u'created_at': u'2019-06-06T07:03:02.520677+00:00'}]} {18} ironic.tests.unit.api.controllers.v1.test_port.TestListPorts.test_get_all_by_portgroup_uuid [0.043566s] ... ok PATCH: /v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 [{'path': '/physical_network', 'value': 1234, 'op': 'replace'}] GOT:Response: 400 Bad Request Content-Type: application/json Openstack-Request-Id: req-4e296ad9-8ba8-4511-801d-ae392949eecf X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Invalid input for field/attribute physical_network. Value: '1234'. Value should be string\"}"} {18} ironic.tests.unit.api.controllers.v1.test_port.TestPatch.test_invalid_physnet_non_text [0.032847s] ... ok PATCH: /v1/ports/17eb2914-5510-4a72-9e43-3254ae91be51 [{'path': '/extra/vif_port_id', 'value': 'foo', 'op': 'add'}, {'path': '/extra/vif_port_id', 'value': 'bar', 'op': 'add'}] GOT:Response: 200 OK Content-Type: application/json Openstack-Request-Id: req-b40e9d35-670b-4dff-bb73-f08ce4d75e10 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.27 {"local_link_connection": {"switch_info": "switch1", "port_id": "Ethernet3/1", "switch_id": "0a:1b:2c:3d:4e:5f"}, "node_uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "uuid": "17eb2914-5510-4a72-9e43-3254ae91be51", "links": [{"href": "http://localhost/v1/ports/17eb2914-5510-4a72-9e43-3254ae91be51", "rel": "self"}, {"href": "http://localhost/ports/17eb2914-5510-4a72-9e43-3254ae91be51", "rel": "bookmark"}], "extra": {"vif_port_id": "bar"}, "pxe_enabled": true, "portgroup_uuid": null, "updated_at": "2019-06-06T07:03:02.628167+00:00", "address": "52:55:00:cf:2d:31", "internal_info": {"tenant_vif_port_id": "bar"}, "created_at": "2019-06-06T07:03:02.600048+00:00"} {18} ironic.tests.unit.api.controllers.v1.test_port.TestPatch.test_replace_extra_vif_port_id [0.060042s] ... ok POST: /v1/ports {'local_link_connection': {'switch_info': 'switch1', 'port_id': 'Ethernet3/1', 'switch_id': '0a:1b:2c:3d:4e:5f'}, 'node_uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123', 'uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c781', 'extra': {'none': None, 'int': 123, 'float': 0.1, 'list': [1, 2], 'bool': True, 'str': 'foo', 'dict': {'cat': 'meow'}}, 'pxe_enabled': True, 'portgroup_uuid': '6eb02b44-18a3-4659-8c0b-8d2802581ae4', 'physical_network': None, 'address': '52:54:00:cf:2d:31', 'is_smartnic': False} GOT:Response: 201 Created Content-Type: application/json Location: http://localhost/v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 Openstack-Request-Id: req-d6ee7f3b-a269-4bf4-a27a-a2d6341fb150 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"local_link_connection": {"switch_info": "switch1", "port_id": "Ethernet3/1", "switch_id": "0a:1b:2c:3d:4e:5f"}, "node_uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "links": [{"href": "http://localhost/v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "rel": "self"}, {"href": "http://localhost/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "rel": "bookmark"}], "extra": {"none": null, "int": 123, "float": 0.1, "list": [1, 2], "dict": {"cat": "meow"}, "str": "foo", "bool": true}, "pxe_enabled": true, "portgroup_uuid": "6eb02b44-18a3-4659-8c0b-8d2802581ae4", "updated_at": null, "physical_network": null, "address": "52:54:00:cf:2d:31", "internal_info": {}, "created_at": "2019-06-06T07:03:02.685582+00:00", "is_smartnic": false} GET: /v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 {} GOT:{u'local_link_connection': {u'switch_info': u'switch1', u'port_id': u'Ethernet3/1', u'switch_id': u'0a:1b:2c:3d:4e:5f'}, u'node_uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c781', u'links': [{u'href': u'http://localhost/v1/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781', u'rel': u'self'}, {u'href': u'http://localhost/ports/1be26c0b-03f2-4d2e-ae87-c02d7f33c781', u'rel': u'bookmark'}], u'extra': {u'none': None, u'int': 123, u'float': 0.1, u'list': [1, 2], u'bool': True, u'str': u'foo', u'dict': {u'cat': u'meow'}}, u'pxe_enabled': True, u'portgroup_uuid': u'6eb02b44-18a3-4659-8c0b-8d2802581ae4', u'updated_at': None, u'physical_network': None, u'address': u'52:54:00:cf:2d:31', u'internal_info': {}, u'created_at': u'2019-06-06T07:03:02.685582+00:00', u'is_smartnic': False} {18} ironic.tests.unit.api.controllers.v1.test_port.TestPost.test_create_port_valid_extra [0.074050s] ... ok PATCH: /v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4 [{'path': '/address', 'value': 'aa:bb:cc:dd:ee:ff', 'op': 'replace'}] GOT:Response: 200 OK Content-Type: application/json Openstack-Request-Id: req-59ac81ca-f256-49df-b2de-89f056c00561 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"node_uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "uuid": "6eb02b44-18a3-4659-8c0b-8d2802581ae4", "links": [{"href": "http://localhost/v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4", "rel": "self"}, {"href": "http://localhost/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4", "rel": "bookmark"}], "extra": {}, "created_at": "2019-06-06T07:03:02.731035+00:00", "updated_at": null, "ports": [{"href": "http://localhost/v1/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4/ports", "rel": "self"}, {"href": "http://localhost/portgroups/6eb02b44-18a3-4659-8c0b-8d2802581ae4/ports", "rel": "bookmark"}], "standalone_ports_supported": true, "mode": "active-backup", "address": "aa:bb:cc:dd:ee:ff", "internal_info": {"bar": "buzz"}, "properties": {}, "name": "pg.1"} {18} ironic.tests.unit.api.controllers.v1.test_portgroup.TestPatch.test_replace_singular [0.053069s] ... ok PATCH: /v1/portgroups/a3b2292c-88d8-4892-88c3-35178d657eab [{'path': '/extra/foo', 'value': 'bar', 'op': 'add'}] GOT:Response: 404 Not Found Content-Type: application/json Openstack-Request-Id: req-2f943927-2dc6-4d57-a933-ec307d10d766 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Portgroup a3b2292c-88d8-4892-88c3-35178d657eab could not be found.\"}"} {18} ironic.tests.unit.api.controllers.v1.test_portgroup.TestPatch.test_update_not_found [0.037010s] ... ok {18} ironic.tests.unit.api.controllers.v1.test_portgroup.TestPortgroupObject.test_portgroup_init [0.008119s] ... ok GET: /v1/lookup?addresses=11:22:33:44:55:66,66:55:44:33:22:11&node_uuid=0972bfe9-aabb-4d62-abc4-a311b51bbadb {} GOT:{u'node': {u'instance_info': {u'foo': u'bar', u'image_url': u'******', u'configdrive': u'******'}, u'uuid': u'0972bfe9-aabb-4d62-abc4-a311b51bbadb', u'driver_internal_info': {u'private_state': u'secret value'}, u'links': [{u'href': u'http://localhost/v1/nodes/0972bfe9-aabb-4d62-abc4-a311b51bbadb', u'rel': u'self'}, {u'href': u'http://localhost/nodes/0972bfe9-aabb-4d62-abc4-a311b51bbadb', u'rel': u'bookmark'}], u'properties': {u'memory_mb': u'4096', u'cpu_arch': u'x86_64', u'local_gb': u'10', u'cpus': u'8'}}, u'config': {u'metrics': {u'prepend_host': False, u'prepend_uuid': False, u'backend': u'statsd', u'prepend_host_reverse': True, u'global_prefix': None}, u'heartbeat_timeout': 300, u'metrics_statsd': {u'statsd_port': 8125, u'statsd_host': u'localhost'}}} {18} ironic.tests.unit.api.controllers.v1.test_ramdisk.TestLookup.test_no_restrict_lookup [0.047129s] ... ok {18} ironic.tests.unit.api.controllers.v1.test_types.TestLocalLinkConnectionType.test_local_link_connection_type_datapath_id [0.008238s] ... ok {18} ironic.tests.unit.api.controllers.v1.test_types.TestLocalLinkConnectionType.test_local_link_connection_type_smart_nic_keys_port_id_missing [0.009892s] ... ok {18} ironic.tests.unit.api.controllers.v1.test_utils.TestApiUtils.test_apply_jsonpatch [0.007980s] ... ok {18} ironic.tests.unit.api.controllers.v1.test_utils.TestApiUtils.test_check_allow_filter_by_conductor_group_none [0.009020s] ... ok {18} ironic.tests.unit.api.controllers.v1.test_utils.TestApiUtils.test_check_allow_filter_driver_type [0.008516s] ... ok POST: /v1/volume/targets {'boot_index': 0, 'uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c781', 'extra': {'foo': 123}, 'volume_type': 'iscsi', 'node_uuid': '1be26c0b-03f2-4d2e-ae87-c02d7f33c123', 'volume_id': '12345678', 'properties': {'target_iqn': 'iqn.foo'}} GOT:Response: 201 Created Content-Type: application/json Location: http://localhost/v1/volume/targets/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 Openstack-Request-Id: req-a4f3582b-9eb0-458e-9261-bc0671152449 X-Openstack-Ironic-Api-Maximum-Version: 1.56 X-Openstack-Ironic-Api-Minimum-Version: 1.1 X-Openstack-Ironic-Api-Version: 1.56 {"boot_index": 0, "uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "links": [{"href": "http://localhost/v1/volume/targets/1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "rel": "self"}, {"href": "http://localhost/volume/targets/1be26c0b-03f2-4d2e-ae87-c02d7f33c781", "rel": "bookmark"}], "extra": {"foo": 123}, "created_at": "2019-06-06T07:03:02.941083+00:00", "updated_at": null, "volume_type": "iscsi", "node_uuid": "1be26c0b-03f2-4d2e-ae87-c02d7f33c123", "volume_id": "12345678", "properties": {"target_iqn": "iqn.foo"}} GET: /v1/volume/targets/1be26c0b-03f2-4d2e-ae87-c02d7f33c781 {} GOT:{u'boot_index': 0, u'uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c781', u'links': [{u'href': u'http://localhost/v1/volume/targets/1be26c0b-03f2-4d2e-ae87-c02d7f33c781', u'rel': u'self'}, {u'href': u'http://localhost/volume/targets/1be26c0b-03f2-4d2e-ae87-c02d7f33c781', u'rel': u'bookmark'}], u'extra': {u'foo': 123}, u'created_at': u'2019-06-06T07:03:02.941083+00:00', u'updated_at': None, u'volume_type': u'iscsi', u'node_uuid': u'1be26c0b-03f2-4d2e-ae87-c02d7f33c123', u'volume_id': u'12345678', u'properties': {u'target_iqn': u'iqn.foo'}} {18} ironic.tests.unit.api.controllers.v1.test_volume_target.TestPost.test_create_volume_target_doesnt_contain_id [0.058236s] ... ok {18} ironic.tests.unit.api.controllers.v1.test_volume_target.TestVolumeTargetObject.test_volume_target_init [0.007707s] ... ok func1() migrated 10 of 10 objects. func1() migrated 0 of 0 objects. func2() migrated 0 of 0 objects. {18} ironic.tests.unit.cmd.test_dbsync.OnlineMigrationTestCase.test__run_migration_functions_two_calls_done [0.012933s] ... ok {18} ironic.tests.unit.common.test_cinder.TestCinderActions.test_detach_volumes_client_init_failure_bad_request [0.061524s] ... ok {18} ironic.tests.unit.common.test_context.RequestContextTestCase.test_thread_with_context [0.009263s] ... ok {18} ironic.tests.unit.common.test_driver_factory.DriverLoadTestCase.test_driver_init_checks_unsupported [0.011750s] ... ok {18} ironic.tests.unit.common.test_driver_factory.HardwareTypeLoadTestCase.test_build_driver_for_task_fake [0.049330s] ... ok {18} ironic.tests.unit.common.test_glance_service.TestGlanceImageService.test_download_no_data [0.009714s] ... ok {18} ironic.tests.unit.common.test_hash_ring.HashRingManagerTestCase.test_hash_ring_manager_reset_interval [0.026137s] ... ok {18} ironic.tests.unit.common.test_images.FsImageTestCase.test_create_boot_iso_for_uefi_deploy_iso [0.014651s] ... ok {18} ironic.tests.unit.common.test_images.FsImageTestCase.test_create_isolinux_image_bios_mkisofs_fails [0.014725s] ... ok {18} ironic.tests.unit.common.test_json_rpc.TestClient.test_call_failure_with_foreign_class [0.011856s] ... ok {18} ironic.tests.unit.common.test_json_rpc.TestService.test_missing_argument [0.023817s] ... ok {18} ironic.tests.unit.common.test_neutron.TestGetPhysnetsByPortUUID.test_get_physnets_by_port_uuid_port_missing [0.010364s] ... ok {18} ironic.tests.unit.common.test_neutron.TestGetPhysnetsByPortUUID.test_get_physnets_by_port_uuid_single_segment [0.011582s] ... ok {18} ironic.tests.unit.common.test_neutron.TestNeutronNetworkActions.test_add_smartnic_port_to_network [0.071411s] ... ok {18} ironic.tests.unit.common.test_neutron.TestNeutronNetworkActions.test_remove_neutron_ports [0.053913s] ... ok {18} ironic.tests.unit.common.test_pxe_utils.PXEInterfacesTestCase.test_build_pxe_config_options_ipxe_and_iscsi_boot [0.082341s] ... ok {18} ironic.tests.unit.common.test_pxe_utils.PXEInterfacesTestCase.test_build_pxe_config_options_pxe_ipa_debug [0.050508s] ... ok {18} ironic.tests.unit.common.test_pxe_utils.TestPXEUtils.test__write_mac_pxe_configs [0.056091s] ... ok {18} ironic.tests.unit.common.test_pxe_utils.TestPXEUtils.test_create_ipxe_boot_script [0.021978s] ... ok {18} ironic.tests.unit.common.test_pxe_utils.TestPXEUtils.test_create_pxe_config [0.057467s] ... ok {18} ironic.tests.unit.common.test_raid.RaidPublicMethodsTestCase.test_get_logical_disk_properties [0.015942s] ... ok {18} ironic.tests.unit.common.test_raid.RaidPublicMethodsTestCase.test_update_raid_info_multiple_root_volumes [0.029543s] ... ok {18} ironic.tests.unit.common.test_raid.ValidateRaidConfigurationTestCase.test_validate_configuration_invalid_number_of_phy_disks [0.014847s] ... ok {18} ironic.tests.unit.common.test_release_mappings.GetObjectVersionsTestCase.test_get_object_versions_releases_objects [0.007510s] ... ok {18} ironic.tests.unit.common.test_release_mappings.ReleaseMappingsTestCase.test_structure [0.009599s] ... ok {18} ironic.tests.unit.conductor.test_manager.ChangeNodePowerStateTestCase.test_node_set_power_state_notif_no_state_change [0.171666s] ... ok {18} ironic.tests.unit.conductor.test_manager.CheckTimeoutsTestCase.test__check_cleanwait_timeouts_manual_clean [0.205799s] ... ok {18} ironic.tests.unit.conductor.test_manager.CreatePortTestCase.test_create_port_mac_exists [0.054896s] ... ok {18} ironic.tests.unit.conductor.test_manager.DestroyPortTestCase.test_destroy_port_with_instance_not_in_active [0.054814s] ... ok {18} ironic.tests.unit.conductor.test_manager.DoNextDeployStepTestCase.test__do_next_deploy_step_last_step_done_with_console_error [0.243024s] ... ok {18} ironic.tests.unit.conductor.test_manager.DoNodeCleanTestCase.test__do_node_clean_automated_steps_fail [0.137701s] ... ok {18} ironic.tests.unit.conductor.test_manager.DoNodeCleanTestCase.test__do_node_clean_manual_prepare_clean_wait [0.087288s] ... ok {18} ironic.tests.unit.conductor.test_manager.DoNodeCleanTestCase.test_continue_node_clean_worker_pool_full [0.163776s] ... ok {18} ironic.tests.unit.conductor.test_manager.DoNodeDeployTestCase.test__do_node_deploy_configdrive_as_dict_with_meta_data [0.204670s] ... ok {18} ironic.tests.unit.conductor.test_manager.DoNodeDeployTestCase.test__do_node_deploy_driver_raises_error_old [0.206452s] ... ok {18} ironic.tests.unit.conductor.test_manager.DoNodeTearDownTestCase.test__do_node_tear_down_from_valid_states [1.615131s] ... ok {18} ironic.tests.unit.conductor.test_manager.DoProvisioningActionTestCase.test_do_provision_action_provide [0.180312s] ... ok {18} ironic.tests.unit.conductor.test_manager.ManagerCheckDeployTimeoutsTestCase.test_exiting_with_other_exception [0.014967s] ... ok {18} ironic.tests.unit.conductor.test_manager.ManagerSyncLocalStateTestCase.test_already_mapped [0.012138s] ... ok {18} ironic.tests.unit.conductor.test_manager.ManagerTestHardwareTypeProperties.test_hardware_type_properties_manual_management [0.100637s] ... ok {18} ironic.tests.unit.conductor.test_manager.RaidTestCases.test_set_target_raid_config_empty [0.073141s] ... ok {18} ironic.tests.unit.conductor.test_manager.SensorsTestCase.test___send_sensor_data_multiple_workers [0.567254s] ... ok {24} ironic.tests.unit.drivers.modules.test_snmp.SNMPDeviceDriverTestCase.test_power_reset_off_invalid_state [9.027420s] ... ok {24} ironic.tests.unit.drivers.modules.test_snmp.SNMPValidateParametersTestCase.test__parse_driver_info_apc [0.011380s] ... ok {24} ironic.tests.unit.drivers.modules.test_snmp.SNMPValidateParametersTestCase.test__parse_driver_info_write_community [0.010454s] ... ok /usr/lib/python2.7/site-packages/oslo_serialization/jsonutils.py:192: UserWarning: Cannot convert UcsOperationError(u'%(operation)s failed, error: %(error)s',) to primitive, will raise ValueError instead of warning in version 3.0 "instead of warning in version 3.0" % (value,)) {24} ironic.tests.unit.drivers.modules.ucs.test_management.UcsManagementTestCase.test_get_boot_device_fail [0.110083s] ... ok {24} ironic.tests.unit.drivers.modules.ucs.test_power.UcsPowerTestCase.test__wait_for_state_change_exceed_iterations [0.077435s] ... ok {24} ironic.tests.unit.drivers.modules.ucs.test_power.UcsPowerTestCase.test_reboot [0.111228s] ... ok {24} ironic.tests.unit.drivers.modules.xclarity.test_common.XClarityCommonTestCase.test_parse_driver_info_missing_hardware_id [0.015866s] ... ok {24} ironic.tests.unit.drivers.test_base.CleanStepDecoratorTestCase.test__validate_argsinfo_arg_empty_dict [0.007526s] ... ok {24} ironic.tests.unit.drivers.test_base.DeployStepDecoratorTestCase.test_deploy_step_all_args [0.009022s] ... ok {24} ironic.tests.unit.drivers.test_base.TestBIOSInterface.test_apply_configuration_wrapper [0.009125s] ... ok {24} ironic.tests.unit.drivers.test_ilo.IloHardwareTestCase.test_default_interfaces [0.046023s] ... ok {24} ironic.tests.unit.drivers.test_irmc.IRMCHardwareTestCase.test_override_with_ipmitool_power [0.047397s] ... ok {24} ironic.tests.unit.objects.test_bios.TestBIOSSettingObject.test_list_create [0.012366s] ... ok {24} ironic.tests.unit.objects.test_chassis.TestChassisObject.test_get_by_id [0.012834s] ... ok {24} ironic.tests.unit.objects.test_chassis.TestChassisObject.test_refresh [0.012621s] ... ok {24} ironic.tests.unit.objects.test_node.TestConvertToVersion.test_rescue_unsupported_set_no_remove_default [0.010898s] ... ok {24} ironic.tests.unit.objects.test_objects.TestObject.test__from_db_object_old [0.007994s] ... ok {24} ironic.tests.unit.objects.test_objects.TestObject.test_convert_to_version_old [0.007537s] ... ok {24} ironic.tests.unit.objects.test_port.TestConvertToVersion.test_vif_in_extra [0.010295s] ... ok {24} ironic.tests.unit.objects.test_port.TestMigrateVifPortId.test_migrate_vif_port_id_all [0.029835s] ... ok {24} ironic.tests.unit.objects.test_trait.TestTraitObject.test_get_by_id [0.012684s] ... ok {24} ironic.tests.unit.test_base.BlockExecuteTestCase.test_exception_raised_for_execute_parent_mocked [0.008126s] ... ok {18} ironic.tests.unit.conductor.test_manager.UpdateNodeTestCase.test_update_node_interface_in_allowed_state [2.171561s] ... ok {18} ironic.tests.unit.conductor.test_manager.VendorPassthruTestCase.test_driver_vendor_passthru_method_not_supported [0.099919s] ... ok {18} ironic.tests.unit.conductor.test_notification_utils.TestNotificationUtils.test_emit_power_set_notification [0.020347s] ... ok {18} ironic.tests.unit.conductor.test_rpcapi.ConductorRPCAPITestCase.test_version_cap [0.009828s] ... ok {18} ironic.tests.unit.conductor.test_rpcapi.RPCAPITestCase.test_destroy_volume_target [0.012354s] ... ok {18} ironic.tests.unit.conductor.test_steps.GetValidatedStepsFromTemplatesTestCase.test_ok [0.052255s] ... ok {18} ironic.tests.unit.conductor.test_steps.NodeDeployStepsTestCase.test__get_deploy_steps_unsorted [0.052641s] ... ok {18} ironic.tests.unit.conductor.test_steps.NodeDeployStepsTestCase.test__validate_user_deploy_steps_invalid_arg [0.050238s] ... ok {18} ironic.tests.unit.conductor.test_utils.ErrorHandlersTestCase.test_provision_error_handler_other_error [0.008629s] ... ok {18} ironic.tests.unit.conductor.test_utils.NodePowerActionTestCase.test_node_power_action_already_being_processed [0.067289s] ... ok {18} ironic.tests.unit.conductor.test_utils.NodePowerActionTestCase.test_node_power_action_power_off [0.080547s] ... ok {18} ironic.tests.unit.conductor.test_utils.ValidatePortPhysnetTestCase.test_validate_port_physnet_1_port_portgroup_w_physnet_create_2 [0.053263s] ... ok {18} ironic.tests.unit.conductor.test_utils.ValidatePortPhysnetTestCase.test_validate_port_physnet_1_port_portgroup_w_physnet_update_1 [0.055215s] ... ok {18} ironic.tests.unit.db.test_allocations.AllocationsTestCase.test_get_allocation_by_name_that_does_not_exist [0.018099s] ... ok {18} ironic.tests.unit.db.test_conductor.DbConductorTestCase.test_get_active_hardware_type_dict_one_host_one_ht_groups [0.019385s] ... ok {18} ironic.tests.unit.db.test_conductor.DbConductorTestCase.test_get_conductor_not_found [0.016696s] ... ok {18} ironic.tests.unit.db.test_portgroups.DbportgroupTestCase.test_destroy_portgroup_uuid [0.023667s] ... ok {18} ironic.tests.unit.db.test_portgroups.DbportgroupTestCase.test_get_portgroup_by_name_that_does_not_exist [0.017247s] ... ok {18} ironic.tests.unit.drivers.modules.ansible.test_deploy.TestAnsibleDeploy.test_tear_down_cleaning [0.050436s] ... ok {18} ironic.tests.unit.drivers.modules.cimc.test_common.CIMCHandleLogin.test_cimc_handle_login [0.050693s] ... ok {18} ironic.tests.unit.drivers.modules.cimc.test_power.PowerTestCase.test_reboot_on_timeout [0.061981s] ... ok ERROR [ironic.drivers.modules.drac.bios] DRAC driver failed to commit the pending BIOS changes for node 1be26c0b-03f2-4d2e-ae87-c02d7f33c123. Reason: An unknown exception occurred. {18} ironic.tests.unit.drivers.modules.drac.test_bios.DracBIOSConfigurationTestCase.test_commit_config_fail [0.057652s] ... ok {18} ironic.tests.unit.drivers.modules.drac.test_bios.DracBIOSConfigurationTestCase.test_commit_config_with_reboot [0.055307s] ... ok {18} ironic.tests.unit.drivers.modules.drac.test_common.DracCommonMethodsTestCase.test_parse_driver_info [0.017279s] ... ok {18} ironic.tests.unit.drivers.modules.drac.test_inspect.DracInspectionTestCase.test__get_pxe_dev_nics_list_nic_setting_failure [0.051199s] ... ok {18} ironic.tests.unit.drivers.modules.drac.test_inspect.DracInspectionTestCase.test__get_pxe_dev_nics_with_empty_list [0.052520s] ... ok {18} ironic.tests.unit.drivers.modules.drac.test_management.DracManagementInternalMethodsTestCase.test__flexibly_program_boot_order_for_disk_and_uefi [0.020000s] ... ok {18} ironic.tests.unit.drivers.modules.drac.test_management.DracManagementInternalMethodsTestCase.test_set_boot_device_called_with_no_drac_boot_device [0.027855s] ... ok {18} ironic.tests.unit.drivers.modules.drac.test_management.DracManagementTestCase.test_get_boot_device_from_driver_internal_info [0.043214s] ... ok {18} ironic.tests.unit.drivers.modules.drac.test_management.DracManagementTestCase.test_set_boot_device [0.073239s] ... ok {18} ironic.tests.unit.drivers.modules.drac.test_power.DracPowerTestCase.test_get_power_state_fail [0.043853s] ... ok {18} ironic.tests.unit.drivers.modules.ilo.test_boot.IloVirtualMediaBootTestCase.test_clean_up_instance_deleting [0.075113s] ... ok {18} ironic.tests.unit.drivers.modules.ilo.test_common.IloCommonMethodsTestCase.test_remove_image_from_web_server [0.024940s] ... ok {18} ironic.tests.unit.drivers.modules.ilo.test_common.IloCommonMethodsTestCase.test_set_boot_mode_without_set_pending_boot_mode [0.018118s] ... ok {18} ironic.tests.unit.drivers.modules.ilo.test_common.IloCommonMethodsTestCase.test_setup_vmedia_for_boot_with_parameters [0.061178s] ... ok {18} ironic.tests.unit.drivers.modules.ilo.test_common.IloCommonMethodsTestCase.test_update_boot_mode_unknown [0.067812s] ... ok {18} ironic.tests.unit.drivers.modules.ilo.test_firmware_processor.FirmwareProcessorTestCase.test_get_and_validate_firmware_image_info_sum_with_component [0.007712s] ... ok {18} ironic.tests.unit.drivers.modules.ilo.test_inspect.TestInspectPrivateMethods.test__validate_ok [0.015988s] ... ok {18} ironic.tests.unit.drivers.modules.ilo.test_management.IloManagementTestCase.test__execute_ilo_clean_step_fail [0.019477s] ... ok {18} ironic.tests.unit.drivers.modules.ilo.test_management.IloManagementTestCase.test_update_firmware_sum_mode_swift_url [0.051680s] ... ok {18} ironic.tests.unit.drivers.modules.ilo.test_management.IloManagementTestCase.test_update_firmware_sum_mode_with_component [0.055686s] ... ok {18} ironic.tests.unit.drivers.modules.irmc.test_boot.IRMCDeployPrivateMethodsTestCase.test__parse_instance_info_with_boot_iso_https_ok [0.015878s] ... ok {18} ironic.tests.unit.drivers.modules.irmc.test_boot.IRMCDeployPrivateMethodsTestCase.test_attach_boot_iso_if_needed_on_rebuild [0.042589s] ... ok {18} ironic.tests.unit.drivers.modules.irmc.test_boot.IRMCPXEBootBasicTestCase.test_prepare_ramdisk_set_default_boot_mode_on_ironic_bios [0.123328s] ... ok {18} ironic.tests.unit.drivers.modules.irmc.test_boot.IRMCVirtualMediaBootTestCase.test_prepare_instance_whole_disk_image_local [0.074156s] ... ok {18} ironic.tests.unit.drivers.modules.irmc.test_boot.IRMCVirtualMediaBootTestCase.test_remote_image_share_type_values [0.017817s] ... ok {18} ironic.tests.unit.drivers.modules.irmc.test_inspect.IRMCInspectTestCase.test_inspect_hardware_mac_already_exist [0.157389s] ... ok {18} ironic.tests.unit.drivers.modules.irmc.test_management.IRMCManagementFunctionsTestCase.test__restore_bios_config [0.065444s] ... ok {18} ironic.tests.unit.drivers.modules.network.test_common.TestCommonFunctions.test_get_free_port_like_object_ports_physnet_match_first2 [0.058318s] ... ok {18} ironic.tests.unit.drivers.modules.network.test_common.TestNeutronVifPortIDMixin.test_port_changed_novif_pxe_noportgroup [0.146421s] ... ok {18} ironic.tests.unit.drivers.modules.network.test_common.TestNeutronVifPortIDMixin.test_vif_detach_deleting_node [0.063744s] ... ok {18} ironic.tests.unit.drivers.modules.network.test_flat.TestFlatInterface.test_remove_cleaning_network [0.057615s] ... ok {18} ironic.tests.unit.drivers.modules.network.test_neutron.NeutronInterfaceTestCase.test_configure_tenant_networks_vif_extra [0.067115s] ... ok {18} ironic.tests.unit.drivers.modules.network.test_neutron.NeutronInterfaceTestCase.test_need_power_on_false [0.052166s] ... ok {15} ironic.tests.unit.drivers.modules.ibmc.test_power.IBMCPowerTestCase.test_set_power_state [40.140686s] ... ok {15} ironic.tests.unit.drivers.modules.ibmc.test_utils.IBMCUtilsTestCase.test_parse_driver_info_invalid_address [0.019705s] ... ok {15} ironic.tests.unit.drivers.modules.ilo.test_bios.IloBiosTestCase.test_cache_bios_settings_invalid_parameter [0.043106s] ... ok {15} ironic.tests.unit.drivers.modules.ilo.test_boot.IloBootPrivateMethodsTestCase.test__get_boot_iso_recreate_boot_iso_use_webserver [0.071671s] ... ok {15} ironic.tests.unit.drivers.modules.ilo.test_common.IloCommonMethodsTestCase.test_cleanup_vmedia_boot [0.063979s] ... ok {15} ironic.tests.unit.drivers.modules.ilo.test_common.IloCommonMethodsTestCase.test_get_secure_boot_mode_not_supported [0.049088s] ... ok {15} ironic.tests.unit.drivers.modules.ilo.test_common.IloCommonMethodsTestCase.test_verify_image_checksum_throws_for_nonexistent_file [0.015793s] ... ok {15} ironic.tests.unit.drivers.modules.ilo.test_common.IloValidateParametersTestCase.test_parse_driver_info_snmp_true_integer_auth_protocol [0.016009s] ... ok {15} ironic.tests.unit.drivers.modules.ilo.test_firmware_processor.FirmwareProcessorTestCase.test__extract_fw_from_file_sets_loc_obj_remove_to_webserver [0.029198s] ... ok {15} ironic.tests.unit.drivers.modules.ilo.test_management.IloManagementTestCase.test__update_firmware_sum_final_with_logs [0.051861s] ... ok {15} ironic.tests.unit.drivers.modules.ilo.test_management.IloManagementTestCase.test_set_iscsi_boot_target_in_bios [0.064563s] ... ok {15} ironic.tests.unit.drivers.modules.irmc.test_boot.IRMCPXEBootBasicTestCase.test_prepare_instance_ramdisk_pxe_conf_missing [0.090684s] ... ok {15} ironic.tests.unit.drivers.modules.irmc.test_boot.IRMCVirtualMediaBootWithVolumeTestCase.test_validate_iscsi_connector_too_small_netmask [0.093535s] ... ok {15} ironic.tests.unit.drivers.modules.irmc.test_power.IRMCPowerInternalMethodsTestCase.test__set_power_state_power_on_ok [0.041131s] ... ok {15} ironic.tests.unit.drivers.modules.network.test_common.TestNeutronVifPortIDMixin.test_port_changed_client_id [0.052344s] ... ok {15} ironic.tests.unit.drivers.modules.network.test_common.TestNeutronVifPortIDMixin.test_port_changed_client_id_fail [0.085813s] ... ok {15} ironic.tests.unit.drivers.modules.network.test_common.TestNeutronVifPortIDMixin.test_port_changed_novif_nopxe_noportgroup [0.146943s] ... ok {15} ironic.tests.unit.drivers.modules.network.test_common.TestNeutronVifPortIDMixin.test_port_changed_novif_pxe_portgroup_nostandalone_ports [0.142651s] ... ok {15} ironic.tests.unit.drivers.modules.network.test_neutron.NeutronInterfaceTestCase.test_validate_boot_option_netboot_no_exc [0.060871s] ... ok {15} ironic.tests.unit.drivers.modules.network.test_noop.NoopInterfaceTestCase.test_vif_detach [0.050012s] ... ok {15} ironic.tests.unit.drivers.modules.redfish.test_bios.RedfishBiosTestCase.test_cache_bios_settings [0.108397s] ... ok {15} ironic.tests.unit.drivers.modules.redfish.test_bios.RedfishBiosTestCase.test_cache_bios_settings_noop [0.107416s] ... ok {15} ironic.tests.unit.drivers.modules.redfish.test_bios.RedfishBiosTestCase.test_post_configuration [0.059377s] ... ok {15} ironic.tests.unit.drivers.modules.redfish.test_inspect.RedfishInspectTestCase.test_inspect_hardware_ignore_missing_local_gb [0.056219s] ... ok {15} ironic.tests.unit.drivers.modules.redfish.test_power.RedfishPowerTestCase.test_reboot [5.351280s] ... ok {15} ironic.tests.unit.drivers.modules.storage.test_cinder.CinderInterfaceTestCase.test_attach_volumes_failure [0.066910s] ... ok {15} ironic.tests.unit.drivers.modules.test_agent.AgentRescueTestCase.test_agent_rescue [0.065202s] ... ok {15} ironic.tests.unit.drivers.modules.test_agent.TestAgentDeploy.test_continue_deploy_with_proxies [0.085712s] ... ok {15} ironic.tests.unit.drivers.modules.test_agent.TestAgentDeploy.test_deploy_is_done_race [0.050564s] ... ok {15} ironic.tests.unit.drivers.modules.test_agent.TestAgentDeploy.test_prepare_with_neutron_net_exc_no_capabilities_overwrite [0.118524s] ... ok {15} ironic.tests.unit.drivers.modules.test_agent.TestAgentDeploy.test_reboot_to_instance [0.095817s] ... ok {15} ironic.tests.unit.drivers.modules.test_agent.TestAgentDeploy.test_reboot_to_instance_boot_error [0.127003s] ... ok {15} ironic.tests.unit.drivers.modules.test_agent.TestAgentDeploy.test_validate_driver_info_manage_agent_boot_false [0.068430s] ... ok {15} ironic.tests.unit.drivers.modules.test_agent.TestAgentMethods.test_check_image_size_raw_stream_disabled [0.048017s] ... ok {15} ironic.tests.unit.drivers.modules.test_agent_base_vendor.AgentDeployMixinTest.test_configure_local_boot_no_root_uuid [0.048450s] ... ok {15} ironic.tests.unit.drivers.modules.test_agent_base_vendor.AgentDeployMixinTest.test_configure_local_boot_set_boot_device_fail [0.620863s] ... ok {15} ironic.tests.unit.drivers.modules.test_agent_base_vendor.AgentDeployMixinTest.test_prepare_instance_to_boot_localboot_prep_partition [0.063958s] ... ok {15} ironic.tests.unit.drivers.modules.test_console_utils.ConsoleUtilsTestCase.test__stop_console_shellinabox_not_running [0.014406s] ... ok {15} ironic.tests.unit.drivers.modules.test_console_utils.ConsoleUtilsTestCase.test_get_socat_console_url_tcp [0.011375s] ... ok {15} ironic.tests.unit.drivers.modules.test_deploy_utils.InstanceInfoTestCase.test_parse_instance_info_invalid_ephemeral_gb [0.015486s] ... ok {15} ironic.tests.unit.drivers.modules.test_deploy_utils.OtherFunctionTestCase.test_fetch_images_fail [0.018031s] ... ok {15} ironic.tests.unit.drivers.modules.test_deploy_utils.ParseInstanceInfoCapabilitiesTestCase.test_parse_instance_info_capabilities_string [0.007523s] ... ok {15} ironic.tests.unit.drivers.modules.test_deploy_utils.PhysicalWorkTestCase.test_login_iscsi_calls_raises [0.023201s] ... ok {15} ironic.tests.unit.drivers.modules.test_deploy_utils.TestBuildInstanceInfoForDeploy.test_build_instance_info_for_deploy_nonglance_partition_image [0.062917s] ... ok {15} ironic.tests.unit.drivers.modules.test_image_cache.TestImageCacheCleanUp.test_clean_up_ensure_cache_size [0.010374s] ... ok {15} ironic.tests.unit.drivers.modules.test_image_cache.TestImageCacheFetch.test_fetch_image_dest_and_master_uptodate_no_force_raw [0.013314s] ... ok {15} ironic.tests.unit.drivers.modules.test_image_cache.TestImageCacheFetch.test_fetch_image_not_uuid_no_force_raw [0.010988s] ... ok {15} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolDriverTestCase.test_management_interface_set_boot_device_persistent [0.062511s] ... ok {15} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolDriverTestCase.test_vendor_passthru_validate__bmc_reset_warm_good [0.048063s] ... ok {15} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolDriverTestCase.test_vendor_passthru_validate__parse_driver_info_fail [0.062514s] ... ok {15} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolPrivateMethodTestCase.test__soft_power_off [1.054539s] ... ok {15} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolSocatDriverTestCase.test_console_validate_wrong_ipmi_protocol_version [0.037653s] ... ok {15} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolSocatDriverTestCase.test_start_console [0.050355s] ... ok {15} ironic.tests.unit.drivers.modules.test_ipxe.iPXEBootTestCase.test_prepare_ramdisk_set_default_boot_mode_on_ironic_bios [0.123801s] ... ok {15} ironic.tests.unit.drivers.modules.test_iscsi_deploy.ISCSIDeployTestCase.test_prepare_node_adopting [0.049215s] ... ok {15} ironic.tests.unit.drivers.modules.test_iscsi_deploy.IscsiDeployMethodsTestCase.test_check_image_size [0.049939s] ... ok {15} ironic.tests.unit.drivers.modules.test_pxe.PXEBootTestCase.test_validate_good_whole_disk_image [0.042242s] ... ok {15} ironic.tests.unit.drivers.modules.test_snmp.SNMPDeviceDriverTestCase.test_baytech_mrp27_power_snmp_objects [0.011754s] ... ok {15} ironic.tests.unit.drivers.modules.test_snmp.SNMPDeviceDriverTestCase.test_eaton_power_power_off [0.013201s] ... ok /usr/lib/python2.7/site-packages/oslo_serialization/jsonutils.py:192: UserWarning: Cannot convert UcsConnectionError('Service unavailable, failed with error: %(error)s',) to primitive, will raise ValueError instead of warning in version 3.0 "instead of warning in version 3.0" % (value,)) {15} ironic.tests.unit.drivers.modules.ucs.test_helper.UcsValidateParametersTestCase.test_connect_ucsm_fail [0.113542s] ... ok {15} ironic.tests.unit.drivers.modules.ucs.test_management.UcsManagementTestCase.test_get_boot_device [0.110845s] ... ok /usr/lib/python2.7/site-packages/oslo_serialization/jsonutils.py:192: UserWarning: Cannot convert UcsOperationError(u'%(operation)s failed, error: %(error)s',) to primitive, will raise ValueError instead of warning in version 3.0 "instead of warning in version 3.0" % (value,)) {15} ironic.tests.unit.drivers.modules.ucs.test_power.UcsPowerTestCase.test_get_power_state_fail [0.103406s] ... ok {15} ironic.tests.unit.drivers.modules.ucs.test_power.UcsPowerTestCase.test_get_properties [0.039031s] ... ok {15} ironic.tests.unit.drivers.test_fake_hardware.FakeHardwareTestCase.test_management_interface_validate [0.045460s] ... ok {15} ironic.tests.unit.drivers.test_redfish.RedfishHardwareTestCase.test_default_interfaces [0.046721s] ... ok {15} ironic.tests.unit.drivers.test_utils.UtilsRamdiskLogsTestCase.test_get_ramdisk_logs_file_name [0.009419s] ... ok {15} ironic.tests.unit.objects.test_allocation.TestAllocationObject.test_get_by_name [0.013240s] ... ok {15} ironic.tests.unit.objects.test_chassis.TestChassisObject.test_get_by_uuid [0.015613s] ... ok {15} ironic.tests.unit.objects.test_deploy_template.TestDeployTemplateObject.test_destroy [0.012099s] ... ok {15} ironic.tests.unit.objects.test_fields.TestStringFieldThatAcceptsCallable.test_coerce_function_invalid_type [0.008464s] ... ok {15} ironic.tests.unit.objects.test_fields.TestStringFieldThatAcceptsCallable.test_coerce_string [0.007581s] ... ok {15} ironic.tests.unit.objects.test_node.TestConvertToVersion.test_description_unsupported_set_remove [0.011115s] ... ok {15} ironic.tests.unit.objects.test_node.TestNodeObject.test_as_dict_insecure [0.017683s] ... ok {15} ironic.tests.unit.objects.test_node.TestNodePayloads.test_node_payload_no_traits [0.011613s] ... ok {15} ironic.tests.unit.objects.test_node.TestNodePayloads.test_node_set_power_state_payload [0.011421s] ... ok {15} ironic.tests.unit.objects.test_objects.TestObject.test_object_inheritance [0.007872s] ... ok {15} ironic.tests.unit.objects.test_port.TestPortObject.test_create [0.012682s] ... ok {15} ironic.tests.unit.objects.test_portgroup.TestMigrateVifPortId.test_migrate_vif_port_id_all [0.030071s] ... ok {15} ironic.tests.unit.objects.test_volume_target.TestVolumeTargetObject.test_get_by_id [0.012984s] ... ok {18} ironic.tests.unit.drivers.modules.redfish.test_power.RedfishPowerTestCase.test_set_power_state [22.504339s] ... ok {18} ironic.tests.unit.drivers.modules.test_agent.TestAgentDeploy.test_reboot_to_instance_partition_localboot_ppc64 [0.109697s] ... ok {18} ironic.tests.unit.drivers.modules.test_agent_base_vendor.HeartbeatMixinTest.test_heartbeat_rescue_fails [0.069175s] ... ok {18} ironic.tests.unit.drivers.modules.test_agent_client.TestAgentClient.test__command [0.009200s] ... ok {18} ironic.tests.unit.drivers.modules.test_console_utils.ConsoleUtilsTestCase.test__get_console_pid_file [0.012132s] ... ok {18} ironic.tests.unit.drivers.modules.test_console_utils.ConsoleUtilsTestCase.test_start_socat_console_nopid [0.032500s] ... ok {18} ironic.tests.unit.drivers.modules.test_deploy_utils.InstanceInfoTestCase.test_parse_instance_info_invalid_root_gb [0.015387s] ... ok {18} ironic.tests.unit.drivers.modules.test_deploy_utils.InstanceInfoTestCase.test_parse_instance_info_nonglance_image [0.017415s] ... ok {18} ironic.tests.unit.drivers.modules.test_deploy_utils.InstanceInfoTestCase.test_parse_instance_info_valid_preserve_ephemeral_true [0.052099s] ... ok {18} ironic.tests.unit.drivers.modules.test_deploy_utils.SwitchPxeConfigTestCase.test_switch_uefi_ipxe_config_partition_image [0.025207s] ... ok {18} ironic.tests.unit.drivers.modules.test_inspector.CommonFunctionsTestCase.test_validate_ok [0.011516s] ... ok {18} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolCheckInitTestCase.test_console_init_calls [0.011072s] ... ok {18} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolCheckInitTestCase.test_vendor_passthru_init_calls [0.011666s] ... ok {18} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolPrivateMethodTestCase.test__power_on_max_retries [2.053110s] ... ok {18} ironic.tests.unit.drivers.modules.test_ipmitool.IPMIToolShellinaboxTestCase.test__start_console_fail [0.054607s] ... ok {18} ironic.tests.unit.drivers.modules.test_iscsi_deploy.ISCSIDeployTestCase.test_clean_up [0.054110s] ... ok {18} ironic.tests.unit.drivers.modules.test_iscsi_deploy.ISCSIDeployTestCase.test_validate_storage_should_write_image_false [0.045818s] ... ok {18} ironic.tests.unit.drivers.modules.test_iscsi_deploy.IscsiDeployMethodsTestCase.test_get_deploy_info_boot_option_default [0.016631s] ... ok {18} ironic.tests.unit.drivers.modules.test_iscsi_deploy.IscsiDeployMethodsTestCase.test_get_deploy_info_disk_label [0.017239s] ... ok {18} ironic.tests.unit.drivers.modules.test_noop.NoInterfacesTestCase.test_rescue [0.007982s] ... ok {18} ironic.tests.unit.drivers.modules.test_pxe.PXEBootTestCase.test_validate_fail_glance_conn_problem [0.076186s] ... ok {18} ironic.tests.unit.drivers.modules.test_snmp.SNMPDeviceDriverTestCase.test_apc_power_off [0.015375s] ... ok {18} ironic.tests.unit.drivers.modules.test_snmp.SNMPDeviceDriverTestCase.test_teltronix_snmp_objects [0.011716s] ... ok {18} ironic.tests.unit.drivers.modules.test_snmp.SNMPValidateParametersTestCase.test__parse_driver_info_snmp_v3_context_name [0.011480s] ... ok {18} ironic.tests.unit.drivers.modules.xclarity.test_management.XClarityManagementDriverTestCase.test_get_supported_boot_devices [0.047806s] ... ok {18} ironic.tests.unit.drivers.test_base.PassthruDecoratorTestCase.test_passthru_check_func_references [0.008163s] ... ok {18} ironic.tests.unit.drivers.test_base.PassthruDecoratorTestCase.test_passthru_noexception [0.007734s] ... ok {18} ironic.tests.unit.drivers.test_base.TestManagementInterface.test_set_boot_mode_default_impl [0.010472s] ... ok {18} ironic.tests.unit.drivers.test_drac.IDRACHardwareTestCase.test_override_no_vendor [0.048508s] ... ok {18} ironic.tests.unit.drivers.test_fake_hardware.FakeHardwareTestCase.test_management_interface_get_boot_device [0.050496s] ... ok {18} ironic.tests.unit.drivers.test_utils.UtilsRamdiskLogsTestCase.test_collect_ramdisk_logs_storage_fail_unkown [0.014371s] ... ok {18} ironic.tests.unit.drivers.test_utils.UtilsTestCase.test_capabilities_to_dict_with_only_key_or_value_fail [0.017125s] ... ok {18} ironic.tests.unit.drivers.test_utils.UtilsTestCase.test_force_persistent_boot_true [0.070616s] ... ok {18} ironic.tests.unit.objects.test_allocation.TestAllocationObject.test_list [0.012951s] ... ok {18} ironic.tests.unit.objects.test_chassis.TestChassisObject.test_payload_schemas [0.010669s] ... ok {18} ironic.tests.unit.objects.test_conductor.TestConductorObject.test_unregister [0.016075s] ... ok {18} ironic.tests.unit.objects.test_fields.TestMacAddressField.test_coerce [0.007523s] ... ok {18} ironic.tests.unit.objects.test_node.TestConvertToVersion.test_bios_supported_missing [0.011374s] ... ok {18} ironic.tests.unit.objects.test_node.TestConvertToVersion.test_protected_unsupported_missing [0.011902s] ... ok {18} ironic.tests.unit.objects.test_node.TestNodeObject.test__validate_property_values_success [0.014466s] ... ok {18} ironic.tests.unit.objects.test_notification.TestNotificationBase.test_populate_schema [0.007300s] ... ok {18} ironic.tests.unit.objects.test_objects.TestObject.test_convert_to_version_old_keep [0.008043s] ... ok {18} ironic.tests.unit.objects.test_portgroup.TestConvertToVersion.test_vif_in_extra [0.010634s] ... ok {18} ironic.tests.unit.objects.test_portgroup.TestPortgroupObject.test_get_by_id [0.014427s] ... ok {18} ironic.tests.unit.objects.test_volume_connector.TestVolumeConnectorObject.test_create [0.013368s] ... ok ====== Totals ====== Ran: 5825 tests in 97.0000 sec. - Passed: 5813 - Skipped: 12 - Expected Fail: 0 - Unexpected Success: 0 - Failed: 0 Sum of execute time for each test: 882.9640 sec. ============== Worker Balance ============== - Worker 0 (183 tests) => 0:00:14.862083 - Worker 1 (182 tests) => 0:00:19.884495 - Worker 2 (182 tests) => 0:00:14.384362 - Worker 3 (182 tests) => 0:00:26.207829 - Worker 4 (182 tests) => 0:00:38.781642 - Worker 5 (182 tests) => 0:00:16.308507 - Worker 6 (182 tests) => 0:00:24.074572 - Worker 7 (182 tests) => 0:00:31.458265 - Worker 8 (182 tests) => 0:00:21.404100 - Worker 9 (182 tests) => 0:00:15.736732 - Worker 10 (182 tests) => 0:00:22.493653 - Worker 11 (182 tests) => 0:00:42.317762 - Worker 12 (182 tests) => 0:00:21.512965 - Worker 13 (182 tests) => 0:00:38.888429 - Worker 14 (182 tests) => 0:00:34.307433 - Worker 15 (182 tests) => 0:01:09.870457 - Worker 16 (182 tests) => 0:00:46.035066 - Worker 17 (182 tests) => 0:00:19.470326 - Worker 18 (182 tests) => 0:01:24.638993 - Worker 19 (182 tests) => 0:00:22.630640 - Worker 20 (182 tests) => 0:00:43.007904 - Worker 21 (182 tests) => 0:00:25.048672 - Worker 22 (182 tests) => 0:00:37.303188 - Worker 23 (182 tests) => 0:00:16.082285 - Worker 24 (182 tests) => 0:00:55.140002 - Worker 25 (182 tests) => 0:00:21.818205 - Worker 26 (182 tests) => 0:00:26.347944 - Worker 27 (182 tests) => 0:00:28.718928 - Worker 28 (182 tests) => 0:00:16.341447 - Worker 29 (182 tests) => 0:00:29.563846 - Worker 30 (182 tests) => 0:00:27.468749 - Worker 31 (182 tests) => 0:00:32.874220 + exit 0 Processing files: openstack-ironic-common-12.1.1-1.el7.noarch warning: File not found: /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/lib/python2.7/site-packages/ironic_tests.egg_info Executing(%doc): /bin/sh -e /var/tmp/rpm-tmp.EApc9P + umask 022 + cd /builddir/build/BUILD + cd ironic-12.1.1 + DOCDIR=/builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/share/doc/openstack-ironic-common-12.1.1 + export DOCDIR + /usr/bin/mkdir -p /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/share/doc/openstack-ironic-common-12.1.1 + cp -pr README.rst /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/share/doc/openstack-ironic-common-12.1.1 + exit 0 Executing(%license): /bin/sh -e /var/tmp/rpm-tmp.YG2s8p + umask 022 + cd /builddir/build/BUILD + cd ironic-12.1.1 + LICENSEDIR=/builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/share/licenses/openstack-ironic-common-12.1.1 + export LICENSEDIR + /usr/bin/mkdir -p /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/share/licenses/openstack-ironic-common-12.1.1 + cp -pr LICENSE /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch/usr/share/licenses/openstack-ironic-common-12.1.1 + exit 0 Provides: config(openstack-ironic-common) = 1:12.1.1-1.el7 openstack-ironic-common = 1:12.1.1-1.el7 Requires(interp): /bin/sh Requires(rpmlib): rpmlib(CompressedFileNames) <= 3.0.4-1 rpmlib(FileDigests) <= 4.6.0-1 rpmlib(PartialHardlinkSets) <= 4.0.4-1 rpmlib(PayloadFilesHavePrefix) <= 4.0-1 Requires(pre): /bin/sh shadow-utils Requires: /bin/sh /usr/bin/python2 python(abi) = 2.7 Processing files: openstack-ironic-api-12.1.1-1.el7.noarch Provides: openstack-ironic-api = 1:12.1.1-1.el7 Requires(interp): /bin/sh /bin/sh /bin/sh Requires(rpmlib): rpmlib(CompressedFileNames) <= 3.0.4-1 rpmlib(FileDigests) <= 4.6.0-1 rpmlib(PayloadFilesHavePrefix) <= 4.0-1 Requires(post): /bin/sh systemd Requires(preun): /bin/sh systemd Requires(postun): /bin/sh systemd Requires: /usr/bin/python2 Processing files: openstack-ironic-conductor-12.1.1-1.el7.noarch Provides: openstack-ironic-conductor = 1:12.1.1-1.el7 Requires(interp): /bin/sh /bin/sh /bin/sh Requires(rpmlib): rpmlib(CompressedFileNames) <= 3.0.4-1 rpmlib(FileDigests) <= 4.6.0-1 rpmlib(PayloadFilesHavePrefix) <= 4.0-1 Requires(post): /bin/sh systemd Requires(preun): /bin/sh systemd Requires(postun): /bin/sh systemd Requires: /usr/bin/python2 Processing files: python2-ironic-tests-12.1.1-1.el7.noarch Provides: python-ironic-tests = 1:12.1.1-1.el7 python2-ironic-tests = 1:12.1.1-1.el7 Requires(rpmlib): rpmlib(CompressedFileNames) <= 3.0.4-1 rpmlib(FileDigests) <= 4.6.0-1 rpmlib(PartialHardlinkSets) <= 4.0.4-1 rpmlib(PayloadFilesHavePrefix) <= 4.0-1 Requires: python(abi) = 2.7 Obsoletes: python-ironic-tests < 1:12.1.1-1.el7 Checking for unpackaged file(s): /usr/lib/rpm/check-files /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch Wrote: /builddir/build/RPMS/openstack-ironic-common-12.1.1-1.el7.noarch.rpm Wrote: /builddir/build/RPMS/openstack-ironic-api-12.1.1-1.el7.noarch.rpm Wrote: /builddir/build/RPMS/openstack-ironic-conductor-12.1.1-1.el7.noarch.rpm Wrote: /builddir/build/RPMS/python2-ironic-tests-12.1.1-1.el7.noarch.rpm Executing(%clean): /bin/sh -e /var/tmp/rpm-tmp.eshIUm + umask 022 + cd /builddir/build/BUILD + cd ironic-12.1.1 + /usr/bin/rm -rf /builddir/build/BUILDROOT/openstack-ironic-12.1.1-1.el7.noarch + exit 0 Child return code was: 0