)]}'
{"ansible/roles/ceph/tasks/bootstrap_osds.yml":[{"author":{"_account_id":14119,"name":"Sam Yaple","email":"sam+git@yaple.net","username":"SamYaple"},"change_message_id":"3f4934f5231d19b8a8bc8912c794a93a063ab7dd","unresolved":false,"context_lines":[{"line_number":14,"context_line":"- name: Looking up disks to bootstrap for Ceph"},{"line_number":15,"context_line":"  command: docker exec -t kolla_ansible /usr/bin/ansible localhost"},{"line_number":16,"context_line":"    -m find_disks"},{"line_number":17,"context_line":"    -a \"dev_type\u003d\u0027partition\u0027 label_name\u003d\u0027KOLLA_CEPH_OSD_CACHE_BOOTSTRAP\u0027\""},{"line_number":18,"context_line":"  register: osd_cache_lookup"},{"line_number":19,"context_line":"  changed_when: \"{{ osd_cache_lookup.stdout.find(\u0027localhost | SUCCESS \u003d\u003e \u0027) !\u003d -1 and (osd_cache_lookup.stdout.split(\u0027localhost | SUCCESS \u003d\u003e \u0027)[1]|from_json).changed }}\""},{"line_number":20,"context_line":"  failed_when: osd_cache_lookup.stdout.split()[2] !\u003d \u0027SUCCESS\u0027"}],"source_content_type":"text/x-yaml","patch_set":1,"id":"9a68dd71_68a62d55","line":17,"updated":"2016-01-26 13:52:35.000000000","message":"this should be multiline, view our other kolla_ansible container commands","commit_id":"cc6c72d6cb77f27692ea7cd03014d9a6326c15c7"},{"author":{"_account_id":2468,"name":"unicell","email":"unicell@gmail.com","username":"unicell"},"change_message_id":"f6b39e5f50e1682e5a8849a291bca74fd78309c7","unresolved":false,"context_lines":[{"line_number":14,"context_line":"- name: Looking up disks to bootstrap for Ceph"},{"line_number":15,"context_line":"  command: docker exec -t kolla_ansible /usr/bin/ansible localhost"},{"line_number":16,"context_line":"    -m find_disks"},{"line_number":17,"context_line":"    -a \"dev_type\u003d\u0027partition\u0027 label_name\u003d\u0027KOLLA_CEPH_OSD_CACHE_BOOTSTRAP\u0027\""},{"line_number":18,"context_line":"  register: osd_cache_lookup"},{"line_number":19,"context_line":"  changed_when: \"{{ osd_cache_lookup.stdout.find(\u0027localhost | SUCCESS \u003d\u003e \u0027) !\u003d -1 and (osd_cache_lookup.stdout.split(\u0027localhost | SUCCESS \u003d\u003e \u0027)[1]|from_json).changed }}\""},{"line_number":20,"context_line":"  failed_when: osd_cache_lookup.stdout.split()[2] !\u003d \u0027SUCCESS\u0027"}],"source_content_type":"text/x-yaml","patch_set":1,"id":"9a68dd71_4c256aac","line":17,"in_reply_to":"9a68dd71_68a62d55","updated":"2016-01-26 18:46:10.000000000","message":"Done","commit_id":"cc6c72d6cb77f27692ea7cd03014d9a6326c15c7"},{"author":{"_account_id":14119,"name":"Sam Yaple","email":"sam+git@yaple.net","username":"SamYaple"},"change_message_id":"c38eafe58baf79d57a8c642e7bc3700097a63257","unresolved":false,"context_lines":[{"line_number":3,"context_line":"  command: docker exec -t kolla_ansible /usr/bin/ansible localhost"},{"line_number":4,"context_line":"    -m find_disks"},{"line_number":5,"context_line":"    -a \"dev_type\u003d\u0027partition\u0027"},{"line_number":6,"context_line":"        label_name\u003d\u0027KOLLA_CEPH_OSD_BOOTSTRAP\u0027\""},{"line_number":7,"context_line":"  register: osd_lookup"},{"line_number":8,"context_line":"  changed_when: \"{{ osd_lookup.stdout.find(\u0027localhost | SUCCESS \u003d\u003e \u0027) !\u003d -1 and (osd_lookup.stdout.split(\u0027localhost | SUCCESS \u003d\u003e \u0027)[1]|from_json).changed }}\""},{"line_number":9,"context_line":"  failed_when: osd_lookup.stdout.split()[2] !\u003d \u0027SUCCESS\u0027"}],"source_content_type":"text/x-yaml","patch_set":2,"id":"9a68dd71_22391f42","line":6,"updated":"2016-01-26 19:31:14.000000000","message":"this should stay partition_name, label_name is not accurate","commit_id":"31badfe4c5a04714bc2486e8731bb4e335ab761f"},{"author":{"_account_id":2468,"name":"unicell","email":"unicell@gmail.com","username":"unicell"},"change_message_id":"ce6d1a0d8a153284d3be268f451d9a09f0525cf8","unresolved":false,"context_lines":[{"line_number":3,"context_line":"  command: docker exec -t kolla_ansible /usr/bin/ansible localhost"},{"line_number":4,"context_line":"    -m find_disks"},{"line_number":5,"context_line":"    -a \"dev_type\u003d\u0027partition\u0027"},{"line_number":6,"context_line":"        label_name\u003d\u0027KOLLA_CEPH_OSD_BOOTSTRAP\u0027\""},{"line_number":7,"context_line":"  register: osd_lookup"},{"line_number":8,"context_line":"  changed_when: \"{{ osd_lookup.stdout.find(\u0027localhost | SUCCESS \u003d\u003e \u0027) !\u003d -1 and (osd_lookup.stdout.split(\u0027localhost | SUCCESS \u003d\u003e \u0027)[1]|from_json).changed }}\""},{"line_number":9,"context_line":"  failed_when: osd_lookup.stdout.split()[2] !\u003d \u0027SUCCESS\u0027"}],"source_content_type":"text/x-yaml","patch_set":2,"id":"9a68dd71_96760905","line":6,"in_reply_to":"9a68dd71_22391f42","updated":"2016-01-26 22:54:40.000000000","message":"Done","commit_id":"31badfe4c5a04714bc2486e8731bb4e335ab761f"}],"ansible/roles/ceph/tasks/start_osds.yml":[{"author":{"_account_id":14119,"name":"Sam Yaple","email":"sam+git@yaple.net","username":"SamYaple"},"change_message_id":"c38eafe58baf79d57a8c642e7bc3700097a63257","unresolved":false,"context_lines":[{"line_number":3,"context_line":"  command: docker exec -t kolla_ansible /usr/bin/ansible localhost"},{"line_number":4,"context_line":"    -m find_disks"},{"line_number":5,"context_line":"    -a \"dev_type\u003d\u0027partition\u0027"},{"line_number":6,"context_line":"        label_name\u003d\u0027KOLLA_CEPH_DATA\u0027\""},{"line_number":7,"context_line":"  register: osd_lookup"},{"line_number":8,"context_line":"  changed_when: \"{{ osd_lookup.stdout.find(\u0027localhost | SUCCESS \u003d\u003e \u0027) !\u003d -1 and (osd_lookup.stdout.split(\u0027localhost | SUCCESS \u003d\u003e \u0027)[1]|from_json).changed }}\""},{"line_number":9,"context_line":"  failed_when: osd_lookup.stdout.split()[2] !\u003d \u0027SUCCESS\u0027"}],"source_content_type":"text/x-yaml","patch_set":2,"id":"9a68dd71_a2450fb4","line":6,"updated":"2016-01-26 19:31:14.000000000","message":"ditto","commit_id":"31badfe4c5a04714bc2486e8731bb4e335ab761f"},{"author":{"_account_id":2468,"name":"unicell","email":"unicell@gmail.com","username":"unicell"},"change_message_id":"ce6d1a0d8a153284d3be268f451d9a09f0525cf8","unresolved":false,"context_lines":[{"line_number":3,"context_line":"  command: docker exec -t kolla_ansible /usr/bin/ansible localhost"},{"line_number":4,"context_line":"    -m find_disks"},{"line_number":5,"context_line":"    -a \"dev_type\u003d\u0027partition\u0027"},{"line_number":6,"context_line":"        label_name\u003d\u0027KOLLA_CEPH_DATA\u0027\""},{"line_number":7,"context_line":"  register: osd_lookup"},{"line_number":8,"context_line":"  changed_when: \"{{ osd_lookup.stdout.find(\u0027localhost | SUCCESS \u003d\u003e \u0027) !\u003d -1 and (osd_lookup.stdout.split(\u0027localhost | SUCCESS \u003d\u003e \u0027)[1]|from_json).changed }}\""},{"line_number":9,"context_line":"  failed_when: osd_lookup.stdout.split()[2] !\u003d \u0027SUCCESS\u0027"}],"source_content_type":"text/x-yaml","patch_set":2,"id":"9a68dd71_1659b98e","line":6,"in_reply_to":"9a68dd71_a2450fb4","updated":"2016-01-26 22:54:40.000000000","message":"Done","commit_id":"31badfe4c5a04714bc2486e8731bb4e335ab761f"}],"docker/kolla-ansible/find_disks.py":[{"author":{"_account_id":14119,"name":"Sam Yaple","email":"sam+git@yaple.net","username":"SamYaple"},"change_message_id":"3f4934f5231d19b8a8bc8912c794a93a063ab7dd","unresolved":false,"context_lines":[{"line_number":82,"context_line":"    )"},{"line_number":83,"context_line":"    module \u003d AnsibleModule(argument_spec)"},{"line_number":84,"context_line":"    dev_type \u003d module.params.get(\u0027dev_type\u0027)"},{"line_number":85,"context_line":"    label_name \u003d module.params.get(\u0027label_name\u0027)"},{"line_number":86,"context_line":"    match_mode \u003d module.params.get(\u0027match_mode\u0027)"},{"line_number":87,"context_line":""},{"line_number":88,"context_line":"    def is_dev_label_matched(dev, name):"}],"source_content_type":"text/x-python","patch_set":1,"id":"9a68dd71_08621117","line":85,"updated":"2016-01-26 13:52:35.000000000","message":"don\u0027t change this name, you can add an alias if you want but don\u0027t just change the param name","commit_id":"cc6c72d6cb77f27692ea7cd03014d9a6326c15c7"},{"author":{"_account_id":2468,"name":"unicell","email":"unicell@gmail.com","username":"unicell"},"change_message_id":"f6b39e5f50e1682e5a8849a291bca74fd78309c7","unresolved":false,"context_lines":[{"line_number":82,"context_line":"    )"},{"line_number":83,"context_line":"    module \u003d AnsibleModule(argument_spec)"},{"line_number":84,"context_line":"    dev_type \u003d module.params.get(\u0027dev_type\u0027)"},{"line_number":85,"context_line":"    label_name \u003d module.params.get(\u0027label_name\u0027)"},{"line_number":86,"context_line":"    match_mode \u003d module.params.get(\u0027match_mode\u0027)"},{"line_number":87,"context_line":""},{"line_number":88,"context_line":"    def is_dev_label_matched(dev, name):"}],"source_content_type":"text/x-python","patch_set":1,"id":"9a68dd71_2c027670","line":85,"in_reply_to":"9a68dd71_08621117","updated":"2016-01-26 18:46:10.000000000","message":"Originally I thought backward compatibility only applies for user facing interface.  But given that kolla-ansible container could be updated separately from consuming containers such as ceph-osd, I agree it should be backward compatible. Will update later","commit_id":"cc6c72d6cb77f27692ea7cd03014d9a6326c15c7"},{"author":{"_account_id":14119,"name":"Sam Yaple","email":"sam+git@yaple.net","username":"SamYaple"},"change_message_id":"c38eafe58baf79d57a8c642e7bc3700097a63257","unresolved":false,"context_lines":[{"line_number":85,"context_line":"        label_name\u003ddict(required\u003dTrue, type\u003d\u0027str\u0027),"},{"line_number":86,"context_line":"        match_mode\u003ddict(required\u003dFalse, choices\u003d[\u0027strict\u0027, \u0027prefix\u0027],"},{"line_number":87,"context_line":"                        default\u003d\u0027strict\u0027),"},{"line_number":88,"context_line":"        partition_name\u003ddict(required\u003dFalse, type\u003d\u0027str\u0027)"},{"line_number":89,"context_line":"    )"},{"line_number":90,"context_line":"    module \u003d AnsibleModule(argument_spec)"},{"line_number":91,"context_line":"    if module.params.get(\u0027partition_name\u0027):"}],"source_content_type":"text/x-python","patch_set":2,"id":"9a68dd71_8276cb04","line":88,"updated":"2016-01-26 19:31:14.000000000","message":"please use an alias not a second param if we even need to add label_name, which I am not sure we do","commit_id":"31badfe4c5a04714bc2486e8731bb4e335ab761f"},{"author":{"_account_id":2468,"name":"unicell","email":"unicell@gmail.com","username":"unicell"},"change_message_id":"ce6d1a0d8a153284d3be268f451d9a09f0525cf8","unresolved":false,"context_lines":[{"line_number":85,"context_line":"        label_name\u003ddict(required\u003dTrue, type\u003d\u0027str\u0027),"},{"line_number":86,"context_line":"        match_mode\u003ddict(required\u003dFalse, choices\u003d[\u0027strict\u0027, \u0027prefix\u0027],"},{"line_number":87,"context_line":"                        default\u003d\u0027strict\u0027),"},{"line_number":88,"context_line":"        partition_name\u003ddict(required\u003dFalse, type\u003d\u0027str\u0027)"},{"line_number":89,"context_line":"    )"},{"line_number":90,"context_line":"    module \u003d AnsibleModule(argument_spec)"},{"line_number":91,"context_line":"    if module.params.get(\u0027partition_name\u0027):"}],"source_content_type":"text/x-python","patch_set":2,"id":"9a68dd71_b151d7da","line":88,"in_reply_to":"9a68dd71_8276cb04","updated":"2016-01-26 22:54:40.000000000","message":"I\u0027m not sure which alias you wanna make it to, is it partition_name alias to label_name? They\u0027re not actually alias to each other, but rather different entities.\n\nThe idea here for this change, is about making find_disks module able to detect filesystem label in addition to partition name.\n\nI get your point in the other patch that partitioned disk is the best practice to do. But still for the case Kolla taking over an existing Swift deployment, all the disks could already holding data but don\u0027t have partition table in place from the beginning.\n\nThe feature here in find_disks is about to give deployer a choice.","commit_id":"31badfe4c5a04714bc2486e8731bb4e335ab761f"},{"author":{"_account_id":14119,"name":"Sam Yaple","email":"sam+git@yaple.net","username":"SamYaple"},"change_message_id":"50f6bf452584c36fce8c13f1f4db70d9eb4a1507","unresolved":false,"context_lines":[{"line_number":73,"context_line":""},{"line_number":74,"context_line":""},{"line_number":75,"context_line":"def main():"},{"line_number":76,"context_line":"    argument_spec \u003d dict("},{"line_number":77,"context_line":"        fs_label\u003ddict(required\u003dFalse, type\u003d\u0027str\u0027),"},{"line_number":78,"context_line":"        match_mode\u003ddict(required\u003dFalse, choices\u003d[\u0027strict\u0027, \u0027prefix\u0027],"},{"line_number":79,"context_line":"                        default\u003d\u0027strict\u0027),"}],"source_content_type":"text/x-python","patch_set":3,"id":"9a68dd71_49c78f45","line":76,"updated":"2016-01-27 00:23:37.000000000","message":"Instead of two different name paramaters, lets just use one name. We can figure out whether it is a label or a partition very easily","commit_id":"da2cebb88eaaeaf0eba7fdd7d7fdb842c3b4b9d2"},{"author":{"_account_id":2468,"name":"unicell","email":"unicell@gmail.com","username":"unicell"},"change_message_id":"f1e13a4df605bbe6b52d9571090732839be4d8a0","unresolved":false,"context_lines":[{"line_number":73,"context_line":""},{"line_number":74,"context_line":""},{"line_number":75,"context_line":"def main():"},{"line_number":76,"context_line":"    argument_spec \u003d dict("},{"line_number":77,"context_line":"        fs_label\u003ddict(required\u003dFalse, type\u003d\u0027str\u0027),"},{"line_number":78,"context_line":"        match_mode\u003ddict(required\u003dFalse, choices\u003d[\u0027strict\u0027, \u0027prefix\u0027],"},{"line_number":79,"context_line":"                        default\u003d\u0027strict\u0027),"}],"source_content_type":"text/x-python","patch_set":3,"id":"9a68dd71_be1c3a78","line":76,"in_reply_to":"9a68dd71_49c78f45","updated":"2016-01-27 17:33:26.000000000","message":"Yep, sounds good.","commit_id":"da2cebb88eaaeaf0eba7fdd7d7fdb842c3b4b9d2"},{"author":{"_account_id":14119,"name":"Sam Yaple","email":"sam+git@yaple.net","username":"SamYaple"},"change_message_id":"50f6bf452584c36fce8c13f1f4db70d9eb4a1507","unresolved":false,"context_lines":[{"line_number":74,"context_line":""},{"line_number":75,"context_line":"def main():"},{"line_number":76,"context_line":"    argument_spec \u003d dict("},{"line_number":77,"context_line":"        fs_label\u003ddict(required\u003dFalse, type\u003d\u0027str\u0027),"},{"line_number":78,"context_line":"        match_mode\u003ddict(required\u003dFalse, choices\u003d[\u0027strict\u0027, \u0027prefix\u0027],"},{"line_number":79,"context_line":"                        default\u003d\u0027strict\u0027),"},{"line_number":80,"context_line":"        partition_name\u003ddict(required\u003dFalse, type\u003d\u0027str\u0027)"}],"source_content_type":"text/x-python","patch_set":3,"id":"9a68dd71_e9c3e336","line":77,"updated":"2016-01-27 00:23:37.000000000","message":"remove this param","commit_id":"da2cebb88eaaeaf0eba7fdd7d7fdb842c3b4b9d2"},{"author":{"_account_id":2468,"name":"unicell","email":"unicell@gmail.com","username":"unicell"},"change_message_id":"f1e13a4df605bbe6b52d9571090732839be4d8a0","unresolved":false,"context_lines":[{"line_number":74,"context_line":""},{"line_number":75,"context_line":"def main():"},{"line_number":76,"context_line":"    argument_spec \u003d dict("},{"line_number":77,"context_line":"        fs_label\u003ddict(required\u003dFalse, type\u003d\u0027str\u0027),"},{"line_number":78,"context_line":"        match_mode\u003ddict(required\u003dFalse, choices\u003d[\u0027strict\u0027, \u0027prefix\u0027],"},{"line_number":79,"context_line":"                        default\u003d\u0027strict\u0027),"},{"line_number":80,"context_line":"        partition_name\u003ddict(required\u003dFalse, type\u003d\u0027str\u0027)"}],"source_content_type":"text/x-python","patch_set":3,"id":"9a68dd71_815b1b2e","line":77,"in_reply_to":"9a68dd71_e9c3e336","updated":"2016-01-27 17:33:26.000000000","message":"Done","commit_id":"da2cebb88eaaeaf0eba7fdd7d7fdb842c3b4b9d2"},{"author":{"_account_id":14119,"name":"Sam Yaple","email":"sam+git@yaple.net","username":"SamYaple"},"change_message_id":"50f6bf452584c36fce8c13f1f4db70d9eb4a1507","unresolved":false,"context_lines":[{"line_number":77,"context_line":"        fs_label\u003ddict(required\u003dFalse, type\u003d\u0027str\u0027),"},{"line_number":78,"context_line":"        match_mode\u003ddict(required\u003dFalse, choices\u003d[\u0027strict\u0027, \u0027prefix\u0027],"},{"line_number":79,"context_line":"                        default\u003d\u0027strict\u0027),"},{"line_number":80,"context_line":"        partition_name\u003ddict(required\u003dFalse, type\u003d\u0027str\u0027)"},{"line_number":81,"context_line":"    )"},{"line_number":82,"context_line":"    module \u003d AnsibleModule(argument_spec)"},{"line_number":83,"context_line":"    if module.params.get(\u0027partition_name\u0027):"}],"source_content_type":"text/x-python","patch_set":3,"id":"9a68dd71_09c1972e","line":80,"updated":"2016-01-27 00:23:37.000000000","message":"change this line to\n\n    name\u003ddict(required\u003dFalse, type\u003d\u0027str\u0027, alias\u003d[\u0027partition_name\u0027])","commit_id":"da2cebb88eaaeaf0eba7fdd7d7fdb842c3b4b9d2"},{"author":{"_account_id":2468,"name":"unicell","email":"unicell@gmail.com","username":"unicell"},"change_message_id":"f1e13a4df605bbe6b52d9571090732839be4d8a0","unresolved":false,"context_lines":[{"line_number":77,"context_line":"        fs_label\u003ddict(required\u003dFalse, type\u003d\u0027str\u0027),"},{"line_number":78,"context_line":"        match_mode\u003ddict(required\u003dFalse, choices\u003d[\u0027strict\u0027, \u0027prefix\u0027],"},{"line_number":79,"context_line":"                        default\u003d\u0027strict\u0027),"},{"line_number":80,"context_line":"        partition_name\u003ddict(required\u003dFalse, type\u003d\u0027str\u0027)"},{"line_number":81,"context_line":"    )"},{"line_number":82,"context_line":"    module \u003d AnsibleModule(argument_spec)"},{"line_number":83,"context_line":"    if module.params.get(\u0027partition_name\u0027):"}],"source_content_type":"text/x-python","patch_set":3,"id":"9a68dd71_21410f3a","line":80,"in_reply_to":"9a68dd71_09c1972e","updated":"2016-01-27 17:33:26.000000000","message":"Done","commit_id":"da2cebb88eaaeaf0eba7fdd7d7fdb842c3b4b9d2"},{"author":{"_account_id":14119,"name":"Sam Yaple","email":"sam+git@yaple.net","username":"SamYaple"},"change_message_id":"50f6bf452584c36fce8c13f1f4db70d9eb4a1507","unresolved":false,"context_lines":[{"line_number":92,"context_line":""},{"line_number":93,"context_line":"    match_mode \u003d module.params.get(\u0027match_mode\u0027)"},{"line_number":94,"context_line":""},{"line_number":95,"context_line":"    def is_dev_label_matched(dev, pattern):"},{"line_number":96,"context_line":"        if dev_type \u003d\u003d \u0027partition\u0027:"},{"line_number":97,"context_line":"            dev_label \u003d dev.get(\u0027ID_PART_ENTRY_NAME\u0027, \u0027\u0027)"},{"line_number":98,"context_line":"        else:"}],"source_content_type":"text/x-python","patch_set":3,"id":"9a68dd71_293fbb26","line":95,"updated":"2016-01-27 00:23:37.000000000","message":"This function can easily be used to detect whether a PARTITION NAME _or_ a FS_LABEL matches and return the appropriate one.","commit_id":"da2cebb88eaaeaf0eba7fdd7d7fdb842c3b4b9d2"},{"author":{"_account_id":2468,"name":"unicell","email":"unicell@gmail.com","username":"unicell"},"change_message_id":"f1e13a4df605bbe6b52d9571090732839be4d8a0","unresolved":false,"context_lines":[{"line_number":92,"context_line":""},{"line_number":93,"context_line":"    match_mode \u003d module.params.get(\u0027match_mode\u0027)"},{"line_number":94,"context_line":""},{"line_number":95,"context_line":"    def is_dev_label_matched(dev, pattern):"},{"line_number":96,"context_line":"        if dev_type \u003d\u003d \u0027partition\u0027:"},{"line_number":97,"context_line":"            dev_label \u003d dev.get(\u0027ID_PART_ENTRY_NAME\u0027, \u0027\u0027)"},{"line_number":98,"context_line":"        else:"}],"source_content_type":"text/x-python","patch_set":3,"id":"7a5de9d1_9ba72e4f","line":95,"in_reply_to":"9a68dd71_293fbb26","updated":"2016-01-27 17:33:26.000000000","message":"Done","commit_id":"da2cebb88eaaeaf0eba7fdd7d7fdb842c3b4b9d2"},{"author":{"_account_id":14119,"name":"Sam Yaple","email":"sam+git@yaple.net","username":"SamYaple"},"change_message_id":"50f6bf452584c36fce8c13f1f4db70d9eb4a1507","unresolved":false,"context_lines":[{"line_number":118,"context_line":"                    device_node \u003d dev.device_node"},{"line_number":119,"context_line":"                ret.append({\u0027device\u0027: device_node,"},{"line_number":120,"context_line":"                            \u0027fs_uuid\u0027: fs_uuid,"},{"line_number":121,"context_line":"                            \u0027fs_label\u0027: fs_label})"},{"line_number":122,"context_line":"        module.exit_json(disks\u003djson.dumps(ret))"},{"line_number":123,"context_line":"    except Exception as e:"},{"line_number":124,"context_line":"        module.exit_json(failed\u003dTrue, msg\u003drepr(e))"}],"source_content_type":"text/x-python","patch_set":3,"id":"9a68dd71_e9da0317","line":121,"updated":"2016-01-27 00:23:37.000000000","message":"can you explain why this is needed to be returned? device and fs_uuid should be plenty, no?","commit_id":"da2cebb88eaaeaf0eba7fdd7d7fdb842c3b4b9d2"},{"author":{"_account_id":2468,"name":"unicell","email":"unicell@gmail.com","username":"unicell"},"change_message_id":"f1e13a4df605bbe6b52d9571090732839be4d8a0","unresolved":false,"context_lines":[{"line_number":118,"context_line":"                    device_node \u003d dev.device_node"},{"line_number":119,"context_line":"                ret.append({\u0027device\u0027: device_node,"},{"line_number":120,"context_line":"                            \u0027fs_uuid\u0027: fs_uuid,"},{"line_number":121,"context_line":"                            \u0027fs_label\u0027: fs_label})"},{"line_number":122,"context_line":"        module.exit_json(disks\u003djson.dumps(ret))"},{"line_number":123,"context_line":"    except Exception as e:"},{"line_number":124,"context_line":"        module.exit_json(failed\u003dTrue, msg\u003drepr(e))"}],"source_content_type":"text/x-python","patch_set":3,"id":"7a5de9d1_3e3708b2","line":121,"in_reply_to":"9a68dd71_e9da0317","updated":"2016-01-27 17:33:26.000000000","message":"this is for later on mounting swift disk to the location according to the label.\n\nFor example: disk LABEL\u003d\u0027d0\u0027 will be mounted to /srv/node/d0, and this d0 should match the device name when creating the ring.\n\nThe reason doing this, is for multinode setup, better to name the device uniquely in the ring for management purpose while also human readable. Unlike Ceph, there\u0027s no `whoami` in osd drive to identify disk themselves.\n\nSo marking swift disk by label is a practice we do in production. And it works well.","commit_id":"da2cebb88eaaeaf0eba7fdd7d7fdb842c3b4b9d2"}]}
