)]}'
{"deployment/nova/nova-api-container-puppet.yaml":[{"author":{"_account_id":14985,"name":"Alex Schultz","email":"aschultz@next-development.com","username":"mwhahaha"},"change_message_id":"421311e83fd0219d1cd87d9f86f09f6702924e42","unresolved":false,"context_lines":[{"line_number":701,"context_line":"      host_prep_tasks:"},{"line_number":702,"context_line":"        list_concat:"},{"line_number":703,"context_line":"        - {get_attr: [NovaApiLogging, host_prep_tasks]}"},{"line_number":704,"context_line":"        # When the policy gets reset to {} the file won\u0027t be deleted by the puppet module."},{"line_number":705,"context_line":"        # Lets delete the policy file to get it recreated from scratch on a deployment."},{"line_number":706,"context_line":"        - - name: remove API policy file to have it recreated"},{"line_number":707,"context_line":"            file:"}],"source_content_type":"text/x-yaml","patch_set":2,"id":"70844847_32d02740","line":704,"updated":"2021-07-23 21:02:28.000000000","message":"Can we fix this in puppet-oslo to remove the file if blank or {}","commit_id":"bd0cf51fd83eea5356174c085f72034da6b94ac9"},{"author":{"_account_id":17216,"name":"Martin Schuppert","email":"mschuppert@redhat.com","username":"mcschupp"},"change_message_id":"6b1f164035a0215476c586ef2e017d163cfab5d3","unresolved":false,"context_lines":[{"line_number":701,"context_line":"      host_prep_tasks:"},{"line_number":702,"context_line":"        list_concat:"},{"line_number":703,"context_line":"        - {get_attr: [NovaApiLogging, host_prep_tasks]}"},{"line_number":704,"context_line":"        # When the policy gets reset to {} the file won\u0027t be deleted by the puppet module."},{"line_number":705,"context_line":"        # Lets delete the policy file to get it recreated from scratch on a deployment."},{"line_number":706,"context_line":"        - - name: remove API policy file to have it recreated"},{"line_number":707,"context_line":"            file:"}],"source_content_type":"text/x-yaml","patch_set":2,"id":"677bf0e1_df67c85a","line":704,"in_reply_to":"70844847_32d02740","updated":"2021-07-26 09:22:13.000000000","message":"sure we can handle that in puppet, but I think the right location would be [1], no? If  policies is empty do not create the resources, instead make sure the policy file is deleted.\n\n[1] https://github.com/openstack/puppet-nova/blob/master/manifests/policy.pp#L59","commit_id":"bd0cf51fd83eea5356174c085f72034da6b94ac9"},{"author":{"_account_id":17216,"name":"Martin Schuppert","email":"mschuppert@redhat.com","username":"mcschupp"},"change_message_id":"3d606ba2bcf0608174eca7165715860c5e5606fe","unresolved":true,"context_lines":[{"line_number":395,"context_line":"                          key: \u0027os_compute_api:os-migrate-server:migrate_live\u0027"},{"line_number":396,"context_line":"                          value:"},{"line_number":397,"context_line":"                            str_replace:"},{"line_number":398,"context_line":"                              template: \u0027role:LMROLENAME\u0027"},{"line_number":399,"context_line":"                              params:"},{"line_number":400,"context_line":"                                LMROLENAME: {get_param: NovaLiveMigrationRole}"},{"line_number":401,"context_line":"                - {get_param: NovaApiPolicies}"}],"source_content_type":"text/x-yaml","patch_set":3,"id":"55c35489_edfbd5c2","line":398,"updated":"2021-07-27 09:33:17.000000000","message":"@Sean, want to check with you if restrict LM to a specific role like this is the way we want to go for this.","commit_id":"b406006496dddf0ac65758a4a6f192b91006c169"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"aea9b769608d2d5b745c5c0078e02639578f555c","unresolved":true,"context_lines":[{"line_number":231,"context_line":"    description: |"},{"line_number":232,"context_line":"      Use the advanced (eventlet safe) memcached client pool."},{"line_number":233,"context_line":"    default: true"},{"line_number":234,"context_line":"  NovaDisableLiveMigration:"},{"line_number":235,"context_line":"    type: boolean"},{"line_number":236,"context_line":"    description: |"},{"line_number":237,"context_line":"      Disable livemigration by restrict the \u0027os_compute_api:os-migrate-server:migrate_live\u0027"}],"source_content_type":"text/x-yaml","patch_set":4,"id":"a404b761_b0952c46","line":234,"range":{"start_line":234,"start_character":2,"end_line":234,"end_character":26},"updated":"2021-07-27 16:34:11.000000000","message":"-1\nthe customer may have as to for a way to disable live migration but what we wanted to\nprovide was a way to restirct it to require a new role.\n\nNovaRestrictLiveMigration","commit_id":"018d03e83009dc1377275fd41d7fc465f18100f5"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"aea9b769608d2d5b745c5c0078e02639578f555c","unresolved":true,"context_lines":[{"line_number":244,"context_line":"    description: |"},{"line_number":245,"context_line":"      Name of the user role which gets set to limit live migration when"},{"line_number":246,"context_line":"      NovaDisableLiveMigration is enabled."},{"line_number":247,"context_line":"    default: \u0027superadmin\u0027"},{"line_number":248,"context_line":"    type: string"},{"line_number":249,"context_line":""},{"line_number":250,"context_line":"parameter_groups:"}],"source_content_type":"text/x-yaml","patch_set":4,"id":"3e48b005_3d679398","line":247,"range":{"start_line":247,"start_character":14,"end_line":247,"end_character":24},"updated":"2021-07-27 16:34:11.000000000","message":"i know this was my orignal suggestion but in hindsight \na \u0027live-migration\u0027 role would be better.\n\nthis could allow the operator to delegeate live migration to say a project admin at some point in the future if they wanted.\n\nmy main concern with superadmin is that it would be very tempting to keep extending that role and then we might get into a situation where different operators will want different things so lets prempt that by nameign the role after the operation it grants.","commit_id":"018d03e83009dc1377275fd41d7fc465f18100f5"},{"author":{"_account_id":8833,"name":"Rabi Mishra","email":"ramishra@redhat.com","username":"rabi"},"change_message_id":"b1cc86b2c57ff2e4c0ab183fb3de03c9235c81bb","unresolved":true,"context_lines":[{"line_number":388,"context_line":"            nova::policy::policies:"},{"line_number":389,"context_line":"              if:"},{"line_number":390,"context_line":"                - {get_param: NovaRestrictLiveMigration}"},{"line_number":391,"context_line":"                - yaql:"},{"line_number":392,"context_line":"                    expression:  $.data.reduce($1.mergeWith($2), {})"},{"line_number":393,"context_line":"                    data:"},{"line_number":394,"context_line":"                      - {get_param: NovaApiPolicies}"},{"line_number":395,"context_line":"                      - limit_live_migration:"}],"source_content_type":"text/x-yaml","patch_set":5,"id":"40695969_2a38a6ba","line":392,"range":{"start_line":391,"start_character":0,"end_line":392,"end_character":68},"updated":"2021-08-26 05:00:48.000000000","message":"can we not use map_merge[1] instead? We\u0027ve been trying to reduce yaql usage unless necessary.\n\n[1] https://docs.openstack.org/heat/latest/template_guide/hot_spec.html#map-merge","commit_id":"effa01b5d818c63c7363d7577cd2f7debb42c2e1"},{"author":{"_account_id":17216,"name":"Martin Schuppert","email":"mschuppert@redhat.com","username":"mcschupp"},"change_message_id":"ef9f7fedca2ed48a6c9ffe7887be1e2debc9eaa4","unresolved":true,"context_lines":[{"line_number":388,"context_line":"            nova::policy::policies:"},{"line_number":389,"context_line":"              if:"},{"line_number":390,"context_line":"                - {get_param: NovaRestrictLiveMigration}"},{"line_number":391,"context_line":"                - yaql:"},{"line_number":392,"context_line":"                    expression:  $.data.reduce($1.mergeWith($2), {})"},{"line_number":393,"context_line":"                    data:"},{"line_number":394,"context_line":"                      - {get_param: NovaApiPolicies}"},{"line_number":395,"context_line":"                      - limit_live_migration:"}],"source_content_type":"text/x-yaml","patch_set":5,"id":"7fb7f08f_56f656e8","line":392,"range":{"start_line":391,"start_character":0,"end_line":392,"end_character":68},"in_reply_to":"40695969_2a38a6ba","updated":"2021-08-31 09:45:12.000000000","message":"I actually can not remember why I did not use map_merge, updated it to use it.","commit_id":"effa01b5d818c63c7363d7577cd2f7debb42c2e1"},{"author":{"_account_id":14985,"name":"Alex Schultz","email":"aschultz@next-development.com","username":"mwhahaha"},"change_message_id":"611416389b018cbadd82f293b170358f2071b326","unresolved":true,"context_lines":[{"line_number":397,"context_line":"                        template: \u0027role:LMROLENAME\u0027"},{"line_number":398,"context_line":"                        params:"},{"line_number":399,"context_line":"                           LMROLENAME: {get_param: NovaRestrictLiveMigrationRole}"},{"line_number":400,"context_line":"                - null"},{"line_number":401,"context_line":"            nova::api::allow_resize_to_same_host: {get_param: NovaAllowResizeToSameHost}"},{"line_number":402,"context_line":"            nova_enable_db_purge: {get_param: NovaEnableDBPurge}"},{"line_number":403,"context_line":"            nova::cron::purge_shadow_tables::minute: {get_param: NovaCronPurgeShadowTablesMinute}"}],"source_content_type":"text/x-yaml","patch_set":6,"id":"e42986b5_ac1e1772","line":400,"range":{"start_line":400,"start_character":18,"end_line":400,"end_character":22},"updated":"2021-08-31 13:09:39.000000000","message":"i wonder if this should be {} since we\u0027re merging dictionaries. I can\u0027t recall the if null will cause a problem","commit_id":"35fbde691d8d9bd593b87269c4de74c73bba930f"},{"author":{"_account_id":17216,"name":"Martin Schuppert","email":"mschuppert@redhat.com","username":"mcschupp"},"change_message_id":"3a3dda477975085d14d07819ca1e69287bf79b49","unresolved":true,"context_lines":[{"line_number":397,"context_line":"                        template: \u0027role:LMROLENAME\u0027"},{"line_number":398,"context_line":"                        params:"},{"line_number":399,"context_line":"                           LMROLENAME: {get_param: NovaRestrictLiveMigrationRole}"},{"line_number":400,"context_line":"                - null"},{"line_number":401,"context_line":"            nova::api::allow_resize_to_same_host: {get_param: NovaAllowResizeToSameHost}"},{"line_number":402,"context_line":"            nova_enable_db_purge: {get_param: NovaEnableDBPurge}"},{"line_number":403,"context_line":"            nova::cron::purge_shadow_tables::minute: {get_param: NovaCronPurgeShadowTablesMinute}"}],"source_content_type":"text/x-yaml","patch_set":6,"id":"7cb2119f_b272612b","line":400,"range":{"start_line":400,"start_character":18,"end_line":400,"end_character":22},"in_reply_to":"e42986b5_ac1e1772","updated":"2021-08-31 13:37:53.000000000","message":"I have not seen problems in a test I did with this change, but let me change it.","commit_id":"35fbde691d8d9bd593b87269c4de74c73bba930f"}]}
