)]}'
{"manifests/dpdk.pp":[{"author":{"_account_id":18904,"name":"Karthik S","email":"ksundara@redhat.com","username":"karthiks"},"change_message_id":"bdfece3e78af95f3b7d76e2272d6041f173aa70d","unresolved":false,"context_lines":[{"line_number":93,"context_line":"    warning(\u0027core_list is deprecated, will be used when host_core_list is not defined and will be removed in a future release.\u0027)"},{"line_number":94,"context_line":"    $core_list_string \u003d $core_list"},{"line_number":95,"context_line":"  }"},{"line_number":96,"context_line":"  else {"},{"line_number":97,"context_line":"    fail(\u0027host_core_list must be set for ovs agent when DPDK is enabled\u0027)"},{"line_number":98,"context_line":"  }"},{"line_number":99,"context_line":"  $options \u003d \"DPDK_OPTIONS \u003d \\\"-l ${core_list_string} -n ${memory_channels} ${socket_string} ${white_list}\\\"\""}],"source_content_type":"text/x-puppet","patch_set":1,"id":"dfeb2761_86238856","line":96,"updated":"2017-04-04 14:51:19.000000000","message":"For OvS 2.6, its not mandatory to have this param.\nFor OvS 2.5, its mandatory.  Should we fail ?","commit_id":"4d9e388a90b5cdfea06f8d3881db12950bd0c298"},{"author":{"_account_id":18904,"name":"Karthik S","email":"ksundara@redhat.com","username":"karthiks"},"change_message_id":"3e500f0b868c4f6407c148981997960d83c77735","unresolved":false,"context_lines":[{"line_number":93,"context_line":"    warning(\u0027core_list is deprecated, will be used when host_core_list is not defined and will be removed in a future release.\u0027)"},{"line_number":94,"context_line":"    $core_list_string \u003d $core_list"},{"line_number":95,"context_line":"  }"},{"line_number":96,"context_line":"  else {"},{"line_number":97,"context_line":"    fail(\u0027host_core_list must be set for ovs agent when DPDK is enabled\u0027)"},{"line_number":98,"context_line":"  }"},{"line_number":99,"context_line":"  $options \u003d \"DPDK_OPTIONS \u003d \\\"-l ${core_list_string} -n ${memory_channels} ${socket_string} ${white_list}\\\"\""}],"source_content_type":"text/x-puppet","patch_set":1,"id":"dfeb2761_9a999cc5","line":96,"in_reply_to":"dfeb2761_86238856","updated":"2017-04-04 14:57:28.000000000","message":"In case we don\u0027t fail, we will need\n$core_list_string \u003d undef","commit_id":"4d9e388a90b5cdfea06f8d3881db12950bd0c298"},{"author":{"_account_id":18904,"name":"Karthik S","email":"ksundara@redhat.com","username":"karthiks"},"change_message_id":"bdfece3e78af95f3b7d76e2272d6041f173aa70d","unresolved":false,"context_lines":[{"line_number":96,"context_line":"  else {"},{"line_number":97,"context_line":"    fail(\u0027host_core_list must be set for ovs agent when DPDK is enabled\u0027)"},{"line_number":98,"context_line":"  }"},{"line_number":99,"context_line":"  $options \u003d \"DPDK_OPTIONS \u003d \\\"-l ${core_list_string} -n ${memory_channels} ${socket_string} ${white_list}\\\"\""},{"line_number":100,"context_line":"  if $pmd_core_list {"},{"line_number":101,"context_line":"    $pmd_core_list_updated \u003d inline_template(\u0027\u003c%\u003d @pmd_core_list.split(\",\").map{|c| c.include?(\"-\")?(c.split(\"-\").map(\u0026:to_i)[0]..c.split(\"-\").map(\u0026:to_i)[1]).to_a.join(\",\"):c}.join(\",\") %\u003e\u0027)"},{"line_number":102,"context_line":"    $pmd_core_mask \u003d inline_template(\u0027\u003c%\u003d @pmd_core_list_updated.split(\",\").map{|c| 1\u003c\u003cc.to_i}.inject(0,:|).to_s(16)  %\u003e\u0027)"}],"source_content_type":"text/x-puppet","patch_set":1,"id":"dfeb2761_464d80c2","line":99,"updated":"2017-04-04 14:51:19.000000000","message":"Need to add\n  file_line { \u0027/etc/sysconfig/openvswitch\u0027:                                     \n    path    \u003d\u003e \u0027/etc/sysconfig/openvswitch\u0027,                                    \n    match   \u003d\u003e \u0027^DPDK_OPTIONS.*\u0027,                                               \n    line    \u003d\u003e $options,                                                        \n    require \u003d\u003e Package[$::vswitch::params::ovs_dpdk_package_name],              \n    before  \u003d\u003e Service[\u0027openvswitch\u0027],                                          \n  }","commit_id":"4d9e388a90b5cdfea06f8d3881db12950bd0c298"},{"author":{"_account_id":18904,"name":"Karthik S","email":"ksundara@redhat.com","username":"karthiks"},"change_message_id":"bdfece3e78af95f3b7d76e2272d6041f173aa70d","unresolved":false,"context_lines":[{"line_number":97,"context_line":"    fail(\u0027host_core_list must be set for ovs agent when DPDK is enabled\u0027)"},{"line_number":98,"context_line":"  }"},{"line_number":99,"context_line":"  $options \u003d \"DPDK_OPTIONS \u003d \\\"-l ${core_list_string} -n ${memory_channels} ${socket_string} ${white_list}\\\"\""},{"line_number":100,"context_line":"  if $pmd_core_list {"},{"line_number":101,"context_line":"    $pmd_core_list_updated \u003d inline_template(\u0027\u003c%\u003d @pmd_core_list.split(\",\").map{|c| c.include?(\"-\")?(c.split(\"-\").map(\u0026:to_i)[0]..c.split(\"-\").map(\u0026:to_i)[1]).to_a.join(\",\"):c}.join(\",\") %\u003e\u0027)"},{"line_number":102,"context_line":"    $pmd_core_mask \u003d inline_template(\u0027\u003c%\u003d @pmd_core_list_updated.split(\",\").map{|c| 1\u003c\u003cc.to_i}.inject(0,:|).to_s(16)  %\u003e\u0027)"},{"line_number":103,"context_line":"  }"}],"source_content_type":"text/x-puppet","patch_set":1,"id":"dfeb2761_06641849","line":100,"range":{"start_line":100,"start_character":6,"end_line":100,"end_character":19},"updated":"2017-04-04 14:51:19.000000000","message":"if $pmd_core_list and !empty($pmd_core_list){","commit_id":"4d9e388a90b5cdfea06f8d3881db12950bd0c298"},{"author":{"_account_id":18904,"name":"Karthik S","email":"ksundara@redhat.com","username":"karthiks"},"change_message_id":"bdfece3e78af95f3b7d76e2272d6041f173aa70d","unresolved":false,"context_lines":[{"line_number":106,"context_line":"  }"},{"line_number":107,"context_line":""},{"line_number":108,"context_line":""},{"line_number":109,"context_line":"  if $host_core_list and !empty($host_core_list) {"},{"line_number":110,"context_line":"    $host_core_list_updated \u003d inline_template(\u0027\u003c%\u003d @host_core_list.split(\",\").map{|c| c.include?(\"-\")?(c.split(\"-\").map(\u0026:to_i)[0]..c.split(\"-\").map(\u0026:to_i)[1]).to_a.join(\",\"):c}.join(\",\") %\u003e\u0027)"},{"line_number":111,"context_line":"    $dpdk_lcore_mask \u003d inline_template(\u0027\u003c%\u003d @host_core_list_updated.split(\",\").map{|c| 1\u003c\u003cc.to_i}.inject(0,:|).to_s(16)  %\u003e\u0027)"},{"line_number":112,"context_line":"  }"}],"source_content_type":"text/x-puppet","patch_set":1,"id":"dfeb2761_46758031","line":109,"updated":"2017-04-04 14:51:19.000000000","message":"s/host_core_list/core_list_string/ would retain backward compatibility as well","commit_id":"4d9e388a90b5cdfea06f8d3881db12950bd0c298"},{"author":{"_account_id":8297,"name":"Sofer Athlan-Guyot","email":"sathlang@redhat.com","username":"chem"},"change_message_id":"d58029d109693ba2fdc68247787d6a65b0905bee","unresolved":false,"context_lines":[{"line_number":71,"context_line":"  # DPDK_OPTIONS is no longer used in ovs 2.6, since it was a distribution"},{"line_number":72,"context_line":"  # specific hack to the ovs-ctl scripts. Instead dpdk information is"},{"line_number":73,"context_line":"  # pulled from the ovsdb."},{"line_number":74,"context_line":"  if $socket_mem {"},{"line_number":75,"context_line":"    $socket_string \u003d \"--socket-mem ${socket_mem}\""},{"line_number":76,"context_line":"  }"},{"line_number":77,"context_line":"  else {"}],"source_content_type":"text/x-puppet","patch_set":4,"id":"dfeb2761_018746b7","line":74,"range":{"start_line":74,"start_character":5,"end_line":74,"end_character":16},"updated":"2017-04-05 08:16:48.000000000","message":"True under puppe4, false under puppet3 for the empty string.","commit_id":"382ab000b3590c557d061622ef83694897f74cb9"},{"author":{"_account_id":8297,"name":"Sofer Athlan-Guyot","email":"sathlang@redhat.com","username":"chem"},"change_message_id":"d58029d109693ba2fdc68247787d6a65b0905bee","unresolved":false,"context_lines":[{"line_number":77,"context_line":"  else {"},{"line_number":78,"context_line":"    $socket_string \u003d undef"},{"line_number":79,"context_line":"  }"},{"line_number":80,"context_line":"  if $driver_type {"},{"line_number":81,"context_line":"    $pci_list \u003d inline_template(\u0027\u003c%\u003d Facter.value(\"pci_address_driver_#@driver_type\") %\u003e\u0027)"},{"line_number":82,"context_line":"    if empty($pci_list) {"},{"line_number":83,"context_line":"      $white_list \u003d undef"}],"source_content_type":"text/x-puppet","patch_set":4,"id":"dfeb2761_61b5f27d","line":80,"range":{"start_line":80,"start_character":6,"end_line":80,"end_character":17},"updated":"2017-04-05 08:16:48.000000000","message":"The same.","commit_id":"382ab000b3590c557d061622ef83694897f74cb9"},{"author":{"_account_id":8297,"name":"Sofer Athlan-Guyot","email":"sathlang@redhat.com","username":"chem"},"change_message_id":"d58029d109693ba2fdc68247787d6a65b0905bee","unresolved":false,"context_lines":[{"line_number":86,"context_line":"      $white_list \u003d inline_template(\u0027-w \u003c%\u003d @pci_list.gsub(\",\", \" -w \") %\u003e\u0027)"},{"line_number":87,"context_line":"    }"},{"line_number":88,"context_line":"  }"},{"line_number":89,"context_line":"  if $host_core_list {"},{"line_number":90,"context_line":"    $core_list_string \u003d $host_core_list"},{"line_number":91,"context_line":"  }"},{"line_number":92,"context_line":"  elsif $core_list {"}],"source_content_type":"text/x-puppet","patch_set":4,"id":"dfeb2761_a1de5a0e","line":89,"range":{"start_line":89,"start_character":5,"end_line":89,"end_character":20},"updated":"2017-04-05 08:16:48.000000000","message":"This evaluate to true with puppet4 and to false with puppet3[1]\n\n\n[1] https://docs.puppet.com/puppet/4.9/lang_updating_manifests.html#empty-strings-in-boolean-context-are-true\n\nWhen passing empty string in the test, we have:\n\n - puppet4:\n\ncore_list_string \u003d \u0027\u0027\n\n - puppet3:\n\nfail(\u0027host ...\u0027)\n\n   as no value is true.\n\nIs the puppet4 behavior the expected one, ie, having core_list_string set to the empty sting if the parameter is empty ?  If so, then we can have the same behavior by using this conditional instead:\n\n   if $host_core_list or $host_core_list \u003d\u003d \u0027\u0027 {","commit_id":"382ab000b3590c557d061622ef83694897f74cb9"},{"author":{"_account_id":18904,"name":"Karthik S","email":"ksundara@redhat.com","username":"karthiks"},"change_message_id":"0058120603c15bc79f7fea966ea186d57ad1531a","unresolved":false,"context_lines":[{"line_number":86,"context_line":"      $white_list \u003d inline_template(\u0027-w \u003c%\u003d @pci_list.gsub(\",\", \" -w \") %\u003e\u0027)"},{"line_number":87,"context_line":"    }"},{"line_number":88,"context_line":"  }"},{"line_number":89,"context_line":"  if $host_core_list {"},{"line_number":90,"context_line":"    $core_list_string \u003d $host_core_list"},{"line_number":91,"context_line":"  }"},{"line_number":92,"context_line":"  elsif $core_list {"}],"source_content_type":"text/x-puppet","patch_set":4,"id":"dfeb2761_ca196e7a","line":89,"range":{"start_line":89,"start_character":5,"end_line":89,"end_character":20},"in_reply_to":"dfeb2761_a1de5a0e","updated":"2017-04-05 10:45:56.000000000","message":"In case of empty string , I think we shall treat it like undef and fail the deployment. if that\u0027s the case, we can leave it as it is.","commit_id":"382ab000b3590c557d061622ef83694897f74cb9"},{"author":{"_account_id":8297,"name":"Sofer Athlan-Guyot","email":"sathlang@redhat.com","username":"chem"},"change_message_id":"d58029d109693ba2fdc68247787d6a65b0905bee","unresolved":false,"context_lines":[{"line_number":89,"context_line":"  if $host_core_list {"},{"line_number":90,"context_line":"    $core_list_string \u003d $host_core_list"},{"line_number":91,"context_line":"  }"},{"line_number":92,"context_line":"  elsif $core_list {"},{"line_number":93,"context_line":"    warning(\u0027core_list is deprecated, will be used when host_core_list is not defined and will be removed in a future release.\u0027)"},{"line_number":94,"context_line":"    $core_list_string \u003d $core_list"},{"line_number":95,"context_line":"  }"}],"source_content_type":"text/x-puppet","patch_set":4,"id":"dfeb2761_dc19457a","line":92,"range":{"start_line":92,"start_character":8,"end_line":92,"end_character":18},"updated":"2017-04-05 08:16:48.000000000","message":"The same.","commit_id":"382ab000b3590c557d061622ef83694897f74cb9"},{"author":{"_account_id":8297,"name":"Sofer Athlan-Guyot","email":"sathlang@redhat.com","username":"chem"},"change_message_id":"d58029d109693ba2fdc68247787d6a65b0905bee","unresolved":false,"context_lines":[{"line_number":107,"context_line":"    before  \u003d\u003e Service[\u0027openvswitch\u0027],"},{"line_number":108,"context_line":"  }"},{"line_number":109,"context_line":""},{"line_number":110,"context_line":"  if $pmd_core_list and !empty($pmd_core_list) {"},{"line_number":111,"context_line":"    $pmd_core_list_updated \u003d inline_template(\u0027\u003c%\u003d @pmd_core_list.split(\",\").map{|c| c.include?(\"-\")?(c.split(\"-\").map(\u0026:to_i)[0]..c.split(\"-\").map(\u0026:to_i)[1]).to_a.join(\",\"):c}.join(\",\") %\u003e\u0027)"},{"line_number":112,"context_line":"    $pmd_core_mask \u003d inline_template(\u0027\u003c%\u003d @pmd_core_list_updated.split(\",\").map{|c| 1\u003c\u003cc.to_i}.inject(0,:|).to_s(16)  %\u003e\u0027)"},{"line_number":113,"context_line":"  }"}],"source_content_type":"text/x-puppet","patch_set":4,"id":"dfeb2761_015e2643","line":110,"range":{"start_line":110,"start_character":5,"end_line":110,"end_character":46},"updated":"2017-04-05 08:16:48.000000000","message":"Will never reach !empty under puppet3 as it $pmd_core_list will always be false, but I guess that it\u0027s kind of oki here.","commit_id":"382ab000b3590c557d061622ef83694897f74cb9"},{"author":{"_account_id":8297,"name":"Sofer Athlan-Guyot","email":"sathlang@redhat.com","username":"chem"},"change_message_id":"3049fa615136a017599608eb0bd9f9af11469a37","unresolved":false,"context_lines":[{"line_number":94,"context_line":"    $core_list_string \u003d $core_list"},{"line_number":95,"context_line":"  }"},{"line_number":96,"context_line":"  else {"},{"line_number":97,"context_line":"    fail(\u0027host_core_list must be set for ovs agent when DPDK is enabled\u0027)"},{"line_number":98,"context_line":"  }"},{"line_number":99,"context_line":""},{"line_number":100,"context_line":"  $options \u003d \"DPDK_OPTIONS \u003d \\\"-l ${core_list_string} -n ${memory_channels} ${socket_string} ${white_list}\\\"\""}],"source_content_type":"text/x-puppet","patch_set":5,"id":"bff0334d_c091fef3","line":97,"updated":"2017-04-05 13:11:51.000000000","message":"When host_core_list and core_list are empty we raise an error.  This is not the same as in master where we can go on with those values set to empty.","commit_id":"0c67d7ae00b9dd7d56ee9a562788a244ef743b55"},{"author":{"_account_id":18904,"name":"Karthik S","email":"ksundara@redhat.com","username":"karthiks"},"change_message_id":"b6a4adcefb2e8015a89349aa4de170aa56c38787","unresolved":false,"context_lines":[{"line_number":107,"context_line":"    before  \u003d\u003e Service[\u0027openvswitch\u0027],"},{"line_number":108,"context_line":"  }"},{"line_number":109,"context_line":""},{"line_number":110,"context_line":"  if ($pmd_core_list and !empty($core_list_string)) and !empty($pmd_core_list) {"},{"line_number":111,"context_line":"    $pmd_core_list_updated \u003d inline_template(\u0027\u003c%\u003d @pmd_core_list.split(\",\").map{|c| c.include?(\"-\")?(c.split(\"-\").map(\u0026:to_i)[0]..c.split(\"-\").map(\u0026:to_i)[1]).to_a.join(\",\"):c}.join(\",\") %\u003e\u0027)"},{"line_number":112,"context_line":"    $pmd_core_mask \u003d inline_template(\u0027\u003c%\u003d @pmd_core_list_updated.split(\",\").map{|c| 1\u003c\u003cc.to_i}.inject(0,:|).to_s(16)  %\u003e\u0027)"},{"line_number":113,"context_line":"  }"}],"source_content_type":"text/x-puppet","patch_set":5,"id":"bff0334d_d53416e1","line":110,"range":{"start_line":110,"start_character":26,"end_line":110,"end_character":51},"updated":"2017-04-05 15:15:03.000000000","message":"!empty($pmd_core_list)","commit_id":"0c67d7ae00b9dd7d56ee9a562788a244ef743b55"},{"author":{"_account_id":8297,"name":"Sofer Athlan-Guyot","email":"sathlang@redhat.com","username":"chem"},"change_message_id":"fdb487e062797f2e1384d0d89e7353bd8c90e63a","unresolved":false,"context_lines":[{"line_number":107,"context_line":"    before  \u003d\u003e Service[\u0027openvswitch\u0027],"},{"line_number":108,"context_line":"  }"},{"line_number":109,"context_line":""},{"line_number":110,"context_line":"  if ($pmd_core_list and !empty($core_list_string)) and !empty($pmd_core_list) {"},{"line_number":111,"context_line":"    $pmd_core_list_updated \u003d inline_template(\u0027\u003c%\u003d @pmd_core_list.split(\",\").map{|c| c.include?(\"-\")?(c.split(\"-\").map(\u0026:to_i)[0]..c.split(\"-\").map(\u0026:to_i)[1]).to_a.join(\",\"):c}.join(\",\") %\u003e\u0027)"},{"line_number":112,"context_line":"    $pmd_core_mask \u003d inline_template(\u0027\u003c%\u003d @pmd_core_list_updated.split(\",\").map{|c| 1\u003c\u003cc.to_i}.inject(0,:|).to_s(16)  %\u003e\u0027)"},{"line_number":113,"context_line":"  }"}],"source_content_type":"text/x-puppet","patch_set":5,"id":"bff0334d_d5c89675","line":110,"range":{"start_line":110,"start_character":26,"end_line":110,"end_character":51},"in_reply_to":"bff0334d_d53416e1","updated":"2017-04-05 15:24:46.000000000","message":"typo","commit_id":"0c67d7ae00b9dd7d56ee9a562788a244ef743b55"}],"spec/classes/vswitch_dpdk_spec.rb":[{"author":{"_account_id":8297,"name":"Sofer Athlan-Guyot","email":"sathlang@redhat.com","username":"chem"},"change_message_id":"d58029d109693ba2fdc68247787d6a65b0905bee","unresolved":false,"context_lines":[{"line_number":78,"context_line":""},{"line_number":79,"context_line":"    context \u0027when passing all empty params\u0027 do"},{"line_number":80,"context_line":"      before :each do"},{"line_number":81,"context_line":"        params.merge!(:host_core_list  \u003d\u003e \u0027\u0027)"},{"line_number":82,"context_line":"        params.merge!(:socket_mem      \u003d\u003e \u0027\u0027)"},{"line_number":83,"context_line":"        params.merge!(:memory_channels \u003d\u003e \u0027\u0027 )"},{"line_number":84,"context_line":"        params.merge!(:pmd_core_list \u003d\u003e \u0027\u0027)"},{"line_number":85,"context_line":"      end"},{"line_number":86,"context_line":"      it \u0027configures dpdk options\u0027 do"},{"line_number":87,"context_line":"        is_expected.to contain_file_line(\u0027/etc/sysconfig/openvswitch\u0027).with("}],"source_content_type":"text/x-ruby","patch_set":4,"id":"dfeb2761_61329260","line":84,"range":{"start_line":81,"start_character":0,"end_line":84,"end_character":43},"updated":"2017-04-05 08:16:48.000000000","message":"Those values will be true with puppet4 (which in the only tested puppet on master) and false with puppet3 (which is included in the backport test)\n\nThis lead to the error for puppet 3 as everything is false and no default value is taken.","commit_id":"382ab000b3590c557d061622ef83694897f74cb9"}]}
