)]}'
{"lib/nova":[{"author":{"_account_id":1779,"name":"Daniel Berrange","email":"berrange@redhat.com","username":"berrange"},"change_message_id":"5d8e268a991536c665a63a3c204f072184e728a3","unresolved":false,"context_lines":[{"line_number":202,"context_line":"        instances\u003d`sudo virsh list --all | grep $INSTANCE_NAME_PREFIX | sed \"s/.*\\($INSTANCE_NAME_PREFIX[0-9a-fA-F]*\\).*/\\1/g\"`"},{"line_number":203,"context_line":"        if [ ! \"$instances\" \u003d \"\" ]; then"},{"line_number":204,"context_line":"            echo $instances | xargs -n1 sudo virsh destroy || true"},{"line_number":205,"context_line":"            echo $instances | xargs -n1 sudo virsh undefine --managed-save --nvram || true"},{"line_number":206,"context_line":"        fi"},{"line_number":207,"context_line":""},{"line_number":208,"context_line":"        # Logout and delete iscsi sessions"}],"source_content_type":"application/x-shellscript","patch_set":1,"id":"dada55a8_d33e09d9","line":205,"updated":"2016-07-20 13:37:15.000000000","message":"The current nova min required libvirt is 1.2.1  The --nvram flag was not introduced until 1.2.8.  So this change is going to cause  undefine to fail on many libvirt versions supported by Nova","commit_id":"7bb3aad4de84b54422b8ebc88299b2e325fded87"},{"author":{"_account_id":22076,"name":"Kevin Zhao","email":"kevin.zhao@linaro.org","username":"KevinZhao"},"change_message_id":"29a58e392908eb7f3a84da6dd3cbad1979554c9d","unresolved":false,"context_lines":[{"line_number":202,"context_line":"        instances\u003d`sudo virsh list --all | grep $INSTANCE_NAME_PREFIX | sed \"s/.*\\($INSTANCE_NAME_PREFIX[0-9a-fA-F]*\\).*/\\1/g\"`"},{"line_number":203,"context_line":"        if [ ! \"$instances\" \u003d \"\" ]; then"},{"line_number":204,"context_line":"            echo $instances | xargs -n1 sudo virsh destroy || true"},{"line_number":205,"context_line":"            echo $instances | xargs -n1 sudo virsh undefine --managed-save --nvram || true"},{"line_number":206,"context_line":"        fi"},{"line_number":207,"context_line":""},{"line_number":208,"context_line":"        # Logout and delete iscsi sessions"}],"source_content_type":"application/x-shellscript","patch_set":1,"id":"dada55a8_a4bea962","line":205,"in_reply_to":"dada55a8_26612106","updated":"2016-07-20 14:25:13.000000000","message":"Can I add code to catch the error information with \"nvram\" here and then use virsh undefine --nvram to undefine it ?","commit_id":"7bb3aad4de84b54422b8ebc88299b2e325fded87"},{"author":{"_account_id":1779,"name":"Daniel Berrange","email":"berrange@redhat.com","username":"berrange"},"change_message_id":"a75c080cc685ce1ff1d8ee58c35cae44c3bbd6d1","unresolved":false,"context_lines":[{"line_number":202,"context_line":"        instances\u003d`sudo virsh list --all | grep $INSTANCE_NAME_PREFIX | sed \"s/.*\\($INSTANCE_NAME_PREFIX[0-9a-fA-F]*\\).*/\\1/g\"`"},{"line_number":203,"context_line":"        if [ ! \"$instances\" \u003d \"\" ]; then"},{"line_number":204,"context_line":"            echo $instances | xargs -n1 sudo virsh destroy || true"},{"line_number":205,"context_line":"            echo $instances | xargs -n1 sudo virsh undefine --managed-save --nvram || true"},{"line_number":206,"context_line":"        fi"},{"line_number":207,"context_line":""},{"line_number":208,"context_line":"        # Logout and delete iscsi sessions"}],"source_content_type":"application/x-shellscript","patch_set":1,"id":"dada55a8_26612106","line":205,"in_reply_to":"dada55a8_6654b9c9","updated":"2016-07-20 13:53:02.000000000","message":"You\u0027ll have to try with \u0026 then retry without on failure","commit_id":"7bb3aad4de84b54422b8ebc88299b2e325fded87"},{"author":{"_account_id":22076,"name":"Kevin Zhao","email":"kevin.zhao@linaro.org","username":"KevinZhao"},"change_message_id":"c60c58d1e240594056fb742d0816d59db0847a83","unresolved":false,"context_lines":[{"line_number":202,"context_line":"        instances\u003d`sudo virsh list --all | grep $INSTANCE_NAME_PREFIX | sed \"s/.*\\($INSTANCE_NAME_PREFIX[0-9a-fA-F]*\\).*/\\1/g\"`"},{"line_number":203,"context_line":"        if [ ! \"$instances\" \u003d \"\" ]; then"},{"line_number":204,"context_line":"            echo $instances | xargs -n1 sudo virsh destroy || true"},{"line_number":205,"context_line":"            echo $instances | xargs -n1 sudo virsh undefine --managed-save --nvram || true"},{"line_number":206,"context_line":"        fi"},{"line_number":207,"context_line":""},{"line_number":208,"context_line":"        # Logout and delete iscsi sessions"}],"source_content_type":"application/x-shellscript","patch_set":1,"id":"dada55a8_6654b9c9","line":205,"in_reply_to":"dada55a8_d33e09d9","updated":"2016-07-20 13:49:52.000000000","message":"Thanks Daniel~\n    Here that seems no proper solution to undefine instance that enable uefi...So now we should just manually undefine it with --nvram.","commit_id":"7bb3aad4de84b54422b8ebc88299b2e325fded87"},{"author":{"_account_id":970,"name":"Dean Troyer","email":"dtroyer@gmail.com","username":"dtroyer"},"change_message_id":"4078c592a4817936f56eebc71a5aaf788ebd0393","unresolved":false,"context_lines":[{"line_number":202,"context_line":"        instances\u003d`sudo virsh list --all | grep $INSTANCE_NAME_PREFIX | sed \"s/.*\\($INSTANCE_NAME_PREFIX[0-9a-fA-F]*\\).*/\\1/g\"`"},{"line_number":203,"context_line":"        if [ ! \"$instances\" \u003d \"\" ]; then"},{"line_number":204,"context_line":"            echo $instances | xargs -n1 sudo virsh destroy || true"},{"line_number":205,"context_line":"            hasnvram\u003d`sudo virsh undefine --help | grep nvram`"},{"line_number":206,"context_line":"            if [ ! \"$hasnvram\" \u003d \"\" ]; then"},{"line_number":207,"context_line":"                echo $instances | xargs -n1 sudo virsh undefine --managed-save --nvram || true"},{"line_number":208,"context_line":"            else"}],"source_content_type":"application/x-shellscript","patch_set":4,"id":"9ad45d7e_8c5a224f","line":205,"updated":"2016-08-12 19:42:55.000000000","message":"hasnvram needs to be declared local.  Also it would be a bit cleaner to put the --nvram option into a var rather than duplicate the entire command pipeline.","commit_id":"8c07968b2a03440ccea6943860bf0e1657ef479c"},{"author":{"_account_id":22076,"name":"Kevin Zhao","email":"kevin.zhao@linaro.org","username":"KevinZhao"},"change_message_id":"20ca3cb7e1a012d6e0a03919ccf426c868222035","unresolved":false,"context_lines":[{"line_number":202,"context_line":"        instances\u003d`sudo virsh list --all | grep $INSTANCE_NAME_PREFIX | sed \"s/.*\\($INSTANCE_NAME_PREFIX[0-9a-fA-F]*\\).*/\\1/g\"`"},{"line_number":203,"context_line":"        if [ ! \"$instances\" \u003d \"\" ]; then"},{"line_number":204,"context_line":"            echo $instances | xargs -n1 sudo virsh destroy || true"},{"line_number":205,"context_line":"            hasnvram\u003d`sudo virsh undefine --help | grep nvram`"},{"line_number":206,"context_line":"            if [ ! \"$hasnvram\" \u003d \"\" ]; then"},{"line_number":207,"context_line":"                echo $instances | xargs -n1 sudo virsh undefine --managed-save --nvram || true"},{"line_number":208,"context_line":"            else"}],"source_content_type":"application/x-shellscript","patch_set":4,"id":"3ac371cc_f18eafce","line":205,"in_reply_to":"9ad45d7e_8c5a224f","updated":"2016-08-17 05:51:22.000000000","message":"Done","commit_id":"8c07968b2a03440ccea6943860bf0e1657ef479c"},{"author":{"_account_id":1779,"name":"Daniel Berrange","email":"berrange@redhat.com","username":"berrange"},"change_message_id":"250656eb61cc796ec9c8589fc5a64efb354dbb57","unresolved":false,"context_lines":[{"line_number":217,"context_line":"            else"},{"line_number":218,"context_line":"                deleteflags\u003d${NOVA_MANAGED_SAVE}"},{"line_number":219,"context_line":"            fi"},{"line_number":220,"context_line":"\t    echo $instances | xargs -n1 sudo virsh undefine ${deleteflags}  || true"},{"line_number":221,"context_line":"        fi"},{"line_number":222,"context_line":""},{"line_number":223,"context_line":"        # Logout and delete iscsi sessions"}],"source_content_type":"application/x-shellscript","patch_set":7,"id":"3ac371cc_efd083f8","line":220,"updated":"2016-08-17 09:14:51.000000000","message":"Just because the nvram flag exists in the virsh binary, does not guarantee that the libvirtd driver will actually support this. You should not try to be so clever here. Just blindly run \u0027virsh undefine --nvram guest\u0027 and if it fails, then also run \u0027virsh undefine guest\u0027","commit_id":"74ea41031d9fe140535468f8f42644aca511b037"},{"author":{"_account_id":22076,"name":"Kevin Zhao","email":"kevin.zhao@linaro.org","username":"KevinZhao"},"change_message_id":"b9980eb9a60e3ee22be6e43ee475f228cac43e08","unresolved":false,"context_lines":[{"line_number":217,"context_line":"            else"},{"line_number":218,"context_line":"                deleteflags\u003d${NOVA_MANAGED_SAVE}"},{"line_number":219,"context_line":"            fi"},{"line_number":220,"context_line":"\t    echo $instances | xargs -n1 sudo virsh undefine ${deleteflags}  || true"},{"line_number":221,"context_line":"        fi"},{"line_number":222,"context_line":""},{"line_number":223,"context_line":"        # Logout and delete iscsi sessions"}],"source_content_type":"application/x-shellscript","patch_set":7,"id":"3ac371cc_9b702dde","line":220,"in_reply_to":"3ac371cc_efd083f8","updated":"2016-08-17 10:25:52.000000000","message":"Hi Daniel,\n   That make sense,I have modified here.\n   Done~Thanks~","commit_id":"74ea41031d9fe140535468f8f42644aca511b037"},{"author":{"_account_id":7118,"name":"Ian Wienand","email":"iwienand@redhat.com","username":"iwienand"},"change_message_id":"cf831bf44b313b7270e0399f27c4cc045b99cfa1","unresolved":false,"context_lines":[{"line_number":119,"context_line":"# ``NOVA_MANAGED_SAVE`` can be used to guarantees that any managed save"},{"line_number":120,"context_line":"# image is also cleaned up"},{"line_number":121,"context_line":"NOVA_MANAGED_SAVE\u003d\"--managed-save\""},{"line_number":122,"context_line":"NOVA_NVRAM_ENABLED\u003d\"--nvram\""},{"line_number":123,"context_line":""},{"line_number":124,"context_line":"# Get hypervisor configuration"},{"line_number":125,"context_line":"# ----------------------------"}],"source_content_type":"application/x-shellscript","patch_set":8,"id":"1a95cdbc_7ac4a35e","line":122,"updated":"2016-10-06 04:13:27.000000000","message":"we use globals like this as option flags, these seem to be just values?","commit_id":"2044fbe7f6b644b66b5f9cd896ab5f3cf594dc45"},{"author":{"_account_id":7118,"name":"Ian Wienand","email":"iwienand@redhat.com","username":"iwienand"},"change_message_id":"cf831bf44b313b7270e0399f27c4cc045b99cfa1","unresolved":false,"context_lines":[{"line_number":209,"context_line":"        instances\u003d`sudo virsh list --all | grep $INSTANCE_NAME_PREFIX | sed \"s/.*\\($INSTANCE_NAME_PREFIX[0-9a-fA-F]*\\).*/\\1/g\"`"},{"line_number":210,"context_line":"        if [ ! \"$instances\" \u003d \"\" ]; then"},{"line_number":211,"context_line":"            echo $instances | xargs -n1 sudo virsh destroy || true"},{"line_number":212,"context_line":"            echo $instances | xargs -n1 sudo virsh undefine ${NOVA_MANAGED_SAVE} ${NOVA_NVRAM_ENABLED}  || true"},{"line_number":213,"context_line":"            if [ $? -ne 0 ]; then"},{"line_number":214,"context_line":"                echo $instances | xargs -n1 sudo virsh undefine ${NOVA_MANAGED_SAVE}"},{"line_number":215,"context_line":"            fi"}],"source_content_type":"application/x-shellscript","patch_set":8,"id":"1a95cdbc_da821700","line":212,"updated":"2016-10-06 04:13:27.000000000","message":"I don\u0027t see that this works; $? is always going to come out as zero here.\n\ni think the flags just need to go in the command, with a comment about what\u0027s happening.  i think this would be easier with herestrings and more readable with an if\n\n(pseudo-bash)\n\n if ! xargs -n1 sudo virsh undefined --managed-save --nvram \u003c\u003c\u003c $instances; then\n  # useful comment\n  xargs ... \u003c\u003c\u003c $instances\n fi","commit_id":"2044fbe7f6b644b66b5f9cd896ab5f3cf594dc45"}]}
