)]}'
{"ironic/drivers/modules/deploy_utils.py":[{"author":{"_account_id":2889,"name":"Aeva Black","email":"aeva.online@gmail.com","username":"tenbrae"},"change_message_id":"e745d557070da8cdba59a77614d8e385785b06b7","unresolved":false,"context_lines":[{"line_number":179,"context_line":"    return image_mb"},{"line_number":180,"context_line":""},{"line_number":181,"context_line":""},{"line_number":182,"context_line":"def work_on_disk(dev, root_mb, swap_mb, ephemeral_mb, image_path,"},{"line_number":183,"context_line":"                 preserve_ephemeral):"},{"line_number":184,"context_line":"    \"\"\"Creates partitions and write an image to the root partition.\"\"\""},{"line_number":185,"context_line":"    if ephemeral_mb:"}],"source_content_type":"text/x-python","patch_set":6,"id":"AAAAUH%2F9sHM%3D","line":182,"updated":"2014-02-04 23:27:27.000000000","message":"doc string should be updated.\n\nIt was lacking detail already, but now it\u0027s wrong -- no mention of ephemeral_mb or preserve_ephemeral","commit_id":"4e540b12de89d413afcdc035be4284497c79ef53"},{"author":{"_account_id":6773,"name":"Lucas Alvares Gomes","email":"lucasagomes@gmail.com","username":"lucasagomes"},"change_message_id":"a4139f3f70060f0d990688bf8447853b84d84201","unresolved":false,"context_lines":[{"line_number":179,"context_line":"    return image_mb"},{"line_number":180,"context_line":""},{"line_number":181,"context_line":""},{"line_number":182,"context_line":"def work_on_disk(dev, root_mb, swap_mb, ephemeral_mb, image_path,"},{"line_number":183,"context_line":"                 preserve_ephemeral):"},{"line_number":184,"context_line":"    \"\"\"Creates partitions and write an image to the root partition.\"\"\""},{"line_number":185,"context_line":"    if ephemeral_mb:"}],"source_content_type":"text/x-python","patch_set":6,"id":"AAAAUX%2F%2FRFI%3D","line":182,"in_reply_to":"AAAAUH%2F9sHM%3D","updated":"2014-02-14 11:57:52.000000000","message":"+1 I will update it","commit_id":"4e540b12de89d413afcdc035be4284497c79ef53"},{"author":{"_account_id":8968,"name":"Max Lobur","email":"max_lobur@outlook.com","username":"max_lobur"},"change_message_id":"78951b87c9eb54d1ef72060ba0a212c27f0a9f5f","unresolved":false,"context_lines":[{"line_number":180,"context_line":""},{"line_number":181,"context_line":""},{"line_number":182,"context_line":"def work_on_disk(dev, root_mb, swap_mb, ephemeral_mb, image_path,"},{"line_number":183,"context_line":"                 preserve_ephemeral):"},{"line_number":184,"context_line":"    \"\"\"Creates partitions and write an image to the root partition.\"\"\""},{"line_number":185,"context_line":"    if ephemeral_mb:"},{"line_number":186,"context_line":"        ephemeral_part \u003d \"%s-part1\" % dev"}],"source_content_type":"text/x-python","patch_set":6,"id":"AAAAUX%2F%2FjkU%3D","line":183,"updated":"2014-02-12 11:43:19.000000000","message":"Maybe to add explicit default preserve_ephemeral\u003dFalse","commit_id":"4e540b12de89d413afcdc035be4284497c79ef53"},{"author":{"_account_id":6773,"name":"Lucas Alvares Gomes","email":"lucasagomes@gmail.com","username":"lucasagomes"},"change_message_id":"a4139f3f70060f0d990688bf8447853b84d84201","unresolved":false,"context_lines":[{"line_number":180,"context_line":""},{"line_number":181,"context_line":""},{"line_number":182,"context_line":"def work_on_disk(dev, root_mb, swap_mb, ephemeral_mb, image_path,"},{"line_number":183,"context_line":"                 preserve_ephemeral):"},{"line_number":184,"context_line":"    \"\"\"Creates partitions and write an image to the root partition.\"\"\""},{"line_number":185,"context_line":"    if ephemeral_mb:"},{"line_number":186,"context_line":"        ephemeral_part \u003d \"%s-part1\" % dev"}],"source_content_type":"text/x-python","patch_set":6,"id":"AAAAUX%2F%2FREk%3D","line":183,"in_reply_to":"AAAAUX%2F%2FjkU%3D","updated":"2014-02-14 11:57:52.000000000","message":"HI max, I will add it, but I don\u0027t know if it\u0027s relevant since it\u0027s already default on deploy() method where the work_on_disk() is just a helper method for that.","commit_id":"4e540b12de89d413afcdc035be4284497c79ef53"},{"author":{"_account_id":8968,"name":"Max Lobur","email":"max_lobur@outlook.com","username":"max_lobur"},"change_message_id":"78951b87c9eb54d1ef72060ba0a212c27f0a9f5f","unresolved":false,"context_lines":[{"line_number":227,"context_line":"        ephemeral block device, preserving whatever content it had (if the"},{"line_number":228,"context_line":"        partition table has not changed)."},{"line_number":229,"context_line":""},{"line_number":230,"context_line":"    \"\"\""},{"line_number":231,"context_line":"    dev \u003d get_dev(address, port, iqn, lun)"},{"line_number":232,"context_line":"    image_mb \u003d get_image_mb(image_path)"},{"line_number":233,"context_line":"    if image_mb \u003e root_mb:"}],"source_content_type":"text/x-python","patch_set":6,"id":"AAAAUX%2F%2FjjQ%3D","line":230,"updated":"2014-02-12 11:43:19.000000000","message":"Would it make sense to describe other params too? Maybe in a separate patch - looks like it\u0027s out of scope","commit_id":"4e540b12de89d413afcdc035be4284497c79ef53"},{"author":{"_account_id":6773,"name":"Lucas Alvares Gomes","email":"lucasagomes@gmail.com","username":"lucasagomes"},"change_message_id":"a4139f3f70060f0d990688bf8447853b84d84201","unresolved":false,"context_lines":[{"line_number":227,"context_line":"        ephemeral block device, preserving whatever content it had (if the"},{"line_number":228,"context_line":"        partition table has not changed)."},{"line_number":229,"context_line":""},{"line_number":230,"context_line":"    \"\"\""},{"line_number":231,"context_line":"    dev \u003d get_dev(address, port, iqn, lun)"},{"line_number":232,"context_line":"    image_mb \u003d get_image_mb(image_path)"},{"line_number":233,"context_line":"    if image_mb \u003e root_mb:"}],"source_content_type":"text/x-python","patch_set":6,"id":"AAAAUX%2F%2FRDI%3D","line":230,"in_reply_to":"AAAAUX%2F%2FjjQ%3D","updated":"2014-02-14 11:57:52.000000000","message":"I can update it in this patch cause I\u0027m touching this function anyway. I will add a better docstring here","commit_id":"4e540b12de89d413afcdc035be4284497c79ef53"},{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"ee744510b0c817911e75638714ce961a56662dcf","unresolved":false,"context_lines":[{"line_number":180,"context_line":"    \"\"\"Creates partitions and write an image to the root partition."},{"line_number":181,"context_line":""},{"line_number":182,"context_line":"    :param dev: Path for the device to work on."},{"line_number":183,"context_line":"    :param image_path: Path for the instances disk image."},{"line_number":184,"context_line":"    :param pxe_config_path: Path for the instance PXE config file."},{"line_number":185,"context_line":"    :param root_mb: Size of the root partition in megabytes."},{"line_number":186,"context_line":"    :param swap_mb: Size of the swap partition in megabytes."}],"source_content_type":"text/x-python","patch_set":8,"id":"AAAAU3%2F%2FZi8%3D","line":183,"updated":"2014-02-26 21:24:28.000000000","message":"Should the docstring order the parameters in the same order as the function call?","commit_id":"91892494c6061e17d3b089be1e2d67a105805435"},{"author":{"_account_id":6773,"name":"Lucas Alvares Gomes","email":"lucasagomes@gmail.com","username":"lucasagomes"},"change_message_id":"7c07ab4089a0119c543cfa94a5ed7955bf8b06cf","unresolved":false,"context_lines":[{"line_number":180,"context_line":"    \"\"\"Creates partitions and write an image to the root partition."},{"line_number":181,"context_line":""},{"line_number":182,"context_line":"    :param dev: Path for the device to work on."},{"line_number":183,"context_line":"    :param image_path: Path for the instances disk image."},{"line_number":184,"context_line":"    :param pxe_config_path: Path for the instance PXE config file."},{"line_number":185,"context_line":"    :param root_mb: Size of the root partition in megabytes."},{"line_number":186,"context_line":"    :param swap_mb: Size of the swap partition in megabytes."}],"source_content_type":"text/x-python","patch_set":8,"id":"AAAAVX%2F%2F7Qw%3D","line":183,"in_reply_to":"AAAAU3%2F%2FZi8%3D","updated":"2014-02-27 10:30:27.000000000","message":"Hmm, I don\u0027t think there\u0027s any rule for that, but I agree it would be nicer. I will fix :)","commit_id":"91892494c6061e17d3b089be1e2d67a105805435"},{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"ee744510b0c817911e75638714ce961a56662dcf","unresolved":false,"context_lines":[{"line_number":181,"context_line":""},{"line_number":182,"context_line":"    :param dev: Path for the device to work on."},{"line_number":183,"context_line":"    :param image_path: Path for the instances disk image."},{"line_number":184,"context_line":"    :param pxe_config_path: Path for the instance PXE config file."},{"line_number":185,"context_line":"    :param root_mb: Size of the root partition in megabytes."},{"line_number":186,"context_line":"    :param swap_mb: Size of the swap partition in megabytes."},{"line_number":187,"context_line":"    :param ephemeral_mb: Size of the ephemeral partition in megabytes. If 0,"}],"source_content_type":"text/x-python","patch_set":8,"id":"AAAAU3%2F%2FZj4%3D","line":184,"updated":"2014-02-26 21:24:28.000000000","message":"this doesn\u0027t exist?","commit_id":"91892494c6061e17d3b089be1e2d67a105805435"},{"author":{"_account_id":6773,"name":"Lucas Alvares Gomes","email":"lucasagomes@gmail.com","username":"lucasagomes"},"change_message_id":"7c07ab4089a0119c543cfa94a5ed7955bf8b06cf","unresolved":false,"context_lines":[{"line_number":181,"context_line":""},{"line_number":182,"context_line":"    :param dev: Path for the device to work on."},{"line_number":183,"context_line":"    :param image_path: Path for the instances disk image."},{"line_number":184,"context_line":"    :param pxe_config_path: Path for the instance PXE config file."},{"line_number":185,"context_line":"    :param root_mb: Size of the root partition in megabytes."},{"line_number":186,"context_line":"    :param swap_mb: Size of the swap partition in megabytes."},{"line_number":187,"context_line":"    :param ephemeral_mb: Size of the ephemeral partition in megabytes. If 0,"}],"source_content_type":"text/x-python","patch_set":8,"id":"AAAAVX%2F%2F7Qg%3D","line":184,"in_reply_to":"AAAAU3%2F%2FZj4%3D","updated":"2014-02-27 10:30:27.000000000","message":"Ops, I think I left it from the deploy() method, will remove","commit_id":"91892494c6061e17d3b089be1e2d67a105805435"},{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"ee744510b0c817911e75638714ce961a56662dcf","unresolved":false,"context_lines":[{"line_number":242,"context_line":"    :param port: The iSCSI port number."},{"line_number":243,"context_line":"    :param iqn: The iSCSI qualified name."},{"line_number":244,"context_line":"    :param lun: The iSCSI logical unit number."},{"line_number":245,"context_line":"    :param image_path: Path for the instances disk image."},{"line_number":246,"context_line":"    :param pxe_config_path: Path for the instance PXE config file."},{"line_number":247,"context_line":"    :param root_mb: Size of the root partition in megabytes."},{"line_number":248,"context_line":"    :param swap_mb: Size of the swap partition in megabytes."}],"source_content_type":"text/x-python","patch_set":8,"id":"AAAAU3%2F%2FZfU%3D","line":245,"updated":"2014-02-26 21:24:28.000000000","message":"instances -\u003e you mean instance\u0027s?","commit_id":"91892494c6061e17d3b089be1e2d67a105805435"},{"author":{"_account_id":6773,"name":"Lucas Alvares Gomes","email":"lucasagomes@gmail.com","username":"lucasagomes"},"change_message_id":"7c07ab4089a0119c543cfa94a5ed7955bf8b06cf","unresolved":false,"context_lines":[{"line_number":242,"context_line":"    :param port: The iSCSI port number."},{"line_number":243,"context_line":"    :param iqn: The iSCSI qualified name."},{"line_number":244,"context_line":"    :param lun: The iSCSI logical unit number."},{"line_number":245,"context_line":"    :param image_path: Path for the instances disk image."},{"line_number":246,"context_line":"    :param pxe_config_path: Path for the instance PXE config file."},{"line_number":247,"context_line":"    :param root_mb: Size of the root partition in megabytes."},{"line_number":248,"context_line":"    :param swap_mb: Size of the swap partition in megabytes."}],"source_content_type":"text/x-python","patch_set":8,"id":"AAAAVX%2F%2F7QU%3D","line":245,"in_reply_to":"AAAAU3%2F%2FZfU%3D","updated":"2014-02-27 10:30:27.000000000","message":"Will fix :)","commit_id":"91892494c6061e17d3b089be1e2d67a105805435"}],"ironic/drivers/modules/pxe.py":[{"author":{"_account_id":7711,"name":"Yuriy Zveryanskyy","email":"yzveryanskyy@mirantis.com","username":"yuriyz"},"change_message_id":"9056740c11ad5cea1dea3e6f4378dbc48c5cd4fc","unresolved":false,"context_lines":[{"line_number":141,"context_line":"    except ValueError:"},{"line_number":142,"context_line":"        raise exception.InvalidParameterValue("},{"line_number":143,"context_line":"            _(\"Invalid pxe_preserve_ephemeral parameter value \u0027%s\u0027, \""},{"line_number":144,"context_line":"              \"acceptable values are: True or False\") % preserve_ephemeral)"},{"line_number":145,"context_line":""},{"line_number":146,"context_line":"    return d_info"},{"line_number":147,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAUH%2F%2Bv9k%3D","line":144,"updated":"2014-01-22 14:56:00.000000000","message":"Acceptable string values for strutils.bool_from_string not only \u0027True\u0027 or \u0027False\u0027.","commit_id":"8947092ccf61d7ddb7baf95f3dcf91a5188eb64e"},{"author":{"_account_id":6773,"name":"Lucas Alvares Gomes","email":"lucasagomes@gmail.com","username":"lucasagomes"},"change_message_id":"74e6d155c28a24840b8aca1b92286f69b8d80d62","unresolved":false,"context_lines":[{"line_number":141,"context_line":"    except ValueError:"},{"line_number":142,"context_line":"        raise exception.InvalidParameterValue("},{"line_number":143,"context_line":"            _(\"Invalid pxe_preserve_ephemeral parameter value \u0027%s\u0027, \""},{"line_number":144,"context_line":"              \"acceptable values are: True or False\") % preserve_ephemeral)"},{"line_number":145,"context_line":""},{"line_number":146,"context_line":"    return d_info"},{"line_number":147,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAUH%2F%2Bp5Y%3D","line":144,"in_reply_to":"AAAAUH%2F%2Bv9k%3D","updated":"2014-01-23 14:14:08.000000000","message":"Ah thanks very much for pointing that out, I took a look at the strutils and yeah, it supports a lot of other strings, hmm, wondering if I should reuse their error message instead of copying the values here.","commit_id":"8947092ccf61d7ddb7baf95f3dcf91a5188eb64e"},{"author":{"_account_id":2889,"name":"Aeva Black","email":"aeva.online@gmail.com","username":"tenbrae"},"change_message_id":"8816e166edc56eb6ba1fa9022e39f006450de163","unresolved":false,"context_lines":[{"line_number":126,"context_line":"    d_info[\u0027ephemeral_gb\u0027] \u003d info.get(\u0027pxe_ephemeral_gb\u0027, 0)"},{"line_number":127,"context_line":"    d_info[\u0027key_data\u0027] \u003d info.get(\u0027pxe_key_data\u0027, None)"},{"line_number":128,"context_line":""},{"line_number":129,"context_line":"    err_msg_invalid \u003d _(\"Can not validate PXE bootloader. Invalid parameter \""},{"line_number":130,"context_line":"                        \"pxe_%(param)s. Reason: %(reason)s\")"},{"line_number":131,"context_line":"    for param in (\u0027root_gb\u0027, \u0027swap_mb\u0027, \u0027ephemeral_gb\u0027):"},{"line_number":132,"context_line":"        try:"}],"source_content_type":"text/x-python","patch_set":6,"id":"AAAAUH%2F9sJE%3D","line":129,"updated":"2014-02-04 23:24:16.000000000","message":"nit: this is really part of the former patch...","commit_id":"4e540b12de89d413afcdc035be4284497c79ef53"},{"author":{"_account_id":6773,"name":"Lucas Alvares Gomes","email":"lucasagomes@gmail.com","username":"lucasagomes"},"change_message_id":"a4139f3f70060f0d990688bf8447853b84d84201","unresolved":false,"context_lines":[{"line_number":126,"context_line":"    d_info[\u0027ephemeral_gb\u0027] \u003d info.get(\u0027pxe_ephemeral_gb\u0027, 0)"},{"line_number":127,"context_line":"    d_info[\u0027key_data\u0027] \u003d info.get(\u0027pxe_key_data\u0027, None)"},{"line_number":128,"context_line":""},{"line_number":129,"context_line":"    err_msg_invalid \u003d _(\"Can not validate PXE bootloader. Invalid parameter \""},{"line_number":130,"context_line":"                        \"pxe_%(param)s. Reason: %(reason)s\")"},{"line_number":131,"context_line":"    for param in (\u0027root_gb\u0027, \u0027swap_mb\u0027, \u0027ephemeral_gb\u0027):"},{"line_number":132,"context_line":"        try:"}],"source_content_type":"text/x-python","patch_set":6,"id":"AAAAUX%2F%2FRCY%3D","line":129,"in_reply_to":"AAAAUH%2F9sJE%3D","updated":"2014-02-14 11:57:52.000000000","message":"Yea it was part of #65932, but as I would have to touch it in this patch I decided to abandon the other and just do it here","commit_id":"4e540b12de89d413afcdc035be4284497c79ef53"}],"ironic/tests/drivers/test_deploy_utils.py":[{"author":{"_account_id":6623,"name":"Roman Prykhodchenko","email":"me@romcheg.me","username":"prykhodchenko"},"change_message_id":"52362c3c029ca8a223725a9f749bedbb4f61c1c7","unresolved":false,"context_lines":[{"line_number":232,"context_line":"                     preserve_ephemeral\u003dTrue)"},{"line_number":233,"context_line":"        self.assertEqual(calls_expected, parent_mock.mock_calls)"},{"line_number":234,"context_line":"        # mkfs_ephemeral should not be called"},{"line_number":235,"context_line":"        assert not mock_mkfs_eph.called"},{"line_number":236,"context_line":""},{"line_number":237,"context_line":"    def test_always_logout_and_delete_iscsi(self):"},{"line_number":238,"context_line":"        \"\"\"Check if logout_iscsi() and delete_iscsi() are called."}],"source_content_type":"text/x-python","patch_set":11,"id":"AAAAVX%2F%2Fu%2FI%3D","line":235,"updated":"2014-02-28 17:31:32.000000000","message":"Please change this to assertFalse","commit_id":"5bd3ff0484223b3fc882171c997db3fee42a4185"}],"ironic/tests/drivers/test_pxe.py":[{"author":{"_account_id":2889,"name":"Aeva Black","email":"aeva.online@gmail.com","username":"tenbrae"},"change_message_id":"8816e166edc56eb6ba1fa9022e39f006450de163","unresolved":false,"context_lines":[{"line_number":135,"context_line":"                pxe._parse_driver_info,"},{"line_number":136,"context_line":"                node)"},{"line_number":137,"context_line":""},{"line_number":138,"context_line":"    def test__parse_driver_info_invalid_preserve_ephemeral(self):"},{"line_number":139,"context_line":"        info \u003d dict(INFO_DICT)"},{"line_number":140,"context_line":"        info[\u0027pxe_preserve_ephemeral\u0027] \u003d \u0027foobar\u0027"},{"line_number":141,"context_line":"        node \u003d self._create_test_node(driver_info\u003dinfo)"}],"source_content_type":"text/x-python","patch_set":6,"id":"AAAAUH%2F9sIM%3D","line":138,"updated":"2014-02-04 23:24:16.000000000","message":"there don\u0027t seem to be any positive tests for either ephemeral_gb or preserve_ephemeral... why is that? or have I just overlooked them?","commit_id":"4e540b12de89d413afcdc035be4284497c79ef53"},{"author":{"_account_id":6773,"name":"Lucas Alvares Gomes","email":"lucasagomes@gmail.com","username":"lucasagomes"},"change_message_id":"a4139f3f70060f0d990688bf8447853b84d84201","unresolved":false,"context_lines":[{"line_number":135,"context_line":"                pxe._parse_driver_info,"},{"line_number":136,"context_line":"                node)"},{"line_number":137,"context_line":""},{"line_number":138,"context_line":"    def test__parse_driver_info_invalid_preserve_ephemeral(self):"},{"line_number":139,"context_line":"        info \u003d dict(INFO_DICT)"},{"line_number":140,"context_line":"        info[\u0027pxe_preserve_ephemeral\u0027] \u003d \u0027foobar\u0027"},{"line_number":141,"context_line":"        node \u003d self._create_test_node(driver_info\u003dinfo)"}],"source_content_type":"text/x-python","patch_set":6,"id":"AAAAUX%2F%2FRCI%3D","line":138,"in_reply_to":"AAAAUH%2F9sIM%3D","updated":"2014-02-14 11:57:52.000000000","message":"opss, no you\u0027re correct, I\u0027m going to add.\n\nThe ephemeral_gb tests was added already on #65750","commit_id":"4e540b12de89d413afcdc035be4284497c79ef53"}]}
