)]}'
{"/PATCHSET_LEVEL":[{"author":{"_account_id":30491,"name":"Radosław Piliszek","display_name":"Radek","email":"radek@piliszek.it","username":"yoctozepto","status":"self-employed techologist, collaborating mostly with 7bulls.com"},"change_message_id":"7072053f4a087753259caf7d55c53d67cb87095e","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"e6958576_7b5663a6","updated":"2022-02-21 16:33:41.000000000","message":"I didn\u0027t hit w+1 just so that you see my inline comment.","commit_id":"3cc42e5a2839f09313cf4cf0c00855b169c7c5c4"},{"author":{"_account_id":32962,"name":"Jakob Meng","email":"code@jakobmeng.de","username":"jakobmeng@web.de"},"change_message_id":"fd655590262635c47f13c2581f7ae23e8e72bacd","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"e9f89589_a95da73b","updated":"2022-02-16 08:31:57.000000000","message":"Thank you for the review, Martin 😊 I went down into the history of DevStack to find the rationale for some of the functions, what a journey ^^","commit_id":"3cc42e5a2839f09313cf4cf0c00855b169c7c5c4"},{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"f468d38138eb326ad1413f64b826172c88958aa3","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"53fa6c4e_f009a489","updated":"2022-02-21 16:23:59.000000000","message":"\\o/","commit_id":"3cc42e5a2839f09313cf4cf0c00855b169c7c5c4"},{"author":{"_account_id":22873,"name":"Martin Kopec","email":"mkopec@redhat.com","username":"mkopec"},"change_message_id":"8332907398902514cccab983908cefdc28c31876","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"fb8e006a_961ae497","updated":"2022-02-16 06:43:08.000000000","message":"overall it lgtm, I found a few tiny differences, it\u0027d be great if someone from swift could confirm they\u0027re ok","commit_id":"3cc42e5a2839f09313cf4cf0c00855b169c7c5c4"},{"author":{"_account_id":32962,"name":"Jakob Meng","email":"code@jakobmeng.de","username":"jakobmeng@web.de"},"change_message_id":"34695b243041ef9acf2219e667b84614472370a9","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"5b1d36cf_c6f31075","updated":"2022-02-08 07:58:27.000000000","message":"recheck","commit_id":"3cc42e5a2839f09313cf4cf0c00855b169c7c5c4"},{"author":{"_account_id":22873,"name":"Martin Kopec","email":"mkopec@redhat.com","username":"mkopec"},"change_message_id":"39c615e8fd5329af28657b8790487c4729d06fa1","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"b3f9fcb3_b381b93d","updated":"2022-02-16 10:16:34.000000000","message":"thanks Jakob for clarification, makes sense now","commit_id":"3cc42e5a2839f09313cf4cf0c00855b169c7c5c4"},{"author":{"_account_id":30491,"name":"Radosław Piliszek","display_name":"Radek","email":"radek@piliszek.it","username":"yoctozepto","status":"self-employed techologist, collaborating mostly with 7bulls.com"},"change_message_id":"7072053f4a087753259caf7d55c53d67cb87095e","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"f8565799_a2562b0b","in_reply_to":"53fa6c4e_f009a489","updated":"2022-02-21 16:33:41.000000000","message":"yes, it\u0027s your code that saves the day","commit_id":"3cc42e5a2839f09313cf4cf0c00855b169c7c5c4"}],"lib/swift":[{"author":{"_account_id":22873,"name":"Martin Kopec","email":"mkopec@redhat.com","username":"mkopec"},"change_message_id":"8332907398902514cccab983908cefdc28c31876","unresolved":true,"context_lines":[{"line_number":179,"context_line":"# cleanup_swift() - Remove residual data files"},{"line_number":180,"context_line":"function cleanup_swift {"},{"line_number":181,"context_line":"    rm -f ${SWIFT_CONF_DIR}{*.builder,*.ring.gz,backups/*.builder,backups/*.ring.gz}"},{"line_number":182,"context_line":"    if egrep -q ${SWIFT_DATA_DIR}/drives/sdb1 /proc/mounts; then"},{"line_number":183,"context_line":"        sudo umount ${SWIFT_DATA_DIR}/drives/sdb1"},{"line_number":184,"context_line":"    fi"},{"line_number":185,"context_line":"    if [[ -e ${SWIFT_DISK_IMAGE} ]]; then"},{"line_number":186,"context_line":"        rm ${SWIFT_DISK_IMAGE}"},{"line_number":187,"context_line":"    fi"},{"line_number":188,"context_line":"    rm -rf ${SWIFT_DATA_DIR}/run/"},{"line_number":189,"context_line":"    if [ \"$SWIFT_USE_MOD_WSGI\" \u003d\u003d \"True\" ]; then"},{"line_number":190,"context_line":"        _cleanup_swift_apache_wsgi"}],"source_content_type":"text/x-swift","patch_set":1,"id":"b59e7722_0901943a","side":"PARENT","line":187,"range":{"start_line":182,"start_character":3,"end_line":187,"end_character":6},"updated":"2022-02-16 06:43:08.000000000","message":"destroy_disk functions executes the same plus it clears the fstab rules, it\u0027s a logical equivalent so we can replace this by simply calling destroy_disk\nhttps://opendev.org/openstack/devstack/src/commit/62d6ffa6b3278023d1e385bd50810e0d091e0bc3/functions#L762","commit_id":"a756f4b9681d429f2612164eb01d57c800ff2d2a"},{"author":{"_account_id":22873,"name":"Martin Kopec","email":"mkopec@redhat.com","username":"mkopec"},"change_message_id":"8332907398902514cccab983908cefdc28c31876","unresolved":true,"context_lines":[{"line_number":582,"context_line":"        fi"},{"line_number":583,"context_line":"    fi"},{"line_number":584,"context_line":""},{"line_number":585,"context_line":"    mkdir -p ${SWIFT_DATA_DIR}/drives/images"},{"line_number":586,"context_line":"    sudo touch ${SWIFT_DISK_IMAGE}"},{"line_number":587,"context_line":"    sudo chown ${STACK_USER}: ${SWIFT_DISK_IMAGE}"},{"line_number":588,"context_line":""}],"source_content_type":"text/x-swift","patch_set":1,"id":"64f8115c_52fadf9f","side":"PARENT","line":585,"range":{"start_line":585,"start_character":13,"end_line":585,"end_character":44},"updated":"2022-02-16 06:43:08.000000000","message":"create_disk creates a dir with a different name than this ($dirname ${SWIFT_DISK_IMAGE})","commit_id":"a756f4b9681d429f2612164eb01d57c800ff2d2a"},{"author":{"_account_id":32962,"name":"Jakob Meng","email":"code@jakobmeng.de","username":"jakobmeng@web.de"},"change_message_id":"fd655590262635c47f13c2581f7ae23e8e72bacd","unresolved":true,"context_lines":[{"line_number":582,"context_line":"        fi"},{"line_number":583,"context_line":"    fi"},{"line_number":584,"context_line":""},{"line_number":585,"context_line":"    mkdir -p ${SWIFT_DATA_DIR}/drives/images"},{"line_number":586,"context_line":"    sudo touch ${SWIFT_DISK_IMAGE}"},{"line_number":587,"context_line":"    sudo chown ${STACK_USER}: ${SWIFT_DISK_IMAGE}"},{"line_number":588,"context_line":""}],"source_content_type":"text/x-swift","patch_set":1,"id":"ab13005a_47654161","side":"PARENT","line":585,"range":{"start_line":585,"start_character":13,"end_line":585,"end_character":44},"in_reply_to":"64f8115c_52fadf9f","updated":"2022-02-16 08:31:57.000000000","message":"SWIFT_DISK_IMAGE is defined in lib/swift as:\n\nSWIFT_DISK_IMAGE\u003d${SWIFT_DATA_DIR}/drives/images/swift.img\n\ncreate_disk() from functions will call:\n\nsudo mkdir -p $(dirname ${disk_image})\n\nDoesn\u0027t this exactly reproduce the previous functionality?\nWhat do you mean by \"different name\"?","commit_id":"a756f4b9681d429f2612164eb01d57c800ff2d2a"},{"author":{"_account_id":22873,"name":"Martin Kopec","email":"mkopec@redhat.com","username":"mkopec"},"change_message_id":"39c615e8fd5329af28657b8790487c4729d06fa1","unresolved":true,"context_lines":[{"line_number":582,"context_line":"        fi"},{"line_number":583,"context_line":"    fi"},{"line_number":584,"context_line":""},{"line_number":585,"context_line":"    mkdir -p ${SWIFT_DATA_DIR}/drives/images"},{"line_number":586,"context_line":"    sudo touch ${SWIFT_DISK_IMAGE}"},{"line_number":587,"context_line":"    sudo chown ${STACK_USER}: ${SWIFT_DISK_IMAGE}"},{"line_number":588,"context_line":""}],"source_content_type":"text/x-swift","patch_set":1,"id":"f1c6f7b6_65edb85b","side":"PARENT","line":585,"range":{"start_line":585,"start_character":13,"end_line":585,"end_character":44},"in_reply_to":"ab13005a_47654161","updated":"2022-02-16 10:16:34.000000000","message":"aha! i didn\u0027t know that .. ok, so it\u0027s the same functionality then, good","commit_id":"a756f4b9681d429f2612164eb01d57c800ff2d2a"},{"author":{"_account_id":30491,"name":"Radosław Piliszek","display_name":"Radek","email":"radek@piliszek.it","username":"yoctozepto","status":"self-employed techologist, collaborating mostly with 7bulls.com"},"change_message_id":"7072053f4a087753259caf7d55c53d67cb87095e","unresolved":false,"context_lines":[{"line_number":582,"context_line":"        fi"},{"line_number":583,"context_line":"    fi"},{"line_number":584,"context_line":""},{"line_number":585,"context_line":"    mkdir -p ${SWIFT_DATA_DIR}/drives/images"},{"line_number":586,"context_line":"    sudo touch ${SWIFT_DISK_IMAGE}"},{"line_number":587,"context_line":"    sudo chown ${STACK_USER}: ${SWIFT_DISK_IMAGE}"},{"line_number":588,"context_line":""}],"source_content_type":"text/x-swift","patch_set":1,"id":"65ea0b4e_be9e70f5","side":"PARENT","line":585,"range":{"start_line":585,"start_character":13,"end_line":585,"end_character":44},"in_reply_to":"f1c6f7b6_65edb85b","updated":"2022-02-21 16:33:41.000000000","message":"Done","commit_id":"a756f4b9681d429f2612164eb01d57c800ff2d2a"},{"author":{"_account_id":22873,"name":"Martin Kopec","email":"mkopec@redhat.com","username":"mkopec"},"change_message_id":"8332907398902514cccab983908cefdc28c31876","unresolved":true,"context_lines":[{"line_number":583,"context_line":"    fi"},{"line_number":584,"context_line":""},{"line_number":585,"context_line":"    mkdir -p ${SWIFT_DATA_DIR}/drives/images"},{"line_number":586,"context_line":"    sudo touch ${SWIFT_DISK_IMAGE}"},{"line_number":587,"context_line":"    sudo chown ${STACK_USER}: ${SWIFT_DISK_IMAGE}"},{"line_number":588,"context_line":""},{"line_number":589,"context_line":"    truncate -s ${SWIFT_LOOPBACK_DISK_SIZE} ${SWIFT_DISK_IMAGE}"}],"source_content_type":"text/x-swift","patch_set":1,"id":"c78ec163_73373139","side":"PARENT","line":586,"range":{"start_line":586,"start_character":4,"end_line":586,"end_character":34},"updated":"2022-02-16 06:43:08.000000000","message":"this step is not executed in create_disk","commit_id":"a756f4b9681d429f2612164eb01d57c800ff2d2a"},{"author":{"_account_id":30491,"name":"Radosław Piliszek","display_name":"Radek","email":"radek@piliszek.it","username":"yoctozepto","status":"self-employed techologist, collaborating mostly with 7bulls.com"},"change_message_id":"7072053f4a087753259caf7d55c53d67cb87095e","unresolved":false,"context_lines":[{"line_number":583,"context_line":"    fi"},{"line_number":584,"context_line":""},{"line_number":585,"context_line":"    mkdir -p ${SWIFT_DATA_DIR}/drives/images"},{"line_number":586,"context_line":"    sudo touch ${SWIFT_DISK_IMAGE}"},{"line_number":587,"context_line":"    sudo chown ${STACK_USER}: ${SWIFT_DISK_IMAGE}"},{"line_number":588,"context_line":""},{"line_number":589,"context_line":"    truncate -s ${SWIFT_LOOPBACK_DISK_SIZE} ${SWIFT_DISK_IMAGE}"}],"source_content_type":"text/x-swift","patch_set":1,"id":"18abdc81_eded9203","side":"PARENT","line":586,"range":{"start_line":586,"start_character":4,"end_line":586,"end_character":34},"in_reply_to":"05cfc5a9_63a6dd4d","updated":"2022-02-21 16:33:41.000000000","message":"Done","commit_id":"a756f4b9681d429f2612164eb01d57c800ff2d2a"},{"author":{"_account_id":22873,"name":"Martin Kopec","email":"mkopec@redhat.com","username":"mkopec"},"change_message_id":"39c615e8fd5329af28657b8790487c4729d06fa1","unresolved":true,"context_lines":[{"line_number":583,"context_line":"    fi"},{"line_number":584,"context_line":""},{"line_number":585,"context_line":"    mkdir -p ${SWIFT_DATA_DIR}/drives/images"},{"line_number":586,"context_line":"    sudo touch ${SWIFT_DISK_IMAGE}"},{"line_number":587,"context_line":"    sudo chown ${STACK_USER}: ${SWIFT_DISK_IMAGE}"},{"line_number":588,"context_line":""},{"line_number":589,"context_line":"    truncate -s ${SWIFT_LOOPBACK_DISK_SIZE} ${SWIFT_DISK_IMAGE}"}],"source_content_type":"text/x-swift","patch_set":1,"id":"05cfc5a9_63a6dd4d","side":"PARENT","line":586,"range":{"start_line":586,"start_character":4,"end_line":586,"end_character":34},"in_reply_to":"0951f4c3_0d615cba","updated":"2022-02-16 10:16:34.000000000","message":"i see, that makes sense","commit_id":"a756f4b9681d429f2612164eb01d57c800ff2d2a"},{"author":{"_account_id":32962,"name":"Jakob Meng","email":"code@jakobmeng.de","username":"jakobmeng@web.de"},"change_message_id":"fd655590262635c47f13c2581f7ae23e8e72bacd","unresolved":true,"context_lines":[{"line_number":583,"context_line":"    fi"},{"line_number":584,"context_line":""},{"line_number":585,"context_line":"    mkdir -p ${SWIFT_DATA_DIR}/drives/images"},{"line_number":586,"context_line":"    sudo touch ${SWIFT_DISK_IMAGE}"},{"line_number":587,"context_line":"    sudo chown ${STACK_USER}: ${SWIFT_DISK_IMAGE}"},{"line_number":588,"context_line":""},{"line_number":589,"context_line":"    truncate -s ${SWIFT_LOOPBACK_DISK_SIZE} ${SWIFT_DISK_IMAGE}"}],"source_content_type":"text/x-swift","patch_set":1,"id":"0951f4c3_0d615cba","side":"PARENT","line":586,"range":{"start_line":586,"start_character":4,"end_line":586,"end_character":34},"in_reply_to":"c78ec163_73373139","updated":"2022-02-16 08:31:57.000000000","message":"This touch command has been added 10 years ago when lib/swift was still part of stack.sh. IMHO it was unnecessary back then because both dd and truncate (which replaced dd later) do both create files if they do not exist.\n\nSome pointers if one wants to go back in history of lib/swift:\nhttps://opendev.org/openstack/devstack/commit/b93478f6c752380481a75119bcf56abae5533d25\nhttps://opendev.org/openstack/devstack/commit/a03f005673107fd93226752f9531ae498b70da39\n\nAs of today, I cannot think of an edge case in which truncate would make trouble where touch would not. IMHO touch can be dropped.","commit_id":"a756f4b9681d429f2612164eb01d57c800ff2d2a"},{"author":{"_account_id":30491,"name":"Radosław Piliszek","display_name":"Radek","email":"radek@piliszek.it","username":"yoctozepto","status":"self-employed techologist, collaborating mostly with 7bulls.com"},"change_message_id":"7072053f4a087753259caf7d55c53d67cb87095e","unresolved":true,"context_lines":[{"line_number":584,"context_line":""},{"line_number":585,"context_line":"    mkdir -p ${SWIFT_DATA_DIR}/drives/images"},{"line_number":586,"context_line":"    sudo touch ${SWIFT_DISK_IMAGE}"},{"line_number":587,"context_line":"    sudo chown ${STACK_USER}: ${SWIFT_DISK_IMAGE}"},{"line_number":588,"context_line":""},{"line_number":589,"context_line":"    truncate -s ${SWIFT_LOOPBACK_DISK_SIZE} ${SWIFT_DISK_IMAGE}"},{"line_number":590,"context_line":""}],"source_content_type":"text/x-swift","patch_set":1,"id":"c221e230_6f0c7bcc","side":"PARENT","line":587,"range":{"start_line":587,"start_character":4,"end_line":587,"end_character":49},"updated":"2022-02-21 16:33:41.000000000","message":"this is likely not needed now as the functions handle everything with sudo","commit_id":"a756f4b9681d429f2612164eb01d57c800ff2d2a"},{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"1e5adab5ac03efd546d4a4cc812115e48dc3c936","unresolved":true,"context_lines":[{"line_number":584,"context_line":""},{"line_number":585,"context_line":"    mkdir -p ${SWIFT_DATA_DIR}/drives/images"},{"line_number":586,"context_line":"    sudo touch ${SWIFT_DISK_IMAGE}"},{"line_number":587,"context_line":"    sudo chown ${STACK_USER}: ${SWIFT_DISK_IMAGE}"},{"line_number":588,"context_line":""},{"line_number":589,"context_line":"    truncate -s ${SWIFT_LOOPBACK_DISK_SIZE} ${SWIFT_DISK_IMAGE}"},{"line_number":590,"context_line":""}],"source_content_type":"text/x-swift","patch_set":1,"id":"535957e1_abdfa76d","side":"PARENT","line":587,"range":{"start_line":587,"start_character":4,"end_line":587,"end_character":49},"in_reply_to":"c221e230_6f0c7bcc","updated":"2022-02-21 16:41:30.000000000","message":"Yeah, probably leftover from a decade ago, like the touch above. Not a big deal, IMHO, but also fine to revise of course :)","commit_id":"a756f4b9681d429f2612164eb01d57c800ff2d2a"}]}
