)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":7118,"name":"Ian Wienand","email":"iwienand@redhat.com","username":"iwienand"},"change_message_id":"1baa76e95cf0862249dfa203e1a4cd1032c618df","unresolved":false,"context_lines":[{"line_number":8,"context_line":""},{"line_number":9,"context_line":"The [pv|lv|vg]remove calls are not actually necessary to cleanup."},{"line_number":10,"context_line":"Deactivating with \"[pv|lv|vg]change -an\", \"vgexport -a\" and a \"vgscan"},{"line_number":11,"context_line":"--cache\" is sufficient on the cleanup path to remove references/device"},{"line_number":12,"context_line":"nodes and does not affect the LVM metadata.  This removes the need to"},{"line_number":13,"context_line":"\"dd\" copy the image before starting the cleanup path to avoid"},{"line_number":14,"context_line":"destruction of the LVM metadata by these *remove commands."}],"source_content_type":"text/x-gerrit-commit-message","patch_set":8,"id":"5f2577a7_7cecd228","line":11,"updated":"2017-09-13 02:30:46.000000000","message":"This is now all completely wrong and not what is happening","commit_id":"e958f1cf1086dc286dae4714dac5248416d7834e"}],"diskimage_builder/block_device/blockdevice.py":[{"author":{"_account_id":7118,"name":"Ian Wienand","email":"iwienand@redhat.com","username":"iwienand"},"change_message_id":"1baa76e95cf0862249dfa203e1a4cd1032c618df","unresolved":false,"context_lines":[{"line_number":382,"context_line":"        try:"},{"line_number":383,"context_line":"            dg, call_order \u003d create_graph(self.config, self.params, state)"},{"line_number":384,"context_line":"            for node in call_order:"},{"line_number":385,"context_line":"                logger.debug(\"cmd_create call on [%s]\", node)"},{"line_number":386,"context_line":"                node.create()"},{"line_number":387,"context_line":"        except Exception:"},{"line_number":388,"context_line":"            logger.exception(\"Create failed; rollback initiated\")"}],"source_content_type":"text/x-python","patch_set":8,"id":"5f2577a7_dce62645","line":385,"updated":"2017-09-13 02:30:46.000000000","message":"remove these as we\u0027re already too chatty","commit_id":"e958f1cf1086dc286dae4714dac5248416d7834e"}],"diskimage_builder/block_device/level1/lvm.py":[{"author":{"_account_id":7118,"name":"Ian Wienand","email":"iwienand@redhat.com","username":"iwienand"},"change_message_id":"9bd0d962d87d202dd4386844aa0a61bab27c9f0f","unresolved":false,"context_lines":[{"line_number":159,"context_line":""},{"line_number":160,"context_line":"    def _umount(self):"},{"line_number":161,"context_line":"        exec_sudo([\u0027vgchange\u0027, \u0027-an\u0027, self.name])"},{"line_number":162,"context_line":"        exec_sudo([\u0027vgexport\u0027, self.name])"},{"line_number":163,"context_line":""},{"line_number":164,"context_line":"    def get_edges(self):"},{"line_number":165,"context_line":"        # self.base is already a list, per the config.  There might be"}],"source_content_type":"text/x-python","patch_set":7,"id":"7f287b81_c8587032","line":162,"updated":"2017-09-07 06:34:23.000000000","message":"we can\u0027t vgexport; it marks the vg as exported and it doesn\u0027t boot\n\nif you \n\n$ guestfish -a test.qcow2\n\nand the list-filesystems you can see this","commit_id":"88df2f63d62ca7bb9a13068f26ca6eea1b2dbdf2"},{"author":{"_account_id":7118,"name":"Ian Wienand","email":"iwienand@redhat.com","username":"iwienand"},"change_message_id":"1baa76e95cf0862249dfa203e1a4cd1032c618df","unresolved":false,"context_lines":[{"line_number":282,"context_line":"        for lvs in self.lvs:"},{"line_number":283,"context_line":"            lvs._create()"},{"line_number":284,"context_line":""},{"line_number":285,"context_line":"    def umount(self):"},{"line_number":286,"context_line":"        for lvs in self.lvs:"},{"line_number":287,"context_line":"            lvs._umount()"},{"line_number":288,"context_line":""}],"source_content_type":"text/x-python","patch_set":8,"id":"5f2577a7_bcba3a07","line":285,"updated":"2017-09-13 02:30:46.000000000","message":"Why has this moved into umount.  This should be explained in the changelog","commit_id":"e958f1cf1086dc286dae4714dac5248416d7834e"}],"diskimage_builder/block_device/level1/partitioning.py":[{"author":{"_account_id":7118,"name":"Ian Wienand","email":"iwienand@redhat.com","username":"iwienand"},"change_message_id":"1baa76e95cf0862249dfa203e1a4cd1032c618df","unresolved":false,"context_lines":[{"line_number":177,"context_line":""},{"line_number":178,"context_line":"            try:"},{"line_number":179,"context_line":"                # If pvscan is available, this must be called."},{"line_number":180,"context_line":"                exec_sudo([\u0027pvscan\u0027, \u0027--cache\u0027])"},{"line_number":181,"context_line":"            except subprocess.CalledProcessError as cpe:"},{"line_number":182,"context_line":"                logger.debug(\"pvscan call result [%s]\", cpe)"}],"source_content_type":"text/x-python","patch_set":8,"id":"5f2577a7_dcf066cc","line":180,"updated":"2017-09-13 02:30:46.000000000","message":"Why are we doing this in here, and not in the LVM code?\n\nThis comment is the equivalent of\n\n # increase x by 1\n x \u003d x+1\n\nWe\u0027ve been through ... at least 10 ... different iterations and variations of this and this is the most explanation we can get?!\n\nThe ignoring of all failures is worrisome from a robustness point of view.  in the added functional test this seems to bail out with \"5\" error code [1] which means ... what? \n\n[1] http://logs.openstack.org/53/498153/8/check/gate-dib-dsvm-functests-python2-ubuntu-trusty/bcdbd08/console.html#_2017-09-09_10_59_30_285421","commit_id":"e958f1cf1086dc286dae4714dac5248416d7834e"},{"author":{"_account_id":21741,"name":"Andreas Florath","email":"andreas@florath.net","username":"florath"},"change_message_id":"f3eacba1294a509b787e82c9642b505cce95fc63","unresolved":false,"context_lines":[{"line_number":170,"context_line":"            self.already_cleaned \u003d True"},{"line_number":171,"context_line":"            exec_sudo([\"kpartx\", \"-d\","},{"line_number":172,"context_line":"                       self.state[\u0027blockdev\u0027][self.base][\u0027device\u0027]])"},{"line_number":173,"context_line":""},{"line_number":174,"context_line":"            # XXX This is the wrong place calling this!"},{"line_number":175,"context_line":"            # Information about the PV, VG and LV is typically"},{"line_number":176,"context_line":"            # cached in lvmetad. Even after removing PV device and"}],"source_content_type":"text/x-python","patch_set":9,"id":"5f2577a7_193d8ac3","line":173,"updated":"2017-09-16 09:16:21.000000000","message":"Call to pvscan : currently wrong place.","commit_id":"847ccc99d1378baa8d99f92a301e541a885ce738"}],"diskimage_builder/block_device/tests/test_lvm.py":[{"author":{"_account_id":7118,"name":"Ian Wienand","email":"iwienand@redhat.com","username":"iwienand"},"change_message_id":"1baa76e95cf0862249dfa203e1a4cd1032c618df","unresolved":false,"context_lines":[{"line_number":308,"context_line":"                if isinstance(node, (LVMNode, PvsNode, VgsNode, LvsNode)):"},{"line_number":309,"context_line":"                    node.cleanup()"},{"line_number":310,"context_line":""},{"line_number":311,"context_line":"            cmd_sequence \u003d ["},{"line_number":312,"context_line":"                # copy the temporary drives"},{"line_number":313,"context_line":"                mock.call([\u0027dd\u0027, \u0027if\u003d/dev/fake/root\u0027, \u0027of\u003d%s\u0027 % tempfiles[0]]),"},{"line_number":314,"context_line":"                mock.call([\u0027dd\u0027, \u0027if\u003d/dev/fake/data\u0027, \u0027of\u003d%s\u0027 % tempfiles[1]]),"}],"source_content_type":"text/x-python","patch_set":8,"id":"5f2577a7_5cab5688","side":"PARENT","line":311,"updated":"2017-09-13 02:30:46.000000000","message":"This has made the test basically useless!\n\nit needs to test the sequence as it is happening now; presumably with the *remove calls gone AND the addition of the PV probing at appropriate points","commit_id":"6d64a2aee6eda33753bd47ca834cf5e416425f08"},{"author":{"_account_id":21741,"name":"Andreas Florath","email":"andreas@florath.net","username":"florath"},"change_message_id":"b2768f92460322580528f3533bc533e3ee686983","unresolved":false,"context_lines":[{"line_number":89,"context_line":"            # XXX: This has not mocked out the \"lower\" layers of"},{"line_number":90,"context_line":"            # creating the devices, which we\u0027re assuming works OK, nor"},{"line_number":91,"context_line":"            # the upper layers."},{"line_number":92,"context_line":"            if isinstance(node, (LVMNode, LVMCleanupNode, PvsNode,"},{"line_number":93,"context_line":"                                 VgsNode, LvsNode)):"},{"line_number":94,"context_line":"                # only the LVMNode actually does anything here..."},{"line_number":95,"context_line":"                node.create()"}],"source_content_type":"text/x-python","patch_set":12,"id":"5f4e5783_7afab342","line":92,"updated":"2017-10-11 07:24:11.000000000","message":"Here are a couple of tests that show that nothing is done during the create() call.","commit_id":"bb6cf52d852af679a599b92ce527d097ed5e9df6"},{"author":{"_account_id":21741,"name":"Andreas Florath","email":"andreas@florath.net","username":"florath"},"change_message_id":"b2768f92460322580528f3533bc533e3ee686983","unresolved":false,"context_lines":[{"line_number":324,"context_line":"                mock.call([\u0027vgchange\u0027, \u0027-an\u0027, \u0027vg1\u0027]),"},{"line_number":325,"context_line":"                mock.call([\u0027vgchange\u0027, \u0027-an\u0027, \u0027vg2\u0027]),"},{"line_number":326,"context_line":"                mock.call([\u0027udevadm\u0027, \u0027settle\u0027]),"},{"line_number":327,"context_line":"                mock.call([\u0027pvscan\u0027, \u0027--cache\u0027]),"},{"line_number":328,"context_line":"            ]"},{"line_number":329,"context_line":""},{"line_number":330,"context_line":"            self.assertListEqual(mock_exec_sudo.call_args_list, cmd_sequence)"}],"source_content_type":"text/x-python","patch_set":12,"id":"5f4e5783_da03e741","line":327,"updated":"2017-10-11 07:24:11.000000000","message":"Here is the test, that pvscan is called.","commit_id":"bb6cf52d852af679a599b92ce527d097ed5e9df6"}],"diskimage_builder/elements/ubuntu-minimal/test-elements/xenial-build-succeeds/block-device-default.yaml":[{"author":{"_account_id":7118,"name":"Ian Wienand","email":"iwienand@redhat.com","username":"iwienand"},"change_message_id":"1baa76e95cf0862249dfa203e1a4cd1032c618df","unresolved":false,"context_lines":[{"line_number":20,"context_line":"              options: \"defaults\""},{"line_number":21,"context_line":"              fsck-passno: 1"},{"line_number":22,"context_line":""},{"line_number":23,"context_line":"# An image with a partition which in turn includes a LVM"},{"line_number":24,"context_line":"#- local_loop:"},{"line_number":25,"context_line":"#    name: dataimage0"},{"line_number":26,"context_line":"#    size: 100M"}],"source_content_type":"text/x-yaml","patch_set":8,"id":"5f2577a7_dc9e2662","line":23,"updated":"2017-09-13 02:30:46.000000000","message":"What is all this commented out stuff?","commit_id":"e958f1cf1086dc286dae4714dac5248416d7834e"}],"diskimage_builder/elements/ubuntu-minimal/test-elements/xenial-build-succeeds/environment.d/08-set-block-device-config":[{"author":{"_account_id":7118,"name":"Ian Wienand","email":"iwienand@redhat.com","username":"iwienand"},"change_message_id":"1baa76e95cf0862249dfa203e1a4cd1032c618df","unresolved":false,"context_lines":[{"line_number":1,"context_line":"DIB_BLOCK_DEVICE_CONFIG\u003dfile://diskimage_builder/elements/ubuntu-minimal/test-elements/xenial-build-succeeds/block-device-default.yaml"},{"line_number":2,"context_line":"export DIB_BLOCK_DEVICE_CONFIG"}],"source_content_type":"application/octet-stream","patch_set":8,"id":"5f2577a7_bc1c7ac1","line":1,"updated":"2017-09-13 02:30:46.000000000","message":"I wonder how much luck is involved in finding this relative path; i\u0027d feel better if this was absolute maybe in a similar way to _BASE_ELEMENT_DIR ... it\u0027s probably fine to export that","commit_id":"e958f1cf1086dc286dae4714dac5248416d7834e"}]}
