)]}'
{"/PATCHSET_LEVEL":[{"author":{"_account_id":32962,"name":"Jakob Meng","email":"code@jakobmeng.de","username":"jakobmeng@web.de"},"change_message_id":"375e6203954d2b68c402b08db16d2b68546bd3c1","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":16,"id":"1ffb197d_06e4fa5a","updated":"2022-08-10 08:30:32.000000000","message":"Thank you for the update, Rafael 😊 The last patchset fixes a bug in _system_state_change and does some cleanup.","commit_id":"c38e41a1030661e270898076ee5ff11b1679e4c6"}],"ci/roles/compute_flavor/tasks/main.yml":[{"author":{"_account_id":32962,"name":"Jakob Meng","email":"code@jakobmeng.de","username":"jakobmeng@web.de"},"change_message_id":"3d714a2b02a68343504a17bc26be2e16f91037bb","unresolved":true,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"- name: Delete resources before tests"},{"line_number":3,"context_line":"  openstack.cloud.compute_flavor:"},{"line_number":4,"context_line":"     cloud: \"{{ cloud }}\""},{"line_number":5,"context_line":"     state: absent"}],"source_content_type":"text/x-yaml","patch_set":4,"id":"d7859963_ebfa3623","line":2,"updated":"2022-07-26 09:13:34.000000000","message":"Move cleanup to the end please.","commit_id":"19e6a68fe67099482e1233bbd6421bf9ba496e7b"},{"author":{"_account_id":34208,"name":"Rafael Castillo","email":"rcastill@redhat.com","username":"rcastill"},"change_message_id":"ddafd3bfdff783604eca4cf8ba37957c7cdc0eb3","unresolved":false,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"- name: Delete resources before tests"},{"line_number":3,"context_line":"  openstack.cloud.compute_flavor:"},{"line_number":4,"context_line":"     cloud: \"{{ cloud }}\""},{"line_number":5,"context_line":"     state: absent"}],"source_content_type":"text/x-yaml","patch_set":4,"id":"2e815406_546c1888","line":2,"in_reply_to":"d7859963_ebfa3623","updated":"2022-07-26 18:33:46.000000000","message":"Done","commit_id":"19e6a68fe67099482e1233bbd6421bf9ba496e7b"},{"author":{"_account_id":32962,"name":"Jakob Meng","email":"code@jakobmeng.de","username":"jakobmeng@web.de"},"change_message_id":"3d714a2b02a68343504a17bc26be2e16f91037bb","unresolved":true,"context_lines":[{"line_number":25,"context_line":""},{"line_number":26,"context_line":"- assert:"},{"line_number":27,"context_line":"    that: item in flavor.flavor"},{"line_number":28,"context_line":"  loop:"},{"line_number":29,"context_line":"    - name"},{"line_number":30,"context_line":"    - description"},{"line_number":31,"context_line":"    - disk"}],"source_content_type":"text/x-yaml","patch_set":4,"id":"2dd1cfcf_d7e0b394","line":28,"updated":"2022-07-26 09:13:34.000000000","message":"move to role defaults variable expected_fields for easier reuse, e.g. when compute_flavor_info is merged in here.","commit_id":"19e6a68fe67099482e1233bbd6421bf9ba496e7b"},{"author":{"_account_id":32962,"name":"Jakob Meng","email":"code@jakobmeng.de","username":"jakobmeng@web.de"},"change_message_id":"3d714a2b02a68343504a17bc26be2e16f91037bb","unresolved":true,"context_lines":[{"line_number":25,"context_line":""},{"line_number":26,"context_line":"- assert:"},{"line_number":27,"context_line":"    that: item in flavor.flavor"},{"line_number":28,"context_line":"  loop:"},{"line_number":29,"context_line":"    - name"},{"line_number":30,"context_line":"    - description"},{"line_number":31,"context_line":"    - disk"}],"source_content_type":"text/x-yaml","patch_set":4,"id":"2ea844b6_5da1b800","line":28,"updated":"2022-07-26 09:13:34.000000000","message":"nit: sort please for easier reviewing.","commit_id":"19e6a68fe67099482e1233bbd6421bf9ba496e7b"},{"author":{"_account_id":32962,"name":"Jakob Meng","email":"code@jakobmeng.de","username":"jakobmeng@web.de"},"change_message_id":"3d714a2b02a68343504a17bc26be2e16f91037bb","unresolved":true,"context_lines":[{"line_number":25,"context_line":""},{"line_number":26,"context_line":"- assert:"},{"line_number":27,"context_line":"    that: item in flavor.flavor"},{"line_number":28,"context_line":"  loop:"},{"line_number":29,"context_line":"    - name"},{"line_number":30,"context_line":"    - description"},{"line_number":31,"context_line":"    - disk"}],"source_content_type":"text/x-yaml","patch_set":4,"id":"e12dafa1_6690a81d","line":28,"updated":"2022-07-26 09:13:34.000000000","message":"original_name is missing.\n\nhttps://opendev.org/openstack/openstacksdk/src/commit/1ce15c9a8758b4d978eb5239bae100ddc13c8875/openstack/compute/v2/flavor.py#L42","commit_id":"19e6a68fe67099482e1233bbd6421bf9ba496e7b"},{"author":{"_account_id":34208,"name":"Rafael Castillo","email":"rcastill@redhat.com","username":"rcastill"},"change_message_id":"ddafd3bfdff783604eca4cf8ba37957c7cdc0eb3","unresolved":false,"context_lines":[{"line_number":25,"context_line":""},{"line_number":26,"context_line":"- assert:"},{"line_number":27,"context_line":"    that: item in flavor.flavor"},{"line_number":28,"context_line":"  loop:"},{"line_number":29,"context_line":"    - name"},{"line_number":30,"context_line":"    - description"},{"line_number":31,"context_line":"    - disk"}],"source_content_type":"text/x-yaml","patch_set":4,"id":"9593c065_ae94d6b6","line":28,"in_reply_to":"2dd1cfcf_d7e0b394","updated":"2022-07-26 18:33:46.000000000","message":"Done","commit_id":"19e6a68fe67099482e1233bbd6421bf9ba496e7b"},{"author":{"_account_id":34208,"name":"Rafael Castillo","email":"rcastill@redhat.com","username":"rcastill"},"change_message_id":"ddafd3bfdff783604eca4cf8ba37957c7cdc0eb3","unresolved":false,"context_lines":[{"line_number":25,"context_line":""},{"line_number":26,"context_line":"- assert:"},{"line_number":27,"context_line":"    that: item in flavor.flavor"},{"line_number":28,"context_line":"  loop:"},{"line_number":29,"context_line":"    - name"},{"line_number":30,"context_line":"    - description"},{"line_number":31,"context_line":"    - disk"}],"source_content_type":"text/x-yaml","patch_set":4,"id":"36d1f5e2_55f52b54","line":28,"in_reply_to":"2ea844b6_5da1b800","updated":"2022-07-26 18:33:46.000000000","message":"Done","commit_id":"19e6a68fe67099482e1233bbd6421bf9ba496e7b"},{"author":{"_account_id":34208,"name":"Rafael Castillo","email":"rcastill@redhat.com","username":"rcastill"},"change_message_id":"ddafd3bfdff783604eca4cf8ba37957c7cdc0eb3","unresolved":false,"context_lines":[{"line_number":25,"context_line":""},{"line_number":26,"context_line":"- assert:"},{"line_number":27,"context_line":"    that: item in flavor.flavor"},{"line_number":28,"context_line":"  loop:"},{"line_number":29,"context_line":"    - name"},{"line_number":30,"context_line":"    - description"},{"line_number":31,"context_line":"    - disk"}],"source_content_type":"text/x-yaml","patch_set":4,"id":"8fa82d34_432c6dc1","line":28,"in_reply_to":"e12dafa1_6690a81d","updated":"2022-07-26 18:33:46.000000000","message":"Done","commit_id":"19e6a68fe67099482e1233bbd6421bf9ba496e7b"},{"author":{"_account_id":32962,"name":"Jakob Meng","email":"code@jakobmeng.de","username":"jakobmeng@web.de"},"change_message_id":"3d714a2b02a68343504a17bc26be2e16f91037bb","unresolved":true,"context_lines":[{"line_number":177,"context_line":"     vcpus: 1"},{"line_number":178,"context_line":"     disk: 10"},{"line_number":179,"context_line":"     extra_specs:"},{"line_number":180,"context_line":"        \"hw_video:ram_max_mb\": 200"},{"line_number":181,"context_line":"  register: flavor"},{"line_number":182,"context_line":""},{"line_number":183,"context_line":"- name: Assert changed"}],"source_content_type":"text/x-yaml","patch_set":4,"id":"d9686588_2a654a84","line":180,"updated":"2022-07-26 09:13:34.000000000","message":"Please update \u0027os:secure_boot\u0027 with another value to check that we can actually use create_flavor_extra_specs() [1] to update extra specs and dont have to rely on update_flavor_extra_specs_property() [2] for updates.\n\nBut then add another extra spec to verify that delete_flavor_extra_specs_property() / unset_flavor_specs() [3] actually works.\n\n[1] https://opendev.org/openstack/openstacksdk/src/commit/1ce15c9a8758b4d978eb5239bae100ddc13c8875/openstack/compute/v2/_proxy.py#L220\n[2] https://opendev.org/openstack/openstacksdk/src/commit/1ce15c9a8758b4d978eb5239bae100ddc13c8875/openstack/compute/v2/_proxy.py#L244\n[3] https://opendev.org/openstack/openstacksdk/src/commit/1ce15c9a8758b4d978eb5239bae100ddc13c8875/openstack/cloud/_compute.py#L1457","commit_id":"19e6a68fe67099482e1233bbd6421bf9ba496e7b"},{"author":{"_account_id":34208,"name":"Rafael Castillo","email":"rcastill@redhat.com","username":"rcastill"},"change_message_id":"ddafd3bfdff783604eca4cf8ba37957c7cdc0eb3","unresolved":false,"context_lines":[{"line_number":177,"context_line":"     vcpus: 1"},{"line_number":178,"context_line":"     disk: 10"},{"line_number":179,"context_line":"     extra_specs:"},{"line_number":180,"context_line":"        \"hw_video:ram_max_mb\": 200"},{"line_number":181,"context_line":"  register: flavor"},{"line_number":182,"context_line":""},{"line_number":183,"context_line":"- name: Assert changed"}],"source_content_type":"text/x-yaml","patch_set":4,"id":"367ef8e9_31619c4e","line":180,"in_reply_to":"d9686588_2a654a84","updated":"2022-07-26 18:33:46.000000000","message":"Done","commit_id":"19e6a68fe67099482e1233bbd6421bf9ba496e7b"},{"author":{"_account_id":32962,"name":"Jakob Meng","email":"code@jakobmeng.de","username":"jakobmeng@web.de"},"change_message_id":"3d714a2b02a68343504a17bc26be2e16f91037bb","unresolved":true,"context_lines":[{"line_number":181,"context_line":"  register: flavor"},{"line_number":182,"context_line":""},{"line_number":183,"context_line":"- name: Assert changed"},{"line_number":184,"context_line":"  assert:"},{"line_number":185,"context_line":"     that: flavor is changed"}],"source_content_type":"text/x-yaml","patch_set":4,"id":"582d70a9_a0dec485","line":184,"updated":"2022-07-26 09:13:34.000000000","message":"Please add more assertions, e.g. check that extra_specs actually got updated.","commit_id":"19e6a68fe67099482e1233bbd6421bf9ba496e7b"},{"author":{"_account_id":34208,"name":"Rafael Castillo","email":"rcastill@redhat.com","username":"rcastill"},"change_message_id":"ddafd3bfdff783604eca4cf8ba37957c7cdc0eb3","unresolved":false,"context_lines":[{"line_number":181,"context_line":"  register: flavor"},{"line_number":182,"context_line":""},{"line_number":183,"context_line":"- name: Assert changed"},{"line_number":184,"context_line":"  assert:"},{"line_number":185,"context_line":"     that: flavor is changed"}],"source_content_type":"text/x-yaml","patch_set":4,"id":"a2069bf4_914a1c17","line":184,"in_reply_to":"582d70a9_a0dec485","updated":"2022-07-26 18:33:46.000000000","message":"Done","commit_id":"19e6a68fe67099482e1233bbd6421bf9ba496e7b"}],"ci/run-collection.yml":[{"author":{"_account_id":32962,"name":"Jakob Meng","email":"code@jakobmeng.de","username":"jakobmeng@web.de"},"change_message_id":"3d714a2b02a68343504a17bc26be2e16f91037bb","unresolved":true,"context_lines":[{"line_number":8,"context_line":"    - { role: auth, tags: auth }"},{"line_number":9,"context_line":"    - { role: catalog_service, tags: catalog_service }"},{"line_number":10,"context_line":"    - { role: client_config, tags: client_config }"},{"line_number":11,"context_line":"    - { role: compute_flavor, tags: compute_flavor }"},{"line_number":12,"context_line":"    - role: compute_flavor_info"},{"line_number":13,"context_line":"      tags: compute_flavor_info"},{"line_number":14,"context_line":"    - { role: dns_zone_info, tags: dns_zone_info }"}],"source_content_type":"text/x-yaml","patch_set":4,"id":"8e569951_5d884ddf","line":11,"updated":"2022-07-26 09:13:34.000000000","message":"Roles are not run in CI. .zuul.yaml has to be updated with renamed tags as well.","commit_id":"19e6a68fe67099482e1233bbd6421bf9ba496e7b"},{"author":{"_account_id":34208,"name":"Rafael Castillo","email":"rcastill@redhat.com","username":"rcastill"},"change_message_id":"ddafd3bfdff783604eca4cf8ba37957c7cdc0eb3","unresolved":false,"context_lines":[{"line_number":8,"context_line":"    - { role: auth, tags: auth }"},{"line_number":9,"context_line":"    - { role: catalog_service, tags: catalog_service }"},{"line_number":10,"context_line":"    - { role: client_config, tags: client_config }"},{"line_number":11,"context_line":"    - { role: compute_flavor, tags: compute_flavor }"},{"line_number":12,"context_line":"    - role: compute_flavor_info"},{"line_number":13,"context_line":"      tags: compute_flavor_info"},{"line_number":14,"context_line":"    - { role: dns_zone_info, tags: dns_zone_info }"}],"source_content_type":"text/x-yaml","patch_set":4,"id":"0fe32d2d_dcc114d5","line":11,"in_reply_to":"8e569951_5d884ddf","updated":"2022-07-26 18:33:46.000000000","message":"Done","commit_id":"19e6a68fe67099482e1233bbd6421bf9ba496e7b"},{"author":{"_account_id":32962,"name":"Jakob Meng","email":"code@jakobmeng.de","username":"jakobmeng@web.de"},"change_message_id":"3d714a2b02a68343504a17bc26be2e16f91037bb","unresolved":true,"context_lines":[{"line_number":10,"context_line":"    - { role: client_config, tags: client_config }"},{"line_number":11,"context_line":"    - { role: compute_flavor, tags: compute_flavor }"},{"line_number":12,"context_line":"    - role: compute_flavor_info"},{"line_number":13,"context_line":"      tags: compute_flavor_info"},{"line_number":14,"context_line":"    - { role: dns_zone_info, tags: dns_zone_info }"},{"line_number":15,"context_line":"    - role: object_container"},{"line_number":16,"context_line":"      tags: object_container"}],"source_content_type":"text/x-yaml","patch_set":4,"id":"b006f412_6ef27ad1","line":13,"updated":"2022-07-26 09:13:34.000000000","message":"Since *_info roles are small, we decided to merge them into their non-_info-roles, i.e. compute_flavor_info into compute_flavor. An advantage is that we can define expected_fields in role defaults once and then (re)use it for both compute_flavor and compute_flavor_info modules. This avoids the risk of desync\u0027ed code in later editings, e.g. when expected_fields is edited in compute_flavor but not in compute_flavor_info.\n\nFeel free to do so or leave it for a later refactoring.","commit_id":"19e6a68fe67099482e1233bbd6421bf9ba496e7b"},{"author":{"_account_id":34208,"name":"Rafael Castillo","email":"rcastill@redhat.com","username":"rcastill"},"change_message_id":"ddafd3bfdff783604eca4cf8ba37957c7cdc0eb3","unresolved":false,"context_lines":[{"line_number":10,"context_line":"    - { role: client_config, tags: client_config }"},{"line_number":11,"context_line":"    - { role: compute_flavor, tags: compute_flavor }"},{"line_number":12,"context_line":"    - role: compute_flavor_info"},{"line_number":13,"context_line":"      tags: compute_flavor_info"},{"line_number":14,"context_line":"    - { role: dns_zone_info, tags: dns_zone_info }"},{"line_number":15,"context_line":"    - role: object_container"},{"line_number":16,"context_line":"      tags: object_container"}],"source_content_type":"text/x-yaml","patch_set":4,"id":"c39c50a4_eba29860","line":13,"in_reply_to":"b006f412_6ef27ad1","updated":"2022-07-26 18:33:46.000000000","message":"Done","commit_id":"19e6a68fe67099482e1233bbd6421bf9ba496e7b"}],"plugins/modules/compute_flavor.py":[{"author":{"_account_id":32962,"name":"Jakob Meng","email":"code@jakobmeng.de","username":"jakobmeng@web.de"},"change_message_id":"3d714a2b02a68343504a17bc26be2e16f91037bb","unresolved":true,"context_lines":[{"line_number":59,"context_line":"     default: \u0027yes\u0027"},{"line_number":60,"context_line":"   flavorid:"},{"line_number":61,"context_line":"     description:"},{"line_number":62,"context_line":"        - ID for the flavor. This is optional as a unique UUID will be"},{"line_number":63,"context_line":"          assigned if a value is not specified."},{"line_number":64,"context_line":"     default: \"auto\""},{"line_number":65,"context_line":"     type: str"}],"source_content_type":"text/x-python","patch_set":4,"id":"68d9395b_76ad7b4e","line":62,"updated":"2022-07-26 09:13:34.000000000","message":"Please add a note that this ID will only be used when creating a flavor. Or maybe we should use flavorid when finding flavors? The former is what we currently do and the latter would be additional functionality we might want to add as a TODO inline (somewhere below) for a later refactoring.","commit_id":"19e6a68fe67099482e1233bbd6421bf9ba496e7b"},{"author":{"_account_id":32962,"name":"Jakob Meng","email":"code@jakobmeng.de","username":"jakobmeng@web.de"},"change_message_id":"3d714a2b02a68343504a17bc26be2e16f91037bb","unresolved":true,"context_lines":[{"line_number":109,"context_line":"flavor:"},{"line_number":110,"context_line":"    description: Dictionary describing the flavor."},{"line_number":111,"context_line":"    returned: On success when I(state) is \u0027present\u0027"},{"line_number":112,"context_line":"    type: complex"},{"line_number":113,"context_line":"    contains:"},{"line_number":114,"context_line":"        id:"},{"line_number":115,"context_line":"            description: Flavor ID."}],"source_content_type":"text/x-python","patch_set":4,"id":"b371ee5b_7c7483e9","line":112,"updated":"2022-07-26 09:13:34.000000000","message":"type: dict","commit_id":"19e6a68fe67099482e1233bbd6421bf9ba496e7b"},{"author":{"_account_id":34208,"name":"Rafael Castillo","email":"rcastill@redhat.com","username":"rcastill"},"change_message_id":"ddafd3bfdff783604eca4cf8ba37957c7cdc0eb3","unresolved":false,"context_lines":[{"line_number":109,"context_line":"flavor:"},{"line_number":110,"context_line":"    description: Dictionary describing the flavor."},{"line_number":111,"context_line":"    returned: On success when I(state) is \u0027present\u0027"},{"line_number":112,"context_line":"    type: complex"},{"line_number":113,"context_line":"    contains:"},{"line_number":114,"context_line":"        id:"},{"line_number":115,"context_line":"            description: Flavor ID."}],"source_content_type":"text/x-python","patch_set":4,"id":"57294bd8_7082501f","line":112,"in_reply_to":"b371ee5b_7c7483e9","updated":"2022-07-26 18:33:46.000000000","message":"Done","commit_id":"19e6a68fe67099482e1233bbd6421bf9ba496e7b"},{"author":{"_account_id":32962,"name":"Jakob Meng","email":"code@jakobmeng.de","username":"jakobmeng@web.de"},"change_message_id":"3d714a2b02a68343504a17bc26be2e16f91037bb","unresolved":true,"context_lines":[{"line_number":110,"context_line":"    description: Dictionary describing the flavor."},{"line_number":111,"context_line":"    returned: On success when I(state) is \u0027present\u0027"},{"line_number":112,"context_line":"    type: complex"},{"line_number":113,"context_line":"    contains:"},{"line_number":114,"context_line":"        id:"},{"line_number":115,"context_line":"            description: Flavor ID."},{"line_number":116,"context_line":"            returned: success"}],"source_content_type":"text/x-python","patch_set":4,"id":"b3c11a9d_defd8556","line":113,"updated":"2022-07-26 09:13:34.000000000","message":"original_name is missing.\n\nhttps://opendev.org/openstack/openstacksdk/src/commit/1ce15c9a8758b4d978eb5239bae100ddc13c8875/openstack/compute/v2/flavor.py#L42","commit_id":"19e6a68fe67099482e1233bbd6421bf9ba496e7b"},{"author":{"_account_id":34208,"name":"Rafael Castillo","email":"rcastill@redhat.com","username":"rcastill"},"change_message_id":"ddafd3bfdff783604eca4cf8ba37957c7cdc0eb3","unresolved":false,"context_lines":[{"line_number":110,"context_line":"    description: Dictionary describing the flavor."},{"line_number":111,"context_line":"    returned: On success when I(state) is \u0027present\u0027"},{"line_number":112,"context_line":"    type: complex"},{"line_number":113,"context_line":"    contains:"},{"line_number":114,"context_line":"        id:"},{"line_number":115,"context_line":"            description: Flavor ID."},{"line_number":116,"context_line":"            returned: success"}],"source_content_type":"text/x-python","patch_set":4,"id":"aeebcb39_78ff0101","line":113,"in_reply_to":"b3c11a9d_defd8556","updated":"2022-07-26 18:33:46.000000000","message":"Done","commit_id":"19e6a68fe67099482e1233bbd6421bf9ba496e7b"},{"author":{"_account_id":32962,"name":"Jakob Meng","email":"code@jakobmeng.de","username":"jakobmeng@web.de"},"change_message_id":"3d714a2b02a68343504a17bc26be2e16f91037bb","unresolved":true,"context_lines":[{"line_number":181,"context_line":""},{"line_number":182,"context_line":"class ComputeFlavorModule(OpenStackModule):"},{"line_number":183,"context_line":"    argument_spec \u003d dict("},{"line_number":184,"context_line":"        state\u003ddict(required\u003dFalse, default\u003d\u0027present\u0027,"},{"line_number":185,"context_line":"                   choices\u003d[\u0027absent\u0027, \u0027present\u0027]),"},{"line_number":186,"context_line":"        name\u003ddict(required\u003dTrue),"},{"line_number":187,"context_line":""}],"source_content_type":"text/x-python","patch_set":4,"id":"64c682e4_7d4552e0","line":184,"updated":"2022-07-26 09:13:34.000000000","message":"Drop all those required\u003dFalse params because those are the default.\n\nhttps://docs.ansible.com/ansible/latest/dev_guide/developing_program_flow_modules.html#argument-spec-dependencies","commit_id":"19e6a68fe67099482e1233bbd6421bf9ba496e7b"},{"author":{"_account_id":34208,"name":"Rafael Castillo","email":"rcastill@redhat.com","username":"rcastill"},"change_message_id":"ddafd3bfdff783604eca4cf8ba37957c7cdc0eb3","unresolved":false,"context_lines":[{"line_number":181,"context_line":""},{"line_number":182,"context_line":"class ComputeFlavorModule(OpenStackModule):"},{"line_number":183,"context_line":"    argument_spec \u003d dict("},{"line_number":184,"context_line":"        state\u003ddict(required\u003dFalse, default\u003d\u0027present\u0027,"},{"line_number":185,"context_line":"                   choices\u003d[\u0027absent\u0027, \u0027present\u0027]),"},{"line_number":186,"context_line":"        name\u003ddict(required\u003dTrue),"},{"line_number":187,"context_line":""}],"source_content_type":"text/x-python","patch_set":4,"id":"0c539eb8_f0620231","line":184,"in_reply_to":"64c682e4_7d4552e0","updated":"2022-07-26 18:33:46.000000000","message":"Done","commit_id":"19e6a68fe67099482e1233bbd6421bf9ba496e7b"},{"author":{"_account_id":32962,"name":"Jakob Meng","email":"code@jakobmeng.de","username":"jakobmeng@web.de"},"change_message_id":"3d714a2b02a68343504a17bc26be2e16f91037bb","unresolved":true,"context_lines":[{"line_number":194,"context_line":"        swap\u003ddict(required\u003dFalse, default\u003d0, type\u003d\u0027int\u0027),"},{"line_number":195,"context_line":"        rxtx_factor\u003ddict(required\u003dFalse, default\u003d1.0, type\u003d\u0027float\u0027),"},{"line_number":196,"context_line":"        is_public\u003ddict(required\u003dFalse, default\u003dTrue, type\u003d\u0027bool\u0027),"},{"line_number":197,"context_line":"        flavorid\u003ddict(required\u003dFalse, default\u003d\"auto\"),"},{"line_number":198,"context_line":"        extra_specs\u003ddict(required\u003dFalse, default\u003dNone, type\u003d\u0027dict\u0027),"},{"line_number":199,"context_line":"    )"},{"line_number":200,"context_line":""}],"source_content_type":"text/x-python","patch_set":4,"id":"34a61e61_320bda81","line":197,"updated":"2022-07-26 09:13:34.000000000","message":"Maybe we want to rename this to id and add flavorid to aliases, because this would be consistent with our module convention to use \"name\" (instead of server, port, whatever) for finding modules?\n\nMaybe we could add that as an inline TODO here for later.","commit_id":"19e6a68fe67099482e1233bbd6421bf9ba496e7b"},{"author":{"_account_id":34208,"name":"Rafael Castillo","email":"rcastill@redhat.com","username":"rcastill"},"change_message_id":"ddafd3bfdff783604eca4cf8ba37957c7cdc0eb3","unresolved":false,"context_lines":[{"line_number":194,"context_line":"        swap\u003ddict(required\u003dFalse, default\u003d0, type\u003d\u0027int\u0027),"},{"line_number":195,"context_line":"        rxtx_factor\u003ddict(required\u003dFalse, default\u003d1.0, type\u003d\u0027float\u0027),"},{"line_number":196,"context_line":"        is_public\u003ddict(required\u003dFalse, default\u003dTrue, type\u003d\u0027bool\u0027),"},{"line_number":197,"context_line":"        flavorid\u003ddict(required\u003dFalse, default\u003d\"auto\"),"},{"line_number":198,"context_line":"        extra_specs\u003ddict(required\u003dFalse, default\u003dNone, type\u003d\u0027dict\u0027),"},{"line_number":199,"context_line":"    )"},{"line_number":200,"context_line":""}],"source_content_type":"text/x-python","patch_set":4,"id":"389eea8c_3ccb9557","line":197,"in_reply_to":"34a61e61_320bda81","updated":"2022-07-26 18:33:46.000000000","message":"Done","commit_id":"19e6a68fe67099482e1233bbd6421bf9ba496e7b"},{"author":{"_account_id":32962,"name":"Jakob Meng","email":"code@jakobmeng.de","username":"jakobmeng@web.de"},"change_message_id":"3d714a2b02a68343504a17bc26be2e16f91037bb","unresolved":true,"context_lines":[{"line_number":195,"context_line":"        rxtx_factor\u003ddict(required\u003dFalse, default\u003d1.0, type\u003d\u0027float\u0027),"},{"line_number":196,"context_line":"        is_public\u003ddict(required\u003dFalse, default\u003dTrue, type\u003d\u0027bool\u0027),"},{"line_number":197,"context_line":"        flavorid\u003ddict(required\u003dFalse, default\u003d\"auto\"),"},{"line_number":198,"context_line":"        extra_specs\u003ddict(required\u003dFalse, default\u003dNone, type\u003d\u0027dict\u0027),"},{"line_number":199,"context_line":"    )"},{"line_number":200,"context_line":""},{"line_number":201,"context_line":"    module_kwargs \u003d dict("}],"source_content_type":"text/x-python","patch_set":4,"id":"bc544dce_a21f7738","line":198,"updated":"2022-07-26 09:13:34.000000000","message":"Drop default\u003dNone because this is the default.\n\nhttps://docs.ansible.com/ansible/latest/dev_guide/developing_program_flow_modules.html#argument-spec-dependencies","commit_id":"19e6a68fe67099482e1233bbd6421bf9ba496e7b"},{"author":{"_account_id":34208,"name":"Rafael Castillo","email":"rcastill@redhat.com","username":"rcastill"},"change_message_id":"ddafd3bfdff783604eca4cf8ba37957c7cdc0eb3","unresolved":false,"context_lines":[{"line_number":195,"context_line":"        rxtx_factor\u003ddict(required\u003dFalse, default\u003d1.0, type\u003d\u0027float\u0027),"},{"line_number":196,"context_line":"        is_public\u003ddict(required\u003dFalse, default\u003dTrue, type\u003d\u0027bool\u0027),"},{"line_number":197,"context_line":"        flavorid\u003ddict(required\u003dFalse, default\u003d\"auto\"),"},{"line_number":198,"context_line":"        extra_specs\u003ddict(required\u003dFalse, default\u003dNone, type\u003d\u0027dict\u0027),"},{"line_number":199,"context_line":"    )"},{"line_number":200,"context_line":""},{"line_number":201,"context_line":"    module_kwargs \u003d dict("}],"source_content_type":"text/x-python","patch_set":4,"id":"21b9aa43_944d07a1","line":198,"in_reply_to":"bc544dce_a21f7738","updated":"2022-07-26 18:33:46.000000000","message":"Done","commit_id":"19e6a68fe67099482e1233bbd6421bf9ba496e7b"},{"author":{"_account_id":32962,"name":"Jakob Meng","email":"code@jakobmeng.de","username":"jakobmeng@web.de"},"change_message_id":"3d714a2b02a68343504a17bc26be2e16f91037bb","unresolved":true,"context_lines":[{"line_number":231,"context_line":"        name \u003d self.params[\u0027name\u0027]"},{"line_number":232,"context_line":"        extra_specs \u003d self.params[\u0027extra_specs\u0027] or {}"},{"line_number":233,"context_line":""},{"line_number":234,"context_line":"        flavor \u003d self.conn.compute.find_flavor(name)"},{"line_number":235,"context_line":"        old_extra_specs \u003d {}"},{"line_number":236,"context_line":"        if flavor:"},{"line_number":237,"context_line":"            old_extra_specs \u003d flavor[\u0027extra_specs\u0027]"}],"source_content_type":"text/x-python","patch_set":4,"id":"17b26610_596afee7","line":234,"updated":"2022-07-26 09:13:34.000000000","message":"Default is get_extra_specs\u003dFalse.\n\n        :param bool get_extra_specs: When set to ``True`` and extra_specs not\n            present in the response will invoke additional API call to fetch\n            extra_specs.\n\nAdd get_extra_specs\u003dTrue to ensure that extra_specs are fetched.\n\n[1] https://opendev.org/openstack/openstacksdk/src/commit/1ce15c9a8758b4d978eb5239bae100ddc13c8875/openstack/compute/v2/_proxy.py#L72","commit_id":"19e6a68fe67099482e1233bbd6421bf9ba496e7b"},{"author":{"_account_id":34208,"name":"Rafael Castillo","email":"rcastill@redhat.com","username":"rcastill"},"change_message_id":"ddafd3bfdff783604eca4cf8ba37957c7cdc0eb3","unresolved":false,"context_lines":[{"line_number":231,"context_line":"        name \u003d self.params[\u0027name\u0027]"},{"line_number":232,"context_line":"        extra_specs \u003d self.params[\u0027extra_specs\u0027] or {}"},{"line_number":233,"context_line":""},{"line_number":234,"context_line":"        flavor \u003d self.conn.compute.find_flavor(name)"},{"line_number":235,"context_line":"        old_extra_specs \u003d {}"},{"line_number":236,"context_line":"        if flavor:"},{"line_number":237,"context_line":"            old_extra_specs \u003d flavor[\u0027extra_specs\u0027]"}],"source_content_type":"text/x-python","patch_set":4,"id":"942c1442_1d9dad1f","line":234,"in_reply_to":"17b26610_596afee7","updated":"2022-07-26 18:33:46.000000000","message":"Done","commit_id":"19e6a68fe67099482e1233bbd6421bf9ba496e7b"},{"author":{"_account_id":32962,"name":"Jakob Meng","email":"code@jakobmeng.de","username":"jakobmeng@web.de"},"change_message_id":"3d714a2b02a68343504a17bc26be2e16f91037bb","unresolved":true,"context_lines":[{"line_number":235,"context_line":"        old_extra_specs \u003d {}"},{"line_number":236,"context_line":"        if flavor:"},{"line_number":237,"context_line":"            old_extra_specs \u003d flavor[\u0027extra_specs\u0027]"},{"line_number":238,"context_line":"            if flavor[\u0027swap\u0027] \u003d\u003d \"\":"},{"line_number":239,"context_line":"                flavor[\u0027swap\u0027] \u003d 0"},{"line_number":240,"context_line":""},{"line_number":241,"context_line":"        if self.ansible.check_mode:"}],"source_content_type":"text/x-python","patch_set":4,"id":"6a8884bb_022186e8","line":238,"updated":"2022-07-26 09:13:34.000000000","message":"This was originally added in [1] but should no longer be necessary, because resource proxy behaves differently. Please check, remove and document in commit message.\n\n[1] https://opendev.org/openstack/ansible-collections-openstack/commit/77acba047b6c40d31f42bb9a61b3c71f29ef4a32","commit_id":"19e6a68fe67099482e1233bbd6421bf9ba496e7b"},{"author":{"_account_id":34208,"name":"Rafael Castillo","email":"rcastill@redhat.com","username":"rcastill"},"change_message_id":"ddafd3bfdff783604eca4cf8ba37957c7cdc0eb3","unresolved":false,"context_lines":[{"line_number":235,"context_line":"        old_extra_specs \u003d {}"},{"line_number":236,"context_line":"        if flavor:"},{"line_number":237,"context_line":"            old_extra_specs \u003d flavor[\u0027extra_specs\u0027]"},{"line_number":238,"context_line":"            if flavor[\u0027swap\u0027] \u003d\u003d \"\":"},{"line_number":239,"context_line":"                flavor[\u0027swap\u0027] \u003d 0"},{"line_number":240,"context_line":""},{"line_number":241,"context_line":"        if self.ansible.check_mode:"}],"source_content_type":"text/x-python","patch_set":4,"id":"0c7f0df7_ca5a1a4c","line":238,"in_reply_to":"6a8884bb_022186e8","updated":"2022-07-26 18:33:46.000000000","message":"Done","commit_id":"19e6a68fe67099482e1233bbd6421bf9ba496e7b"},{"author":{"_account_id":32962,"name":"Jakob Meng","email":"code@jakobmeng.de","username":"jakobmeng@web.de"},"change_message_id":"3d714a2b02a68343504a17bc26be2e16f91037bb","unresolved":true,"context_lines":[{"line_number":247,"context_line":""},{"line_number":248,"context_line":"            flavorid \u003d self.params[\u0027flavorid\u0027]"},{"line_number":249,"context_line":"            if flavor and require_update:"},{"line_number":250,"context_line":"                self.conn.delete_flavor(name)"},{"line_number":251,"context_line":"                old_extra_specs \u003d {}"},{"line_number":252,"context_line":"                if flavorid \u003d\u003d \u0027auto\u0027:"},{"line_number":253,"context_line":"                    flavorid \u003d flavor[\u0027id\u0027]"}],"source_content_type":"text/x-python","patch_set":4,"id":"2afcac47_8aa54219","line":250,"updated":"2022-07-26 09:13:34.000000000","message":"Please add a comment that according to OpenStack API, only a flavor\u0027s description can be updated, hence we have to delete and recreate a flavor in order to \"update\" it. Please check with integration test(s).\n\nhttps://docs.openstack.org/api-ref/compute/#update-flavor-description","commit_id":"19e6a68fe67099482e1233bbd6421bf9ba496e7b"},{"author":{"_account_id":32962,"name":"Jakob Meng","email":"code@jakobmeng.de","username":"jakobmeng@web.de"},"change_message_id":"3d714a2b02a68343504a17bc26be2e16f91037bb","unresolved":true,"context_lines":[{"line_number":247,"context_line":""},{"line_number":248,"context_line":"            flavorid \u003d self.params[\u0027flavorid\u0027]"},{"line_number":249,"context_line":"            if flavor and require_update:"},{"line_number":250,"context_line":"                self.conn.delete_flavor(name)"},{"line_number":251,"context_line":"                old_extra_specs \u003d {}"},{"line_number":252,"context_line":"                if flavorid \u003d\u003d \u0027auto\u0027:"},{"line_number":253,"context_line":"                    flavorid \u003d flavor[\u0027id\u0027]"}],"source_content_type":"text/x-python","patch_set":4,"id":"eba99665_5bf045d2","line":250,"updated":"2022-07-26 09:13:34.000000000","message":"Please replace this with\n\n  self.conn.compute.delete_flavor(flavor)\n\nin order to safe an api call [1] and ensure that we really really delete the right flavor.\n\n[1] https://opendev.org/openstack/openstacksdk/src/commit/1ce15c9a8758b4d978eb5239bae100ddc13c8875/openstack/cloud/_compute.py#L1435","commit_id":"19e6a68fe67099482e1233bbd6421bf9ba496e7b"},{"author":{"_account_id":34208,"name":"Rafael Castillo","email":"rcastill@redhat.com","username":"rcastill"},"change_message_id":"ddafd3bfdff783604eca4cf8ba37957c7cdc0eb3","unresolved":false,"context_lines":[{"line_number":247,"context_line":""},{"line_number":248,"context_line":"            flavorid \u003d self.params[\u0027flavorid\u0027]"},{"line_number":249,"context_line":"            if flavor and require_update:"},{"line_number":250,"context_line":"                self.conn.delete_flavor(name)"},{"line_number":251,"context_line":"                old_extra_specs \u003d {}"},{"line_number":252,"context_line":"                if flavorid \u003d\u003d \u0027auto\u0027:"},{"line_number":253,"context_line":"                    flavorid \u003d flavor[\u0027id\u0027]"}],"source_content_type":"text/x-python","patch_set":4,"id":"60972b8a_62b14b73","line":250,"in_reply_to":"2afcac47_8aa54219","updated":"2022-07-26 18:33:46.000000000","message":"Done","commit_id":"19e6a68fe67099482e1233bbd6421bf9ba496e7b"},{"author":{"_account_id":34208,"name":"Rafael Castillo","email":"rcastill@redhat.com","username":"rcastill"},"change_message_id":"ddafd3bfdff783604eca4cf8ba37957c7cdc0eb3","unresolved":false,"context_lines":[{"line_number":247,"context_line":""},{"line_number":248,"context_line":"            flavorid \u003d self.params[\u0027flavorid\u0027]"},{"line_number":249,"context_line":"            if flavor and require_update:"},{"line_number":250,"context_line":"                self.conn.delete_flavor(name)"},{"line_number":251,"context_line":"                old_extra_specs \u003d {}"},{"line_number":252,"context_line":"                if flavorid \u003d\u003d \u0027auto\u0027:"},{"line_number":253,"context_line":"                    flavorid \u003d flavor[\u0027id\u0027]"}],"source_content_type":"text/x-python","patch_set":4,"id":"ad6c315c_0284d769","line":250,"in_reply_to":"eba99665_5bf045d2","updated":"2022-07-26 18:33:46.000000000","message":"Done","commit_id":"19e6a68fe67099482e1233bbd6421bf9ba496e7b"},{"author":{"_account_id":32962,"name":"Jakob Meng","email":"code@jakobmeng.de","username":"jakobmeng@web.de"},"change_message_id":"3d714a2b02a68343504a17bc26be2e16f91037bb","unresolved":true,"context_lines":[{"line_number":280,"context_line":""},{"line_number":281,"context_line":"            self.exit_json("},{"line_number":282,"context_line":"                changed\u003dchanged, flavor\u003dflavor.to_dict("},{"line_number":283,"context_line":"                    computed\u003dFalse), id\u003dflavor[\u0027id\u0027])"},{"line_number":284,"context_line":""},{"line_number":285,"context_line":"        elif state \u003d\u003d \u0027absent\u0027:"},{"line_number":286,"context_line":"            if flavor:"}],"source_content_type":"text/x-python","patch_set":4,"id":"c5de8c11_3695b4c7","line":283,"updated":"2022-07-26 09:13:34.000000000","message":"Please drop id\u003dflavor[...]. One can simply use flavor.id to get the id and id is not even documented.","commit_id":"19e6a68fe67099482e1233bbd6421bf9ba496e7b"},{"author":{"_account_id":34208,"name":"Rafael Castillo","email":"rcastill@redhat.com","username":"rcastill"},"change_message_id":"ddafd3bfdff783604eca4cf8ba37957c7cdc0eb3","unresolved":false,"context_lines":[{"line_number":280,"context_line":""},{"line_number":281,"context_line":"            self.exit_json("},{"line_number":282,"context_line":"                changed\u003dchanged, flavor\u003dflavor.to_dict("},{"line_number":283,"context_line":"                    computed\u003dFalse), id\u003dflavor[\u0027id\u0027])"},{"line_number":284,"context_line":""},{"line_number":285,"context_line":"        elif state \u003d\u003d \u0027absent\u0027:"},{"line_number":286,"context_line":"            if flavor:"}],"source_content_type":"text/x-python","patch_set":4,"id":"2dd40da4_b49785d1","line":283,"in_reply_to":"c5de8c11_3695b4c7","updated":"2022-07-26 18:33:46.000000000","message":"Done","commit_id":"19e6a68fe67099482e1233bbd6421bf9ba496e7b"}]}
