)]}'
{"/PATCHSET_LEVEL":[{"author":{"_account_id":15197,"name":"Pierre Riteau","email":"pierre@stackhpc.com","username":"priteau","status":"StackHPC"},"change_message_id":"fa6e831e1cb15c273ac3ad4626ba430715cafe89","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"91f6fcc3_e8ec4d80","updated":"2023-09-21 16:29:57.000000000","message":"I realised the issue is actually triggered by updating pip, setuptools version doesn\u0027t change.","commit_id":"e1adffa75f1da545082fd66de801747c2478b5a4"},{"author":{"_account_id":28048,"name":"Will Szumski","email":"will@stackhpc.com","username":"jovial"},"change_message_id":"15ad24d487a8d2b4d32b6e1f09f644adc0121c9f","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"1e99bd60_ec92bcc2","updated":"2023-09-21 11:10:15.000000000","message":"Tested and works for me on Antelope, thanks.","commit_id":"e1adffa75f1da545082fd66de801747c2478b5a4"},{"author":{"_account_id":35263,"name":"Matt Crees","email":"mattc@stackhpc.com","username":"mattcrees"},"change_message_id":"7eacb217676b8de28a33e0a2e3f9d2859c00818c","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"a456ca39_e3e9c9d9","updated":"2023-09-13 08:53:22.000000000","message":"Tested myself, works with the automated setup (https://docs.openstack.org/kayobe/latest/contributor/automated.html#contributor-automated)","commit_id":"e1adffa75f1da545082fd66de801747c2478b5a4"},{"author":{"_account_id":15197,"name":"Pierre Riteau","email":"pierre@stackhpc.com","username":"priteau","status":"StackHPC"},"change_message_id":"18a30bf713bbcf2bda6794d6d75c7d7336de6173","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"01fd0fa9_c854f328","updated":"2023-09-22 07:02:57.000000000","message":"recheck\n\ntenks-deploy failed with:\n\nDepsolve Error occurred: \\n Problem: package libvirt-client-9.0.0-10.2.el9_2.x86_64 requires gnutls-utils, but none of the providers can be installed\\n  - conflicting requests\\n  - nothing provides gnutls(x86-64) \u003d 3.7.6-20.el9_2 needed by gnutls-utils-3.7.6-20.el9_2.x86_64","commit_id":"1847ad3f17a039f29e22f465508991fcb6e1cca7"}],"kayobe/utils.py":[{"author":{"_account_id":17669,"name":"Doug Szumski","email":"doug@stackhpc.com","username":"DougSzumski"},"change_message_id":"c57bbd8fa40cafe18965ab8a1a1efea195cf9c86","unresolved":true,"context_lines":[{"line_number":57,"context_line":"    if os.path.exists(direct_url):"},{"line_number":58,"context_line":"        with open(direct_url, \u0027r\u0027) as f:"},{"line_number":59,"context_line":"            direct_url_content \u003d json.loads(f.readline().strip())"},{"line_number":60,"context_line":"            if \u0027url\u0027 in direct_url_content:"},{"line_number":61,"context_line":"                url \u003d direct_url_content[\u0027url\u0027]"},{"line_number":62,"context_line":"                prefix \u003d \u0027file://\u0027"},{"line_number":63,"context_line":"                if url.startswith(prefix):"}],"source_content_type":"text/x-python","patch_set":2,"id":"b2f7f73b_cdd529a3","line":60,"updated":"2023-09-18 09:06:43.000000000","message":"nit: We could remove this `if`, since the spec says the field must exist if the file does:\n\n`\nIf present, it MUST contain at least two fields. The first one is url, with type string. \n`\nhttps://peps.python.org/pep-0610/","commit_id":"e1adffa75f1da545082fd66de801747c2478b5a4"},{"author":{"_account_id":15197,"name":"Pierre Riteau","email":"pierre@stackhpc.com","username":"priteau","status":"StackHPC"},"change_message_id":"014259a8357f5187ca98aeb8b6eddb4bf63f103b","unresolved":false,"context_lines":[{"line_number":57,"context_line":"    if os.path.exists(direct_url):"},{"line_number":58,"context_line":"        with open(direct_url, \u0027r\u0027) as f:"},{"line_number":59,"context_line":"            direct_url_content \u003d json.loads(f.readline().strip())"},{"line_number":60,"context_line":"            if \u0027url\u0027 in direct_url_content:"},{"line_number":61,"context_line":"                url \u003d direct_url_content[\u0027url\u0027]"},{"line_number":62,"context_line":"                prefix \u003d \u0027file://\u0027"},{"line_number":63,"context_line":"                if url.startswith(prefix):"}],"source_content_type":"text/x-python","patch_set":2,"id":"1e1eef25_a326f4d5","line":60,"in_reply_to":"b2f7f73b_cdd529a3","updated":"2023-09-21 16:26:34.000000000","message":"Done","commit_id":"e1adffa75f1da545082fd66de801747c2478b5a4"},{"author":{"_account_id":17669,"name":"Doug Szumski","email":"doug@stackhpc.com","username":"DougSzumski"},"change_message_id":"c57bbd8fa40cafe18965ab8a1a1efea195cf9c86","unresolved":true,"context_lines":[{"line_number":61,"context_line":"                url \u003d direct_url_content[\u0027url\u0027]"},{"line_number":62,"context_line":"                prefix \u003d \u0027file://\u0027"},{"line_number":63,"context_line":"                if url.startswith(prefix):"},{"line_number":64,"context_line":"                    return url[len(prefix):]"},{"line_number":65,"context_line":""},{"line_number":66,"context_line":"    return None"},{"line_number":67,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"649b3bed_a0880815","line":64,"updated":"2023-09-18 09:06:43.000000000","message":"nit: Should we explicitly fail in the unlikely case that the prefix is a VCS URL, eg. git+https:// etc?","commit_id":"e1adffa75f1da545082fd66de801747c2478b5a4"},{"author":{"_account_id":15197,"name":"Pierre Riteau","email":"pierre@stackhpc.com","username":"priteau","status":"StackHPC"},"change_message_id":"014259a8357f5187ca98aeb8b6eddb4bf63f103b","unresolved":false,"context_lines":[{"line_number":61,"context_line":"                url \u003d direct_url_content[\u0027url\u0027]"},{"line_number":62,"context_line":"                prefix \u003d \u0027file://\u0027"},{"line_number":63,"context_line":"                if url.startswith(prefix):"},{"line_number":64,"context_line":"                    return url[len(prefix):]"},{"line_number":65,"context_line":""},{"line_number":66,"context_line":"    return None"},{"line_number":67,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"32f7ad21_ef8f81bb","line":64,"in_reply_to":"649b3bed_a0880815","updated":"2023-09-21 16:26:34.000000000","message":"I\u0027ve tested this with an editable installation from GitHub, but the direct_url.json file actually contains the path to local checkout:\n\n{\"dir_info\": {\"editable\": true}, \"url\": \"file:///home/ubuntu/myvenv/src/kayobe\"}","commit_id":"e1adffa75f1da545082fd66de801747c2478b5a4"},{"author":{"_account_id":35263,"name":"Matt Crees","email":"mattc@stackhpc.com","username":"mattcrees"},"change_message_id":"7eacb217676b8de28a33e0a2e3f9d2859c00818c","unresolved":true,"context_lines":[{"line_number":78,"context_line":"            return direct_url"},{"line_number":79,"context_line":""},{"line_number":80,"context_line":"    egg_glob \u003d os.path.join("},{"line_number":81,"context_line":"        sys.prefix, \u0027lib*\u0027, \u0027python*\u0027, \u0027*-packages\u0027, \u0027kayobe.egg-link\u0027"},{"line_number":82,"context_line":"    )"},{"line_number":83,"context_line":"    egg_link \u003d glob.glob(egg_glob)"},{"line_number":84,"context_line":"    if egg_link:"}],"source_content_type":"text/x-python","patch_set":2,"id":"dfda056d_55eac74f","line":81,"updated":"2023-09-13 08:53:22.000000000","message":"Do we still need this section if the egg-link file no longer exists?","commit_id":"e1adffa75f1da545082fd66de801747c2478b5a4"},{"author":{"_account_id":35263,"name":"Matt Crees","email":"mattc@stackhpc.com","username":"mattcrees"},"change_message_id":"ec118af73646a6ea931da95ee08361f8f7e43c36","unresolved":false,"context_lines":[{"line_number":78,"context_line":"            return direct_url"},{"line_number":79,"context_line":""},{"line_number":80,"context_line":"    egg_glob \u003d os.path.join("},{"line_number":81,"context_line":"        sys.prefix, \u0027lib*\u0027, \u0027python*\u0027, \u0027*-packages\u0027, \u0027kayobe.egg-link\u0027"},{"line_number":82,"context_line":"    )"},{"line_number":83,"context_line":"    egg_link \u003d glob.glob(egg_glob)"},{"line_number":84,"context_line":"    if egg_link:"}],"source_content_type":"text/x-python","patch_set":2,"id":"6118e273_553ff5c8","line":81,"in_reply_to":"5d511aee_f61966c9","updated":"2023-09-22 07:55:20.000000000","message":"Ack","commit_id":"e1adffa75f1da545082fd66de801747c2478b5a4"},{"author":{"_account_id":15197,"name":"Pierre Riteau","email":"pierre@stackhpc.com","username":"priteau","status":"StackHPC"},"change_message_id":"50b6140bf98b9f5bdfefe0c7aa3f737541810001","unresolved":true,"context_lines":[{"line_number":78,"context_line":"            return direct_url"},{"line_number":79,"context_line":""},{"line_number":80,"context_line":"    egg_glob \u003d os.path.join("},{"line_number":81,"context_line":"        sys.prefix, \u0027lib*\u0027, \u0027python*\u0027, \u0027*-packages\u0027, \u0027kayobe.egg-link\u0027"},{"line_number":82,"context_line":"    )"},{"line_number":83,"context_line":"    egg_link \u003d glob.glob(egg_glob)"},{"line_number":84,"context_line":"    if egg_link:"}],"source_content_type":"text/x-python","patch_set":2,"id":"5d511aee_f61966c9","line":81,"in_reply_to":"dfda056d_55eac74f","updated":"2023-09-13 11:00:36.000000000","message":"Some people could be using an old version of setuptools?","commit_id":"e1adffa75f1da545082fd66de801747c2478b5a4"},{"author":{"_account_id":28048,"name":"Will Szumski","email":"will@stackhpc.com","username":"jovial"},"change_message_id":"9a7332e32d36f9371181632f05a2aad0e47830d4","unresolved":true,"context_lines":[{"line_number":91,"context_line":"        return os.path.join(prefix, \"share\", \"kayobe\")"},{"line_number":92,"context_line":""},{"line_number":93,"context_line":"    # Assume uninstalled"},{"line_number":94,"context_line":"    return os.path.join(os.path.realpath(__file__), \"..\")"},{"line_number":95,"context_line":""},{"line_number":96,"context_line":""},{"line_number":97,"context_line":"def galaxy_role_install(role_file, roles_path, force\u003dFalse):"}],"source_content_type":"text/x-python","patch_set":2,"id":"99137e99_136262c9","line":94,"updated":"2023-09-21 10:53:57.000000000","message":"I think this should be \"../..\" i.e the relative path to get to the root of the repo","commit_id":"e1adffa75f1da545082fd66de801747c2478b5a4"},{"author":{"_account_id":28048,"name":"Will Szumski","email":"will@stackhpc.com","username":"jovial"},"change_message_id":"15ad24d487a8d2b4d32b6e1f09f644adc0121c9f","unresolved":true,"context_lines":[{"line_number":91,"context_line":"        return os.path.join(prefix, \"share\", \"kayobe\")"},{"line_number":92,"context_line":""},{"line_number":93,"context_line":"    # Assume uninstalled"},{"line_number":94,"context_line":"    return os.path.join(os.path.realpath(__file__), \"..\")"},{"line_number":95,"context_line":""},{"line_number":96,"context_line":""},{"line_number":97,"context_line":"def galaxy_role_install(role_file, roles_path, force\u003dFalse):"}],"source_content_type":"text/x-python","patch_set":2,"id":"8658769f_f15d0d7d","line":94,"in_reply_to":"39a7121d_96dd93c6","updated":"2023-09-21 11:10:15.000000000","message":"sure","commit_id":"e1adffa75f1da545082fd66de801747c2478b5a4"},{"author":{"_account_id":28048,"name":"Will Szumski","email":"will@stackhpc.com","username":"jovial"},"change_message_id":"c725eea8f51e4d4362984a2ebde77a092e66a478","unresolved":false,"context_lines":[{"line_number":91,"context_line":"        return os.path.join(prefix, \"share\", \"kayobe\")"},{"line_number":92,"context_line":""},{"line_number":93,"context_line":"    # Assume uninstalled"},{"line_number":94,"context_line":"    return os.path.join(os.path.realpath(__file__), \"..\")"},{"line_number":95,"context_line":""},{"line_number":96,"context_line":""},{"line_number":97,"context_line":"def galaxy_role_install(role_file, roles_path, force\u003dFalse):"}],"source_content_type":"text/x-python","patch_set":2,"id":"6462c31b_e472c78c","line":94,"in_reply_to":"8658769f_f15d0d7d","updated":"2023-09-21 11:10:44.000000000","message":"Done","commit_id":"e1adffa75f1da545082fd66de801747c2478b5a4"},{"author":{"_account_id":15197,"name":"Pierre Riteau","email":"pierre@stackhpc.com","username":"priteau","status":"StackHPC"},"change_message_id":"648802344f9d62d2bac91d13c4a45d58e9da61ac","unresolved":true,"context_lines":[{"line_number":91,"context_line":"        return os.path.join(prefix, \"share\", \"kayobe\")"},{"line_number":92,"context_line":""},{"line_number":93,"context_line":"    # Assume uninstalled"},{"line_number":94,"context_line":"    return os.path.join(os.path.realpath(__file__), \"..\")"},{"line_number":95,"context_line":""},{"line_number":96,"context_line":""},{"line_number":97,"context_line":"def galaxy_role_install(role_file, roles_path, force\u003dFalse):"}],"source_content_type":"text/x-python","patch_set":2,"id":"39a7121d_96dd93c6","line":94,"in_reply_to":"99137e99_136262c9","updated":"2023-09-21 11:00:42.000000000","message":"This code hasn\u0027t changed, can it be for another patch?","commit_id":"e1adffa75f1da545082fd66de801747c2478b5a4"}]}
