Commission scripts select the wrong nvme device link, then fails to report any storage
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
MAAS |
Fix Released
|
High
|
Unassigned | ||
2.1 |
Fix Released
|
High
|
Andres Rodriguez | ||
systemd (Ubuntu) |
Invalid
|
Undecided
|
Unassigned |
Bug Description
The udev package provides /lib/udev/
This issue has blocked all test runs performed by the CDO-QA test infrastructure, since every run installs MAAS on a fresh machine and commissions new nodes. The failure is seen when installing from either ppa:maas/next (2.2.0~beta2) or ppa:maas/stable (2.1.3+bzr5573).
ubuntu@meowth:~$ dpkg -l '*maas*'|cat
Desired=
| Status=
|/ Err?=(none)
||/ Name Version Architecture Description
+++-===
ii maas 2.2.0~beta2+
ii maas-cli 2.2.0~beta2+
un maas-cluster-
ii maas-common 2.2.0~beta2+
ii maas-dhcp 2.2.0~beta2+
ii maas-dns 2.2.0~beta2+
ii maas-proxy 2.2.0~beta2+
ii maas-rack-
ii maas-region-api 2.2.0~beta2+
ii maas-region-
un maas-region-
un python-django-maas <none> <none> (no description available)
un python-maas-client <none> <none> (no description available)
un python-
ii python3-django-maas 2.2.0~beta2+
ii python3-maas-client 2.2.0~beta2+
ii python3-
After re-commissioning one of the servers with ssh enabled the attached log files were collected. Please note that from the shell it can be seen that block devices are discovered and even the commissioning output found in /tmp/user_
There are 'HTTP Error 500: INTERNAL SERVER ERROR' errors in cloud-init-
ubuntu@azurill:~$ uname -a
Linux azurill 4.8.0-34-generic #36~16.04.1-Ubuntu SMP Wed Dec 21 18:55:08 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux
ubuntu@azurill:~$ sudo lsblk --exclude 1,2,7 -d -P -o NAME,RO,
NAME="sdb" RO="0" RM="0" MODEL="LOGICAL VOLUME " ROTA="1"
NAME="sdc" RO="1" RM="0" MODEL="VIRTUAL-DISK " ROTA="1"
NAME="sda" RO="0" RM="0" MODEL="LOGICAL VOLUME " ROTA="1"
NAME="nvme0n1" RO="0" RM="0" MODEL="INTEL SSDPEDME400G4
Related branches
- Mike Pontillo (community): Approve
-
Diff: 57 lines (+29/-2)3 files modifiedsrc/maasserver/migrations/builtin/maasserver/0113_set_filepath_limit_to_linux_max.py (+27/-0)
src/maasserver/models/blockdevice.py (+1/-1)
src/maasserver/models/bootsource.py (+1/-1)
- Blake Rouse (community): Needs Fixing
-
Diff: 22 lines (+7/-1)1 file modifiedsrc/provisioningserver/refresh/node_info_scripts.py (+7/-1)
- MAAS Maintainers: Pending requested
-
Diff: 84231 lines (+48827/-17108) (has conflicts)632 files modified.bzrignore (+5/-7)
.gitignore (+5/-9)
HACKING.txt (+22/-5)
MANIFEST.in (+18/-5)
Makefile (+88/-60)
buildout.cfg (+72/-39)
docs/_templates/maas/static/css/main.css (+14/-0)
docs/about.rst (+0/-50)
docs/bootsources.rst (+0/-113)
docs/changelog.rst (+99/-874)
docs/conf.py (+2/-1)
docs/configure.rst (+0/-135)
docs/development/notifications.rst (+198/-0)
docs/devices.rst (+0/-28)
docs/dhcpsnippets.rst (+0/-111)
docs/getting-help.rst (+0/-49)
docs/ha.rst (+0/-290)
docs/hardware-enablement-kernels.rst (+0/-80)
docs/index.rst (+1/-55)
docs/installing-ubuntu.rst (+0/-36)
docs/ipv6.rst (+0/-150)
docs/juju-quick-start.rst (+0/-145)
docs/kernel-options.rst (+0/-38)
docs/networking.rst (+0/-270)
docs/nodes.rst (+0/-98)
docs/orientation.rst (+0/-107)
docs/os-support.rst (+0/-121)
docs/packagerepositories.rst (+0/-71)
docs/physical-zones.rst (+0/-132)
docs/power-driver-capabilities.rst (+0/-48)
docs/proxy.rst (+0/-81)
docs/rack-configuration.rst (+0/-192)
docs/releases.rst (+21/-54)
docs/sstreams-mirror.rst (+0/-64)
docs/static-ips.rst (+0/-53)
docs/storage.rst (+0/-679)
docs/tags.rst (+0/-124)
media/README (+4/-4)
required-packages/dev (+5/-3)
required-packages/forbidden (+3/-0)
required-packages/yakkety (+2/-0)
required-packages/zesty (+2/-0)
services/reloader/run (+1/-1)
src/maascli/cli.py (+2/-2)
src/maasserver/__init__.py (+1/-1)
src/maasserver/__main__.py (+9/-0)
src/maasserver/api/blockdevices.py (+1/-1)
src/maasserver/api/boot_source_selections.py (+2/-0)
src/maasserver/api/dhcpsnippets.py (+1/-1)
src/maasserver/api/dnsresourcerecords.py (+2/-2)
src/maasserver/api/dnsresources.py (+1/-1)
src/maasserver/api/doc.py (+52/-10)
src/maasserver/api/doc_handler.py (+14/-10)
src/maasserver/api/domains.py (+1/-1)
src/maasserver/api/fabrics.py (+1/-1)
src/maasserver/api/fannetworks.py (+1/-1)
src/maasserver/api/interfaces.py (+8/-8)
src/maasserver/api/ipranges.py (+1/-1)
src/maasserver/api/maas.py (+1/-1)
src/maasserver/api/machines.py (+37/-27)
src/maasserver/api/nodes.py (+57/-7)
src/maasserver/api/notification.py (+145/-0)
src/maasserver/api/packagerepositories.py (+1/-1)
src/maasserver/api/partitions.py (+1/-1)
src/maasserver/api/pods.py (+229/-0)
src/maasserver/api/rackcontrollers.py (+3/-3)
src/maasserver/api/results.py (+52/-13)
src/maasserver/api/spaces.py (+76/-5)
src/maasserver/api/staticroutes.py (+1/-1)
src/maasserver/api/subnets.py (+185/-52)
src/maasserver/api/tags.py (+1/-2)
src/maasserver/api/tests/test_api.py (+5/-5)
src/maasserver/api/tests/test_boot_resources.py (+2/-2)
src/maasserver/api/tests/test_boot_source_selections.py (+1/-1)
src/maasserver/api/tests/test_commissioning.py (+199/-103)
src/maasserver/api/tests/test_dhcpsnippets.py (+3/-3)
src/maasserver/api/tests/test_discoveries.py (+5/-8)
src/maasserver/api/tests/test_doc.py (+35/-15)
src/maasserver/api/tests/test_enlistment.py (+6/-4)
src/maasserver/api/tests/test_events.py (+0/-1)
src/maasserver/api/tests/test_interfaces.py (+0/-2)
src/maasserver/api/tests/test_ipaddresses.py (+0/-10)
src/maasserver/api/tests/test_licensekey.py (+1/-1)
src/maasserver/api/tests/test_maas.py (+1/-1)
src/maasserver/api/tests/test_machine.py (+46/-59)
src/maasserver/api/tests/test_machines.py (+43/-5)
src/maasserver/api/tests/test_node.py (+123/-8)
src/maasserver/api/tests/test_nodes.py (+0/-1)
src/maasserver/api/tests/test_notification.py (+313/-0)
src/maasserver/api/tests/test_packagerepositories.py (+6/-4)
src/maasserver/api/tests/test_pods.py (+365/-0)
src/maasserver/api/tests/test_rackcontroller.py (+7/-7)
src/maasserver/api/tests/test_spaces.py (+126/-0)
src/maasserver/api/tests/test_subnets.py (+79/-41)
src/maasserver/api/tests/test_tag.py (+5/-3)
src/maasserver/api/tests/test_utils.py (+11/-3)
src/maasserver/api/tests/test_vlans.py (+160/-1)
src/maasserver/api/tests/test_volume_groups.py (+1/-1)
src/maasserver/api/vlans.py (+31/-17)
src/maasserver/bootresources.py (+43/-17)
src/maasserver/bootsources.py (+3/-1)
src/maasserver/clusterrpc/driver_parameters.py (+77/-53)
src/maasserver/clusterrpc/pods.py (+161/-0)
src/maasserver/clusterrpc/power.py (+1/-1)
src/maasserver/clusterrpc/testing/driver_parameters.py (+27/-15)
src/maasserver/clusterrpc/tests/test_boot_images.py (+1/-2)
src/maasserver/clusterrpc/tests/test_driver_parameters.py (+56/-42)
src/maasserver/clusterrpc/tests/test_pods.py (+368/-0)
src/maasserver/clusterrpc/utils.py (+1/-1)
src/maasserver/components.py (+30/-20)
src/maasserver/compose_preseed.py (+39/-5)
src/maasserver/context_processors.py (+0/-2)
src/maasserver/dbviews.py (+9/-24)
src/maasserver/dhcp.py (+49/-67)
src/maasserver/djangosettings/demo.py (+1/-1)
src/maasserver/djangosettings/development.py (+6/-7)
src/maasserver/djangosettings/settings.py (+3/-3)
src/maasserver/djangosettings/tests/test_settings.py (+2/-2)
src/maasserver/dns/tests/test_config.py (+3/-3)
src/maasserver/dns/tests/test_zonegenerator.py (+29/-42)
src/maasserver/enum.py (+38/-1)
src/maasserver/eventloop.py (+2/-16)
src/maasserver/exceptions.py (+14/-3)
src/maasserver/fields.py (+13/-0)
src/maasserver/forms/__init__.py (+100/-97)
src/maasserver/forms/ephemeral.py (+130/-30)
src/maasserver/forms/notification.py (+39/-0)
src/maasserver/forms/pods.py (+287/-0)
src/maasserver/forms/settings.py (+33/-0)
src/maasserver/forms/subnet.py (+13/-13)
src/maasserver/forms/tests/test_config.py (+2/-4)
src/maasserver/forms/tests/test_controller.py (+2/-2)
src/maasserver/forms/tests/test_dhcpsnippet.py (+4/-4)
src/maasserver/forms/tests/test_dnsdata.py (+1/-1)
src/maasserver/forms/tests/test_dnsresource.py (+1/-1)
src/maasserver/forms/tests/test_domain.py (+1/-1)
src/maasserver/forms/tests/test_ephemeral.py (+174/-24)
src/maasserver/forms/tests/test_fabric.py (+1/-1)
src/maasserver/forms/tests/test_fannetwork.py (+1/-1)
src/maasserver/forms/tests/test_filesystem.py (+1/-1)
src/maasserver/forms/tests/test_helpers.py (+2/-2)
src/maasserver/forms/tests/test_interface.py (+1/-1)
src/maasserver/forms/tests/test_interface_link.py (+8/-43)
src/maasserver/forms/tests/test_iprange.py (+1/-1)
src/maasserver/forms/tests/test_machine.py (+2/-2)
src/maasserver/forms/tests/test_notification.py (+108/-0)
src/maasserver/forms/tests/test_packagerepository.py (+1/-1)
src/maasserver/forms/tests/test_pods.py (+473/-0)
src/maasserver/forms/tests/test_settings.py (+2/-6)
src/maasserver/forms/tests/test_space.py (+1/-1)
src/maasserver/forms/tests/test_staticroute.py (+1/-1)
src/maasserver/forms/tests/test_subnet.py (+48/-52)
src/maasserver/forms/tests/test_ubuntu.py (+1/-1)
src/maasserver/forms/tests/test_vlan.py (+126/-1)
src/maasserver/forms/vlan.py (+49/-7)
src/maasserver/locks.py (+3/-3)
src/maasserver/management/commands/dbupgrade.py (+50/-6)
src/maasserver/management/commands/tests/test_dbupgrade.py (+4/-1)
src/maasserver/migrations/builtin/maasserver/0016_migrate_power_data_node_to_bmc.py (+9/-7)
src/maasserver/migrations/builtin/maasserver/0022_extract_ip_for_bmcs.py (+6/-3)
src/maasserver/migrations/builtin/maasserver/0027_replace_static_range_with_admin_reserved_ranges.py (+1/-1)
src/maasserver/migrations/builtin/maasserver/0056_add_description_to_fabric_and_space.py (+1/-1)
src/maasserver/migrations/builtin/maasserver/0094_add_unmanaged_subnets.py (+22/-0)
src/maasserver/migrations/builtin/maasserver/0095_vlan_relay_vlan.py (+23/-0)
src/maasserver/migrations/builtin/maasserver/0096_set_default_vlan_field.py (+23/-0)
src/maasserver/migrations/builtin/maasserver/0097_node_chassis_storage_hints.py (+73/-0)
src/maasserver/migrations/builtin/maasserver/0098_add_space_to_vlan.py (+24/-0)
src/maasserver/migrations/builtin/maasserver/0099_set_default_vlan_field.py (+24/-0)
src/maasserver/migrations/builtin/maasserver/0100_migrate_spaces_from_subnet_to_vlan.py (+47/-0)
src/maasserver/migrations/builtin/maasserver/0101_filesystem_btrfs_support.py (+22/-0)
src/maasserver/migrations/builtin/maasserver/0102_remove_space_from_subnet.py (+25/-0)
src/maasserver/migrations/builtin/maasserver/0103_notifications.py (+44/-0)
src/maasserver/migrations/builtin/maasserver/0104_notifications_dismissals.py (+27/-0)
src/maasserver/migrations/builtin/maasserver/0105_add_script_sets_to_node_model.py (+34/-0)
src/maasserver/migrations/builtin/maasserver/0106_testing_status.py (+27/-0)
src/maasserver/migrations/builtin/maasserver/0107_chassis_to_pods.py (+107/-0)
src/maasserver/migrations/builtin/maasserver/0108_generate_bmc_names.py (+28/-0)
src/maasserver/migrations/builtin/maasserver/0109_bmc_names_unique.py (+22/-0)
src/maasserver/migrations/builtin/maasserver/0110_notification_category.py (+23/-0)
src/maasserver/migrations/builtin/maasserver/0111_remove_component_error.py (+14/-0)
src/maasserver/migrations/builtin/maasserver/0112_update_notification.py (+38/-0)
src/maasserver/migrations/builtin/maasserver/0113_set_filepath_limit_to_linux_max.py (+27/-0)
src/maasserver/migrations/builtin/maasserver/0114_node_dynamic_to_creation_type.py (+26/-0)
src/maasserver/models/__init__.py (+15/-7)
src/maasserver/models/blockdevice.py (+54/-1)
src/maasserver/models/bmc.py (+652/-15)
src/maasserver/models/bootsource.py (+1/-1)
src/maasserver/models/component_error.py (+0/-30)
src/maasserver/models/config.py (+3/-0)
src/maasserver/models/event.py (+8/-1)
src/maasserver/models/interface.py (+91/-9)
src/maasserver/models/node.py (+460/-143)
src/maasserver/models/nodeprobeddetails.py (+54/-37)
src/maasserver/models/notification.py (+248/-0)
src/maasserver/models/podhints.py (+35/-0)
src/maasserver/models/signals/bmc.py (+36/-7)
src/maasserver/models/signals/nodes.py (+62/-2)
src/maasserver/models/signals/tests/test_bmc.py (+29/-1)
src/maasserver/models/signals/tests/test_nodes.py (+137/-1)
src/maasserver/models/space.py (+15/-2)
src/maasserver/models/staticipaddress.py (+207/-28)
src/maasserver/models/subnet.py (+82/-23)
src/maasserver/models/tests/test_blockdevice.py (+26/-0)
src/maasserver/models/tests/test_bmc.py (+518/-3)
src/maasserver/models/tests/test_config.py (+32/-1)
src/maasserver/models/tests/test_discovery.py (+2/-6)
src/maasserver/models/tests/test_dnsdata.py (+12/-8)
src/maasserver/models/tests/test_dnspublication.py (+5/-0)
src/maasserver/models/tests/test_event.py (+10/-0)
src/maasserver/models/tests/test_interface.py (+117/-40)
src/maasserver/models/tests/test_managers.py (+3/-3)
src/maasserver/models/tests/test_neighbour.py (+2/-2)
src/maasserver/models/tests/test_node.py (+715/-240)
src/maasserver/models/tests/test_nodeprobeddetails.py (+71/-76)
src/maasserver/models/tests/test_notification.py (+265/-0)
src/maasserver/models/tests/test_space.py (+16/-7)
src/maasserver/models/tests/test_staticipaddress.py (+135/-112)
src/maasserver/models/tests/test_subnet.py (+114/-50)
src/maasserver/models/tests/test_timestampedmodel.py (+3/-3)
src/maasserver/models/tests/test_vlan.py (+28/-0)
src/maasserver/models/vlan.py (+19/-0)
src/maasserver/node_action.py (+52/-22)
src/maasserver/node_constraint_filter_forms.py (+192/-131)
src/maasserver/node_status.py (+60/-1)
src/maasserver/plugin.py (+2/-6)
src/maasserver/populate_tags.py (+2/-2)
src/maasserver/preseed.py (+9/-3)
src/maasserver/preseed_network.py (+228/-287)
src/maasserver/regiondservices/tests/test_ntp.py (+0/-12)
src/maasserver/rpc/nodes.py (+8/-7)
src/maasserver/rpc/rackcontrollers.py (+10/-3)
src/maasserver/rpc/regionservice.py (+16/-19)
src/maasserver/rpc/tests/test_nodes.py (+5/-5)
src/maasserver/rpc/tests/test_rackcontrollers.py (+7/-1)
src/maasserver/rpc/tests/test_regionservice.py (+4/-1)
src/maasserver/start_up.py (+3/-0)
src/maasserver/static/assets/images/04d2075a-chevron-down.svg (+10/-0)
src/maasserver/static/assets/images/1cdcdb82-system-shutdown.svg (+1/-0)
src/maasserver/static/assets/images/2355399b-info.svg (+1/-0)
src/maasserver/static/assets/images/314a253d-settings.svg (+1/-0)
src/maasserver/static/assets/images/3fd57564-mount.svg (+1/-0)
src/maasserver/static/assets/images/46b44caf-checkbox-hover.svg (+15/-0)
src/maasserver/static/assets/images/480f6014-add-partition.svg (+1/-0)
src/maasserver/static/assets/images/501ee9c0-add-logical-volume.svg (+1/-0)
src/maasserver/static/assets/images/50fc9223-power-off.svg (+20/-0)
src/maasserver/static/assets/images/5777c0c7-warning.svg (+1/-0)
src/maasserver/static/assets/images/5c9708d2-add.svg (+1/-0)
src/maasserver/static/assets/images/6c395e6d-green-tick.svg (+16/-0)
src/maasserver/static/assets/images/82993327-mount.svg (+1/-0)
src/maasserver/static/assets/images/89c10794-remove.svg (+1/-0)
src/maasserver/static/assets/images/89c6b797-success.svg (+17/-0)
src/maasserver/static/assets/images/8b8eb7d5-partition.svg (+1/-0)
src/maasserver/static/assets/images/908ee6a0-help.svg (+1/-0)
src/maasserver/static/assets/images/9cc42dcc-magnifying_glass.svg (+1/-0)
src/maasserver/static/assets/images/a02192e3-debug.svg (+1/-0)
src/maasserver/static/assets/images/b2fadbbe-tooltip.svg (+1/-0)
src/maasserver/static/assets/images/b5573b6a-delete.svg (+1/-0)
src/maasserver/static/assets/images/b562c17f-edit.svg (+1/-0)
src/maasserver/static/assets/images/b77e606e-logical-volume.svg (+1/-0)
src/maasserver/static/assets/images/b8119c45-power-error.svg (+20/-0)
src/maasserver/static/assets/images/d0374f79-tags.svg (+1/-0)
src/maasserver/static/assets/images/d53683c4-power-on.svg (+20/-0)
src/maasserver/static/assets/images/d730daea-error.svg (+1/-0)
src/maasserver/static/assets/images/d760df7b-account.svg (+1/-0)
src/maasserver/static/assets/images/d88a05ba-unmount.svg (+1/-0)
src/maasserver/static/assets/images/db8d0984-checkbox.svg (+11/-0)
src/maasserver/static/assets/images/f3f43376-chevron-up.svg (+10/-0)
src/maasserver/static/assets/images/f5453933-sync.svg (+1/-0)
src/maasserver/static/assets/images/forms/checkbox-checked.svg (+0/-24)
src/maasserver/static/assets/images/forms/checkbox.svg (+0/-23)
src/maasserver/static/assets/images/forms/chevron-down.svg (+0/-12)
src/maasserver/static/assets/images/forms/chevron-up.svg (+0/-12)
src/maasserver/static/assets/images/forms/chevron_down.svg (+0/-12)
src/maasserver/static/assets/images/forms/chevron_up.svg (+0/-12)
src/maasserver/static/assets/images/logos/logo-ubuntu-orange.svg (+0/-60)
src/maasserver/static/assets/images/logos/maas-logo.svg (+0/-63)
src/maasserver/static/css/build.css (+1/-0)
src/maasserver/static/js/angular/3rdparty/sticky.min.js (+684/-0)
src/maasserver/static/js/angular/controllers/dashboard.js (+2/-2)
src/maasserver/static/js/angular/controllers/fabric_details.js (+3/-1)
src/maasserver/static/js/angular/controllers/networks_list.js (+27/-4)
src/maasserver/static/js/angular/controllers/node_details.js (+9/-2)
src/maasserver/static/js/angular/controllers/node_events.js (+14/-7)
src/maasserver/static/js/angular/controllers/node_result.js (+14/-6)
src/maasserver/static/js/angular/controllers/subnet_details.js (+9/-2)
src/maasserver/static/js/angular/controllers/tests/test_networks_list.js (+41/-17)
src/maasserver/static/js/angular/controllers/tests/test_node_details.js (+33/-0)
src/maasserver/static/js/angular/controllers/tests/test_node_events.js (+19/-2)
src/maasserver/static/js/angular/controllers/tests/test_node_result.js (+17/-2)
src/maasserver/static/js/angular/controllers/tests/test_subnet_details.js (+3/-1)
src/maasserver/static/js/angular/controllers/tests/test_vlan_details.js (+57/-7)
src/maasserver/static/js/angular/controllers/vlan_details.js (+131/-32)
src/maasserver/static/js/angular/directives/call_to_action.js (+4/-6)
src/maasserver/static/js/angular/directives/error_overlay.js (+1/-1)
src/maasserver/static/js/angular/directives/notifications.js (+102/-0)
src/maasserver/static/js/angular/directives/os_select.js (+25/-18)
src/maasserver/static/js/angular/directives/power_parameters.js (+2/-2)
src/maasserver/static/js/angular/directives/tests/test_notifications.js (+192/-0)
src/maasserver/static/js/angular/directives/tests/test_power_parameters.js (+2/-2)
src/maasserver/static/js/angular/directives/tests/test_window_width.js (+53/-0)
src/maasserver/static/js/angular/directives/version_reloader.js (+10/-5)
src/maasserver/static/js/angular/directives/window_width.js (+33/-0)
src/maasserver/static/js/angular/factories/events.js (+1/-1)
src/maasserver/static/js/angular/factories/notifications.js (+34/-0)
src/maasserver/static/js/angular/factories/tests/test_events.js (+1/-1)
src/maasserver/static/js/angular/factories/tests/test_notifications.js (+47/-0)
src/maasserver/static/js/angular/factories/tests/test_region.js (+6/-2)
src/maasserver/static/js/angular/factories/tests/test_vlans.js (+6/-3)
src/maasserver/static/js/angular/factories/vlans.js (+12/-7)
src/maasserver/static/js/angular/filters/by_space.js (+16/-4)
src/maasserver/static/js/angular/filters/by_vlan.js (+0/-15)
src/maasserver/static/js/angular/maas.js (+15/-0)
src/maasserver/static/js/angular/services/log.js (+93/-0)
src/maasserver/static/js/angular/services/tests/test_log.js (+112/-0)
src/maasserver/static/js/angular/testing/setup.js (+19/-0)
src/maasserver/static/js/prefs.js (+2/-2)
src/maasserver/static/js/tests/test_prefs.js (+1/-1)
src/maasserver/static/partials/boot-images.html (+23/-23)
src/maasserver/static/partials/dashboard.html (+188/-0)
src/maasserver/static/partials/domain-details.html (+15/-8)
src/maasserver/static/partials/domains-list.html (+10/-6)
src/maasserver/static/partials/error.html (+4/-0)
src/maasserver/static/partials/fabric-details.html (+16/-8)
src/maasserver/static/partials/intro-user.html (+33/-0)
src/maasserver/static/partials/intro.html (+71/-0)
src/maasserver/static/partials/ipranges.html (+25/-19)
src/maasserver/static/partials/networks-list.html (+60/-38)
src/maasserver/static/partials/node-details.html (+1052/-826)
src/maasserver/static/partials/node-events.html (+7/-3)
src/maasserver/static/partials/node-result.html (+9/-1)
src/maasserver/static/partials/nodes-list.html (+220/-144)
src/maasserver/static/partials/settings.html (+209/-72)
src/maasserver/static/partials/space-details.html (+11/-3)
src/maasserver/static/partials/ssh-keys.html (+14/-2)
src/maasserver/static/partials/subnet-details.html (+85/-28)
src/maasserver/static/partials/vlan-details.html (+112/-32)
src/maasserver/static/scss/_base.definition-list.scss (+0/-35)
src/maasserver/static/scss/_base.maas-gui-vanilla-theme.scss (+80/-0)
src/maasserver/static/scss/_base.main.scss (+0/-18)
src/maasserver/static/scss/_base.typography.scss (+0/-78)
src/maasserver/static/scss/_components.code.scss (+0/-44)
src/maasserver/static/scss/_components.list-tree.scss (+0/-57)
src/maasserver/static/scss/_components.tabs.scss (+0/-51)
src/maasserver/static/scss/_components.tooltips.scss (+0/-125)
src/maasserver/static/scss/_helpers.animations.scss (+0/-45)
src/maasserver/static/scss/_helpers.borders.scss (+0/-45)
src/maasserver/static/scss/_helpers.mixins.scss (+0/-59)
src/maasserver/static/scss/_helpers.state.scss (+0/-37)
src/maasserver/static/scss/_helpers.vertical-alignment.scss (+0/-15)
src/maasserver/static/scss/_layout.row.scss (+0/-19)
src/maasserver/static/scss/_layout.wrapper.scss (+0/-42)
src/maasserver/static/scss/_pages.scratch.scss (+14/-2)
src/maasserver/static/scss/_patterns.accordion.scss (+0/-122)
src/maasserver/static/scss/_patterns.action-card.scss (+0/-34)
src/maasserver/static/scss/_patterns.header.scss (+0/-64)
src/maasserver/static/scss/_patterns.search.scss (+0/-85)
src/maasserver/static/scss/_settings.defaults.scss (+0/-80)
src/maasserver/static/scss/_settings.fonts.scss (+0/-31)
src/maasserver/static/scss/build.scss (+4/-74)
src/maasserver/templates/maasserver/base.html (+31/-31)
src/maasserver/templates/maasserver/index.html (+10/-12)
src/maasserver/templates/maasserver/logout_confirm.html (+15/-9)
src/maasserver/templates/maasserver/prefs.html (+3/-3)
src/maasserver/templates/maasserver/prefs_add_sslkey.html (+4/-2)
src/maasserver/templates/maasserver/settings.html (+24/-18)
src/maasserver/templates/maasserver/settings_add_commissioning_script.html (+4/-2)
src/maasserver/templates/maasserver/settings_add_license_key.html (+4/-2)
src/maasserver/templates/maasserver/settings_commissioning_scripts.html (+1/-1)
src/maasserver/templates/maasserver/settings_confirm_delete_commissioning_script.html (+4/-2)
src/maasserver/templates/maasserver/settings_confirm_delete_license_key.html (+4/-2)
src/maasserver/templates/maasserver/settings_edit_license_key.html (+1/-1)
src/maasserver/templates/maasserver/settings_license_keys.html (+1/-1)
src/maasserver/templates/maasserver/user_add.html (+4/-2)
src/maasserver/templates/maasserver/user_confirm_delete.html (+4/-2)
src/maasserver/templates/maasserver/user_edit.html (+8/-4)
src/maasserver/templates/maasserver/user_view.html (+2/-2)
src/maasserver/templates/maasserver/zone_add.html (+1/-1)
src/maasserver/templates/maasserver/zone_confirm_delete.html (+4/-2)
src/maasserver/templates/maasserver/zone_detail.html (+2/-2)
src/maasserver/templates/maasserver/zone_edit.html (+4/-2)
src/maasserver/templates/maasserver/zone_list.html (+6/-6)
src/maasserver/templates/registration/login.html (+18/-21)
src/maasserver/testing/api.py (+0/-1)
src/maasserver/testing/factory.py (+198/-73)
src/maasserver/testing/initial.maas_test.sql (+13594/-0)
src/maasserver/testing/matchers.py (+34/-2)
src/maasserver/testing/resources.py (+266/-0)
src/maasserver/testing/sampledata.py (+66/-7)
src/maasserver/testing/testcase.py (+112/-154)
src/maasserver/testing/tests/test_sampledata.py (+0/-5)
src/maasserver/tests/test_auth.py (+0/-5)
src/maasserver/tests/test_bootresources.py (+7/-0)
src/maasserver/tests/test_bootsources.py (+10/-6)
src/maasserver/tests/test_commands.py (+4/-1)
src/maasserver/tests/test_commands_dbupgrade.py (+3/-1)
src/maasserver/tests/test_components.py (+9/-20)
src/maasserver/tests/test_compose_preseed.py (+83/-26)
src/maasserver/tests/test_dbviews.py (+6/-11)
src/maasserver/tests/test_dhcp.py (+56/-83)
src/maasserver/tests/test_docs.py (+54/-0)
src/maasserver/tests/test_eventloop.py (+2/-1)
src/maasserver/tests/test_fields.py (+23/-9)
src/maasserver/tests/test_node_action.py (+136/-54)
src/maasserver/tests/test_node_constraint_filter_forms.py (+105/-5)
src/maasserver/tests/test_ntp.py (+0/-14)
src/maasserver/tests/test_plugin.py (+1/-1)
src/maasserver/tests/test_populate_tags.py (+33/-10)
src/maasserver/tests/test_preseed.py (+27/-10)
src/maasserver/tests/test_preseed_network.py (+4/-4)
src/maasserver/tests/test_routablepairs.py (+0/-5)
src/maasserver/tests/test_service_monitor.py (+1/-1)
src/maasserver/tests/test_start_up.py (+13/-0)
src/maasserver/tests/test_storage_layouts.py (+3/-3)
src/maasserver/tests/test_third_party_drivers.py (+17/-8)
src/maasserver/tests/test_x509.py (+2/-2)
src/maasserver/third_party_drivers.py (+11/-8)
src/maasserver/triggers/system.py (+58/-1)
src/maasserver/triggers/testing.py (+26/-11)
src/maasserver/triggers/tests/test_init.py (+227/-1)
src/maasserver/triggers/tests/test_system_listener.py (+148/-25)
src/maasserver/triggers/tests/test_websocket.py (+0/-127)
src/maasserver/triggers/tests/test_websocket_listener.py (+186/-11)
src/maasserver/triggers/websocket.py (+113/-10)
src/maasserver/urls_api.py (+25/-0)
src/maasserver/utils/orm.py (+102/-20)
src/maasserver/utils/osystems.py (+1/-1)
src/maasserver/utils/tests/test_dblocks.py (+30/-15)
src/maasserver/utils/tests/test_dbtasks.py (+1/-1)
src/maasserver/utils/tests/test_mac.py (+3/-3)
src/maasserver/utils/tests/test_orm.py (+204/-1)
src/maasserver/utils/tests/test_osystems.py (+4/-4)
src/maasserver/utils/tests/test_signals.py (+2/-2)
src/maasserver/utils/tests/test_threads.py (+3/-2)
src/maasserver/views/combo.py (+5/-0)
src/maasserver/views/tests/test_account.py (+7/-4)
src/maasserver/views/tests/test_general.py (+4/-36)
src/maasserver/websockets/handlers/__init__.py (+8/-29)
src/maasserver/websockets/handlers/config.py (+1/-1)
src/maasserver/websockets/handlers/controller.py (+5/-2)
src/maasserver/websockets/handlers/device.py (+7/-2)
src/maasserver/websockets/handlers/dhcpsnippet.py (+1/-1)
src/maasserver/websockets/handlers/fabric.py (+1/-1)
src/maasserver/websockets/handlers/general.py (+4/-4)
src/maasserver/websockets/handlers/iprange.py (+1/-1)
src/maasserver/websockets/handlers/machine.py (+4/-3)
src/maasserver/websockets/handlers/node.py (+48/-27)
src/maasserver/websockets/handlers/notification.py (+73/-0)
src/maasserver/websockets/handlers/packagerepository.py (+1/-1)
src/maasserver/websockets/handlers/space.py (+6/-6)
src/maasserver/websockets/handlers/staticroute.py (+1/-1)
src/maasserver/websockets/handlers/subnet.py (+23/-2)
src/maasserver/websockets/handlers/tests/test_config.py (+1/-1)
src/maasserver/websockets/handlers/tests/test_controller.py (+6/-0)
src/maasserver/websockets/handlers/tests/test_device.py (+0/-6)
src/maasserver/websockets/handlers/tests/test_dhcpsnippet.py (+1/-1)
src/maasserver/websockets/handlers/tests/test_discovery.py (+0/-5)
src/maasserver/websockets/handlers/tests/test_domain.py (+9/-4)
src/maasserver/websockets/handlers/tests/test_general.py (+11/-8)
src/maasserver/websockets/handlers/tests/test_machine.py (+58/-31)
src/maasserver/websockets/handlers/tests/test_notification.py (+252/-0)
src/maasserver/websockets/handlers/tests/test_packagerepository.py (+1/-1)
src/maasserver/websockets/handlers/tests/test_space.py (+4/-4)
src/maasserver/websockets/handlers/tests/test_subnet.py (+111/-8)
src/maasserver/websockets/handlers/tests/test_vlan.py (+19/-3)
src/maasserver/websockets/handlers/vlan.py (+16/-9)
src/maasserver/websockets/tests/test_protocol.py (+11/-6)
src/maastesting/djangotestcase.py (+14/-2)
src/maastesting/fixtures.py (+24/-13)
src/maastesting/karma.conf.js (+1/-0)
src/maastesting/matchers.py (+54/-0)
src/maastesting/noseplug.py (+208/-16)
src/maastesting/parallel.py (+399/-0)
src/maastesting/testcase.py (+44/-24)
src/maastesting/tests/test_conflict_markers.py (+20/-17)
src/maastesting/tests/test_factory.py (+13/-10)
src/maastesting/tests/test_fixtures.py (+12/-15)
src/maastesting/tests/test_matchers.py (+89/-0)
src/maastesting/tests/test_noseplug.py (+132/-2)
src/maastesting/tests/test_parallel.py (+242/-0)
src/maastesting/tests/test_testcase.py (+28/-0)
src/maastesting/twisted.py (+19/-0)
src/maastesting/typecheck.py (+21/-0)
src/maastesting/utils.py (+2/-109)
src/metadataserver/address.py (+1/-1)
src/metadataserver/api.py (+423/-128)
src/metadataserver/builtin_scripts/__init__.py (+126/-0)
src/metadataserver/builtin_scripts/smartctl.py (+215/-0)
src/metadataserver/builtin_scripts/tests/test_builtin_scripts.py (+103/-0)
src/metadataserver/builtin_scripts/tests/test_smartctl.py (+262/-0)
src/metadataserver/enum.py (+38/-1)
src/metadataserver/fixtures/initial_data.yaml (+0/-13)
src/metadataserver/migrations/builtin/0002_script_models.py (+83/-0)
src/metadataserver/migrations/builtin/0003_remove_noderesult.py (+83/-0)
src/metadataserver/migrations/builtin/0004_aborted_script_status.py (+22/-0)
src/metadataserver/migrations/builtin/0005_store_powerstate_on_scriptset_creation.py (+22/-0)
src/metadataserver/models/__init__.py (+8/-8)
src/metadataserver/models/commissioningscript.py (+7/-99)
src/metadataserver/models/noderesult.py (+0/-126)
src/metadataserver/models/script.py (+91/-0)
src/metadataserver/models/scriptresult.py (+146/-0)
src/metadataserver/models/scriptset.py (+195/-0)
src/metadataserver/models/tests/test_commissioningscript.py (+1/-138)
src/metadataserver/models/tests/test_nodecommissionresult.py (+0/-157)
src/metadataserver/models/tests/test_script.py (+89/-0)
src/metadataserver/models/tests/test_scriptresult.py (+231/-0)
src/metadataserver/models/tests/test_scriptset.py (+264/-0)
src/metadataserver/nodeinituser.py (+5/-12)
src/metadataserver/tests/test_api.py (+909/-147)
src/metadataserver/tests/test_api_status.py (+85/-35)
src/metadataserver/tests/test_fields.py (+2/-2)
src/metadataserver/tests/test_vendor_data.py (+0/-2)
src/metadataserver/urls.py (+9/-3)
src/metadataserver/user_data/__init__.py (+33/-9)
src/metadataserver/user_data/commissioning.py (+0/-22)
src/metadataserver/user_data/disk_erasing.py (+0/-25)
src/metadataserver/user_data/poweroff.py (+0/-24)
src/metadataserver/user_data/rescue_mode.py (+0/-24)
src/metadataserver/user_data/snippets.py (+5/-6)
src/metadataserver/user_data/templates/base_user_data.sh (+94/-0)
src/metadataserver/user_data/templates/commissioning.template (+57/-196)
src/metadataserver/user_data/templates/disk_erasing.template (+9/-101)
src/metadataserver/user_data/templates/poweroff.template (+2/-2)
src/metadataserver/user_data/templates/rescue_mode.template (+10/-101)
src/metadataserver/user_data/templates/snippets/maas_ipmi_autodetect_tool.py (+8/-0)
src/metadataserver/user_data/templates/snippets/maas_run_remote_scripts.py (+225/-0)
src/metadataserver/user_data/templates/snippets/maas_signal.py (+29/-161)
src/metadataserver/user_data/templates/snippets/maas_wedge_autodetect.sh (+154/-0)
src/metadataserver/user_data/templates/snippets/tests/test_maas_run_remote_scripts.py (+177/-0)
src/metadataserver/user_data/templates/testing.template (+26/-0)
src/metadataserver/user_data/tests/test_commissioning.py (+0/-65)
src/metadataserver/user_data/tests/test_disk_erasing.py (+0/-75)
src/metadataserver/user_data/tests/test_generate_user_data.py (+183/-0)
src/metadataserver/user_data/tests/test_poweroff.py (+0/-37)
src/metadataserver/user_data/tests/test_rescue_mode.py (+0/-37)
src/metadataserver/user_data/tests/test_snippets.py (+7/-6)
src/provisioningserver/boot/__init__.py (+19/-13)
src/provisioningserver/boot/pxe.py (+7/-1)
src/provisioningserver/boot/tests/test_boot.py (+6/-0)
src/provisioningserver/boot/uefi_amd64.py (+12/-2)
src/provisioningserver/dhcp/__init__.py (+5/-5)
src/provisioningserver/dhcp/tests/test_config.py (+31/-102)
src/provisioningserver/diskless.py (+0/-237)
src/provisioningserver/drivers/__init__.py (+78/-104)
src/provisioningserver/drivers/diskless/__init__.py (+0/-102)
src/provisioningserver/drivers/diskless/tests/test_base.py (+0/-163)
src/provisioningserver/drivers/hardware/tests/test_virsh.py (+14/-0)
src/provisioningserver/drivers/hardware/virsh.py (+3/-1)
src/provisioningserver/drivers/osystem/tests/test_windows.py (+1/-1)
src/provisioningserver/drivers/osystem/windows.py (+1/-0)
src/provisioningserver/drivers/pod/__init__.py (+329/-0)
src/provisioningserver/drivers/pod/registry.py (+36/-0)
src/provisioningserver/drivers/pod/rsd.py (+806/-0)
src/provisioningserver/drivers/pod/tests/test_base.py (+696/-0)
src/provisioningserver/drivers/pod/tests/test_registry.py (+56/-0)
src/provisioningserver/drivers/pod/tests/test_rsd.py (+1541/-0)
src/provisioningserver/drivers/pod/tests/test_virsh.py (+1379/-0)
src/provisioningserver/drivers/pod/virsh.py (+930/-0)
src/provisioningserver/drivers/power/__init__.py (+116/-78)
src/provisioningserver/drivers/power/amt.py (+11/-2)
src/provisioningserver/drivers/power/apc.py (+17/-2)
src/provisioningserver/drivers/power/dli.py (+17/-2)
src/provisioningserver/drivers/power/fence_cdu.py (+18/-2)
src/provisioningserver/drivers/power/hmc.py (+19/-2)
src/provisioningserver/drivers/power/ipmi.py (+31/-2)
src/provisioningserver/drivers/power/manual.py (+3/-1)
src/provisioningserver/drivers/power/moonshot.py (+16/-2)
src/provisioningserver/drivers/power/mscm.py (+19/-2)
src/provisioningserver/drivers/power/msftocs.py (+17/-2)
src/provisioningserver/drivers/power/nova.py (+21/-2)
src/provisioningserver/drivers/power/registry.py (+74/-0)
src/provisioningserver/drivers/power/seamicro.py (+27/-2)
src/provisioningserver/drivers/power/tests/test_base.py (+76/-43)
src/provisioningserver/drivers/power/tests/test_registry.py (+70/-0)
src/provisioningserver/drivers/power/ucsm.py (+18/-2)
src/provisioningserver/drivers/power/virsh.py (+18/-2)
src/provisioningserver/drivers/power/vmware.py (+25/-2)
src/provisioningserver/drivers/power/wedge.py (+13/-2)
src/provisioningserver/drivers/tests/test_base.py (+152/-62)
src/provisioningserver/events.py (+87/-6)
src/provisioningserver/import_images/boot_resources.py (+52/-10)
src/provisioningserver/import_images/keyrings.py (+2/-5)
src/provisioningserver/import_images/tests/test_boot_resources.py (+56/-18)
src/provisioningserver/import_images/tests/test_keyrings.py (+3/-1)
src/provisioningserver/plugin.py (+18/-0)
src/provisioningserver/power/change.py (+0/-269)
src/provisioningserver/power/poweraction.py (+0/-136)
src/provisioningserver/power/query.py (+0/-206)
src/provisioningserver/power/schema.py (+0/-476)
src/provisioningserver/power/tests/test_change.py (+0/-563)
src/provisioningserver/power/tests/test_query.py (+0/-557)
src/provisioningserver/rackdservices/node_power_monitor_service.py (+1/-1)
src/provisioningserver/rackdservices/tests/test_tftp.py (+3/-3)
src/provisioningserver/rackdservices/tftp.py (+2/-2)
src/provisioningserver/rackdservices/tftp_offload.py (+207/-0)
src/provisioningserver/refresh/__init__.py (+29/-55)
src/provisioningserver/refresh/maas_api_helper.py (+104/-2)
src/provisioningserver/refresh/node_info_scripts.py (+19/-13)
src/provisioningserver/refresh/tests/test_maas_api_helper.py (+320/-14)
src/provisioningserver/refresh/tests/test_node_info_scripts.py (+2/-2)
src/provisioningserver/refresh/tests/test_refresh.py (+58/-121)
src/provisioningserver/rpc/arguments.py (+68/-0)
src/provisioningserver/rpc/cluster.py (+87/-1)
src/provisioningserver/rpc/clusterservice.py (+42/-9)
src/provisioningserver/rpc/exceptions.py (+13/-0)
src/provisioningserver/rpc/pods.py (+174/-0)
src/provisioningserver/rpc/power.py (+432/-31)
src/provisioningserver/rpc/tests/test_arguments.py (+107/-0)
src/provisioningserver/rpc/tests/test_clusterservice.py (+165/-20)
src/provisioningserver/rpc/tests/test_pods.py (+415/-0)
src/provisioningserver/rpc/tests/test_power.py (+1109/-145)
src/provisioningserver/templates/commissioning-user-data/snippets/maas_api_helper.py (+0/-110)
src/provisioningserver/templates/commissioning-user-data/snippets/maas_get.py (+0/-47)
src/provisioningserver/templates/dns/zone.template (+1/-1)
src/provisioningserver/testing/network.py (+0/-40)
src/provisioningserver/tests/test_config.py (+4/-2)
src/provisioningserver/tests/test_diskless.py (+0/-493)
src/provisioningserver/tests/test_events.py (+22/-7)
src/provisioningserver/tests/test_plugin.py (+21/-1)
src/provisioningserver/tests/test_service_monitor.py (+1/-1)
src/provisioningserver/utils/fs.py (+10/-7)
src/provisioningserver/utils/network.py (+4/-3)
src/provisioningserver/utils/service_monitor.py (+5/-2)
src/provisioningserver/utils/tests/test_enum.py (+3/-3)
src/provisioningserver/utils/tests/test_env.py (+1/-0)
src/provisioningserver/utils/tests/test_fs.py (+15/-10)
src/provisioningserver/utils/tests/test_network.py (+8/-5)
src/provisioningserver/utils/tests/test_service_monitor.py (+18/-1)
src/provisioningserver/utils/tests/test_utils.py (+8/-12)
utilities/check-imports (+71/-55)
utilities/regiond-storm (+127/-0)
utilities/remote-reinstall (+0/-4)
versions.cfg (+29/-22)
- Andres Rodriguez (community): Approve
- Blake Rouse (community): Approve
-
Diff: 126 lines (+89/-1)3 files modifieddocs/changelog.rst (+2/-0)
src/provisioningserver/refresh/node_info_scripts.py (+7/-1)
src/provisioningserver/refresh/tests/test_node_info_scripts.py (+80/-0)
tags: |
added: cdo-qa cdo-qa-blocker removed: cdoqa-blocker |
Changed in maas: | |
status: | Confirmed → Fix Committed |
description: | updated |
description: | updated |
summary: |
- commissioning does not discover block devices on HP ProLiant DL360 Gen9 - servers + Commission scripts select the wrong nvme device link, then fail to + report any storage |
tags: | added: sts |
summary: |
- Commission scripts select the wrong nvme device link, then fail to + Commission scripts select the wrong nvme device link, then fails to report any storage |
Changed in maas: | |
importance: | Undecided → High |
Changed in maas: | |
status: | Fix Committed → Fix Released |
tags: | removed: cdo-qa-blocker |
affects: | udev (Ubuntu) → systemd (Ubuntu) |
Frmo the logs above:
2017-02-15 20:22:04 maasserver: [error] ####### ####### ####### ####### #### Exception: value too long for type character varying(100) ####### ####### ####### ##### python3/ dist-packages/ django/ db/backends/ utils.py" , line 64, in execute execute( sql, params)
######
2017-02-15 20:22:04 maasserver: [error] Traceback (most recent call last):
File "/usr/lib/
return self.cursor.
psycopg2.DataError: value too long for type character varying(100)
The above exception was the direct cause of the following exception:
Traceback (most recent call last): python3/ dist-packages/ django/ core/handlers/ base.py" , line 132, in get_response callback( request, *callback_args, **callback_kwargs) python3/ dist-packages/ maasserver/ utils/views. py", line 177, in view_atomic_ with_post_ commit_ savepoint python3. 5/contextlib. py", line 30, in inner python3/ dist-packages/ maasserver/ api/support. py", line 59, in __call__ python3/ dist-packages/ django/ views/decorator s/vary. py", line 21, in inner_func python3/ dist-packages/ piston3/ resource. py", line 190, in __call__ handler( e, request, meth, em_format) python3/ dist-packages/ piston3/ resource. py", line 188, in __call__ python3/ dist-packages/ maasserver/ api/support. py", line 298, in dispatch python3/ dist-packages/ metadataserver/ api.py" , line 704, in signal python3/ dist-packages/ metadataserver/ api.py" , line 567, in _process_ commissioning commissioning_ script_ set, request, status) python3/ dist-packages/ metadataserver/ api.py" , line 532, in _store_results result. store_result( **args) python3/ dist-packages/ metadataserver/ models/ scriptresult. py", line 144, in store_result status= self.exit_ status) python3/ dist-packages/ metadataserver/ models/ commissioningsc ript.py" , line 348, in update_ node_physical_ block_devices python3/ dist-packages/ django/ db/models/ manager. py", line 127, in manager_method self.get_ queryset( ), name)(*args, **kwargs) python3/ dist-packages/ django/ db/models/ query.py" , line 348, in create save(force_ insert= True, using=self.db) python3/ dist-packages/ maasserver/ models/ cleansave. py", line 29, in save python3/ dist-packages/ maasserver/ models/ timestampedmode l.py", line 72, in save edModel, self).save(*args, **kwargs) python3/ dist-packages/ django/ db/models/ base.py" , line 734, in save update= force_update, update_ fields= update_ fields) python3/ dist-packages/ django/ db/models/ base.py" ...
File "/usr/lib/
response = wrapped_
File "/usr/lib/
return view_atomic(*args, **kwargs)
File "/usr/lib/
return func(*args, **kwds)
File "/usr/lib/
response = upcall(request, *args, **kwargs)
File "/usr/lib/
response = func(*args, **kwargs)
File "/usr/lib/
result = self.error_
File "/usr/lib/
result = meth(request, *args, **kwargs)
File "/usr/lib/
return function(self, request, *args, **kwargs)
File "/usr/lib/
target_status = process(node, request, status)
File "/usr/lib/
node, node.current_
File "/usr/lib/
script_
File "/usr/lib/
exit_
File "/usr/lib/
serial=serial,
File "/usr/lib/
return getattr(
File "/usr/lib/
obj.
File "/usr/lib/
return super(CleanSave, self).save(*args, **kwargs)
File "/usr/lib/
return super(Timestamp
File "/usr/lib/
force_
File "/usr/lib/