)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":17216,"name":"Martin Schuppert","email":"mschuppert@redhat.com","username":"mcschupp"},"change_message_id":"858cc76cea96f5c14cb4618b7ed5d89c85e77b4a","unresolved":true,"context_lines":[{"line_number":15,"context_line":"1. Upgrade OSP13 \u003d\u003e OSP16.2"},{"line_number":16,"context_line":"On the leap upgrade of the compute node to RHEL 8.3"},{"line_number":17,"context_line":"if tsx\u003doff already in kernel ARGS, don\u0027t do anything"},{"line_number":18,"context_line":"enable TSX on computes which have CPU flags hle|rtm"},{"line_number":19,"context_line":""},{"line_number":20,"context_line":"2. Update from OSP16.1 \u003d\u003e OSP16.2"},{"line_number":21,"context_line":"If tsx\u003doff already in kernel ARGS, don\u0027t do anything"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"a5e9f01e_6c462dec","line":18,"updated":"2021-02-16 12:50:05.000000000","message":"enable TSX on \u003d\u003e enable TSX only on","commit_id":"8b44b32072382232e925439c82958d377433e121"},{"author":{"_account_id":17216,"name":"Martin Schuppert","email":"mschuppert@redhat.com","username":"mcschupp"},"change_message_id":"90a24bab7ec7539189006c2cc2a6a793e02a03fa","unresolved":true,"context_lines":[{"line_number":18,"context_line":"enable TSX on computes which have CPU flags hle|rtm"},{"line_number":19,"context_line":""},{"line_number":20,"context_line":"2. Update from OSP16.1 \u003d\u003e OSP16.2"},{"line_number":21,"context_line":"If tsx\u003doff already in kernel ARGS, don\u0027t do anything"},{"line_number":22,"context_line":"on an existing deployment when a kernel ARG gets set the node"},{"line_number":23,"context_line":"gets rebooted! We need a way to add kernel ARGs without a reboot."},{"line_number":24,"context_line":" -\u003e ATM, we can not set the kernel ARG during a deployment run on"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":19,"id":"9ed71393_1d78b661","line":21,"updated":"2021-03-29 06:54:03.000000000","message":"need to add what happens on update where tsx\u003doff not specified. TSX gets enabled on computes IF the cpu supports (hle|rtm flags)","commit_id":"37390aed8d2d3c054e307ba23814922b998342bd"},{"author":{"_account_id":27419,"name":"David Vallee Delisle","email":"me@dvd.dev","username":"dvd"},"change_message_id":"95c8de6b47eb37675af6a57258469a01267c0ef3","unresolved":false,"context_lines":[{"line_number":18,"context_line":"enable TSX on computes which have CPU flags hle|rtm"},{"line_number":19,"context_line":""},{"line_number":20,"context_line":"2. Update from OSP16.1 \u003d\u003e OSP16.2"},{"line_number":21,"context_line":"If tsx\u003doff already in kernel ARGS, don\u0027t do anything"},{"line_number":22,"context_line":"on an existing deployment when a kernel ARG gets set the node"},{"line_number":23,"context_line":"gets rebooted! We need a way to add kernel ARGs without a reboot."},{"line_number":24,"context_line":" -\u003e ATM, we can not set the kernel ARG during a deployment run on"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":19,"id":"723da8a5_39dbf6b8","line":21,"in_reply_to":"9ed71393_1d78b661","updated":"2021-03-29 15:09:42.000000000","message":"Done","commit_id":"37390aed8d2d3c054e307ba23814922b998342bd"},{"author":{"_account_id":17216,"name":"Martin Schuppert","email":"mschuppert@redhat.com","username":"mcschupp"},"change_message_id":"90a24bab7ec7539189006c2cc2a6a793e02a03fa","unresolved":true,"context_lines":[{"line_number":19,"context_line":""},{"line_number":20,"context_line":"2. Update from OSP16.1 \u003d\u003e OSP16.2"},{"line_number":21,"context_line":"If tsx\u003doff already in kernel ARGS, don\u0027t do anything"},{"line_number":22,"context_line":"on an existing deployment when a kernel ARG gets set the node"},{"line_number":23,"context_line":"gets rebooted! We need a way to add kernel ARGs without a reboot."},{"line_number":24,"context_line":" -\u003e ATM, we can not set the kernel ARG during a deployment run on"},{"line_number":25,"context_line":"    a compute role, the compute gets rebooted on kernel ARG change"},{"line_number":26,"context_line":" -\u003e we can not expect that customers migrate off all instances on an update"},{"line_number":27,"context_line":""},{"line_number":28,"context_line":"3. OSP 16.2 new deployments"},{"line_number":29,"context_line":"Do not enable tsx on new deployments starting with OSP16.2/RHEL8.4."}],"source_content_type":"text/x-gerrit-commit-message","patch_set":19,"id":"8a7a92ba_598ec6d4","line":26,"range":{"start_line":22,"start_character":0,"end_line":26,"end_character":75},"updated":"2021-03-29 06:54:03.000000000","message":"we need to change this now to say on existing deployment, the kernel arg gets set and reboot deferred, right?","commit_id":"37390aed8d2d3c054e307ba23814922b998342bd"},{"author":{"_account_id":27419,"name":"David Vallee Delisle","email":"me@dvd.dev","username":"dvd"},"change_message_id":"95c8de6b47eb37675af6a57258469a01267c0ef3","unresolved":false,"context_lines":[{"line_number":19,"context_line":""},{"line_number":20,"context_line":"2. Update from OSP16.1 \u003d\u003e OSP16.2"},{"line_number":21,"context_line":"If tsx\u003doff already in kernel ARGS, don\u0027t do anything"},{"line_number":22,"context_line":"on an existing deployment when a kernel ARG gets set the node"},{"line_number":23,"context_line":"gets rebooted! We need a way to add kernel ARGs without a reboot."},{"line_number":24,"context_line":" -\u003e ATM, we can not set the kernel ARG during a deployment run on"},{"line_number":25,"context_line":"    a compute role, the compute gets rebooted on kernel ARG change"},{"line_number":26,"context_line":" -\u003e we can not expect that customers migrate off all instances on an update"},{"line_number":27,"context_line":""},{"line_number":28,"context_line":"3. OSP 16.2 new deployments"},{"line_number":29,"context_line":"Do not enable tsx on new deployments starting with OSP16.2/RHEL8.4."}],"source_content_type":"text/x-gerrit-commit-message","patch_set":19,"id":"fb77aa84_feeb340f","line":26,"range":{"start_line":22,"start_character":0,"end_line":26,"end_character":75},"in_reply_to":"8a7a92ba_598ec6d4","updated":"2021-03-29 15:09:42.000000000","message":"Done","commit_id":"37390aed8d2d3c054e307ba23814922b998342bd"},{"author":{"_account_id":18575,"name":"Saravanan KR","email":"krsacme@gmail.com","username":"saravanankr"},"change_message_id":"6d5f8560d77097584720b7b5136083407941b684","unresolved":true,"context_lines":[{"line_number":12,"context_line":"have a simple switch to completely disable all automation on KernelArgs,"},{"line_number":13,"context_line":"which is the purpose of TsxAutomatinonEnabled."},{"line_number":14,"context_line":""},{"line_number":15,"context_line":"Also, we introduce the TsxAutomationState parameter. This is basically a"},{"line_number":16,"context_line":"parameter that will serve as a backup of the current deployment\u0027s tsx"},{"line_number":17,"context_line":"state in case operator recovered their undercloud from a backup. This is"},{"line_number":18,"context_line":"not meant to be configurable by the customer."},{"line_number":19,"context_line":""},{"line_number":20,"context_line":"Related: https://bugzilla.redhat.com/1923165"},{"line_number":21,"context_line":"Related-Bug: #1916758"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":32,"id":"72d80c14_dd5a8279","line":18,"range":{"start_line":15,"start_character":0,"end_line":18,"end_character":45},"updated":"2021-04-28 12:13:13.000000000","message":"can be removed.","commit_id":"71e0011abbed874d9b349706dd474c6f8eed6e09"},{"author":{"_account_id":27419,"name":"David Vallee Delisle","email":"me@dvd.dev","username":"dvd"},"change_message_id":"9165e88fc37d1543c500d58a335f8ae004a69656","unresolved":false,"context_lines":[{"line_number":12,"context_line":"have a simple switch to completely disable all automation on KernelArgs,"},{"line_number":13,"context_line":"which is the purpose of TsxAutomatinonEnabled."},{"line_number":14,"context_line":""},{"line_number":15,"context_line":"Also, we introduce the TsxAutomationState parameter. This is basically a"},{"line_number":16,"context_line":"parameter that will serve as a backup of the current deployment\u0027s tsx"},{"line_number":17,"context_line":"state in case operator recovered their undercloud from a backup. This is"},{"line_number":18,"context_line":"not meant to be configurable by the customer."},{"line_number":19,"context_line":""},{"line_number":20,"context_line":"Related: https://bugzilla.redhat.com/1923165"},{"line_number":21,"context_line":"Related-Bug: #1916758"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":32,"id":"803cbdf0_0956bdae","line":18,"range":{"start_line":15,"start_character":0,"end_line":18,"end_character":45},"in_reply_to":"72d80c14_dd5a8279","updated":"2021-04-28 12:24:31.000000000","message":"Done","commit_id":"71e0011abbed874d9b349706dd474c6f8eed6e09"}],"deployment/kernel/kernel-boot-params-baremetal-ansible.yaml":[{"author":{"_account_id":17216,"name":"Martin Schuppert","email":"mschuppert@redhat.com","username":"mcschupp"},"change_message_id":"858cc76cea96f5c14cb4618b7ed5d89c85e77b4a","unresolved":true,"context_lines":[{"line_number":91,"context_line":"            kernel_args: {get_attr: [RoleParametersValue, value, kernel_args]}"},{"line_number":92,"context_line":"        - name: TSX CPU Flag Validation for compute nodes"},{"line_number":93,"context_line":"          when:"},{"line_number":94,"context_line":"            - \u0027\"Compute\" in role_name\u0027"},{"line_number":95,"context_line":"            - step|int \u003d\u003d 0"},{"line_number":96,"context_line":"          block:"},{"line_number":97,"context_line":"            - name: Check if cpu supports tsx"}],"source_content_type":"text/x-yaml","patch_set":1,"id":"139a9bc2_c5649d3e","line":94,"updated":"2021-02-16 12:50:05.000000000","message":"In theory a user can have a custom role without Compute in the role name. Adding these steps to nova-compute or nova-libvirt service would resolve this.\n\nWhen we discussed this last week, one idea was to create a nova tripleo-ansible role and add those tasks there. we could then run it from nova-compute host_prep/update/upgrade tasks with different parameters.","commit_id":"8b44b32072382232e925439c82958d377433e121"},{"author":{"_account_id":17216,"name":"Martin Schuppert","email":"mschuppert@redhat.com","username":"mcschupp"},"change_message_id":"858cc76cea96f5c14cb4618b7ed5d89c85e77b4a","unresolved":true,"context_lines":[{"line_number":109,"context_line":"              set_fact:"},{"line_number":110,"context_line":"                tsx_flag: \"off\""},{"line_number":111,"context_line":""},{"line_number":112,"context_line":"            - name: Enabled TSX when CPU supports TSX and we are on RHEL8.2"},{"line_number":113,"context_line":"              when:"},{"line_number":114,"context_line":"               - not \"tsx\u003d\" in kernel_args"},{"line_number":115,"context_line":"               - tsx_cpu_support.rc \u003d\u003d 0"}],"source_content_type":"text/x-yaml","patch_set":1,"id":"95838132_8732ce3c","line":112,"updated":"2021-02-16 12:50:05.000000000","message":"adding new computes after updating to 16.2 would result in computes from before the update to have tsx\u003don and the new nodes get tsx\u003doff, right?\n\nA way would be to add an initial deploy version marker on the undercloud to not change the kernel flag. set it on stack_action CREATE to /etc/rhosp-release , for existing environments where we can not identify the history, set it to current running version.","commit_id":"8b44b32072382232e925439c82958d377433e121"},{"author":{"_account_id":17216,"name":"Martin Schuppert","email":"mschuppert@redhat.com","username":"mcschupp"},"change_message_id":"858cc76cea96f5c14cb4618b7ed5d89c85e77b4a","unresolved":true,"context_lines":[{"line_number":130,"context_line":"            - name: Add it to grub without rebooting if compute node is already deployed"},{"line_number":131,"context_line":"              when: check_nova_conf.stat.exists"},{"line_number":132,"context_line":"              block:"},{"line_number":133,"context_line":"                - name: Add TSX flag to default kernel grub line"},{"line_number":134,"context_line":"                  lineinfile:"},{"line_number":135,"context_line":"                    dest: /etc/default/grub"},{"line_number":136,"context_line":"                    backrefs: yes"}],"source_content_type":"text/x-yaml","patch_set":1,"id":"a6af430e_b8d3fc08","line":133,"updated":"2021-02-16 12:50:05.000000000","message":"we\u0027d also have to check if it is already there to not change/add it on any subsequent deploy run.","commit_id":"8b44b32072382232e925439c82958d377433e121"},{"author":{"_account_id":17216,"name":"Martin Schuppert","email":"mschuppert@redhat.com","username":"mcschupp"},"change_message_id":"50a9a49f1c5b1cf952e8efc6c6293bddeed45561","unresolved":true,"context_lines":[{"line_number":69,"context_line":"            - tuned_profile: TunedProfileName"},{"line_number":70,"context_line":"              isolated_cores: IsolCpusList"},{"line_number":71,"context_line":"              kernel_args: KernelArgs"},{"line_number":72,"context_line":"              role_name: RoleName"},{"line_number":73,"context_line":"            - values: {get_param: [RoleParameters]}"},{"line_number":74,"context_line":"          - values:"},{"line_number":75,"context_line":"              TunedProfileName: {get_param: TunedProfileName}"}],"source_content_type":"text/x-yaml","patch_set":2,"id":"0cc80d67_b25e9a63","line":72,"updated":"2021-02-17 11:20:51.000000000","message":"we no longer need this","commit_id":"be2beb3c7bc6707dddebb6950dc69ddb5f6c6778"},{"author":{"_account_id":27419,"name":"David Vallee Delisle","email":"me@dvd.dev","username":"dvd"},"change_message_id":"186996015e7a1405d1fd742b063f5e45ec8601a4","unresolved":false,"context_lines":[{"line_number":69,"context_line":"            - tuned_profile: TunedProfileName"},{"line_number":70,"context_line":"              isolated_cores: IsolCpusList"},{"line_number":71,"context_line":"              kernel_args: KernelArgs"},{"line_number":72,"context_line":"              role_name: RoleName"},{"line_number":73,"context_line":"            - values: {get_param: [RoleParameters]}"},{"line_number":74,"context_line":"          - values:"},{"line_number":75,"context_line":"              TunedProfileName: {get_param: TunedProfileName}"}],"source_content_type":"text/x-yaml","patch_set":2,"id":"73b5839b_af406ec6","line":72,"in_reply_to":"0cc80d67_b25e9a63","updated":"2021-02-17 20:26:40.000000000","message":"Done","commit_id":"be2beb3c7bc6707dddebb6950dc69ddb5f6c6778"},{"author":{"_account_id":17216,"name":"Martin Schuppert","email":"mschuppert@redhat.com","username":"mcschupp"},"change_message_id":"50a9a49f1c5b1cf952e8efc6c6293bddeed45561","unresolved":true,"context_lines":[{"line_number":75,"context_line":"              TunedProfileName: {get_param: TunedProfileName}"},{"line_number":76,"context_line":"              IsolCpusList: {get_param: IsolCpusList}"},{"line_number":77,"context_line":"              KernelArgs: {get_param: KernelArgs}"},{"line_number":78,"context_line":"              RoleName: {get_param: RoleName}"},{"line_number":79,"context_line":""},{"line_number":80,"context_line":"outputs:"},{"line_number":81,"context_line":"  role_data:"}],"source_content_type":"text/x-yaml","patch_set":2,"id":"3bc3fc04_ca09aacd","line":78,"updated":"2021-02-17 11:20:51.000000000","message":"same, no longer required","commit_id":"be2beb3c7bc6707dddebb6950dc69ddb5f6c6778"},{"author":{"_account_id":27419,"name":"David Vallee Delisle","email":"me@dvd.dev","username":"dvd"},"change_message_id":"186996015e7a1405d1fd742b063f5e45ec8601a4","unresolved":false,"context_lines":[{"line_number":75,"context_line":"              TunedProfileName: {get_param: TunedProfileName}"},{"line_number":76,"context_line":"              IsolCpusList: {get_param: IsolCpusList}"},{"line_number":77,"context_line":"              KernelArgs: {get_param: KernelArgs}"},{"line_number":78,"context_line":"              RoleName: {get_param: RoleName}"},{"line_number":79,"context_line":""},{"line_number":80,"context_line":"outputs:"},{"line_number":81,"context_line":"  role_data:"}],"source_content_type":"text/x-yaml","patch_set":2,"id":"6a9cc6d0_2877acc1","line":78,"in_reply_to":"3bc3fc04_ca09aacd","updated":"2021-02-17 20:26:40.000000000","message":"Done","commit_id":"be2beb3c7bc6707dddebb6950dc69ddb5f6c6778"},{"author":{"_account_id":17216,"name":"Martin Schuppert","email":"mschuppert@redhat.com","username":"mcschupp"},"change_message_id":"50a9a49f1c5b1cf952e8efc6c6293bddeed45561","unresolved":true,"context_lines":[{"line_number":103,"context_line":""},{"line_number":104,"context_line":"            - name: TSX CPU Flag Validation for compute nodes"},{"line_number":105,"context_line":"              when:"},{"line_number":106,"context_line":"                - \u0027\"nova_compute\" in node_services\u0027"},{"line_number":107,"context_line":"              block:"},{"line_number":108,"context_line":"                - name: Check if cpu supports tsx"},{"line_number":109,"context_line":"                  shell: |"}],"source_content_type":"text/x-yaml","patch_set":2,"id":"3f2e4e86_87685c59","line":106,"updated":"2021-02-17 11:20:51.000000000","message":"better we check for nova_libvirt. e.g. in case of ironic we run nova_compute service on the controllers.","commit_id":"be2beb3c7bc6707dddebb6950dc69ddb5f6c6778"},{"author":{"_account_id":27419,"name":"David Vallee Delisle","email":"me@dvd.dev","username":"dvd"},"change_message_id":"186996015e7a1405d1fd742b063f5e45ec8601a4","unresolved":false,"context_lines":[{"line_number":103,"context_line":""},{"line_number":104,"context_line":"            - name: TSX CPU Flag Validation for compute nodes"},{"line_number":105,"context_line":"              when:"},{"line_number":106,"context_line":"                - \u0027\"nova_compute\" in node_services\u0027"},{"line_number":107,"context_line":"              block:"},{"line_number":108,"context_line":"                - name: Check if cpu supports tsx"},{"line_number":109,"context_line":"                  shell: |"}],"source_content_type":"text/x-yaml","patch_set":2,"id":"1d84e7bf_0ccd22ed","line":106,"in_reply_to":"3f2e4e86_87685c59","updated":"2021-02-17 20:26:40.000000000","message":"Done","commit_id":"be2beb3c7bc6707dddebb6950dc69ddb5f6c6778"},{"author":{"_account_id":17216,"name":"Martin Schuppert","email":"mschuppert@redhat.com","username":"mcschupp"},"change_message_id":"50a9a49f1c5b1cf952e8efc6c6293bddeed45561","unresolved":true,"context_lines":[{"line_number":111,"context_line":"                  failed_when: tsx_cpu_support.rc \u003d\u003d 2"},{"line_number":112,"context_line":"                  register: tsx_cpu_support"},{"line_number":113,"context_line":""},{"line_number":114,"context_line":"                - name: Check that the nova.conf exists to determine if node is deployed"},{"line_number":115,"context_line":"                  stat:"},{"line_number":116,"context_line":"                    path: /var/lib/config-data/puppet-generated/nova_libvirt/etc/nova/nova.conf"},{"line_number":117,"context_line":"                  register: check_nova_conf"}],"source_content_type":"text/x-yaml","patch_set":2,"id":"a262b0f0_8020fe7c","line":114,"updated":"2021-02-17 11:20:51.000000000","message":"could we also rely on checking if TRIPLEO_HEAT_TEMPLATE_KERNEL_ARGS already exist in grub conf? It should not exist on new deployments, right?\n\nhttps://github.com/openstack/tripleo-ansible/blob/stable/train/tripleo_ansible/roles/tripleo-kernel/tasks/kernelargs.yml#L21","commit_id":"be2beb3c7bc6707dddebb6950dc69ddb5f6c6778"},{"author":{"_account_id":27419,"name":"David Vallee Delisle","email":"me@dvd.dev","username":"dvd"},"change_message_id":"186996015e7a1405d1fd742b063f5e45ec8601a4","unresolved":true,"context_lines":[{"line_number":111,"context_line":"                  failed_when: tsx_cpu_support.rc \u003d\u003d 2"},{"line_number":112,"context_line":"                  register: tsx_cpu_support"},{"line_number":113,"context_line":""},{"line_number":114,"context_line":"                - name: Check that the nova.conf exists to determine if node is deployed"},{"line_number":115,"context_line":"                  stat:"},{"line_number":116,"context_line":"                    path: /var/lib/config-data/puppet-generated/nova_libvirt/etc/nova/nova.conf"},{"line_number":117,"context_line":"                  register: check_nova_conf"}],"source_content_type":"text/x-yaml","patch_set":2,"id":"d72b1257_1fe42b4c","line":114,"in_reply_to":"a262b0f0_8020fe7c","updated":"2021-02-17 20:26:40.000000000","message":"it shouldn\u0027t exist, but it can be missing on already deployed nodes if no KernelArgs were passed?","commit_id":"be2beb3c7bc6707dddebb6950dc69ddb5f6c6778"},{"author":{"_account_id":17216,"name":"Martin Schuppert","email":"mschuppert@redhat.com","username":"mcschupp"},"change_message_id":"50a9a49f1c5b1cf952e8efc6c6293bddeed45561","unresolved":true,"context_lines":[{"line_number":116,"context_line":"                    path: /var/lib/config-data/puppet-generated/nova_libvirt/etc/nova/nova.conf"},{"line_number":117,"context_line":"                  register: check_nova_conf"},{"line_number":118,"context_line":""},{"line_number":119,"context_line":"                - name: Enabled TSX when CPU supports TSX and we are on RHEL8.2"},{"line_number":120,"context_line":"                  when:"},{"line_number":121,"context_line":"                   - not \"tsx\u003d\" in kernel_args"},{"line_number":122,"context_line":"                   - tsx_cpu_support.rc \u003d\u003d 0"}],"source_content_type":"text/x-yaml","patch_set":2,"id":"1d50ecd3_a48d92b5","line":119,"updated":"2021-02-17 11:20:51.000000000","message":"as we discussed yesterday we also need to enable tsx on new RHEL8.4 computes scaled at a later time when the environment got updated from OSP \u003c16.2.","commit_id":"be2beb3c7bc6707dddebb6950dc69ddb5f6c6778"},{"author":{"_account_id":27419,"name":"David Vallee Delisle","email":"me@dvd.dev","username":"dvd"},"change_message_id":"186996015e7a1405d1fd742b063f5e45ec8601a4","unresolved":false,"context_lines":[{"line_number":116,"context_line":"                    path: /var/lib/config-data/puppet-generated/nova_libvirt/etc/nova/nova.conf"},{"line_number":117,"context_line":"                  register: check_nova_conf"},{"line_number":118,"context_line":""},{"line_number":119,"context_line":"                - name: Enabled TSX when CPU supports TSX and we are on RHEL8.2"},{"line_number":120,"context_line":"                  when:"},{"line_number":121,"context_line":"                   - not \"tsx\u003d\" in kernel_args"},{"line_number":122,"context_line":"                   - tsx_cpu_support.rc \u003d\u003d 0"}],"source_content_type":"text/x-yaml","patch_set":2,"id":"e71f36ba_d03cd69f","line":119,"in_reply_to":"1d50ecd3_a48d92b5","updated":"2021-02-17 20:26:40.000000000","message":"Done","commit_id":"be2beb3c7bc6707dddebb6950dc69ddb5f6c6778"},{"author":{"_account_id":17216,"name":"Martin Schuppert","email":"mschuppert@redhat.com","username":"mcschupp"},"change_message_id":"50a9a49f1c5b1cf952e8efc6c6293bddeed45561","unresolved":true,"context_lines":[{"line_number":126,"context_line":""},{"line_number":127,"context_line":"                - name: Generating KernelArgs line with TSX"},{"line_number":128,"context_line":"                  set_fact:"},{"line_number":129,"context_line":"                    kernel_args: \"{{ kernel_args | regex_replace(\u0027 tsx\u003d(on|off)\u0027, \u0027\u0027) }} tsx\u003d{{ tsx_flag }}\""},{"line_number":130,"context_line":""},{"line_number":131,"context_line":"                - name: There\u0027s a good chance that the kernel args will change, we need to prevent already deployed computes from rebooting."},{"line_number":132,"context_line":"                  set_fact:"}],"source_content_type":"text/x-yaml","patch_set":2,"id":"5daedfc3_4fe0c3f6","line":129,"updated":"2021-02-17 11:20:51.000000000","message":"if ansible_distribution_version is version \u003e\u003d 8.3 and tsx_flag is off, which is the default starting 8.3, at this point we won\u0027t have to change the kernel args.","commit_id":"be2beb3c7bc6707dddebb6950dc69ddb5f6c6778"},{"author":{"_account_id":27419,"name":"David Vallee Delisle","email":"me@dvd.dev","username":"dvd"},"change_message_id":"186996015e7a1405d1fd742b063f5e45ec8601a4","unresolved":true,"context_lines":[{"line_number":126,"context_line":""},{"line_number":127,"context_line":"                - name: Generating KernelArgs line with TSX"},{"line_number":128,"context_line":"                  set_fact:"},{"line_number":129,"context_line":"                    kernel_args: \"{{ kernel_args | regex_replace(\u0027 tsx\u003d(on|off)\u0027, \u0027\u0027) }} tsx\u003d{{ tsx_flag }}\""},{"line_number":130,"context_line":""},{"line_number":131,"context_line":"                - name: There\u0027s a good chance that the kernel args will change, we need to prevent already deployed computes from rebooting."},{"line_number":132,"context_line":"                  set_fact:"}],"source_content_type":"text/x-yaml","patch_set":2,"id":"f0b90da9_2a41ed35","line":129,"in_reply_to":"5daedfc3_4fe0c3f6","updated":"2021-02-17 20:26:40.000000000","message":"So it\u0027s the default on \u003e\u003d 8.3 but is it gonna show in cmdline? Or in the cpu flags? Would it be safer to force set it to off even though kernel has disabled it?","commit_id":"be2beb3c7bc6707dddebb6950dc69ddb5f6c6778"},{"author":{"_account_id":17216,"name":"Martin Schuppert","email":"mschuppert@redhat.com","username":"mcschupp"},"change_message_id":"50a9a49f1c5b1cf952e8efc6c6293bddeed45561","unresolved":true,"context_lines":[{"line_number":128,"context_line":"                  set_fact:"},{"line_number":129,"context_line":"                    kernel_args: \"{{ kernel_args | regex_replace(\u0027 tsx\u003d(on|off)\u0027, \u0027\u0027) }} tsx\u003d{{ tsx_flag }}\""},{"line_number":130,"context_line":""},{"line_number":131,"context_line":"                - name: There\u0027s a good chance that the kernel args will change, we need to prevent already deployed computes from rebooting."},{"line_number":132,"context_line":"                  set_fact:"},{"line_number":133,"context_line":"                    defer_reboot: true"},{"line_number":134,"context_line":"                  when: check_nova_conf.stat.exists"}],"source_content_type":"text/x-yaml","patch_set":2,"id":"9080b991_87a6754a","line":131,"updated":"2021-02-17 11:20:51.000000000","message":"we could also check if tsx flag in /proc/cmdline is different from tsx_flag","commit_id":"be2beb3c7bc6707dddebb6950dc69ddb5f6c6778"},{"author":{"_account_id":27419,"name":"David Vallee Delisle","email":"me@dvd.dev","username":"dvd"},"change_message_id":"186996015e7a1405d1fd742b063f5e45ec8601a4","unresolved":false,"context_lines":[{"line_number":128,"context_line":"                  set_fact:"},{"line_number":129,"context_line":"                    kernel_args: \"{{ kernel_args | regex_replace(\u0027 tsx\u003d(on|off)\u0027, \u0027\u0027) }} tsx\u003d{{ tsx_flag }}\""},{"line_number":130,"context_line":""},{"line_number":131,"context_line":"                - name: There\u0027s a good chance that the kernel args will change, we need to prevent already deployed computes from rebooting."},{"line_number":132,"context_line":"                  set_fact:"},{"line_number":133,"context_line":"                    defer_reboot: true"},{"line_number":134,"context_line":"                  when: check_nova_conf.stat.exists"}],"source_content_type":"text/x-yaml","patch_set":2,"id":"394f8d75_cc56642b","line":131,"in_reply_to":"9080b991_87a6754a","updated":"2021-02-17 20:26:40.000000000","message":"Done","commit_id":"be2beb3c7bc6707dddebb6950dc69ddb5f6c6778"},{"author":{"_account_id":17216,"name":"Martin Schuppert","email":"mschuppert@redhat.com","username":"mcschupp"},"change_message_id":"8e9df373c11f34165e0ee456a67aed9e8379739d","unresolved":true,"context_lines":[{"line_number":108,"context_line":"                  register: rhosp_release_raw"},{"line_number":109,"context_line":"                  loop:"},{"line_number":110,"context_line":"                    - {\u0027name\u0027: \u0027current\u0027, \u0027file\u0027: \u0027/etc/rhosp-release\u0027 }"},{"line_number":111,"context_line":"                    - {\u0027name\u0027: \u0027origin\u0027, \u0027file\u0027: \u0027/etc/rhosp-release.origin\u0027 }"},{"line_number":112,"context_line":"                  loop_control:"},{"line_number":113,"context_line":"                    loop_var: rhosp_release"},{"line_number":114,"context_line":"                - name: Generate rhos_release dict"}],"source_content_type":"text/x-yaml","patch_set":6,"id":"1cba8e33_8a53318c","line":111,"updated":"2021-02-22 07:55:37.000000000","message":"where do we create the origin file?\nDo we need to get current + origin, isn\u0027t it enough to just get origin information for the later steps? Basically just (cat /etc/rhosp-release.origin 2\u003e/dev/null|| cat /etc/rhosp-release)","commit_id":"e173d381ff61323977b356c0740b30bccfa58aae"},{"author":{"_account_id":27419,"name":"David Vallee Delisle","email":"me@dvd.dev","username":"dvd"},"change_message_id":"6cd5d38382cafbd2b101ec70c5a860ce5017ac2f","unresolved":true,"context_lines":[{"line_number":108,"context_line":"                  register: rhosp_release_raw"},{"line_number":109,"context_line":"                  loop:"},{"line_number":110,"context_line":"                    - {\u0027name\u0027: \u0027current\u0027, \u0027file\u0027: \u0027/etc/rhosp-release\u0027 }"},{"line_number":111,"context_line":"                    - {\u0027name\u0027: \u0027origin\u0027, \u0027file\u0027: \u0027/etc/rhosp-release.origin\u0027 }"},{"line_number":112,"context_line":"                  loop_control:"},{"line_number":113,"context_line":"                    loop_var: rhosp_release"},{"line_number":114,"context_line":"                - name: Generate rhos_release dict"}],"source_content_type":"text/x-yaml","patch_set":6,"id":"a1e01b36_f729cab4","line":111,"in_reply_to":"1cba8e33_8a53318c","updated":"2021-02-22 13:37:53.000000000","message":"I initially intended to just loop but it failed when one of the file wasn\u0027t there, so I ended up adding the || fix but this makes the loop useless. I\u0027ll remove this.","commit_id":"e173d381ff61323977b356c0740b30bccfa58aae"},{"author":{"_account_id":17216,"name":"Martin Schuppert","email":"mschuppert@redhat.com","username":"mcschupp"},"change_message_id":"8e9df373c11f34165e0ee456a67aed9e8379739d","unresolved":true,"context_lines":[{"line_number":119,"context_line":"                    loop_var: rhosp_release_stage"},{"line_number":120,"context_line":""},{"line_number":121,"context_line":"                - name: Runtime TSX flag from cmdline"},{"line_number":122,"context_line":"                  shell: grep -oP \u0027 tsx\u003d\\\\K(on|off)\u0027 /proc/cmdline"},{"line_number":123,"context_line":"                  register: tsx_flag_runtime"},{"line_number":124,"context_line":"                  ignore_errors: true"},{"line_number":125,"context_line":""}],"source_content_type":"text/x-yaml","patch_set":6,"id":"fee5c9d2_aa721113","line":122,"range":{"start_line":122,"start_character":35,"end_line":122,"end_character":36},"updated":"2021-02-22 07:55:37.000000000","message":"do we need this space?","commit_id":"e173d381ff61323977b356c0740b30bccfa58aae"},{"author":{"_account_id":27419,"name":"David Vallee Delisle","email":"me@dvd.dev","username":"dvd"},"change_message_id":"6cd5d38382cafbd2b101ec70c5a860ce5017ac2f","unresolved":true,"context_lines":[{"line_number":119,"context_line":"                    loop_var: rhosp_release_stage"},{"line_number":120,"context_line":""},{"line_number":121,"context_line":"                - name: Runtime TSX flag from cmdline"},{"line_number":122,"context_line":"                  shell: grep -oP \u0027 tsx\u003d\\\\K(on|off)\u0027 /proc/cmdline"},{"line_number":123,"context_line":"                  register: tsx_flag_runtime"},{"line_number":124,"context_line":"                  ignore_errors: true"},{"line_number":125,"context_line":""}],"source_content_type":"text/x-yaml","patch_set":6,"id":"93f09181_10737eff","line":122,"range":{"start_line":122,"start_character":35,"end_line":122,"end_character":36},"in_reply_to":"fee5c9d2_aa721113","updated":"2021-02-22 13:37:53.000000000","message":"The space is intentional, just in case there\u0027s some param blablatsx. I don\u0027t think tsx will ever be the first param there so it\u0027s, imho, safer to leave it there.","commit_id":"e173d381ff61323977b356c0740b30bccfa58aae"},{"author":{"_account_id":17216,"name":"Martin Schuppert","email":"mschuppert@redhat.com","username":"mcschupp"},"change_message_id":"8e9df373c11f34165e0ee456a67aed9e8379739d","unresolved":true,"context_lines":[{"line_number":121,"context_line":"                - name: Runtime TSX flag from cmdline"},{"line_number":122,"context_line":"                  shell: grep -oP \u0027 tsx\u003d\\\\K(on|off)\u0027 /proc/cmdline"},{"line_number":123,"context_line":"                  register: tsx_flag_runtime"},{"line_number":124,"context_line":"                  ignore_errors: true"},{"line_number":125,"context_line":""},{"line_number":126,"context_line":"                - name: Extracting TSX flag from current KernelArgs"},{"line_number":127,"context_line":"                  set_fact:"}],"source_content_type":"text/x-yaml","patch_set":6,"id":"cf73365e_ef9790d4","line":124,"updated":"2021-02-22 07:55:37.000000000","message":"instead of ignore_errors, probably better to use\n  failed_when: tsx_flag_runtime.rc \u003d\u003d 2","commit_id":"e173d381ff61323977b356c0740b30bccfa58aae"},{"author":{"_account_id":27419,"name":"David Vallee Delisle","email":"me@dvd.dev","username":"dvd"},"change_message_id":"6cd5d38382cafbd2b101ec70c5a860ce5017ac2f","unresolved":false,"context_lines":[{"line_number":121,"context_line":"                - name: Runtime TSX flag from cmdline"},{"line_number":122,"context_line":"                  shell: grep -oP \u0027 tsx\u003d\\\\K(on|off)\u0027 /proc/cmdline"},{"line_number":123,"context_line":"                  register: tsx_flag_runtime"},{"line_number":124,"context_line":"                  ignore_errors: true"},{"line_number":125,"context_line":""},{"line_number":126,"context_line":"                - name: Extracting TSX flag from current KernelArgs"},{"line_number":127,"context_line":"                  set_fact:"}],"source_content_type":"text/x-yaml","patch_set":6,"id":"7d0aef4f_732b58c8","line":124,"in_reply_to":"cf73365e_ef9790d4","updated":"2021-02-22 13:37:53.000000000","message":"Done","commit_id":"e173d381ff61323977b356c0740b30bccfa58aae"},{"author":{"_account_id":17216,"name":"Martin Schuppert","email":"mschuppert@redhat.com","username":"mcschupp"},"change_message_id":"8e9df373c11f34165e0ee456a67aed9e8379739d","unresolved":true,"context_lines":[{"line_number":125,"context_line":""},{"line_number":126,"context_line":"                - name: Extracting TSX flag from current KernelArgs"},{"line_number":127,"context_line":"                  set_fact:"},{"line_number":128,"context_line":"                    tsx_flag_kernel_args: \"{{ kernel_args | regex_search(\u0027 tsx\u003d(on|off)\u0027, \u0027\\\\1\u0027) | default([\u0027\u0027], true) | first }}\""},{"line_number":129,"context_line":""},{"line_number":130,"context_line":"                - name: Check if cpu supports tsx"},{"line_number":131,"context_line":"                  shell: |"}],"source_content_type":"text/x-yaml","patch_set":6,"id":"cb9564ab_51353313","line":128,"range":{"start_line":128,"start_character":74,"end_line":128,"end_character":75},"updated":"2021-02-22 07:55:37.000000000","message":"do we need this space?","commit_id":"e173d381ff61323977b356c0740b30bccfa58aae"},{"author":{"_account_id":27419,"name":"David Vallee Delisle","email":"me@dvd.dev","username":"dvd"},"change_message_id":"6cd5d38382cafbd2b101ec70c5a860ce5017ac2f","unresolved":true,"context_lines":[{"line_number":125,"context_line":""},{"line_number":126,"context_line":"                - name: Extracting TSX flag from current KernelArgs"},{"line_number":127,"context_line":"                  set_fact:"},{"line_number":128,"context_line":"                    tsx_flag_kernel_args: \"{{ kernel_args | regex_search(\u0027 tsx\u003d(on|off)\u0027, \u0027\\\\1\u0027) | default([\u0027\u0027], true) | first }}\""},{"line_number":129,"context_line":""},{"line_number":130,"context_line":"                - name: Check if cpu supports tsx"},{"line_number":131,"context_line":"                  shell: |"}],"source_content_type":"text/x-yaml","patch_set":6,"id":"b59c4ff6_a5545bcc","line":128,"range":{"start_line":128,"start_character":74,"end_line":128,"end_character":75},"in_reply_to":"cb9564ab_51353313","updated":"2021-02-22 13:37:53.000000000","message":"Same as above","commit_id":"e173d381ff61323977b356c0740b30bccfa58aae"},{"author":{"_account_id":17216,"name":"Martin Schuppert","email":"mschuppert@redhat.com","username":"mcschupp"},"change_message_id":"8e9df373c11f34165e0ee456a67aed9e8379739d","unresolved":true,"context_lines":[{"line_number":138,"context_line":"                    path: /var/lib/config-data/puppet-generated/nova_libvirt/etc/nova/nova.conf"},{"line_number":139,"context_line":"                  register: check_nova_conf"},{"line_number":140,"context_line":""},{"line_number":141,"context_line":"                - name: Enabled TSX when CPU supports TSX and we are on RHEL8.2"},{"line_number":142,"context_line":"                  when:"},{"line_number":143,"context_line":"                   - \u0027not \"tsx\u003d\" in kernel_args \u0027"},{"line_number":144,"context_line":"                   - tsx_cpu_support.rc \u003d\u003d 0"}],"source_content_type":"text/x-yaml","patch_set":6,"id":"e5de9300_3c2fc7ce","line":141,"updated":"2021-02-22 07:55:37.000000000","message":"we should update this to also mention the rhos_release.origin case","commit_id":"e173d381ff61323977b356c0740b30bccfa58aae"},{"author":{"_account_id":27419,"name":"David Vallee Delisle","email":"me@dvd.dev","username":"dvd"},"change_message_id":"6cd5d38382cafbd2b101ec70c5a860ce5017ac2f","unresolved":false,"context_lines":[{"line_number":138,"context_line":"                    path: /var/lib/config-data/puppet-generated/nova_libvirt/etc/nova/nova.conf"},{"line_number":139,"context_line":"                  register: check_nova_conf"},{"line_number":140,"context_line":""},{"line_number":141,"context_line":"                - name: Enabled TSX when CPU supports TSX and we are on RHEL8.2"},{"line_number":142,"context_line":"                  when:"},{"line_number":143,"context_line":"                   - \u0027not \"tsx\u003d\" in kernel_args \u0027"},{"line_number":144,"context_line":"                   - tsx_cpu_support.rc \u003d\u003d 0"}],"source_content_type":"text/x-yaml","patch_set":6,"id":"a49930c1_6f7539c0","line":141,"in_reply_to":"e5de9300_3c2fc7ce","updated":"2021-02-22 13:37:53.000000000","message":"Done","commit_id":"e173d381ff61323977b356c0740b30bccfa58aae"},{"author":{"_account_id":17216,"name":"Martin Schuppert","email":"mschuppert@redhat.com","username":"mcschupp"},"change_message_id":"8e9df373c11f34165e0ee456a67aed9e8379739d","unresolved":true,"context_lines":[{"line_number":143,"context_line":"                   - \u0027not \"tsx\u003d\" in kernel_args \u0027"},{"line_number":144,"context_line":"                   - tsx_cpu_support.rc \u003d\u003d 0"},{"line_number":145,"context_line":"                   - ansible_distribution_version is version(8.2, \u0027\u003c\u003d\u0027) or"},{"line_number":146,"context_line":"                     (ansible_distribution_version is version(8.4, \u0027\u003c\u003d\u0027) and rhosp_release.origin is version(\u002716.2.0\u0027, \u0027lt\u0027))"},{"line_number":147,"context_line":"                  set_fact:"},{"line_number":148,"context_line":"                    tsx_flag: \"on\""},{"line_number":149,"context_line":""}],"source_content_type":"text/x-yaml","patch_set":6,"id":"fd0c7844_92e9eb25","line":146,"updated":"2021-02-22 07:55:37.000000000","message":"shouldn\u0027t this be ansible_distribution_version is version(8.3, \u0027\u003e\u003d\u0027) to check for 8.3 or later to also be valid for later releases?","commit_id":"e173d381ff61323977b356c0740b30bccfa58aae"},{"author":{"_account_id":27419,"name":"David Vallee Delisle","email":"me@dvd.dev","username":"dvd"},"change_message_id":"6cd5d38382cafbd2b101ec70c5a860ce5017ac2f","unresolved":false,"context_lines":[{"line_number":143,"context_line":"                   - \u0027not \"tsx\u003d\" in kernel_args \u0027"},{"line_number":144,"context_line":"                   - tsx_cpu_support.rc \u003d\u003d 0"},{"line_number":145,"context_line":"                   - ansible_distribution_version is version(8.2, \u0027\u003c\u003d\u0027) or"},{"line_number":146,"context_line":"                     (ansible_distribution_version is version(8.4, \u0027\u003c\u003d\u0027) and rhosp_release.origin is version(\u002716.2.0\u0027, \u0027lt\u0027))"},{"line_number":147,"context_line":"                  set_fact:"},{"line_number":148,"context_line":"                    tsx_flag: \"on\""},{"line_number":149,"context_line":""}],"source_content_type":"text/x-yaml","patch_set":6,"id":"57d989af_49d7297b","line":146,"in_reply_to":"fd0c7844_92e9eb25","updated":"2021-02-22 13:37:53.000000000","message":"Done","commit_id":"e173d381ff61323977b356c0740b30bccfa58aae"},{"author":{"_account_id":17216,"name":"Martin Schuppert","email":"mschuppert@redhat.com","username":"mcschupp"},"change_message_id":"8e9df373c11f34165e0ee456a67aed9e8379739d","unresolved":true,"context_lines":[{"line_number":164,"context_line":""},{"line_number":165,"context_line":"                - name: Generating KernelArgs line with TSX"},{"line_number":166,"context_line":"                  set_fact:"},{"line_number":167,"context_line":"                    kernel_args: \"{{ kernel_args | regex_replace(\u0027 tsx\u003d(on|off)\u0027, \u0027\u0027) }} tsx\u003d{{ tsx_flag }}\""},{"line_number":168,"context_line":"                  when:"},{"line_number":169,"context_line":"                   # if user has already added a tsx flag in kernel_args, we don\u0027t want to overwrite it"},{"line_number":170,"context_line":"                   - \u0027not \"tsx\u003d\" in kernel_args\u0027"}],"source_content_type":"text/x-yaml","patch_set":6,"id":"53dc3ae3_fa638da9","line":167,"range":{"start_line":167,"start_character":66,"end_line":167,"end_character":67},"updated":"2021-02-22 07:55:37.000000000","message":"do we need this space?","commit_id":"e173d381ff61323977b356c0740b30bccfa58aae"},{"author":{"_account_id":27419,"name":"David Vallee Delisle","email":"me@dvd.dev","username":"dvd"},"change_message_id":"6cd5d38382cafbd2b101ec70c5a860ce5017ac2f","unresolved":true,"context_lines":[{"line_number":164,"context_line":""},{"line_number":165,"context_line":"                - name: Generating KernelArgs line with TSX"},{"line_number":166,"context_line":"                  set_fact:"},{"line_number":167,"context_line":"                    kernel_args: \"{{ kernel_args | regex_replace(\u0027 tsx\u003d(on|off)\u0027, \u0027\u0027) }} tsx\u003d{{ tsx_flag }}\""},{"line_number":168,"context_line":"                  when:"},{"line_number":169,"context_line":"                   # if user has already added a tsx flag in kernel_args, we don\u0027t want to overwrite it"},{"line_number":170,"context_line":"                   - \u0027not \"tsx\u003d\" in kernel_args\u0027"}],"source_content_type":"text/x-yaml","patch_set":6,"id":"5bf51021_feb318d3","line":167,"range":{"start_line":167,"start_character":66,"end_line":167,"end_character":67},"in_reply_to":"53dc3ae3_fa638da9","updated":"2021-02-22 13:37:53.000000000","message":"Same as above","commit_id":"e173d381ff61323977b356c0740b30bccfa58aae"},{"author":{"_account_id":27419,"name":"David Vallee Delisle","email":"me@dvd.dev","username":"dvd"},"change_message_id":"e185f273070444e3e6d3f4011264cd9a7d94a47c","unresolved":false,"context_lines":[{"line_number":164,"context_line":""},{"line_number":165,"context_line":"                - name: Generating KernelArgs line with TSX"},{"line_number":166,"context_line":"                  set_fact:"},{"line_number":167,"context_line":"                    kernel_args: \"{{ kernel_args | regex_replace(\u0027 tsx\u003d(on|off)\u0027, \u0027\u0027) }} tsx\u003d{{ tsx_flag }}\""},{"line_number":168,"context_line":"                  when:"},{"line_number":169,"context_line":"                   # if user has already added a tsx flag in kernel_args, we don\u0027t want to overwrite it"},{"line_number":170,"context_line":"                   - \u0027not \"tsx\u003d\" in kernel_args\u0027"}],"source_content_type":"text/x-yaml","patch_set":6,"id":"278a76c3_fd0b2aaf","line":167,"range":{"start_line":167,"start_character":66,"end_line":167,"end_character":67},"in_reply_to":"5bf51021_feb318d3","updated":"2021-03-10 03:33:01.000000000","message":"Done","commit_id":"e173d381ff61323977b356c0740b30bccfa58aae"},{"author":{"_account_id":17216,"name":"Martin Schuppert","email":"mschuppert@redhat.com","username":"mcschupp"},"change_message_id":"8e9df373c11f34165e0ee456a67aed9e8379739d","unresolved":true,"context_lines":[{"line_number":178,"context_line":"                    # We want to defer only if we automatically set it"},{"line_number":179,"context_line":"                    - tsx_flag !\u003d tsx_flag_runtime.stdout"},{"line_number":180,"context_line":"                    # We don\u0027t want to defer reboot if tsx flag was user provided"},{"line_number":181,"context_line":"                    - tsx_flag_kernel_args | length \u003c 2"},{"line_number":182,"context_line":"            - name: Print tripleo-kernel arguments"},{"line_number":183,"context_line":"              debug:"},{"line_number":184,"context_line":"                msg: \"tripleo-kernel will run with defer_reboot {{ defer_reboot }} to install these kernel args: {{ kernel_args }}\""}],"source_content_type":"text/x-yaml","patch_set":6,"id":"68f81d25_a30e43c2","line":181,"updated":"2021-02-22 07:55:37.000000000","message":"why do we check here for length \u003c 2 and above with length \u003e 1 to see if user has provided the flag?","commit_id":"e173d381ff61323977b356c0740b30bccfa58aae"},{"author":{"_account_id":27419,"name":"David Vallee Delisle","email":"me@dvd.dev","username":"dvd"},"change_message_id":"6cd5d38382cafbd2b101ec70c5a860ce5017ac2f","unresolved":true,"context_lines":[{"line_number":178,"context_line":"                    # We want to defer only if we automatically set it"},{"line_number":179,"context_line":"                    - tsx_flag !\u003d tsx_flag_runtime.stdout"},{"line_number":180,"context_line":"                    # We don\u0027t want to defer reboot if tsx flag was user provided"},{"line_number":181,"context_line":"                    - tsx_flag_kernel_args | length \u003c 2"},{"line_number":182,"context_line":"            - name: Print tripleo-kernel arguments"},{"line_number":183,"context_line":"              debug:"},{"line_number":184,"context_line":"                msg: \"tripleo-kernel will run with defer_reboot {{ defer_reboot }} to install these kernel args: {{ kernel_args }}\""}],"source_content_type":"text/x-yaml","patch_set":6,"id":"5398327d_798d6c7e","line":181,"in_reply_to":"68f81d25_a30e43c2","updated":"2021-02-22 13:37:53.000000000","message":"This is because this line will return \u0027 \u0027 if the tsx flag doesn\u0027t exist, and will return (on|off) if it does exist. Above, we trigger if the flag exists and here we trigger if it doesn\u0027t.\n\n    tsx_flag_kernel_args: \"{{ kernel_args | regex_search(\u0027 tsx\u003d(on|off)\u0027, \u0027\\\\1\u0027) | default([\u0027\u0027], true) | first }}\"","commit_id":"e173d381ff61323977b356c0740b30bccfa58aae"},{"author":{"_account_id":17216,"name":"Martin Schuppert","email":"mschuppert@redhat.com","username":"mcschupp"},"change_message_id":"c4bd5d59dfedcd3b88efec645c79c0a7fb8a3726","unresolved":true,"context_lines":[{"line_number":99,"context_line":"              when:"},{"line_number":100,"context_line":"                - \u0027\"nova_libvirt\" in node_services\u0027"},{"line_number":101,"context_line":"              block:"},{"line_number":102,"context_line":"                - name: Setting facts based on undercloud hostvars"},{"line_number":103,"context_line":"                  set_fact:"},{"line_number":104,"context_line":"                    overcloud_keystone_url: \"{{ hostvars[\u0027undercloud\u0027][\u0027overcloud_keystone_url\u0027] }}\""},{"line_number":105,"context_line":"                    overcloud_admin_password: \"{{ hostvars[\u0027undercloud\u0027][\u0027overcloud_admin_password\u0027] }}\""},{"line_number":106,"context_line":"                    project_name: \"{{ hostvars[\u0027undercloud\u0027][\u0027project_name\u0027] }}\""},{"line_number":107,"context_line":"                    username: \"{{ hostvars[\u0027undercloud\u0027][\u0027username\u0027] }}\""},{"line_number":108,"context_line":"                - name: Check if any VMs are provisioned. If we have VMs, we consider this environment as already deployed."},{"line_number":109,"context_line":"                  shell: \u003e-"},{"line_number":110,"context_line":"                    openstack"},{"line_number":111,"context_line":"                    --os-user-domain-name\u003dDefault"},{"line_number":112,"context_line":"                    --os-project-domain-name\u003dDefault"},{"line_number":113,"context_line":"                    --os-auth-url\u003d{{ overcloud_keystone_url }}"},{"line_number":114,"context_line":"                    --os-project-name\u003d{{ project_name }}"},{"line_number":115,"context_line":"                    --os-auth-type\u003dpassword"},{"line_number":116,"context_line":"                    --os-password\u003d{{ overcloud_admin_password }}"},{"line_number":117,"context_line":"                    --os-username\u003d{{ username }}"},{"line_number":118,"context_line":"                    server list --all --long -c Host -c Status -f value"},{"line_number":119,"context_line":"                  register: overcloud_server_list"},{"line_number":120,"context_line":"                  failed_when: overcloud_server_list.rc \u003e 1"}],"source_content_type":"text/x-yaml","patch_set":14,"id":"1102e167_ce361af8","line":117,"range":{"start_line":102,"start_character":0,"end_line":117,"end_character":48},"updated":"2021-03-01 11:02:39.000000000","message":"instead of all this we could add RootStackName parameter and just set OS_CLOUD env variable on the task:\n\n  RootStackName:\n    description: The name of the stack/plan.\n    type: string\n\n  environment:\n    OS_CLOUD: {get_param: RootStackName}","commit_id":"b58eb403246ca05434f2dbf33d9a7bf9785a2833"},{"author":{"_account_id":27419,"name":"David Vallee Delisle","email":"me@dvd.dev","username":"dvd"},"change_message_id":"e185f273070444e3e6d3f4011264cd9a7d94a47c","unresolved":true,"context_lines":[{"line_number":99,"context_line":"              when:"},{"line_number":100,"context_line":"                - \u0027\"nova_libvirt\" in node_services\u0027"},{"line_number":101,"context_line":"              block:"},{"line_number":102,"context_line":"                - name: Setting facts based on undercloud hostvars"},{"line_number":103,"context_line":"                  set_fact:"},{"line_number":104,"context_line":"                    overcloud_keystone_url: \"{{ hostvars[\u0027undercloud\u0027][\u0027overcloud_keystone_url\u0027] }}\""},{"line_number":105,"context_line":"                    overcloud_admin_password: \"{{ hostvars[\u0027undercloud\u0027][\u0027overcloud_admin_password\u0027] }}\""},{"line_number":106,"context_line":"                    project_name: \"{{ hostvars[\u0027undercloud\u0027][\u0027project_name\u0027] }}\""},{"line_number":107,"context_line":"                    username: \"{{ hostvars[\u0027undercloud\u0027][\u0027username\u0027] }}\""},{"line_number":108,"context_line":"                - name: Check if any VMs are provisioned. If we have VMs, we consider this environment as already deployed."},{"line_number":109,"context_line":"                  shell: \u003e-"},{"line_number":110,"context_line":"                    openstack"},{"line_number":111,"context_line":"                    --os-user-domain-name\u003dDefault"},{"line_number":112,"context_line":"                    --os-project-domain-name\u003dDefault"},{"line_number":113,"context_line":"                    --os-auth-url\u003d{{ overcloud_keystone_url }}"},{"line_number":114,"context_line":"                    --os-project-name\u003d{{ project_name }}"},{"line_number":115,"context_line":"                    --os-auth-type\u003dpassword"},{"line_number":116,"context_line":"                    --os-password\u003d{{ overcloud_admin_password }}"},{"line_number":117,"context_line":"                    --os-username\u003d{{ username }}"},{"line_number":118,"context_line":"                    server list --all --long -c Host -c Status -f value"},{"line_number":119,"context_line":"                  register: overcloud_server_list"},{"line_number":120,"context_line":"                  failed_when: overcloud_server_list.rc \u003e 1"}],"source_content_type":"text/x-yaml","patch_set":14,"id":"3bd25ea0_1251b473","line":117,"range":{"start_line":102,"start_character":0,"end_line":117,"end_character":48},"in_reply_to":"1102e167_ce361af8","updated":"2021-03-10 03:33:01.000000000","message":"Good idea, I\u0027m testing this","commit_id":"b58eb403246ca05434f2dbf33d9a7bf9785a2833"},{"author":{"_account_id":17216,"name":"Martin Schuppert","email":"mschuppert@redhat.com","username":"mcschupp"},"change_message_id":"c4bd5d59dfedcd3b88efec645c79c0a7fb8a3726","unresolved":true,"context_lines":[{"line_number":115,"context_line":"                    --os-auth-type\u003dpassword"},{"line_number":116,"context_line":"                    --os-password\u003d{{ overcloud_admin_password }}"},{"line_number":117,"context_line":"                    --os-username\u003d{{ username }}"},{"line_number":118,"context_line":"                    server list --all --long -c Host -c Status -f value"},{"line_number":119,"context_line":"                  register: overcloud_server_list"},{"line_number":120,"context_line":"                  failed_when: overcloud_server_list.rc \u003e 1"},{"line_number":121,"context_line":"                  delegate_to: undercloud"}],"source_content_type":"text/x-yaml","patch_set":14,"id":"b8d446de_10c5771c","line":118,"updated":"2021-03-01 11:02:39.000000000","message":"should be --all-projects and we could probably do with --limit 1","commit_id":"b58eb403246ca05434f2dbf33d9a7bf9785a2833"},{"author":{"_account_id":27419,"name":"David Vallee Delisle","email":"me@dvd.dev","username":"dvd"},"change_message_id":"e185f273070444e3e6d3f4011264cd9a7d94a47c","unresolved":false,"context_lines":[{"line_number":115,"context_line":"                    --os-auth-type\u003dpassword"},{"line_number":116,"context_line":"                    --os-password\u003d{{ overcloud_admin_password }}"},{"line_number":117,"context_line":"                    --os-username\u003d{{ username }}"},{"line_number":118,"context_line":"                    server list --all --long -c Host -c Status -f value"},{"line_number":119,"context_line":"                  register: overcloud_server_list"},{"line_number":120,"context_line":"                  failed_when: overcloud_server_list.rc \u003e 1"},{"line_number":121,"context_line":"                  delegate_to: undercloud"}],"source_content_type":"text/x-yaml","patch_set":14,"id":"64aa9a85_b8674468","line":118,"in_reply_to":"b8d446de_10c5771c","updated":"2021-03-10 03:33:01.000000000","message":"Done","commit_id":"b58eb403246ca05434f2dbf33d9a7bf9785a2833"},{"author":{"_account_id":17216,"name":"Martin Schuppert","email":"mschuppert@redhat.com","username":"mcschupp"},"change_message_id":"c4bd5d59dfedcd3b88efec645c79c0a7fb8a3726","unresolved":true,"context_lines":[{"line_number":117,"context_line":"                    --os-username\u003d{{ username }}"},{"line_number":118,"context_line":"                    server list --all --long -c Host -c Status -f value"},{"line_number":119,"context_line":"                  register: overcloud_server_list"},{"line_number":120,"context_line":"                  failed_when: overcloud_server_list.rc \u003e 1"},{"line_number":121,"context_line":"                  delegate_to: undercloud"},{"line_number":122,"context_line":"                  run_once: yes"},{"line_number":123,"context_line":"                  when: overcloud_keystone_url is defined"}],"source_content_type":"text/x-yaml","patch_set":14,"id":"0ddc84bf_bb2d6ea2","line":120,"updated":"2021-03-01 11:02:39.000000000","message":"why \u003e 1?","commit_id":"b58eb403246ca05434f2dbf33d9a7bf9785a2833"},{"author":{"_account_id":27419,"name":"David Vallee Delisle","email":"me@dvd.dev","username":"dvd"},"change_message_id":"e185f273070444e3e6d3f4011264cd9a7d94a47c","unresolved":false,"context_lines":[{"line_number":117,"context_line":"                    --os-username\u003d{{ username }}"},{"line_number":118,"context_line":"                    server list --all --long -c Host -c Status -f value"},{"line_number":119,"context_line":"                  register: overcloud_server_list"},{"line_number":120,"context_line":"                  failed_when: overcloud_server_list.rc \u003e 1"},{"line_number":121,"context_line":"                  delegate_to: undercloud"},{"line_number":122,"context_line":"                  run_once: yes"},{"line_number":123,"context_line":"                  when: overcloud_keystone_url is defined"}],"source_content_type":"text/x-yaml","patch_set":14,"id":"c8b887af_2b538446","line":120,"in_reply_to":"0ddc84bf_bb2d6ea2","updated":"2021-03-10 03:33:01.000000000","message":"Done","commit_id":"b58eb403246ca05434f2dbf33d9a7bf9785a2833"},{"author":{"_account_id":17216,"name":"Martin Schuppert","email":"mschuppert@redhat.com","username":"mcschupp"},"change_message_id":"c4bd5d59dfedcd3b88efec645c79c0a7fb8a3726","unresolved":true,"context_lines":[{"line_number":121,"context_line":"                  delegate_to: undercloud"},{"line_number":122,"context_line":"                  run_once: yes"},{"line_number":123,"context_line":"                  when: overcloud_keystone_url is defined"},{"line_number":124,"context_line":"                - name: Removing previously set facts"},{"line_number":125,"context_line":"                  set_fact:"},{"line_number":126,"context_line":"                    overcloud_keystone_url:"},{"line_number":127,"context_line":"                    overcloud_admin_password:"},{"line_number":128,"context_line":"                    project_name:"},{"line_number":129,"context_line":"                    username:"},{"line_number":130,"context_line":"                - name: Check rhosp-releases"},{"line_number":131,"context_line":"                  shell: \u0027grep -oP \" \\K1[6-9].[0-9.]+\" /etc/rhosp-release.origin\u0027"},{"line_number":132,"context_line":"                  register: rhosp_release_raw"}],"source_content_type":"text/x-yaml","patch_set":14,"id":"56e2f645_9498e04c","line":129,"range":{"start_line":124,"start_character":1,"end_line":129,"end_character":29},"updated":"2021-03-01 11:02:39.000000000","message":"using the task environment variable won\u0027t required removing those facts","commit_id":"b58eb403246ca05434f2dbf33d9a7bf9785a2833"},{"author":{"_account_id":27419,"name":"David Vallee Delisle","email":"me@dvd.dev","username":"dvd"},"change_message_id":"e185f273070444e3e6d3f4011264cd9a7d94a47c","unresolved":false,"context_lines":[{"line_number":121,"context_line":"                  delegate_to: undercloud"},{"line_number":122,"context_line":"                  run_once: yes"},{"line_number":123,"context_line":"                  when: overcloud_keystone_url is defined"},{"line_number":124,"context_line":"                - name: Removing previously set facts"},{"line_number":125,"context_line":"                  set_fact:"},{"line_number":126,"context_line":"                    overcloud_keystone_url:"},{"line_number":127,"context_line":"                    overcloud_admin_password:"},{"line_number":128,"context_line":"                    project_name:"},{"line_number":129,"context_line":"                    username:"},{"line_number":130,"context_line":"                - name: Check rhosp-releases"},{"line_number":131,"context_line":"                  shell: \u0027grep -oP \" \\K1[6-9].[0-9.]+\" /etc/rhosp-release.origin\u0027"},{"line_number":132,"context_line":"                  register: rhosp_release_raw"}],"source_content_type":"text/x-yaml","patch_set":14,"id":"757245d3_a840c11e","line":129,"range":{"start_line":124,"start_character":1,"end_line":129,"end_character":29},"in_reply_to":"56e2f645_9498e04c","updated":"2021-03-10 03:33:01.000000000","message":"Done","commit_id":"b58eb403246ca05434f2dbf33d9a7bf9785a2833"},{"author":{"_account_id":17216,"name":"Martin Schuppert","email":"mschuppert@redhat.com","username":"mcschupp"},"change_message_id":"c4bd5d59dfedcd3b88efec645c79c0a7fb8a3726","unresolved":true,"context_lines":[{"line_number":148,"context_line":""},{"line_number":149,"context_line":"                - name: Extracting TSX flag from current KernelArgs"},{"line_number":150,"context_line":"                  set_fact:"},{"line_number":151,"context_line":"                    tsx_flag_kernel_args: \"{{ kernel_args | regex_search(\u0027(?:\\\\s|^)tsx\u003d(on|off)\u0027, \u0027\\\\1\u0027) | default([\u0027\u0027], true) | first }}\""},{"line_number":152,"context_line":"                    tsx_computes: []"},{"line_number":153,"context_line":""},{"line_number":154,"context_line":"                - name: Build a list of computes with either TSX unspecified or on"}],"source_content_type":"text/x-yaml","patch_set":14,"id":"381cd13a_4e121910","line":151,"updated":"2021-03-01 11:02:39.000000000","message":"as mentioned bellow, we probably want to do this as the first thing at the top, if set we just skip all automation and set what the user specified?","commit_id":"b58eb403246ca05434f2dbf33d9a7bf9785a2833"},{"author":{"_account_id":27419,"name":"David Vallee Delisle","email":"me@dvd.dev","username":"dvd"},"change_message_id":"e185f273070444e3e6d3f4011264cd9a7d94a47c","unresolved":false,"context_lines":[{"line_number":148,"context_line":""},{"line_number":149,"context_line":"                - name: Extracting TSX flag from current KernelArgs"},{"line_number":150,"context_line":"                  set_fact:"},{"line_number":151,"context_line":"                    tsx_flag_kernel_args: \"{{ kernel_args | regex_search(\u0027(?:\\\\s|^)tsx\u003d(on|off)\u0027, \u0027\\\\1\u0027) | default([\u0027\u0027], true) | first }}\""},{"line_number":152,"context_line":"                    tsx_computes: []"},{"line_number":153,"context_line":""},{"line_number":154,"context_line":"                - name: Build a list of computes with either TSX unspecified or on"}],"source_content_type":"text/x-yaml","patch_set":14,"id":"a12ae10f_4d7f35e0","line":151,"in_reply_to":"381cd13a_4e121910","updated":"2021-03-10 03:33:01.000000000","message":"Done","commit_id":"b58eb403246ca05434f2dbf33d9a7bf9785a2833"},{"author":{"_account_id":17216,"name":"Martin Schuppert","email":"mschuppert@redhat.com","username":"mcschupp"},"change_message_id":"c4bd5d59dfedcd3b88efec645c79c0a7fb8a3726","unresolved":true,"context_lines":[{"line_number":182,"context_line":"                   - tsx_flag_runtime.rc \u003e 0"},{"line_number":183,"context_line":"                   - tsx_cpu_support.rc \u003d\u003d 0"},{"line_number":184,"context_line":"                   - (ansible_distribution_version is version(8.2, \u0027\u003c\u003d\u0027) and"},{"line_number":185,"context_line":"                      overcloud_keystone_url is defined and"},{"line_number":186,"context_line":"                      overcloud_server_list.stdout_lines | length \u003e 0) or"},{"line_number":187,"context_line":"                     (ansible_distribution_version is version(8.3, \u0027\u003e\u003d\u0027) and"},{"line_number":188,"context_line":"                      rhosp_release is version(\u002716.2.0\u0027, \u0027\u003c\u003d\u0027) and"}],"source_content_type":"text/x-yaml","patch_set":14,"id":"3ab89d06_9bd1b877","line":185,"updated":"2021-03-01 11:02:39.000000000","message":"is this to identify if the overcloud deployment was successful at any time?","commit_id":"b58eb403246ca05434f2dbf33d9a7bf9785a2833"},{"author":{"_account_id":27419,"name":"David Vallee Delisle","email":"me@dvd.dev","username":"dvd"},"change_message_id":"e185f273070444e3e6d3f4011264cd9a7d94a47c","unresolved":true,"context_lines":[{"line_number":182,"context_line":"                   - tsx_flag_runtime.rc \u003e 0"},{"line_number":183,"context_line":"                   - tsx_cpu_support.rc \u003d\u003d 0"},{"line_number":184,"context_line":"                   - (ansible_distribution_version is version(8.2, \u0027\u003c\u003d\u0027) and"},{"line_number":185,"context_line":"                      overcloud_keystone_url is defined and"},{"line_number":186,"context_line":"                      overcloud_server_list.stdout_lines | length \u003e 0) or"},{"line_number":187,"context_line":"                     (ansible_distribution_version is version(8.3, \u0027\u003e\u003d\u0027) and"},{"line_number":188,"context_line":"                      rhosp_release is version(\u002716.2.0\u0027, \u0027\u003c\u003d\u0027) and"}],"source_content_type":"text/x-yaml","patch_set":14,"id":"01f72b49_932903ef","line":185,"in_reply_to":"3ab89d06_9bd1b877","updated":"2021-03-10 03:33:01.000000000","message":"Yes, this is to validate if overcloud_server_list is defined. I could actually replace that for this instead.","commit_id":"b58eb403246ca05434f2dbf33d9a7bf9785a2833"},{"author":{"_account_id":17216,"name":"Martin Schuppert","email":"mschuppert@redhat.com","username":"mcschupp"},"change_message_id":"c4bd5d59dfedcd3b88efec645c79c0a7fb8a3726","unresolved":true,"context_lines":[{"line_number":185,"context_line":"                      overcloud_keystone_url is defined and"},{"line_number":186,"context_line":"                      overcloud_server_list.stdout_lines | length \u003e 0) or"},{"line_number":187,"context_line":"                     (ansible_distribution_version is version(8.3, \u0027\u003e\u003d\u0027) and"},{"line_number":188,"context_line":"                      rhosp_release is version(\u002716.2.0\u0027, \u0027\u003c\u003d\u0027) and"},{"line_number":189,"context_line":"                      rhosp_release is version(\u002716.1.0\u0027, \u0027\u003e\u003d\u0027))"},{"line_number":190,"context_line":"                  set_fact:"},{"line_number":191,"context_line":"                    tsx_flag: \"on\""},{"line_number":192,"context_line":""}],"source_content_type":"text/x-yaml","patch_set":14,"id":"b5ee8d52_3c778019","line":189,"range":{"start_line":188,"start_character":62,"end_line":189,"end_character":62},"updated":"2021-03-01 11:02:39.000000000","message":"why do we need this and not just \u003c\u003d 16.2?","commit_id":"b58eb403246ca05434f2dbf33d9a7bf9785a2833"},{"author":{"_account_id":27419,"name":"David Vallee Delisle","email":"me@dvd.dev","username":"dvd"},"change_message_id":"e185f273070444e3e6d3f4011264cd9a7d94a47c","unresolved":true,"context_lines":[{"line_number":185,"context_line":"                      overcloud_keystone_url is defined and"},{"line_number":186,"context_line":"                      overcloud_server_list.stdout_lines | length \u003e 0) or"},{"line_number":187,"context_line":"                     (ansible_distribution_version is version(8.3, \u0027\u003e\u003d\u0027) and"},{"line_number":188,"context_line":"                      rhosp_release is version(\u002716.2.0\u0027, \u0027\u003c\u003d\u0027) and"},{"line_number":189,"context_line":"                      rhosp_release is version(\u002716.1.0\u0027, \u0027\u003e\u003d\u0027))"},{"line_number":190,"context_line":"                  set_fact:"},{"line_number":191,"context_line":"                    tsx_flag: \"on\""},{"line_number":192,"context_line":""}],"source_content_type":"text/x-yaml","patch_set":14,"id":"6c273875_37c91145","line":189,"range":{"start_line":188,"start_character":62,"end_line":189,"end_character":62},"in_reply_to":"b5ee8d52_3c778019","updated":"2021-03-10 03:33:01.000000000","message":"To prevent this code from running on 16.0? I can remove this, might be useless here.","commit_id":"b58eb403246ca05434f2dbf33d9a7bf9785a2833"},{"author":{"_account_id":17216,"name":"Martin Schuppert","email":"mschuppert@redhat.com","username":"mcschupp"},"change_message_id":"c4bd5d59dfedcd3b88efec645c79c0a7fb8a3726","unresolved":true,"context_lines":[{"line_number":199,"context_line":"                    # and it\u0027s not the same as we think it should be"},{"line_number":200,"context_line":"                    - tsx_flag_kernel_args !\u003d tsx_flag"},{"line_number":201,"context_line":""},{"line_number":202,"context_line":"                - name: Check if operator provided a flag"},{"line_number":203,"context_line":"                  when:"},{"line_number":204,"context_line":"                    - tsx_flag_kernel_args | length \u003e 1"},{"line_number":205,"context_line":"                  set_fact:"},{"line_number":206,"context_line":"                    tsx_flag: tsx_flag_kernel_args"},{"line_number":207,"context_line":""},{"line_number":208,"context_line":"                - name: Generating KernelArgs line with TSX"},{"line_number":209,"context_line":"                  set_fact:"}],"source_content_type":"text/x-yaml","patch_set":14,"id":"b93ae6da_6a360562","line":206,"range":{"start_line":202,"start_character":0,"end_line":206,"end_character":50},"updated":"2021-03-01 11:02:39.000000000","message":"how about we check this as the first thing at the top and if the user provided tsx in the KernalArgs parameter we just skip all automation and set what the user specified?","commit_id":"b58eb403246ca05434f2dbf33d9a7bf9785a2833"},{"author":{"_account_id":27419,"name":"David Vallee Delisle","email":"me@dvd.dev","username":"dvd"},"change_message_id":"e185f273070444e3e6d3f4011264cd9a7d94a47c","unresolved":false,"context_lines":[{"line_number":199,"context_line":"                    # and it\u0027s not the same as we think it should be"},{"line_number":200,"context_line":"                    - tsx_flag_kernel_args !\u003d tsx_flag"},{"line_number":201,"context_line":""},{"line_number":202,"context_line":"                - name: Check if operator provided a flag"},{"line_number":203,"context_line":"                  when:"},{"line_number":204,"context_line":"                    - tsx_flag_kernel_args | length \u003e 1"},{"line_number":205,"context_line":"                  set_fact:"},{"line_number":206,"context_line":"                    tsx_flag: tsx_flag_kernel_args"},{"line_number":207,"context_line":""},{"line_number":208,"context_line":"                - name: Generating KernelArgs line with TSX"},{"line_number":209,"context_line":"                  set_fact:"}],"source_content_type":"text/x-yaml","patch_set":14,"id":"43503d33_391cedbe","line":206,"range":{"start_line":202,"start_character":0,"end_line":206,"end_character":50},"in_reply_to":"b93ae6da_6a360562","updated":"2021-03-10 03:33:01.000000000","message":"Done","commit_id":"b58eb403246ca05434f2dbf33d9a7bf9785a2833"},{"author":{"_account_id":17216,"name":"Martin Schuppert","email":"mschuppert@redhat.com","username":"mcschupp"},"change_message_id":"c55763d046107448e362deff19d9005daf376304","unresolved":true,"context_lines":[{"line_number":169,"context_line":"                       - tsx_flag_kernel_args | length \u003c 2"},{"line_number":170,"context_line":"                       - tsx_flag_runtime.rc \u003e 0"},{"line_number":171,"context_line":"                       - tsx_cpu_support.rc \u003d\u003d 0"},{"line_number":172,"context_line":"                       - (ansible_distribution_version is version(8.2, \u0027\u003c\u003d\u0027) and"},{"line_number":173,"context_line":"                          overcloud_server_list.stdout_lines is defined and"},{"line_number":174,"context_line":"                          overcloud_server_list.stdout_lines | length \u003e 0) or"},{"line_number":175,"context_line":"                         (ansible_distribution_version is version(8.3, \u0027\u003e\u003d\u0027) and"},{"line_number":176,"context_line":"                          rhosp_release is version(\u002716.2.0\u0027, \u0027\u003c\u003d\u0027))"},{"line_number":177,"context_line":"                      set_fact:"},{"line_number":178,"context_line":"                        tsx_flag: \"on\""},{"line_number":179,"context_line":""}],"source_content_type":"text/x-yaml","patch_set":18,"id":"ca8026a8_c1436438","line":176,"range":{"start_line":172,"start_character":0,"end_line":176,"end_character":67},"updated":"2021-03-15 09:38:13.000000000","message":"there might be a rare situation where one has no instances on an 8.2 environment, then adds compute nodes. with the check we end up in having the existing computes with tsx enabled until the get manually rebooted and the new ones with tsx disabled from beginning, right?\n\nwondering if it would be better/consistent/expected end result if we just check for the compute endpoint being registered to identify if an environment is already deployed, instead of check if any VMs are provisioned.","commit_id":"4b4dfd02d020d9130b373c93de477fede77cfb5e"},{"author":{"_account_id":17216,"name":"Martin Schuppert","email":"mschuppert@redhat.com","username":"mcschupp"},"change_message_id":"3a5a403b388e6a60cf9cc7056164d42241f3543f","unresolved":true,"context_lines":[{"line_number":169,"context_line":"                       - tsx_flag_kernel_args | length \u003c 2"},{"line_number":170,"context_line":"                       - tsx_flag_runtime.rc \u003e 0"},{"line_number":171,"context_line":"                       - tsx_cpu_support.rc \u003d\u003d 0"},{"line_number":172,"context_line":"                       - (ansible_distribution_version is version(8.2, \u0027\u003c\u003d\u0027) and"},{"line_number":173,"context_line":"                          overcloud_server_list.stdout_lines is defined and"},{"line_number":174,"context_line":"                          overcloud_server_list.stdout_lines | length \u003e 0) or"},{"line_number":175,"context_line":"                         (ansible_distribution_version is version(8.3, \u0027\u003e\u003d\u0027) and"},{"line_number":176,"context_line":"                          rhosp_release is version(\u002716.2.0\u0027, \u0027\u003c\u003d\u0027))"},{"line_number":177,"context_line":"                      set_fact:"},{"line_number":178,"context_line":"                        tsx_flag: \"on\""},{"line_number":179,"context_line":""}],"source_content_type":"text/x-yaml","patch_set":18,"id":"b29a566b_a7d80be4","line":176,"range":{"start_line":172,"start_character":0,"end_line":176,"end_character":67},"in_reply_to":"7d6159de_8f241bce","updated":"2021-03-16 13:55:02.000000000","message":"\u003e If we scale up a node, it won\u0027t have a nova.conf file thus not triggering the set_fact \"defer_reboot\" task at line 198. This means that TSX will be forcibly disabled on the node and the node will be rebooted making the tsx\u003doff part of the running config once it\u0027s completely scaled up, just like the other nodes.\n\u003e \n\u003e Where it might be problematic is if the operator ran a minor update to latest 16.1.x with no running instance, followed by a scale up, again with no running instances. I presume that we would have the original nodes having tsx\u003doff in their grub config but not active configuration (not rebooted). The newly scaled up nodes would end up with tsx\u003doff as running config.\n\u003e \n\u003e One way to prevent this from being problematic is to disable defer_reboot if there\u0027s no running instances on a compute node where we flip the tsx flag. Would it be too agressive?\n\nThat\u0027s why I tend to only disable TSX on complete new 16.1 deployment. Instead of checking if there are instances, check if the nova endpoint is already registered. If the endpoint is registered we expect it is an existing deployment and leave tsx\u003don, otherwise it is a new deployment. Otherwise we end up in a mix of tsx\u003doff/on computes and live migration can fail.","commit_id":"4b4dfd02d020d9130b373c93de477fede77cfb5e"},{"author":{"_account_id":27419,"name":"David Vallee Delisle","email":"me@dvd.dev","username":"dvd"},"change_message_id":"54fc66dc4838b878bdd0bc5f0ad44baf243ba04c","unresolved":true,"context_lines":[{"line_number":169,"context_line":"                       - tsx_flag_kernel_args | length \u003c 2"},{"line_number":170,"context_line":"                       - tsx_flag_runtime.rc \u003e 0"},{"line_number":171,"context_line":"                       - tsx_cpu_support.rc \u003d\u003d 0"},{"line_number":172,"context_line":"                       - (ansible_distribution_version is version(8.2, \u0027\u003c\u003d\u0027) and"},{"line_number":173,"context_line":"                          overcloud_server_list.stdout_lines is defined and"},{"line_number":174,"context_line":"                          overcloud_server_list.stdout_lines | length \u003e 0) or"},{"line_number":175,"context_line":"                         (ansible_distribution_version is version(8.3, \u0027\u003e\u003d\u0027) and"},{"line_number":176,"context_line":"                          rhosp_release is version(\u002716.2.0\u0027, \u0027\u003c\u003d\u0027))"},{"line_number":177,"context_line":"                      set_fact:"},{"line_number":178,"context_line":"                        tsx_flag: \"on\""},{"line_number":179,"context_line":""}],"source_content_type":"text/x-yaml","patch_set":18,"id":"7d6159de_8f241bce","line":176,"range":{"start_line":172,"start_character":0,"end_line":176,"end_character":67},"in_reply_to":"ca8026a8_c1436438","updated":"2021-03-16 13:47:10.000000000","message":"If we scale up a node, it won\u0027t have a nova.conf file thus not triggering the set_fact \"defer_reboot\" task at line 198. This means that TSX will be forcibly disabled on the node and the node will be rebooted making the tsx\u003doff part of the running config once it\u0027s completely scaled up, just like the other nodes.\n\nWhere it might be problematic is if the operator ran a minor update to latest 16.1.x with no running instance, followed by a scale up, again with no running instances. I presume that we would have the original nodes having tsx\u003doff in their grub config but not active configuration (not rebooted). The newly scaled up nodes would end up with tsx\u003doff as running config.\n\nOne way to prevent this from being problematic is to disable defer_reboot if there\u0027s no running instances on a compute node where we flip the tsx flag. Would it be too agressive?","commit_id":"4b4dfd02d020d9130b373c93de477fede77cfb5e"},{"author":{"_account_id":17216,"name":"Martin Schuppert","email":"mschuppert@redhat.com","username":"mcschupp"},"change_message_id":"90a24bab7ec7539189006c2cc2a6a793e02a03fa","unresolved":true,"context_lines":[{"line_number":114,"context_line":"                    tsx_flag_kernel_args: \"{{ kernel_args | regex_search(\u0027(?:\\\\s|^)tsx\u003d(on|off)\u0027, \u0027\\\\1\u0027) | default([\u0027\u0027], true) | first }}\""},{"line_number":115,"context_line":"                    kernel_args: \"{{ kernel_args | regex_replace(\u0027(?:\\\\s|^)tsx\u003d(on|off)\u0027, \u0027\u0027) }}\""},{"line_number":116,"context_line":""},{"line_number":117,"context_line":"                - name: Overwrite flag if operator provided it"},{"line_number":118,"context_line":"                  when:"},{"line_number":119,"context_line":"                    - tsx_flag_kernel_args | length \u003e 1"},{"line_number":120,"context_line":"                  set_fact:"}],"source_content_type":"text/x-yaml","patch_set":19,"id":"113c98e0_6c136cbf","line":117,"updated":"2021-03-29 06:54:03.000000000","message":"probably better to name it \"Overwrite TSX kernel parameter if provided by operator\" to make it clear what the operator did overwrite.","commit_id":"37390aed8d2d3c054e307ba23814922b998342bd"},{"author":{"_account_id":27419,"name":"David Vallee Delisle","email":"me@dvd.dev","username":"dvd"},"change_message_id":"95c8de6b47eb37675af6a57258469a01267c0ef3","unresolved":false,"context_lines":[{"line_number":114,"context_line":"                    tsx_flag_kernel_args: \"{{ kernel_args | regex_search(\u0027(?:\\\\s|^)tsx\u003d(on|off)\u0027, \u0027\\\\1\u0027) | default([\u0027\u0027], true) | first }}\""},{"line_number":115,"context_line":"                    kernel_args: \"{{ kernel_args | regex_replace(\u0027(?:\\\\s|^)tsx\u003d(on|off)\u0027, \u0027\u0027) }}\""},{"line_number":116,"context_line":""},{"line_number":117,"context_line":"                - name: Overwrite flag if operator provided it"},{"line_number":118,"context_line":"                  when:"},{"line_number":119,"context_line":"                    - tsx_flag_kernel_args | length \u003e 1"},{"line_number":120,"context_line":"                  set_fact:"}],"source_content_type":"text/x-yaml","patch_set":19,"id":"4ae1cc85_785ee54d","line":117,"in_reply_to":"113c98e0_6c136cbf","updated":"2021-03-29 15:09:42.000000000","message":"Done","commit_id":"37390aed8d2d3c054e307ba23814922b998342bd"},{"author":{"_account_id":17216,"name":"Martin Schuppert","email":"mschuppert@redhat.com","username":"mcschupp"},"change_message_id":"90a24bab7ec7539189006c2cc2a6a793e02a03fa","unresolved":true,"context_lines":[{"line_number":137,"context_line":"                  set_fact:"},{"line_number":138,"context_line":"                    kernel_args: \"{{ kernel_args }} tsx\u003d{{ tsx_flag }}\""},{"line_number":139,"context_line":"                  when:"},{"line_number":140,"context_line":"                   - tsx_cpu_support.rc \u003d\u003d 0"},{"line_number":141,"context_line":""},{"line_number":142,"context_line":"                # If nova.conf already exists on the compute, we will defer reboot."},{"line_number":143,"context_line":"                - name: There\u0027s a good chance that the kernel args will change, we need to prevent already deployed computes from rebooting."}],"source_content_type":"text/x-yaml","patch_set":19,"id":"63ff4df2_7725a8b5","line":140,"updated":"2021-03-29 06:54:03.000000000","message":"Should we add a debug statement to clearly say why a kernel parameter won\u0027t get set even if an operator specified it via KernelArgs?","commit_id":"37390aed8d2d3c054e307ba23814922b998342bd"},{"author":{"_account_id":27419,"name":"David Vallee Delisle","email":"me@dvd.dev","username":"dvd"},"change_message_id":"95c8de6b47eb37675af6a57258469a01267c0ef3","unresolved":false,"context_lines":[{"line_number":137,"context_line":"                  set_fact:"},{"line_number":138,"context_line":"                    kernel_args: \"{{ kernel_args }} tsx\u003d{{ tsx_flag }}\""},{"line_number":139,"context_line":"                  when:"},{"line_number":140,"context_line":"                   - tsx_cpu_support.rc \u003d\u003d 0"},{"line_number":141,"context_line":""},{"line_number":142,"context_line":"                # If nova.conf already exists on the compute, we will defer reboot."},{"line_number":143,"context_line":"                - name: There\u0027s a good chance that the kernel args will change, we need to prevent already deployed computes from rebooting."}],"source_content_type":"text/x-yaml","patch_set":19,"id":"9d612aea_9bb49773","line":140,"in_reply_to":"63ff4df2_7725a8b5","updated":"2021-03-29 15:09:42.000000000","message":"Good idea, added.","commit_id":"37390aed8d2d3c054e307ba23814922b998342bd"},{"author":{"_account_id":18575,"name":"Saravanan KR","email":"krsacme@gmail.com","username":"saravanankr"},"change_message_id":"a067b67f78a42c3289935016efd311032af57561","unresolved":true,"context_lines":[{"line_number":98,"context_line":"        - name: Configure kernel args and reboot"},{"line_number":99,"context_line":"          when: step|int \u003d\u003d 0"},{"line_number":100,"context_line":"          block:"},{"line_number":101,"context_line":"            - name: KernelArgs configuration"},{"line_number":102,"context_line":"              set_fact:"},{"line_number":103,"context_line":"                kernel_args: {get_attr: [RoleParametersValue, value, kernel_args]}"},{"line_number":104,"context_line":"                defer_reboot: false"}],"source_content_type":"text/x-yaml","patch_set":22,"id":"202a8caf_767a1042","line":101,"updated":"2021-03-30 05:37:10.000000000","message":"Can these tasks be moved inside the tripleo-kernel ansible role, that way all cases of reboot decisions on kernel args are made at one place?","commit_id":"b15a9e0b82c9db795e604ed0068d9dc680c289a4"},{"author":{"_account_id":27419,"name":"David Vallee Delisle","email":"me@dvd.dev","username":"dvd"},"change_message_id":"3e1d39ea17d47992e8821fe6fe1b4d58baf6dda7","unresolved":true,"context_lines":[{"line_number":98,"context_line":"        - name: Configure kernel args and reboot"},{"line_number":99,"context_line":"          when: step|int \u003d\u003d 0"},{"line_number":100,"context_line":"          block:"},{"line_number":101,"context_line":"            - name: KernelArgs configuration"},{"line_number":102,"context_line":"              set_fact:"},{"line_number":103,"context_line":"                kernel_args: {get_attr: [RoleParametersValue, value, kernel_args]}"},{"line_number":104,"context_line":"                defer_reboot: false"}],"source_content_type":"text/x-yaml","patch_set":22,"id":"75947c16_86199e1e","line":101,"in_reply_to":"202a8caf_767a1042","updated":"2021-03-30 09:02:03.000000000","message":"Valid point, I\u0027ll be working on this.","commit_id":"b15a9e0b82c9db795e604ed0068d9dc680c289a4"},{"author":{"_account_id":18575,"name":"Saravanan KR","email":"krsacme@gmail.com","username":"saravanankr"},"change_message_id":"a067b67f78a42c3289935016efd311032af57561","unresolved":true,"context_lines":[{"line_number":114,"context_line":"                    tsx_flag_kernel_args: \"{{ kernel_args | regex_search(\u0027(?:\\\\s|^)tsx\u003d(on|off)\u0027, \u0027\\\\1\u0027) | default([\u0027\u0027], true) | first }}\""},{"line_number":115,"context_line":"                    kernel_args: \"{{ kernel_args | regex_replace(\u0027(?:\\\\s|^)tsx\u003d(on|off)\u0027, \u0027\u0027) }}\""},{"line_number":116,"context_line":""},{"line_number":117,"context_line":"                - name: Overwrite TSX kernel parameter if provided by operator"},{"line_number":118,"context_line":"                  when:"},{"line_number":119,"context_line":"                    - tsx_flag_kernel_args | length \u003e 1"},{"line_number":120,"context_line":"                  set_fact:"}],"source_content_type":"text/x-yaml","patch_set":22,"id":"16802212_616860b1","line":117,"updated":"2021-03-30 05:37:10.000000000","message":"We are not going to support having tsx, so operators are not expected to add this value as part of the deployment. For new deployments, why don\u0027t we throw error if it is enabled in kernel_args? For older deployments where we need to keep enable it based on conditions, those decisions could be applied to upgrade_tasks (which can be backported).\n\nAnother option to determine the deployment status is to fetch the details from where the \"openstack overcloud stauts\" cli fetches (by not executing the cli, but fetching the value and storing it in the bootstrap tasks).","commit_id":"b15a9e0b82c9db795e604ed0068d9dc680c289a4"},{"author":{"_account_id":17216,"name":"Martin Schuppert","email":"mschuppert@redhat.com","username":"mcschupp"},"change_message_id":"5af48d1eebe47af6c2ef18b1ec7eecd3527996c8","unresolved":true,"context_lines":[{"line_number":114,"context_line":"                    tsx_flag_kernel_args: \"{{ kernel_args | regex_search(\u0027(?:\\\\s|^)tsx\u003d(on|off)\u0027, \u0027\\\\1\u0027) | default([\u0027\u0027], true) | first }}\""},{"line_number":115,"context_line":"                    kernel_args: \"{{ kernel_args | regex_replace(\u0027(?:\\\\s|^)tsx\u003d(on|off)\u0027, \u0027\u0027) }}\""},{"line_number":116,"context_line":""},{"line_number":117,"context_line":"                - name: Overwrite TSX kernel parameter if provided by operator"},{"line_number":118,"context_line":"                  when:"},{"line_number":119,"context_line":"                    - tsx_flag_kernel_args | length \u003e 1"},{"line_number":120,"context_line":"                  set_fact:"}],"source_content_type":"text/x-yaml","patch_set":22,"id":"535c6c54_5f04fab6","line":117,"in_reply_to":"16802212_616860b1","updated":"2021-03-30 06:28:53.000000000","message":"\u003e We are not going to support having tsx, so operators are not expected to add this value as part of the deployment. For new deployments, why don\u0027t we throw error if it is enabled in kernel_args? For older deployments where we need to keep enable it based on conditions, those decisions could be applied to upgrade_tasks (which can be backported).\n\nWe support TSX, but only want to have it enabled where the operator explicitly set it\nand where the CPU actually supports it.\n \n\u003e \n\u003e Another option to determine the deployment status is to fetch the details from where the \"openstack overcloud stauts\" cli fetches (by not executing the cli, but fetching the value and storing it in the bootstrap tasks).","commit_id":"b15a9e0b82c9db795e604ed0068d9dc680c289a4"},{"author":{"_account_id":18575,"name":"Saravanan KR","email":"krsacme@gmail.com","username":"saravanankr"},"change_message_id":"99cea93004cd559e48396d01817e6886f8223f69","unresolved":true,"context_lines":[{"line_number":114,"context_line":"                    tsx_flag_kernel_args: \"{{ kernel_args | regex_search(\u0027(?:\\\\s|^)tsx\u003d(on|off)\u0027, \u0027\\\\1\u0027) | default([\u0027\u0027], true) | first }}\""},{"line_number":115,"context_line":"                    kernel_args: \"{{ kernel_args | regex_replace(\u0027(?:\\\\s|^)tsx\u003d(on|off)\u0027, \u0027\u0027) }}\""},{"line_number":116,"context_line":""},{"line_number":117,"context_line":"                - name: Overwrite TSX kernel parameter if provided by operator"},{"line_number":118,"context_line":"                  when:"},{"line_number":119,"context_line":"                    - tsx_flag_kernel_args | length \u003e 1"},{"line_number":120,"context_line":"                  set_fact:"}],"source_content_type":"text/x-yaml","patch_set":22,"id":"630caa15_94cb85d2","line":117,"in_reply_to":"535c6c54_5f04fab6","updated":"2021-03-30 08:01:47.000000000","message":"\u003e We support TSX, but only want to have it enabled where the operator explicitly set it\n\u003e and where the CPU actually supports it.\n\u003e  \n\nIn case of fresh deployment, the parameter \"KernelArgs\" will be applied as it is based on node support. The new parameter \"TsxEnabled\" is only used to indentify fresh deployment or upgrade? And users, should not use TsxEnabled parameter?","commit_id":"b15a9e0b82c9db795e604ed0068d9dc680c289a4"},{"author":{"_account_id":18575,"name":"Saravanan KR","email":"krsacme@gmail.com","username":"saravanankr"},"change_message_id":"bf5e01fca84a848703ed9a295ac4ea00909d51ff","unresolved":true,"context_lines":[{"line_number":114,"context_line":"                    tsx_flag_kernel_args: \"{{ kernel_args | regex_search(\u0027(?:\\\\s|^)tsx\u003d(on|off)\u0027, \u0027\\\\1\u0027) | default([\u0027\u0027], true) | first }}\""},{"line_number":115,"context_line":"                    kernel_args: \"{{ kernel_args | regex_replace(\u0027(?:\\\\s|^)tsx\u003d(on|off)\u0027, \u0027\u0027) }}\""},{"line_number":116,"context_line":""},{"line_number":117,"context_line":"                - name: Overwrite TSX kernel parameter if provided by operator"},{"line_number":118,"context_line":"                  when:"},{"line_number":119,"context_line":"                    - tsx_flag_kernel_args | length \u003e 1"},{"line_number":120,"context_line":"                  set_fact:"}],"source_content_type":"text/x-yaml","patch_set":22,"id":"d8b5c12c_cd13db37","line":117,"in_reply_to":"5dfe5cfa_dbd8f3e2","updated":"2021-03-30 10:32:45.000000000","message":"\u003e We initially wanted to leverage the StackAction (CREATE or UPDATE), but if an operator re-run the deploy command post heat stack creation (ie: like in a case of an early failure), the StackAction will be UPDATE.\n\nis the \"upgrade_tasks\" section not useful to differetiate the upgrade scenarios?","commit_id":"b15a9e0b82c9db795e604ed0068d9dc680c289a4"},{"author":{"_account_id":27419,"name":"David Vallee Delisle","email":"me@dvd.dev","username":"dvd"},"change_message_id":"3e1d39ea17d47992e8821fe6fe1b4d58baf6dda7","unresolved":true,"context_lines":[{"line_number":114,"context_line":"                    tsx_flag_kernel_args: \"{{ kernel_args | regex_search(\u0027(?:\\\\s|^)tsx\u003d(on|off)\u0027, \u0027\\\\1\u0027) | default([\u0027\u0027], true) | first }}\""},{"line_number":115,"context_line":"                    kernel_args: \"{{ kernel_args | regex_replace(\u0027(?:\\\\s|^)tsx\u003d(on|off)\u0027, \u0027\u0027) }}\""},{"line_number":116,"context_line":""},{"line_number":117,"context_line":"                - name: Overwrite TSX kernel parameter if provided by operator"},{"line_number":118,"context_line":"                  when:"},{"line_number":119,"context_line":"                    - tsx_flag_kernel_args | length \u003e 1"},{"line_number":120,"context_line":"                  set_fact:"}],"source_content_type":"text/x-yaml","patch_set":22,"id":"5dfe5cfa_dbd8f3e2","line":117,"in_reply_to":"630caa15_94cb85d2","updated":"2021-03-30 09:02:03.000000000","message":"For fresh deployment, we want to forcefully set tsx to off, if cpu supports it. For already deployed environment, we want to forcefully set tsx to on, this is because it\u0027s already defaulted to \"on\" in rhel \u003c\u003d 8.2 and we want to allow live-migrations between nodes. \n\nTsxEnabled is an internal parameter and is set to off or on depending, respectively, if the environment was freshly deployed or if the patch has been installed the first time on an already deployed environment.\n\nWe initially wanted to leverage the StackAction (CREATE or UPDATE), but if an operator re-run the deploy command post heat stack creation (ie: like in a case of an early failure), the StackAction will be UPDATE.\n\nThese conditions have lower precedence on operator\u0027s provided kernelargs.\n\nI\u0027m currently looking for a way to get the same accuracy with overcloud status.","commit_id":"b15a9e0b82c9db795e604ed0068d9dc680c289a4"},{"author":{"_account_id":18575,"name":"Saravanan KR","email":"krsacme@gmail.com","username":"saravanankr"},"change_message_id":"fee5189b88423c94e051f6a88ebc10c255194eff","unresolved":true,"context_lines":[{"line_number":114,"context_line":"                    tsx_flag_kernel_args: \"{{ kernel_args | regex_search(\u0027(?:\\\\s|^)tsx\u003d(on|off)\u0027, \u0027\\\\1\u0027) | default([\u0027\u0027], true) | first }}\""},{"line_number":115,"context_line":"                    kernel_args: \"{{ kernel_args | regex_replace(\u0027(?:\\\\s|^)tsx\u003d(on|off)\u0027, \u0027\u0027) }}\""},{"line_number":116,"context_line":""},{"line_number":117,"context_line":"                - name: Overwrite TSX kernel parameter if provided by operator"},{"line_number":118,"context_line":"                  when:"},{"line_number":119,"context_line":"                    - tsx_flag_kernel_args | length \u003e 1"},{"line_number":120,"context_line":"                  set_fact:"}],"source_content_type":"text/x-yaml","patch_set":22,"id":"fe6e0ebb_d7e0c185","line":117,"in_reply_to":"d0d18f8c_81759151","updated":"2021-03-30 12:20:42.000000000","message":"I thinking of options, have to be validated how it should be handled. \n\nAssumption: \n1) Fresh: If \"KernelArgs\" has \"tsx\u003don\" and node supports, kernel args are left as it is\n2) Fresh: If \"KernelArgs\" has \"tsx\u003don\" and node not supports, kernel args are modified (REMOVE)\n3) Fresh: If \"KernelArgs\" does not have \"tsx\" and node supports, kernel args modified (ADD tsx\u003doff)\n4) Upgrade: If \"KernelArgs\" has \"tsx\u003don\" and node supports, kernel args are left as it is\n4) Upgrade: If \"KernelArgs\" does not have \"tsx\" and node supports, kernel args modified (ADD tsx\u003don)\n\nCurrently TRIPLEO_HEAT_TEMPLATE_KERNEL_ARGS in /etc/default/grub is used to store \"KernelArgs\" and merge it. If we can introduce another entry like TRIPLEO_HEAT_TEMPLATE_KERNEL_ARGS_OVERRIDE. This entry will be updated incase of (3) by deploy_tasks and (4) by upgrade_tasks. Since both will check for the existence of this entry, sync can be acheived. When we move this implementation inside the tripleo-ansible, it can he handled better. We also avoding the reboot in case of upgrade and kernel args are changed. Let me know whether it can cover all cases.","commit_id":"b15a9e0b82c9db795e604ed0068d9dc680c289a4"},{"author":{"_account_id":27419,"name":"David Vallee Delisle","email":"me@dvd.dev","username":"dvd"},"change_message_id":"5049894e2ee7c7aeade6a49b9cf9ad83d4f371df","unresolved":true,"context_lines":[{"line_number":114,"context_line":"                    tsx_flag_kernel_args: \"{{ kernel_args | regex_search(\u0027(?:\\\\s|^)tsx\u003d(on|off)\u0027, \u0027\\\\1\u0027) | default([\u0027\u0027], true) | first }}\""},{"line_number":115,"context_line":"                    kernel_args: \"{{ kernel_args | regex_replace(\u0027(?:\\\\s|^)tsx\u003d(on|off)\u0027, \u0027\u0027) }}\""},{"line_number":116,"context_line":""},{"line_number":117,"context_line":"                - name: Overwrite TSX kernel parameter if provided by operator"},{"line_number":118,"context_line":"                  when:"},{"line_number":119,"context_line":"                    - tsx_flag_kernel_args | length \u003e 1"},{"line_number":120,"context_line":"                  set_fact:"}],"source_content_type":"text/x-yaml","patch_set":22,"id":"d0d18f8c_81759151","line":117,"in_reply_to":"d8b5c12c_cd13db37","updated":"2021-03-30 10:43:41.000000000","message":"I believe the issue with the upgrade_tasks is that, on subsequent deploy, we\u0027ll loose the state of the flag. So if the patch was first executed during an upgrade, tsx must always be set to on, and if it was first executed during a new deployment, tsx must always be set to off, unless specified otherwise by the operator.\n\nIf you have an idea on how to achieve this computed persistency, we\u0027re open to ideas.","commit_id":"b15a9e0b82c9db795e604ed0068d9dc680c289a4"},{"author":{"_account_id":27419,"name":"David Vallee Delisle","email":"me@dvd.dev","username":"dvd"},"change_message_id":"7e5ee492da338c2b462f63637486a7a86f18157c","unresolved":true,"context_lines":[{"line_number":114,"context_line":"                    tsx_flag_kernel_args: \"{{ kernel_args | regex_search(\u0027(?:\\\\s|^)tsx\u003d(on|off)\u0027, \u0027\\\\1\u0027) | default([\u0027\u0027], true) | first }}\""},{"line_number":115,"context_line":"                    kernel_args: \"{{ kernel_args | regex_replace(\u0027(?:\\\\s|^)tsx\u003d(on|off)\u0027, \u0027\u0027) }}\""},{"line_number":116,"context_line":""},{"line_number":117,"context_line":"                - name: Overwrite TSX kernel parameter if provided by operator"},{"line_number":118,"context_line":"                  when:"},{"line_number":119,"context_line":"                    - tsx_flag_kernel_args | length \u003e 1"},{"line_number":120,"context_line":"                  set_fact:"}],"source_content_type":"text/x-yaml","patch_set":22,"id":"cd569249_d7a026ea","line":117,"in_reply_to":"fe6e0ebb_d7e0c185","updated":"2021-03-30 14:18:36.000000000","message":"Saravanan, nice break down, that looks like we wanted it. After discussing with James Slagle, we might explore the path of just checking all the compute nodes and see if any of these would have tsx\u003don, if so, we\u0027d enable it everywhere, by using TRIPLEO_HEAT_TEMPLATE_KERNEL_ARGS_OVERRIDE.","commit_id":"b15a9e0b82c9db795e604ed0068d9dc680c289a4"},{"author":{"_account_id":18575,"name":"Saravanan KR","email":"krsacme@gmail.com","username":"saravanankr"},"change_message_id":"99cea93004cd559e48396d01817e6886f8223f69","unresolved":true,"context_lines":[{"line_number":133,"context_line":"                    path: /var/lib/config-data/puppet-generated/nova_libvirt/etc/nova/nova.conf"},{"line_number":134,"context_line":"                  register: check_nova_conf"},{"line_number":135,"context_line":""},{"line_number":136,"context_line":"                - name: Generating KernelArgs line with TSX"},{"line_number":137,"context_line":"                  set_fact:"},{"line_number":138,"context_line":"                    kernel_args: \"{{ kernel_args }} tsx\u003d{{ tsx_flag }}\""},{"line_number":139,"context_line":"                  when:"}],"source_content_type":"text/x-yaml","patch_set":22,"id":"29fedabd_a9ea25a1","line":136,"updated":"2021-03-30 08:01:47.000000000","message":"A point to note. If we are applying kernel args based on support then there will be a mismatch of parameter \"KernelArgs\" and actual values applied. A better way to implement this should have been via enable disable flag and enable it only when it is available in the platform (but KernelArgs are not implemented such a way).","commit_id":"b15a9e0b82c9db795e604ed0068d9dc680c289a4"},{"author":{"_account_id":27419,"name":"David Vallee Delisle","email":"me@dvd.dev","username":"dvd"},"change_message_id":"3e1d39ea17d47992e8821fe6fe1b4d58baf6dda7","unresolved":true,"context_lines":[{"line_number":133,"context_line":"                    path: /var/lib/config-data/puppet-generated/nova_libvirt/etc/nova/nova.conf"},{"line_number":134,"context_line":"                  register: check_nova_conf"},{"line_number":135,"context_line":""},{"line_number":136,"context_line":"                - name: Generating KernelArgs line with TSX"},{"line_number":137,"context_line":"                  set_fact:"},{"line_number":138,"context_line":"                    kernel_args: \"{{ kernel_args }} tsx\u003d{{ tsx_flag }}\""},{"line_number":139,"context_line":"                  when:"}],"source_content_type":"text/x-yaml","patch_set":22,"id":"1f8f0876_f41da434","line":136,"in_reply_to":"29fedabd_a9ea25a1","updated":"2021-03-30 09:02:03.000000000","message":"Based on our test, while there\u0027s going to be a mismatch with KernelArgs, the end result will always be the same. Worse case scenario is that we move the tsx flag at the end and we defer reboot anyways.\n\nI agree that the best would have been some flags we can flip on or off but we unfortunately don\u0027t have this luxury at this time and this needs to land on 16.2 RC. We can probably revisit later, unless you have another quick solution.","commit_id":"b15a9e0b82c9db795e604ed0068d9dc680c289a4"},{"author":{"_account_id":18575,"name":"Saravanan KR","email":"krsacme@gmail.com","username":"saravanankr"},"change_message_id":"251140a1a5c503da0f63ed77e8f5880cee5cc478","unresolved":true,"context_lines":[{"line_number":92,"context_line":"            tuned_isolated_cores: {get_attr: [RoleParametersValue, value, isolated_cores]}"},{"line_number":93,"context_line":""},{"line_number":94,"context_line":"        - name: Check if any VMs are provisioned. If we have VMs, we consider this environment as already deployed."},{"line_number":95,"context_line":"          shell: openstack server list --all-project --long -c Host -c Status -f value"},{"line_number":96,"context_line":"          register: overcloud_server_list"},{"line_number":97,"context_line":"          # On initial deployment, this command is going to fail"},{"line_number":98,"context_line":"          failed_when: overcloud_server_list.rc \u003e 1"}],"source_content_type":"text/x-yaml","patch_set":23,"id":"599e1882_5aa9f656","line":95,"updated":"2021-03-31 04:37:01.000000000","message":"having workloads or not is specific to the cluster, though we can assume that a production cluster will most probably have VMs, assuming it as already deployed or not, is not correct. \n\nMay be, we can assume that if there are no VMs, we can safely turn tsx to recommended value, than assuming it as already deployed or not.","commit_id":"ac86460336f7678258bf4b0455f3e7732a2ebe61"},{"author":{"_account_id":18575,"name":"Saravanan KR","email":"krsacme@gmail.com","username":"saravanankr"},"change_message_id":"6fa2548ce25a036c30dc2997cb6394eae58fc934","unresolved":true,"context_lines":[{"line_number":92,"context_line":"            tuned_isolated_cores: {get_attr: [RoleParametersValue, value, isolated_cores]}"},{"line_number":93,"context_line":""},{"line_number":94,"context_line":"        - name: Check if any VMs are provisioned. If we have VMs, we consider this environment as already deployed."},{"line_number":95,"context_line":"          shell: openstack server list --all-project --long -c Host -c Status -f value"},{"line_number":96,"context_line":"          register: overcloud_server_list"},{"line_number":97,"context_line":"          # On initial deployment, this command is going to fail"},{"line_number":98,"context_line":"          failed_when: overcloud_server_list.rc \u003e 1"}],"source_content_type":"text/x-yaml","patch_set":23,"id":"51c2bda8_c43bd7a1","line":95,"in_reply_to":"087cbed1_171d9c68","updated":"2021-03-31 10:05:40.000000000","message":"Agree, reboot decision is tricky. Can we not decide based on tripleo service being installed (which controls the pod man container) on each node and reboot it or not? When any one of the service is installed, then step0 should have already passed and node shoule not be rebooted there after.","commit_id":"ac86460336f7678258bf4b0455f3e7732a2ebe61"},{"author":{"_account_id":27419,"name":"David Vallee Delisle","email":"me@dvd.dev","username":"dvd"},"change_message_id":"cd1f4f456b74121c57d6df4e87bf9e702eecc9b2","unresolved":true,"context_lines":[{"line_number":92,"context_line":"            tuned_isolated_cores: {get_attr: [RoleParametersValue, value, isolated_cores]}"},{"line_number":93,"context_line":""},{"line_number":94,"context_line":"        - name: Check if any VMs are provisioned. If we have VMs, we consider this environment as already deployed."},{"line_number":95,"context_line":"          shell: openstack server list --all-project --long -c Host -c Status -f value"},{"line_number":96,"context_line":"          register: overcloud_server_list"},{"line_number":97,"context_line":"          # On initial deployment, this command is going to fail"},{"line_number":98,"context_line":"          failed_when: overcloud_server_list.rc \u003e 1"}],"source_content_type":"text/x-yaml","patch_set":23,"id":"f5e7e42f_2309fbde","line":95,"in_reply_to":"2757ad96_d6ff7394","updated":"2021-03-31 13:11:23.000000000","message":"I like the cell idea, +1","commit_id":"ac86460336f7678258bf4b0455f3e7732a2ebe61"},{"author":{"_account_id":17216,"name":"Martin Schuppert","email":"mschuppert@redhat.com","username":"mcschupp"},"change_message_id":"97a0f60ab8f74721d32d4e2ccd894a84f433af82","unresolved":true,"context_lines":[{"line_number":92,"context_line":"            tuned_isolated_cores: {get_attr: [RoleParametersValue, value, isolated_cores]}"},{"line_number":93,"context_line":""},{"line_number":94,"context_line":"        - name: Check if any VMs are provisioned. If we have VMs, we consider this environment as already deployed."},{"line_number":95,"context_line":"          shell: openstack server list --all-project --long -c Host -c Status -f value"},{"line_number":96,"context_line":"          register: overcloud_server_list"},{"line_number":97,"context_line":"          # On initial deployment, this command is going to fail"},{"line_number":98,"context_line":"          failed_when: overcloud_server_list.rc \u003e 1"}],"source_content_type":"text/x-yaml","patch_set":23,"id":"2757ad96_d6ff7394","line":95,"in_reply_to":"51c2bda8_c43bd7a1","updated":"2021-03-31 13:10:01.000000000","message":"another possible way to detect if an environment is new or not is to check if there are already computes mapped to a cell. Mapping computes to a cell is one of the last steps during the deployment. Per default the default cell, but it could be any additional cell, except cell0. If there are no computes mapped to any cell we can expect the deployment is new. If required we could even check if a specific node is already mapped to a cell.","commit_id":"ac86460336f7678258bf4b0455f3e7732a2ebe61"},{"author":{"_account_id":17216,"name":"Martin Schuppert","email":"mschuppert@redhat.com","username":"mcschupp"},"change_message_id":"6eedc7502e7a25a208bf903004f35c9d3e4b83ef","unresolved":true,"context_lines":[{"line_number":92,"context_line":"            tuned_isolated_cores: {get_attr: [RoleParametersValue, value, isolated_cores]}"},{"line_number":93,"context_line":""},{"line_number":94,"context_line":"        - name: Check if any VMs are provisioned. If we have VMs, we consider this environment as already deployed."},{"line_number":95,"context_line":"          shell: openstack server list --all-project --long -c Host -c Status -f value"},{"line_number":96,"context_line":"          register: overcloud_server_list"},{"line_number":97,"context_line":"          # On initial deployment, this command is going to fail"},{"line_number":98,"context_line":"          failed_when: overcloud_server_list.rc \u003e 1"}],"source_content_type":"text/x-yaml","patch_set":23,"id":"087cbed1_171d9c68","line":95,"in_reply_to":"599e1882_5aa9f656","updated":"2021-03-31 07:03:29.000000000","message":"I agree checking if there are instance is dangerous, I think \n- we can not reboot compute nodes only because there are no instance atm. We might reboot 100s of computes.\n- because of that we should not change kernel parameter if there are no instance in a previously deployed environment. Because we\u0027d defer the reboot, new instances still get created with tsx enabled, but on next reboot tsx gets disabled on the host. This will break live migration.\n\nWe can use `openstack server list`, or any other api command (like listing hypervisors) to determine if the compute endpoint got registered, and assume that the environment got provisioned previously and is not a new installation.","commit_id":"ac86460336f7678258bf4b0455f3e7732a2ebe61"},{"author":{"_account_id":17216,"name":"Martin Schuppert","email":"mschuppert@redhat.com","username":"mcschupp"},"change_message_id":"2a0f4b36962eaa8c3117868b0106b5150f47ee9f","unresolved":true,"context_lines":[{"line_number":92,"context_line":"            tuned_isolated_cores: {get_attr: [RoleParametersValue, value, isolated_cores]}"},{"line_number":93,"context_line":""},{"line_number":94,"context_line":"        - name: Check if any VMs are provisioned. If we have VMs, we consider this environment as already deployed."},{"line_number":95,"context_line":"          shell: openstack server list --all-project --long -c Host -c Status -f value"},{"line_number":96,"context_line":"          register: overcloud_server_list"},{"line_number":97,"context_line":"          # On initial deployment, this command is going to fail"},{"line_number":98,"context_line":"          failed_when: overcloud_server_list.rc \u003e 1"}],"source_content_type":"text/x-yaml","patch_set":23,"id":"f78952a1_2a807778","line":95,"in_reply_to":"f5e7e42f_2309fbde","updated":"2021-03-31 13:18:00.000000000","message":"e.g.:\n[root@controller-0 ~]# podman exec -it -u root nova_api nova-manage cell_v2 list_hosts\n+-----------+--------------------------------------+------------------------+\n| Cell Name |              Cell UUID               |        Hostname        |\n+-----------+--------------------------------------+------------------------+\n|  default  | 1271251a-3f56-4dcb-af69-02ab6fb57c3d | compute-0.redhat.local |\n|  default  | 1271251a-3f56-4dcb-af69-02ab6fb57c3d | compute-1.redhat.local |\n+-----------+--------------------------------------+------------------------+","commit_id":"ac86460336f7678258bf4b0455f3e7732a2ebe61"},{"author":{"_account_id":7144,"name":"James Slagle","email":"jslagle@redhat.com","username":"slagle"},"change_message_id":"a9ac8b1def7bc1384e62c5ada3fa9060480b0fea","unresolved":true,"context_lines":[{"line_number":99,"context_line":"          delegate_to: undercloud"},{"line_number":100,"context_line":"          run_once: yes"},{"line_number":101,"context_line":"          environment:"},{"line_number":102,"context_line":"            OS_CLOUD: {get_param: RootStackName}"},{"line_number":103,"context_line":""},{"line_number":104,"context_line":"        - name: Configure kernel args and reboot"},{"line_number":105,"context_line":"          when: step|int \u003d\u003d 0"}],"source_content_type":"text/x-yaml","patch_set":23,"id":"d2c0fc01_ed75f7e1","line":102,"updated":"2021-03-31 16:28:46.000000000","message":"you need a \"when:step...\" here on the task, otherwise it will run at every step.\n\nalso, +1 to Martin\u0027s idea.","commit_id":"ac86460336f7678258bf4b0455f3e7732a2ebe61"},{"author":{"_account_id":18575,"name":"Saravanan KR","email":"krsacme@gmail.com","username":"saravanankr"},"change_message_id":"43759b8b5bb104d402d4211898260b271270c4d5","unresolved":true,"context_lines":[{"line_number":98,"context_line":"                tail --lines +4 |"},{"line_number":99,"context_line":"                head -n -1 |"},{"line_number":100,"context_line":"                awk \u0027{ print $6; }\u0027"},{"line_number":101,"context_line":"              register: registered_compute_nodes"},{"line_number":102,"context_line":"              delegate_to: \"{{ groups.Controller[0] }}\""},{"line_number":103,"context_line":"              run_once: yes"},{"line_number":104,"context_line":""}],"source_content_type":"text/x-yaml","patch_set":25,"id":"edd4d79c_694bb548","line":101,"updated":"2021-04-07 06:00:40.000000000","message":"Can the cell check be moved inside role [OR] create a param for tripleo_kernel (like compute_active as yes|no), that way tripleo_kernel role only requires the information what it needs to process.","commit_id":"0858ea63703a1c2086afc95d7b8d9a842f2a0840"},{"author":{"_account_id":18575,"name":"Saravanan KR","email":"krsacme@gmail.com","username":"saravanankr"},"change_message_id":"e76948e8fa24130f4bb8bbb57a038ed0d98291b2","unresolved":false,"context_lines":[{"line_number":98,"context_line":"                tail --lines +4 |"},{"line_number":99,"context_line":"                head -n -1 |"},{"line_number":100,"context_line":"                awk \u0027{ print $6; }\u0027"},{"line_number":101,"context_line":"              register: registered_compute_nodes"},{"line_number":102,"context_line":"              delegate_to: \"{{ groups.Controller[0] }}\""},{"line_number":103,"context_line":"              run_once: yes"},{"line_number":104,"context_line":""}],"source_content_type":"text/x-yaml","patch_set":25,"id":"ae710b59_d3a0bb90","line":101,"in_reply_to":"1bd17a36_dfc8b2e3","updated":"2021-04-09 04:45:13.000000000","message":"\u003e Actually, I won\u0027t abandon this change because we still need the node_services part, but will drop the deployment file change and update release notes/commit-msg.\n\nAgree.","commit_id":"0858ea63703a1c2086afc95d7b8d9a842f2a0840"},{"author":{"_account_id":27419,"name":"David Vallee Delisle","email":"me@dvd.dev","username":"dvd"},"change_message_id":"ec059ce3e94052f2506bb5217e673b2b9afdd3e4","unresolved":true,"context_lines":[{"line_number":98,"context_line":"                tail --lines +4 |"},{"line_number":99,"context_line":"                head -n -1 |"},{"line_number":100,"context_line":"                awk \u0027{ print $6; }\u0027"},{"line_number":101,"context_line":"              register: registered_compute_nodes"},{"line_number":102,"context_line":"              delegate_to: \"{{ groups.Controller[0] }}\""},{"line_number":103,"context_line":"              run_once: yes"},{"line_number":104,"context_line":""}],"source_content_type":"text/x-yaml","patch_set":25,"id":"1bd17a36_dfc8b2e3","line":101,"in_reply_to":"89653fd6_354aa325","updated":"2021-04-07 17:42:29.000000000","message":"Actually, I won\u0027t abandon this change because we still need the node_services part, but will drop the deployment file change and update release notes/commit-msg.","commit_id":"0858ea63703a1c2086afc95d7b8d9a842f2a0840"},{"author":{"_account_id":27419,"name":"David Vallee Delisle","email":"me@dvd.dev","username":"dvd"},"change_message_id":"223de3f2500d554b82d6ff74f68dc0d14691e512","unresolved":true,"context_lines":[{"line_number":98,"context_line":"                tail --lines +4 |"},{"line_number":99,"context_line":"                head -n -1 |"},{"line_number":100,"context_line":"                awk \u0027{ print $6; }\u0027"},{"line_number":101,"context_line":"              register: registered_compute_nodes"},{"line_number":102,"context_line":"              delegate_to: \"{{ groups.Controller[0] }}\""},{"line_number":103,"context_line":"              run_once: yes"},{"line_number":104,"context_line":""}],"source_content_type":"text/x-yaml","patch_set":25,"id":"89653fd6_354aa325","line":101,"in_reply_to":"edd4d79c_694bb548","updated":"2021-04-07 16:30:39.000000000","message":"That\u0027s a good idea, I moved it to tripleo-kernel and adding a state file as well. Please, let me know what you think and I\u0027ll abandon this change.","commit_id":"0858ea63703a1c2086afc95d7b8d9a842f2a0840"},{"author":{"_account_id":7144,"name":"James Slagle","email":"jslagle@redhat.com","username":"slagle"},"change_message_id":"2c19d267e5e495ea491b99f3ab80e07df9508997","unresolved":true,"context_lines":[{"line_number":103,"context_line":"                head -n -1 |"},{"line_number":104,"context_line":"                awk \u0027{ print $6; }\u0027"},{"line_number":105,"context_line":"              register: registered_compute_nodes"},{"line_number":106,"context_line":"              delegate_to: \"{{ groups.Controller[0] }}\""},{"line_number":107,"context_line":"              run_once: yes"},{"line_number":108,"context_line":""},{"line_number":109,"context_line":"            - name: Including tripleo-kernel role"}],"source_content_type":"text/x-yaml","patch_set":27,"id":"56ebee3e_7158e17b","line":106,"updated":"2021-04-20 20:50:54.000000000","message":"you probably need to use the nova_api group here. there is no guarantee that the default Controller role is used in every deployment.","commit_id":"08f9fa05c4808bf000426300127d68c43277dc7f"},{"author":{"_account_id":27419,"name":"David Vallee Delisle","email":"me@dvd.dev","username":"dvd"},"change_message_id":"134a90d3d6421af79e236280ec2dc758c39fcd79","unresolved":false,"context_lines":[{"line_number":103,"context_line":"                head -n -1 |"},{"line_number":104,"context_line":"                awk \u0027{ print $6; }\u0027"},{"line_number":105,"context_line":"              register: registered_compute_nodes"},{"line_number":106,"context_line":"              delegate_to: \"{{ groups.Controller[0] }}\""},{"line_number":107,"context_line":"              run_once: yes"},{"line_number":108,"context_line":""},{"line_number":109,"context_line":"            - name: Including tripleo-kernel role"}],"source_content_type":"text/x-yaml","patch_set":27,"id":"6be06619_6b6274a0","line":106,"in_reply_to":"56ebee3e_7158e17b","updated":"2021-04-20 21:33:50.000000000","message":"That\u0027s shouldn\u0027t be there anymore, it was moved to tripleo-kernel with nova_conductor group.","commit_id":"08f9fa05c4808bf000426300127d68c43277dc7f"},{"author":{"_account_id":18575,"name":"Saravanan KR","email":"krsacme@gmail.com","username":"saravanankr"},"change_message_id":"b8db6640def63d5691fff8a30b8bb1d36341e9fa","unresolved":true,"context_lines":[{"line_number":60,"context_line":"    type: boolean"},{"line_number":61,"context_line":"  TsxAutomationState:"},{"line_number":62,"context_line":"    default: \"\""},{"line_number":63,"context_line":"    description: Placeholder to save the TSX automated state in the stack"},{"line_number":64,"context_line":"    type: string"},{"line_number":65,"context_line":""},{"line_number":66,"context_line":"resources:"}],"source_content_type":"text/x-yaml","patch_set":31,"id":"3f582e3b_32597879","line":63,"updated":"2021-04-28 06:41:37.000000000","message":"If it is not supposed to be used by the enduser, can it be captured in the description? Earlier we used to have hidden parameter, but i think it i not more valid, as there is no ui.","commit_id":"08d6c2f6d8a3c8ded82b8d524f3c0b923195b14c"},{"author":{"_account_id":27419,"name":"David Vallee Delisle","email":"me@dvd.dev","username":"dvd"},"change_message_id":"d97fee65ac1176007cb919ed8c84c20af5408408","unresolved":false,"context_lines":[{"line_number":60,"context_line":"    type: boolean"},{"line_number":61,"context_line":"  TsxAutomationState:"},{"line_number":62,"context_line":"    default: \"\""},{"line_number":63,"context_line":"    description: Placeholder to save the TSX automated state in the stack"},{"line_number":64,"context_line":"    type: string"},{"line_number":65,"context_line":""},{"line_number":66,"context_line":"resources:"}],"source_content_type":"text/x-yaml","patch_set":31,"id":"1a6bc571_7a862276","line":63,"in_reply_to":"3f582e3b_32597879","updated":"2021-04-28 11:31:11.000000000","message":"I don\u0027t think this is going to be necessary. I did some tests and since we check all the computes to see if they have tsx enabled, the state will be set to on anyways. I\u0027ll drop this.\n\nLine 163: https://review.opendev.org/c/openstack/tripleo-ansible/+/783969/56/tripleo_ansible/roles/tripleo_kernel/tasks/tsx_automation.yml","commit_id":"08d6c2f6d8a3c8ded82b8d524f3c0b923195b14c"}],"deployment/undercloud/undercloud-upgrade.yaml":[{"author":{"_account_id":17216,"name":"Martin Schuppert","email":"mschuppert@redhat.com","username":"mcschupp"},"change_message_id":"8e9df373c11f34165e0ee456a67aed9e8379739d","unresolved":true,"context_lines":[{"line_number":58,"context_line":"        step_config: \u0027\u0027"},{"line_number":59,"context_line":"        config_image: \u0027\u0027"},{"line_number":60,"context_line":"      upgrade_tasks:"},{"line_number":61,"context_line":"        - name: Keep a copy of rhosp-release to track updates"},{"line_number":62,"context_line":"          copy:"},{"line_number":63,"context_line":"            remote_src: yes"},{"line_number":64,"context_line":"            force: no"}],"source_content_type":"text/x-yaml","patch_set":6,"id":"a333636a_796c1360","line":61,"updated":"2021-02-22 07:55:37.000000000","message":"maybe better to say \"save information on original OSP release version\"?","commit_id":"e173d381ff61323977b356c0740b30bccfa58aae"},{"author":{"_account_id":27419,"name":"David Vallee Delisle","email":"me@dvd.dev","username":"dvd"},"change_message_id":"6cd5d38382cafbd2b101ec70c5a860ce5017ac2f","unresolved":false,"context_lines":[{"line_number":58,"context_line":"        step_config: \u0027\u0027"},{"line_number":59,"context_line":"        config_image: \u0027\u0027"},{"line_number":60,"context_line":"      upgrade_tasks:"},{"line_number":61,"context_line":"        - name: Keep a copy of rhosp-release to track updates"},{"line_number":62,"context_line":"          copy:"},{"line_number":63,"context_line":"            remote_src: yes"},{"line_number":64,"context_line":"            force: no"}],"source_content_type":"text/x-yaml","patch_set":6,"id":"95cddc83_7905a54d","line":61,"in_reply_to":"a333636a_796c1360","updated":"2021-02-22 13:37:53.000000000","message":"Done","commit_id":"e173d381ff61323977b356c0740b30bccfa58aae"}],"puppet/role.role.j2.yaml":[{"author":{"_account_id":18575,"name":"Saravanan KR","email":"krsacme@gmail.com","username":"saravanankr"},"change_message_id":"251140a1a5c503da0f63ed77e8f5880cee5cc478","unresolved":true,"context_lines":[{"line_number":450,"context_line":"        fqdn_canonical: {get_attr: [NetHostMap, value, canonical, fqdn]}"},{"line_number":451,"context_line":"        hostname_resolve_network: {get_param: [ServiceNetMap, {{role.name}}HostnameResolveNetwork]}"},{"line_number":452,"context_line":"        ovn_chassis_mac_map: {get_attr: [{{server_resource_name}}OVNChassisMacMap, value]}"},{"line_number":453,"context_line":"        node_services: {get_param: ServiceNames}"},{"line_number":454,"context_line":""},{"line_number":455,"context_line":"  {{server_resource_name}}OVNChassisMacPorts:"},{"line_number":456,"context_line":"    type: OS::Heat::ResourceGroup"}],"source_content_type":"text/x-yaml","patch_set":23,"id":"8c494039_86dbba95","line":453,"updated":"2021-03-31 04:37:01.000000000","message":"Not relevant to this patch.","commit_id":"ac86460336f7678258bf4b0455f3e7732a2ebe61"},{"author":{"_account_id":27419,"name":"David Vallee Delisle","email":"me@dvd.dev","username":"dvd"},"change_message_id":"cd1f4f456b74121c57d6df4e87bf9e702eecc9b2","unresolved":true,"context_lines":[{"line_number":450,"context_line":"        fqdn_canonical: {get_attr: [NetHostMap, value, canonical, fqdn]}"},{"line_number":451,"context_line":"        hostname_resolve_network: {get_param: [ServiceNetMap, {{role.name}}HostnameResolveNetwork]}"},{"line_number":452,"context_line":"        ovn_chassis_mac_map: {get_attr: [{{server_resource_name}}OVNChassisMacMap, value]}"},{"line_number":453,"context_line":"        node_services: {get_param: ServiceNames}"},{"line_number":454,"context_line":""},{"line_number":455,"context_line":"  {{server_resource_name}}OVNChassisMacPorts:"},{"line_number":456,"context_line":"    type: OS::Heat::ResourceGroup"}],"source_content_type":"text/x-yaml","patch_set":23,"id":"e3c94bf1_0926f778","line":453,"in_reply_to":"8c494039_86dbba95","updated":"2021-03-31 13:11:23.000000000","message":"We use this var in tripleo-kernel, on line #35 [1]\n\n[1] https://review.opendev.org/c/openstack/tripleo-ansible/+/783969/2/tripleo_ansible/roles/tripleo_kernel/tasks/kernelargs.yml","commit_id":"ac86460336f7678258bf4b0455f3e7732a2ebe61"}],"releasenotes/notes/get-vm-list-64acf7e8fc768acc.yaml":[{"author":{"_account_id":18575,"name":"Saravanan KR","email":"krsacme@gmail.com","username":"saravanankr"},"change_message_id":"09ad7bfb24e1942496c6f92c2711e21bb117b867","unresolved":true,"context_lines":[{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    For the purpose of determining if an environment is freshly deployed or"},{"line_number":5,"context_line":"    already deployed, the most accurate way of achieving this is to pull a"},{"line_number":6,"context_line":"    list of VMs running. This is then passed to tripleo-kernel which is"},{"line_number":7,"context_line":"    going to use this data to compute the TSX Flag"}],"source_content_type":"text/x-yaml","patch_set":25,"id":"b3339790_66658061","line":6,"range":{"start_line":6,"start_character":4,"end_line":6,"end_character":23},"updated":"2021-04-07 06:04:12.000000000","message":"Release note need to aligned with the latest change based on cell.","commit_id":"0858ea63703a1c2086afc95d7b8d9a842f2a0840"}]}
