)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":15197,"name":"Pierre Riteau","email":"pierre@stackhpc.com","username":"priteau","status":"StackHPC"},"change_message_id":"2d40b251f89c7367781ffe2815acc6f328470b03","unresolved":true,"context_lines":[{"line_number":17,"context_line":"plugin, and where possible leans on some of the existing"},{"line_number":18,"context_line":"logic, currently only filter_hosts_by_reservation."},{"line_number":19,"context_line":""},{"line_number":20,"context_line":"The plugin is not currently useable."},{"line_number":21,"context_line":"There are follow on patches that implement"},{"line_number":22,"context_line":"reserve_resource and then finally update_reservation."},{"line_number":23,"context_line":""}],"source_content_type":"text/x-gerrit-commit-message","patch_set":11,"id":"c918ccf5_4304caa7","line":20,"updated":"2024-08-02 08:01:26.000000000","message":"usable","commit_id":"bd2774e719946724cbbb36be24e2320f9ab1cd74"},{"author":{"_account_id":15197,"name":"Pierre Riteau","email":"pierre@stackhpc.com","username":"priteau","status":"StackHPC"},"change_message_id":"472a80b087e6b9064dca842f205e2101e6fbf0b2","unresolved":false,"context_lines":[{"line_number":17,"context_line":"plugin, and where possible leans on some of the existing"},{"line_number":18,"context_line":"logic, currently only filter_hosts_by_reservation."},{"line_number":19,"context_line":""},{"line_number":20,"context_line":"The plugin is not currently useable."},{"line_number":21,"context_line":"There are follow on patches that implement"},{"line_number":22,"context_line":"reserve_resource and then finally update_reservation."},{"line_number":23,"context_line":""}],"source_content_type":"text/x-gerrit-commit-message","patch_set":11,"id":"8918c53b_d07f21c4","line":20,"in_reply_to":"c918ccf5_4304caa7","updated":"2024-08-26 11:01:12.000000000","message":"Done","commit_id":"bd2774e719946724cbbb36be24e2320f9ab1cd74"}],"/PATCHSET_LEVEL":[{"author":{"_account_id":35263,"name":"Matt Crees","email":"mattc@stackhpc.com","username":"mattcrees"},"change_message_id":"2212ade3f058e6aa1d8f615a17e97e8078679455","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":11,"id":"fa0aae5b_69b56799","updated":"2024-07-05 13:21:51.000000000","message":"+1 as I see no faults in the functionality, just have some open comments","commit_id":"bd2774e719946724cbbb36be24e2320f9ab1cd74"}],"blazar/plugins/flavor/flavor_plugin.py":[{"author":{"_account_id":15197,"name":"Pierre Riteau","email":"pierre@stackhpc.com","username":"priteau","status":"StackHPC"},"change_message_id":"3d46048a011ef425032259ede0beb81b4b6813f5","unresolved":true,"context_lines":[{"line_number":39,"context_line":"    resource_type \u003d plugin.RESOURCE_TYPE"},{"line_number":40,"context_line":"    title \u003d \u0027Plugin for nova flavor based server reservations\u0027"},{"line_number":41,"context_line":"    description \u003d \u0027Reserve resources modeled by Nova flavors.\u0027"},{"line_number":42,"context_line":"    title \u003d \u0027Virtual Instance Plugin\u0027"},{"line_number":43,"context_line":""},{"line_number":44,"context_line":"    # TODO(johngarbutt): is this needed?"},{"line_number":45,"context_line":"    query_options \u003d {"}],"source_content_type":"text/x-python","patch_set":8,"id":"c270fe18_41d60fe5","line":42,"range":{"start_line":42,"start_character":4,"end_line":42,"end_character":37},"updated":"2024-05-02 14:58:51.000000000","message":"Duplicate variable definition","commit_id":"93005f8c0560cc0ae78a148609005c7f6d2b16c5"},{"author":{"_account_id":782,"name":"John Garbutt","email":"john@johngarbutt.com","username":"johngarbutt"},"change_message_id":"cc328cc4e0cd452929ad5d31d96c1d2f5294357f","unresolved":false,"context_lines":[{"line_number":39,"context_line":"    resource_type \u003d plugin.RESOURCE_TYPE"},{"line_number":40,"context_line":"    title \u003d \u0027Plugin for nova flavor based server reservations\u0027"},{"line_number":41,"context_line":"    description \u003d \u0027Reserve resources modeled by Nova flavors.\u0027"},{"line_number":42,"context_line":"    title \u003d \u0027Virtual Instance Plugin\u0027"},{"line_number":43,"context_line":""},{"line_number":44,"context_line":"    # TODO(johngarbutt): is this needed?"},{"line_number":45,"context_line":"    query_options \u003d {"}],"source_content_type":"text/x-python","patch_set":8,"id":"82d86d6f_68543ced","line":42,"range":{"start_line":42,"start_character":4,"end_line":42,"end_character":37},"in_reply_to":"c270fe18_41d60fe5","updated":"2024-06-07 09:01:08.000000000","message":"Done","commit_id":"93005f8c0560cc0ae78a148609005c7f6d2b16c5"},{"author":{"_account_id":15197,"name":"Pierre Riteau","email":"pierre@stackhpc.com","username":"priteau","status":"StackHPC"},"change_message_id":"3d46048a011ef425032259ede0beb81b4b6813f5","unresolved":true,"context_lines":[{"line_number":246,"context_line":"        for key, value in source_flavor[\u0027extra_specs\u0027].items():"},{"line_number":247,"context_line":"            if key.startswith(\"trait:\"):"},{"line_number":248,"context_line":"                trait \u003d key.split(\":\")[1]"},{"line_number":249,"context_line":"                if value \u003d\u003d \"required\":"},{"line_number":250,"context_line":"                    resource_traits[trait] \u003d \"required\""},{"line_number":251,"context_line":"                elif value \u003d\u003d \"forbidden\":"},{"line_number":252,"context_line":"                    resource_traits[trait] \u003d \"forbidden\""},{"line_number":253,"context_line":""},{"line_number":254,"context_line":"            if key.startswith(\"resources:\"):"},{"line_number":255,"context_line":"                rc \u003d key.split(\":\")[1]"}],"source_content_type":"text/x-python","patch_set":8,"id":"8e6e1f4d_d4b249c5","line":252,"range":{"start_line":249,"start_character":0,"end_line":252,"end_character":56},"updated":"2024-05-02 14:58:51.000000000","message":"Should we log here if value is not set to either required or forbidden?","commit_id":"93005f8c0560cc0ae78a148609005c7f6d2b16c5"},{"author":{"_account_id":782,"name":"John Garbutt","email":"john@johngarbutt.com","username":"johngarbutt"},"change_message_id":"cc328cc4e0cd452929ad5d31d96c1d2f5294357f","unresolved":false,"context_lines":[{"line_number":246,"context_line":"        for key, value in source_flavor[\u0027extra_specs\u0027].items():"},{"line_number":247,"context_line":"            if key.startswith(\"trait:\"):"},{"line_number":248,"context_line":"                trait \u003d key.split(\":\")[1]"},{"line_number":249,"context_line":"                if value \u003d\u003d \"required\":"},{"line_number":250,"context_line":"                    resource_traits[trait] \u003d \"required\""},{"line_number":251,"context_line":"                elif value \u003d\u003d \"forbidden\":"},{"line_number":252,"context_line":"                    resource_traits[trait] \u003d \"forbidden\""},{"line_number":253,"context_line":""},{"line_number":254,"context_line":"            if key.startswith(\"resources:\"):"},{"line_number":255,"context_line":"                rc \u003d key.split(\":\")[1]"}],"source_content_type":"text/x-python","patch_set":8,"id":"6f0ca357_4d18362b","line":252,"range":{"start_line":249,"start_character":0,"end_line":252,"end_character":56},"in_reply_to":"8e6e1f4d_d4b249c5","updated":"2024-06-07 09:01:08.000000000","message":"good idea.","commit_id":"93005f8c0560cc0ae78a148609005c7f6d2b16c5"},{"author":{"_account_id":35263,"name":"Matt Crees","email":"mattc@stackhpc.com","username":"mattcrees"},"change_message_id":"b6dd6bc9cca5b5ebb9ef8c91d3fd655177262909","unresolved":true,"context_lines":[{"line_number":34,"context_line":""},{"line_number":35,"context_line":""},{"line_number":36,"context_line":"class FlavorPlugin(base.BasePlugin):"},{"line_number":37,"context_line":"    \"\"\"Plugin for nova flavor based servers.\"\"\""},{"line_number":38,"context_line":""},{"line_number":39,"context_line":"    resource_type \u003d plugin.RESOURCE_TYPE"},{"line_number":40,"context_line":"    title \u003d \u0027Plugin for nova flavor based server reservations\u0027"}],"source_content_type":"text/x-python","patch_set":11,"id":"afe17aec_f9eb29e1","line":37,"updated":"2024-06-28 15:54:07.000000000","message":"nit: Should this match the title three lines below?","commit_id":"bd2774e719946724cbbb36be24e2320f9ab1cd74"},{"author":{"_account_id":15197,"name":"Pierre Riteau","email":"pierre@stackhpc.com","username":"priteau","status":"StackHPC"},"change_message_id":"6c09f86b929b9d5c08591afbb38440ef37df7ac1","unresolved":false,"context_lines":[{"line_number":34,"context_line":""},{"line_number":35,"context_line":""},{"line_number":36,"context_line":"class FlavorPlugin(base.BasePlugin):"},{"line_number":37,"context_line":"    \"\"\"Plugin for nova flavor based servers.\"\"\""},{"line_number":38,"context_line":""},{"line_number":39,"context_line":"    resource_type \u003d plugin.RESOURCE_TYPE"},{"line_number":40,"context_line":"    title \u003d \u0027Plugin for nova flavor based server reservations\u0027"}],"source_content_type":"text/x-python","patch_set":11,"id":"e6b2af14_46c3ddd9","line":37,"in_reply_to":"afe17aec_f9eb29e1","updated":"2024-08-26 11:00:44.000000000","message":"Done","commit_id":"bd2774e719946724cbbb36be24e2320f9ab1cd74"},{"author":{"_account_id":35263,"name":"Matt Crees","email":"mattc@stackhpc.com","username":"mattcrees"},"change_message_id":"b6dd6bc9cca5b5ebb9ef8c91d3fd655177262909","unresolved":true,"context_lines":[{"line_number":37,"context_line":"    \"\"\"Plugin for nova flavor based servers.\"\"\""},{"line_number":38,"context_line":""},{"line_number":39,"context_line":"    resource_type \u003d plugin.RESOURCE_TYPE"},{"line_number":40,"context_line":"    title \u003d \u0027Plugin for nova flavor based server reservations\u0027"},{"line_number":41,"context_line":"    description \u003d \u0027Reserve resources modeled by Nova flavors.\u0027"},{"line_number":42,"context_line":""},{"line_number":43,"context_line":"    query_options \u003d {"}],"source_content_type":"text/x-python","patch_set":11,"id":"597f0769_ed2fa3e5","line":40,"updated":"2024-06-28 15:54:07.000000000","message":"nit: Should keep the capitalisation of Nova consistent between the title and description. I\u0027m not fussed on upper or lower","commit_id":"bd2774e719946724cbbb36be24e2320f9ab1cd74"},{"author":{"_account_id":15197,"name":"Pierre Riteau","email":"pierre@stackhpc.com","username":"priteau","status":"StackHPC"},"change_message_id":"6c09f86b929b9d5c08591afbb38440ef37df7ac1","unresolved":false,"context_lines":[{"line_number":37,"context_line":"    \"\"\"Plugin for nova flavor based servers.\"\"\""},{"line_number":38,"context_line":""},{"line_number":39,"context_line":"    resource_type \u003d plugin.RESOURCE_TYPE"},{"line_number":40,"context_line":"    title \u003d \u0027Plugin for nova flavor based server reservations\u0027"},{"line_number":41,"context_line":"    description \u003d \u0027Reserve resources modeled by Nova flavors.\u0027"},{"line_number":42,"context_line":""},{"line_number":43,"context_line":"    query_options \u003d {"}],"source_content_type":"text/x-python","patch_set":11,"id":"af858364_f755026f","line":40,"in_reply_to":"597f0769_ed2fa3e5","updated":"2024-08-26 11:00:44.000000000","message":"Done","commit_id":"bd2774e719946724cbbb36be24e2320f9ab1cd74"},{"author":{"_account_id":15197,"name":"Pierre Riteau","email":"pierre@stackhpc.com","username":"priteau","status":"StackHPC"},"change_message_id":"c52048b92f8c3b76c9e6af836de1e93ba259f72b","unresolved":true,"context_lines":[{"line_number":76,"context_line":"        candidates \u003d self._query_available_hosts("},{"line_number":77,"context_line":"            start_date, end_date, resource_request, resource_traits)"},{"line_number":78,"context_line":""},{"line_number":79,"context_line":"        # fail if we have less candidates than amount requested"},{"line_number":80,"context_line":"        req_amount \u003d reservation[\u0027amount\u0027]"},{"line_number":81,"context_line":"        if len(candidates) \u003c req_amount:"},{"line_number":82,"context_line":"            raise mgr_exceptions.NotEnoughHostsAvailable()"}],"source_content_type":"text/x-python","patch_set":11,"id":"81ef8f84_1bc83de8","line":79,"updated":"2024-08-02 08:36:56.000000000","message":"fewer?","commit_id":"bd2774e719946724cbbb36be24e2320f9ab1cd74"},{"author":{"_account_id":15197,"name":"Pierre Riteau","email":"pierre@stackhpc.com","username":"priteau","status":"StackHPC"},"change_message_id":"6c09f86b929b9d5c08591afbb38440ef37df7ac1","unresolved":false,"context_lines":[{"line_number":76,"context_line":"        candidates \u003d self._query_available_hosts("},{"line_number":77,"context_line":"            start_date, end_date, resource_request, resource_traits)"},{"line_number":78,"context_line":""},{"line_number":79,"context_line":"        # fail if we have less candidates than amount requested"},{"line_number":80,"context_line":"        req_amount \u003d reservation[\u0027amount\u0027]"},{"line_number":81,"context_line":"        if len(candidates) \u003c req_amount:"},{"line_number":82,"context_line":"            raise mgr_exceptions.NotEnoughHostsAvailable()"}],"source_content_type":"text/x-python","patch_set":11,"id":"045dafe0_3553632b","line":79,"in_reply_to":"81ef8f84_1bc83de8","updated":"2024-08-26 11:00:44.000000000","message":"Done","commit_id":"bd2774e719946724cbbb36be24e2320f9ab1cd74"},{"author":{"_account_id":35263,"name":"Matt Crees","email":"mattc@stackhpc.com","username":"mattcrees"},"change_message_id":"b6dd6bc9cca5b5ebb9ef8c91d3fd655177262909","unresolved":true,"context_lines":[{"line_number":151,"context_line":""},{"line_number":152,"context_line":"                if requested \u003e host_details[\"max_unit\"]:"},{"line_number":153,"context_line":"                    # requested more than the max allowed by this host"},{"line_number":154,"context_line":"                    LOG.debug(f\"resource not found for {rc} for \""},{"line_number":155,"context_line":"                              f\"{host_info[\u0027host\u0027][\u0027hypervisor_hostname\u0027]}\")"},{"line_number":156,"context_line":"                    return False"},{"line_number":157,"context_line":""}],"source_content_type":"text/x-python","patch_set":11,"id":"8b80be40_bc8c0f4f","line":154,"updated":"2024-06-28 15:54:07.000000000","message":"``resource not found`` -\u003e ``too many resources requested``\nWould also be helpful to log the requested and max, save an operator needing to look it up :)","commit_id":"bd2774e719946724cbbb36be24e2320f9ab1cd74"},{"author":{"_account_id":15197,"name":"Pierre Riteau","email":"pierre@stackhpc.com","username":"priteau","status":"StackHPC"},"change_message_id":"6c09f86b929b9d5c08591afbb38440ef37df7ac1","unresolved":false,"context_lines":[{"line_number":151,"context_line":""},{"line_number":152,"context_line":"                if requested \u003e host_details[\"max_unit\"]:"},{"line_number":153,"context_line":"                    # requested more than the max allowed by this host"},{"line_number":154,"context_line":"                    LOG.debug(f\"resource not found for {rc} for \""},{"line_number":155,"context_line":"                              f\"{host_info[\u0027host\u0027][\u0027hypervisor_hostname\u0027]}\")"},{"line_number":156,"context_line":"                    return False"},{"line_number":157,"context_line":""}],"source_content_type":"text/x-python","patch_set":11,"id":"553ff05c_7af235c2","line":154,"in_reply_to":"8b80be40_bc8c0f4f","updated":"2024-08-26 11:00:44.000000000","message":"Done","commit_id":"bd2774e719946724cbbb36be24e2320f9ab1cd74"},{"author":{"_account_id":15197,"name":"Pierre Riteau","email":"pierre@stackhpc.com","username":"priteau","status":"StackHPC"},"change_message_id":"7d293e3c684441bb609b92c89d09ce333de30cbe","unresolved":true,"context_lines":[{"line_number":158,"context_line":"                capacity \u003d ((host_details[\"total\"] - host_details[\"reserved\"])"},{"line_number":159,"context_line":"                            * host_details[\"allocation_ratio\"])"},{"line_number":160,"context_line":"                LOG.debug(f\"Capacity is {capacity} for {rc} for \""},{"line_number":161,"context_line":"                          f\"{host_info[\u0027host\u0027][\u0027hypervisor_hostname\u0027]}\")"},{"line_number":162,"context_line":"                return (usage + requested) \u003c\u003d capacity"},{"line_number":163,"context_line":""},{"line_number":164,"context_line":"        while (has_free_slot()):"}],"source_content_type":"text/x-python","patch_set":11,"id":"899e7a3e_0904dbcd","line":161,"updated":"2024-08-05 16:02:48.000000000","message":"This gets logged many times too.","commit_id":"bd2774e719946724cbbb36be24e2320f9ab1cd74"},{"author":{"_account_id":15197,"name":"Pierre Riteau","email":"pierre@stackhpc.com","username":"priteau","status":"StackHPC"},"change_message_id":"472a80b087e6b9064dca842f205e2101e6fbf0b2","unresolved":false,"context_lines":[{"line_number":158,"context_line":"                capacity \u003d ((host_details[\"total\"] - host_details[\"reserved\"])"},{"line_number":159,"context_line":"                            * host_details[\"allocation_ratio\"])"},{"line_number":160,"context_line":"                LOG.debug(f\"Capacity is {capacity} for {rc} for \""},{"line_number":161,"context_line":"                          f\"{host_info[\u0027host\u0027][\u0027hypervisor_hostname\u0027]}\")"},{"line_number":162,"context_line":"                return (usage + requested) \u003c\u003d capacity"},{"line_number":163,"context_line":""},{"line_number":164,"context_line":"        while (has_free_slot()):"}],"source_content_type":"text/x-python","patch_set":11,"id":"835d1f6f_5af3193f","line":161,"in_reply_to":"899e7a3e_0904dbcd","updated":"2024-08-26 11:01:12.000000000","message":"Acknowledged","commit_id":"bd2774e719946724cbbb36be24e2320f9ab1cd74"},{"author":{"_account_id":15197,"name":"Pierre Riteau","email":"pierre@stackhpc.com","username":"priteau","status":"StackHPC"},"change_message_id":"8b27215d0d5fbfe7475cc9374c5842c0c9354144","unresolved":true,"context_lines":[{"line_number":210,"context_line":"                    current_usage[rc] -\u003d usage_amount"},{"line_number":211,"context_line":""},{"line_number":212,"context_line":"            LOG.debug(f\"after {event}\\nusage is: {current_usage}\\n\""},{"line_number":213,"context_line":"                      f\"max is: {max_usage}\")"},{"line_number":214,"context_line":""},{"line_number":215,"context_line":"        return max_usage"},{"line_number":216,"context_line":""}],"source_content_type":"text/x-python","patch_set":11,"id":"b16cb3ad_f8ee0f71","line":213,"updated":"2024-08-05 16:00:45.000000000","message":"This will be quite verbose as soon as there are multiple leases on the system.","commit_id":"bd2774e719946724cbbb36be24e2320f9ab1cd74"},{"author":{"_account_id":15197,"name":"Pierre Riteau","email":"pierre@stackhpc.com","username":"priteau","status":"StackHPC"},"change_message_id":"472a80b087e6b9064dca842f205e2101e6fbf0b2","unresolved":false,"context_lines":[{"line_number":210,"context_line":"                    current_usage[rc] -\u003d usage_amount"},{"line_number":211,"context_line":""},{"line_number":212,"context_line":"            LOG.debug(f\"after {event}\\nusage is: {current_usage}\\n\""},{"line_number":213,"context_line":"                      f\"max is: {max_usage}\")"},{"line_number":214,"context_line":""},{"line_number":215,"context_line":"        return max_usage"},{"line_number":216,"context_line":""}],"source_content_type":"text/x-python","patch_set":11,"id":"7fe2ee91_49797675","line":213,"in_reply_to":"b16cb3ad_f8ee0f71","updated":"2024-08-26 11:01:12.000000000","message":"Acknowledged","commit_id":"bd2774e719946724cbbb36be24e2320f9ab1cd74"},{"author":{"_account_id":15197,"name":"Pierre Riteau","email":"pierre@stackhpc.com","username":"priteau","status":"StackHPC"},"change_message_id":"dd2f6e3e7575ef711ee55e87a3b169fff07c8ee3","unresolved":true,"context_lines":[{"line_number":231,"context_line":"        resource_request[\"VCPU\"] \u003d int(source_flavor[\u0027vcpus\u0027])"},{"line_number":232,"context_line":"        resource_request[\"MEMORY_MB\"] \u003d int(source_flavor[\u0027ram\u0027])"},{"line_number":233,"context_line":"        resource_request[\"DISK_GB\"] \u003d ("},{"line_number":234,"context_line":"            int(source_flavor[\u0027disk\u0027]) +"},{"line_number":235,"context_line":"            int(source_flavor[\u0027OS-FLV-EXT-DATA:ephemeral\u0027]))"},{"line_number":236,"context_line":""},{"line_number":237,"context_line":"        # Check for PCPUs"}],"source_content_type":"text/x-python","patch_set":11,"id":"1bf90313_d7e24ffa","line":234,"updated":"2024-08-02 08:22:33.000000000","message":"This may reserve disk space that will be unused if we are booting from volume. We should at least flag it for future improvement.","commit_id":"bd2774e719946724cbbb36be24e2320f9ab1cd74"},{"author":{"_account_id":15197,"name":"Pierre Riteau","email":"pierre@stackhpc.com","username":"priteau","status":"StackHPC"},"change_message_id":"6c09f86b929b9d5c08591afbb38440ef37df7ac1","unresolved":false,"context_lines":[{"line_number":231,"context_line":"        resource_request[\"VCPU\"] \u003d int(source_flavor[\u0027vcpus\u0027])"},{"line_number":232,"context_line":"        resource_request[\"MEMORY_MB\"] \u003d int(source_flavor[\u0027ram\u0027])"},{"line_number":233,"context_line":"        resource_request[\"DISK_GB\"] \u003d ("},{"line_number":234,"context_line":"            int(source_flavor[\u0027disk\u0027]) +"},{"line_number":235,"context_line":"            int(source_flavor[\u0027OS-FLV-EXT-DATA:ephemeral\u0027]))"},{"line_number":236,"context_line":""},{"line_number":237,"context_line":"        # Check for PCPUs"}],"source_content_type":"text/x-python","patch_set":11,"id":"01d8df47_22c80c42","line":234,"in_reply_to":"1bf90313_d7e24ffa","updated":"2024-08-26 11:00:44.000000000","message":"Done","commit_id":"bd2774e719946724cbbb36be24e2320f9ab1cd74"}],"blazar/tests/plugins/flavor/test_flavor_plugin.py":[{"author":{"_account_id":35263,"name":"Matt Crees","email":"mattc@stackhpc.com","username":"mattcrees"},"change_message_id":"a2783e50870c590ae115e75c806b549d5209001a","unresolved":true,"context_lines":[{"line_number":113,"context_line":"                          reservation)"},{"line_number":114,"context_line":""},{"line_number":115,"context_line":"    @mock.patch.object(flavors.FlavorManager, \u0027get\u0027)"},{"line_number":116,"context_line":"    def test__get_flavor_details(self, mock_get):"},{"line_number":117,"context_line":"        plugin \u003d flavor_plugin.FlavorPlugin()"},{"line_number":118,"context_line":"        mock_flavor \u003d mock.Mock()"},{"line_number":119,"context_line":"        mock_get.return_value \u003d mock_flavor"}],"source_content_type":"text/x-python","patch_set":11,"id":"8416a1f2_2f6c8724","line":116,"updated":"2024-07-05 13:26:40.000000000","message":"nit: duplicate underscore ``test__get_flavor_details`` -\u003e ``test_get_flavor_details``","commit_id":"bd2774e719946724cbbb36be24e2320f9ab1cd74"},{"author":{"_account_id":15197,"name":"Pierre Riteau","email":"pierre@stackhpc.com","username":"priteau","status":"StackHPC"},"change_message_id":"2d40b251f89c7367781ffe2815acc6f328470b03","unresolved":false,"context_lines":[{"line_number":113,"context_line":"                          reservation)"},{"line_number":114,"context_line":""},{"line_number":115,"context_line":"    @mock.patch.object(flavors.FlavorManager, \u0027get\u0027)"},{"line_number":116,"context_line":"    def test__get_flavor_details(self, mock_get):"},{"line_number":117,"context_line":"        plugin \u003d flavor_plugin.FlavorPlugin()"},{"line_number":118,"context_line":"        mock_flavor \u003d mock.Mock()"},{"line_number":119,"context_line":"        mock_get.return_value \u003d mock_flavor"}],"source_content_type":"text/x-python","patch_set":11,"id":"dd0cac05_d6a366bd","line":116,"in_reply_to":"8416a1f2_2f6c8724","updated":"2024-08-02 08:01:26.000000000","message":"This is done on purpose because it is testing the function called _get_flavor_details.","commit_id":"bd2774e719946724cbbb36be24e2320f9ab1cd74"}],"setup.cfg":[{"author":{"_account_id":35263,"name":"Matt Crees","email":"mattc@stackhpc.com","username":"mattcrees"},"change_message_id":"3ffe5a2716cb0ad8f625b456e1114b9c17d59b09","unresolved":true,"context_lines":[{"line_number":41,"context_line":"    physical.host.plugin\u003dblazar.plugins.oshosts.host_plugin:PhysicalHostPlugin"},{"line_number":42,"context_line":"    virtual.instance.plugin\u003dblazar.plugins.instances.instance_plugin:VirtualInstancePlugin"},{"line_number":43,"context_line":"    virtual.floatingip.plugin\u003dblazar.plugins.floatingips.floatingip_plugin:FloatingIpPlugin"},{"line_number":44,"context_line":"    flavor.plugin\u003dblazar.plugins.flavor.flavor_plugin:FlavorPlugin"},{"line_number":45,"context_line":""},{"line_number":46,"context_line":"blazar.api.v1.extensions \u003d"},{"line_number":47,"context_line":"    leases\u003dblazar.api.v1.leases.v1_0:get_rest"}],"source_content_type":"text/x-ttcn-cfg","patch_set":11,"id":"a34e89f2_9b0cae90","line":44,"range":{"start_line":44,"start_character":0,"end_line":44,"end_character":2},"updated":"2024-08-23 12:36:25.000000000","message":"Possible confusion here: we\u0027re using the flavor:instance resource_type in the CLI, it might be nice to match the resource plugin name here too. i.e: ``flavor.instance.plugin``.","commit_id":"bd2774e719946724cbbb36be24e2320f9ab1cd74"},{"author":{"_account_id":15197,"name":"Pierre Riteau","email":"pierre@stackhpc.com","username":"priteau","status":"StackHPC"},"change_message_id":"472a80b087e6b9064dca842f205e2101e6fbf0b2","unresolved":false,"context_lines":[{"line_number":41,"context_line":"    physical.host.plugin\u003dblazar.plugins.oshosts.host_plugin:PhysicalHostPlugin"},{"line_number":42,"context_line":"    virtual.instance.plugin\u003dblazar.plugins.instances.instance_plugin:VirtualInstancePlugin"},{"line_number":43,"context_line":"    virtual.floatingip.plugin\u003dblazar.plugins.floatingips.floatingip_plugin:FloatingIpPlugin"},{"line_number":44,"context_line":"    flavor.plugin\u003dblazar.plugins.flavor.flavor_plugin:FlavorPlugin"},{"line_number":45,"context_line":""},{"line_number":46,"context_line":"blazar.api.v1.extensions \u003d"},{"line_number":47,"context_line":"    leases\u003dblazar.api.v1.leases.v1_0:get_rest"}],"source_content_type":"text/x-ttcn-cfg","patch_set":11,"id":"88ec6e7e_4a2a1cd6","line":44,"range":{"start_line":44,"start_character":0,"end_line":44,"end_character":2},"in_reply_to":"a34e89f2_9b0cae90","updated":"2024-08-26 11:01:12.000000000","message":"Done","commit_id":"bd2774e719946724cbbb36be24e2320f9ab1cd74"}]}
