)]}'
{"manifests/compute/libvirt/qemu.pp":[{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"91e68fe3b79ba7aadcee88a55317df11d15d3046","unresolved":false,"context_lines":[{"line_number":51,"context_line":""},{"line_number":52,"context_line":"    if $vnc_tls {"},{"line_number":53,"context_line":"      $vnc_tls_value \u003d 1"},{"line_number":54,"context_line":"      if $vnc_tls_verify {"},{"line_number":55,"context_line":"        $vnc_tls_verify_value \u003d 1"},{"line_number":56,"context_line":"      } else {"},{"line_number":57,"context_line":"        $vnc_tls_verify_value \u003d 0"},{"line_number":58,"context_line":"      }"},{"line_number":59,"context_line":"    } else {"},{"line_number":60,"context_line":"      $vnc_tls_value \u003d 0"},{"line_number":61,"context_line":"      $vnc_tls_verify_value \u003d 0"}],"source_content_type":"text/x-puppet","patch_set":10,"id":"5f93b717_9971f8e3","line":58,"range":{"start_line":54,"start_character":0,"end_line":58,"end_character":7},"updated":"2018-01-25 12:00:15.000000000","message":"I\u0027m not sure if there\u0027s actually a hard dependency on these options, but it probably doesn\u0027t make sense to set the latter without the former anyway so...","commit_id":"a1bceeed21c85448a52627e60e32fd2abac2270f"},{"author":{"_account_id":1004,"name":"Mohammed Naser","email":"mnaser@vexxhost.com","username":"mnaser"},"change_message_id":"83a441db445d970e4b129dffb889d40b9a8922b8","unresolved":false,"context_lines":[{"line_number":49,"context_line":""},{"line_number":50,"context_line":"  if $configure_qemu {"},{"line_number":51,"context_line":""},{"line_number":52,"context_line":"    if $vnc_tls {"},{"line_number":53,"context_line":"      $vnc_tls_value \u003d 1"},{"line_number":54,"context_line":"      if $vnc_tls_verify {"},{"line_number":55,"context_line":"        $vnc_tls_verify_value \u003d 1"},{"line_number":56,"context_line":"      } else {"},{"line_number":57,"context_line":"        $vnc_tls_verify_value \u003d 0"},{"line_number":58,"context_line":"      }"},{"line_number":59,"context_line":"    } else {"},{"line_number":60,"context_line":"      $vnc_tls_value \u003d 0"},{"line_number":61,"context_line":"      $vnc_tls_verify_value \u003d 0"},{"line_number":62,"context_line":"    }"},{"line_number":63,"context_line":""},{"line_number":64,"context_line":"    $augues_changes_default \u003d ["},{"line_number":65,"context_line":"      \"set max_files ${max_files}\","}],"source_content_type":"text/x-puppet","patch_set":15,"id":"5f93b717_2f549ffe","line":62,"range":{"start_line":52,"start_character":0,"end_line":62,"end_character":5},"updated":"2018-01-30 16:23:03.000000000","message":"This is okay but worth to note about Puppet\u0027s ternary operators.\n\n$vnc_tls_value \u003d $vnc_tls ? { true \u003d\u003e 1, false \u003d\u003e 0 }","commit_id":"f8020f0256b9d626f3028e42624d44cd73451fff"},{"author":{"_account_id":23811,"name":"Oliver Walsh","email":"owalsh@redhat.com","username":"owalsh"},"change_message_id":"19349d4941851958fcf2b8ad285b41866e3869c7","unresolved":false,"context_lines":[{"line_number":49,"context_line":""},{"line_number":50,"context_line":"  if $configure_qemu {"},{"line_number":51,"context_line":""},{"line_number":52,"context_line":"    if $vnc_tls {"},{"line_number":53,"context_line":"      $vnc_tls_value \u003d 1"},{"line_number":54,"context_line":"      if $vnc_tls_verify {"},{"line_number":55,"context_line":"        $vnc_tls_verify_value \u003d 1"},{"line_number":56,"context_line":"      } else {"},{"line_number":57,"context_line":"        $vnc_tls_verify_value \u003d 0"},{"line_number":58,"context_line":"      }"},{"line_number":59,"context_line":"    } else {"},{"line_number":60,"context_line":"      $vnc_tls_value \u003d 0"},{"line_number":61,"context_line":"      $vnc_tls_verify_value \u003d 0"},{"line_number":62,"context_line":"    }"},{"line_number":63,"context_line":""},{"line_number":64,"context_line":"    $augues_changes_default \u003d ["},{"line_number":65,"context_line":"      \"set max_files ${max_files}\","}],"source_content_type":"text/x-puppet","patch_set":15,"id":"5f93b717_c74cff43","line":62,"range":{"start_line":52,"start_character":0,"end_line":62,"end_character":5},"in_reply_to":"5f93b717_2f549ffe","updated":"2018-01-30 19:33:00.000000000","message":"ack, would be easier to read I think, but would still need the outer if statement, i.e:\n\n    if $vnc_tls {\n      $vnc_tls_value \u003d 1\n      $vnc_tls_verify_value \u003d $vnc_tls_verify ? { true \u003d\u003e 1, false \u003d\u003e 0}\n    } else { ...","commit_id":"f8020f0256b9d626f3028e42624d44cd73451fff"}],"manifests/vncproxy.pp":[{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"91e68fe3b79ba7aadcee88a55317df11d15d3046","unresolved":false,"context_lines":[{"line_number":82,"context_line":"      } else {"},{"line_number":83,"context_line":"        $auth_schemes \u003d \u0027vencrypt\u0027"},{"line_number":84,"context_line":"      }"},{"line_number":85,"context_line":"  } elsif $allow_noauth {"},{"line_number":86,"context_line":"    $auth_schemes \u003d \u0027none\u0027"},{"line_number":87,"context_line":"  }"},{"line_number":88,"context_line":"  else {"}],"source_content_type":"text/x-puppet","patch_set":10,"id":"5f93b717_994a587e","line":85,"range":{"start_line":85,"start_character":4,"end_line":85,"end_character":9},"updated":"2018-01-25 12:00:15.000000000","message":"Was going to point out a typo, but this isn\u0027t Python :)","commit_id":"a1bceeed21c85448a52627e60e32fd2abac2270f"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"91e68fe3b79ba7aadcee88a55317df11d15d3046","unresolved":false,"context_lines":[{"line_number":85,"context_line":"  } elsif $allow_noauth {"},{"line_number":86,"context_line":"    $auth_schemes \u003d \u0027none\u0027"},{"line_number":87,"context_line":"  }"},{"line_number":88,"context_line":"  else {"},{"line_number":89,"context_line":"    $auth_schemes\u003d\u0027\u0027"},{"line_number":90,"context_line":"  }"},{"line_number":91,"context_line":""},{"line_number":92,"context_line":"  nova_config {"},{"line_number":93,"context_line":"    \u0027vnc/novncproxy_host\u0027: value \u003d\u003e $host;"}],"source_content_type":"text/x-puppet","patch_set":10,"id":"5f93b717_590a9026","line":90,"range":{"start_line":88,"start_character":0,"end_line":90,"end_character":3},"updated":"2018-01-25 12:00:15.000000000","message":"Oh, now I don\u0027t think this is correct. If neither of the authentication types are allowed, we\u0027re not going to be able to connect and nova will raise an exception [1]. I\u0027m guessing we can either protect the user from this misconfiguration here or in nova. Thoughts?\n\n[1] https://github.com/openstack/nova/blob/233285de490b822f4ad47a11d308dcc19e439a04/nova/console/rfb/auths.py#L47-L53","commit_id":"a1bceeed21c85448a52627e60e32fd2abac2270f"},{"author":{"_account_id":23811,"name":"Oliver Walsh","email":"owalsh@redhat.com","username":"owalsh"},"change_message_id":"a9dc5c0404a90cd1bf6ece6847d1c469338e0a3c","unresolved":false,"context_lines":[{"line_number":85,"context_line":"  } elsif $allow_noauth {"},{"line_number":86,"context_line":"    $auth_schemes \u003d \u0027none\u0027"},{"line_number":87,"context_line":"  }"},{"line_number":88,"context_line":"  else {"},{"line_number":89,"context_line":"    $auth_schemes\u003d\u0027\u0027"},{"line_number":90,"context_line":"  }"},{"line_number":91,"context_line":""},{"line_number":92,"context_line":"  nova_config {"},{"line_number":93,"context_line":"    \u0027vnc/novncproxy_host\u0027: value \u003d\u003e $host;"}],"source_content_type":"text/x-puppet","patch_set":10,"id":"5f93b717_81e65e16","line":90,"range":{"start_line":88,"start_character":0,"end_line":90,"end_character":3},"in_reply_to":"5f93b717_590a9026","updated":"2018-01-25 12:11:46.000000000","message":"Yea, better to fail early. IIRC that\u0027s what I had originally, not sure why I changed it.","commit_id":"a1bceeed21c85448a52627e60e32fd2abac2270f"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"91e68fe3b79ba7aadcee88a55317df11d15d3046","unresolved":false,"context_lines":[{"line_number":100,"context_line":"      \u0027vnc/vencrypt_ca_certs\u0027: value \u003d\u003e $vencrypt_ca"},{"line_number":101,"context_line":"    }"},{"line_number":102,"context_line":"  }"},{"line_number":103,"context_line":"  if $vencrypt_cert {"},{"line_number":104,"context_line":"    nova_config {"},{"line_number":105,"context_line":"      \u0027vnc/vencrypt_client_cert\u0027: value \u003d\u003e $vencrypt_cert"},{"line_number":106,"context_line":"    }"},{"line_number":107,"context_line":"  }"},{"line_number":108,"context_line":"  if $vencrypt_key {"},{"line_number":109,"context_line":"    nova_config {"},{"line_number":110,"context_line":"      \u0027vnc/vencrypt_client_key\u0027: value \u003d\u003e $vencrypt_key"},{"line_number":111,"context_line":"    }"},{"line_number":112,"context_line":"  }"},{"line_number":113,"context_line":""},{"line_number":114,"context_line":"  nova::generic_service { \u0027vncproxy\u0027:"}],"source_content_type":"text/x-puppet","patch_set":10,"id":"5f93b717_6119d277","line":111,"range":{"start_line":103,"start_character":0,"end_line":111,"end_character":5},"updated":"2018-01-25 12:00:15.000000000","message":"fwiw, this is treated as an all or nothing case in nova [1] - both must be set for either to be used. Probably best to keep that logic in nova though, I imagine\n\n[1] https://github.com/openstack/nova/blob/233285de490b822f4ad47a11d308dcc19e439a04/nova/console/rfb/authvencrypt.py#L128-L134","commit_id":"a1bceeed21c85448a52627e60e32fd2abac2270f"},{"author":{"_account_id":1004,"name":"Mohammed Naser","email":"mnaser@vexxhost.com","username":"mnaser"},"change_message_id":"83a441db445d970e4b129dffb889d40b9a8922b8","unresolved":false,"context_lines":[{"line_number":79,"context_line":"  include ::nova::deps"},{"line_number":80,"context_line":"  include ::nova::params"},{"line_number":81,"context_line":""},{"line_number":82,"context_line":"  if (!$allow_noauth and !$allow_vencrypt) {"},{"line_number":83,"context_line":"    fail(\u0027Either allow_noauth or allow_vencrypt must be true\u0027)"},{"line_number":84,"context_line":"  }"},{"line_number":85,"context_line":""},{"line_number":86,"context_line":"  if $allow_vencrypt {"},{"line_number":87,"context_line":""}],"source_content_type":"text/x-puppet","patch_set":15,"id":"5f93b717_efa7970a","line":84,"range":{"start_line":82,"start_character":0,"end_line":84,"end_character":3},"updated":"2018-01-30 16:23:03.000000000","message":"Given that you can never have both set to true...","commit_id":"f8020f0256b9d626f3028e42624d44cd73451fff"},{"author":{"_account_id":23811,"name":"Oliver Walsh","email":"owalsh@redhat.com","username":"owalsh"},"change_message_id":"19349d4941851958fcf2b8ad285b41866e3869c7","unresolved":false,"context_lines":[{"line_number":79,"context_line":"  include ::nova::deps"},{"line_number":80,"context_line":"  include ::nova::params"},{"line_number":81,"context_line":""},{"line_number":82,"context_line":"  if (!$allow_noauth and !$allow_vencrypt) {"},{"line_number":83,"context_line":"    fail(\u0027Either allow_noauth or allow_vencrypt must be true\u0027)"},{"line_number":84,"context_line":"  }"},{"line_number":85,"context_line":""},{"line_number":86,"context_line":"  if $allow_vencrypt {"},{"line_number":87,"context_line":""}],"source_content_type":"text/x-puppet","patch_set":15,"id":"5f93b717_67540b00","line":84,"range":{"start_line":82,"start_character":0,"end_line":84,"end_character":3},"in_reply_to":"5f93b717_efa7970a","updated":"2018-01-30 19:33:00.000000000","message":"Can never have both set to false","commit_id":"f8020f0256b9d626f3028e42624d44cd73451fff"},{"author":{"_account_id":1004,"name":"Mohammed Naser","email":"mnaser@vexxhost.com","username":"mnaser"},"change_message_id":"83a441db445d970e4b129dffb889d40b9a8922b8","unresolved":false,"context_lines":[{"line_number":94,"context_line":"      \u0027vnc/vencrypt_client_key\u0027: value \u003d\u003e $vencrypt_key;"},{"line_number":95,"context_line":"    }"},{"line_number":96,"context_line":""},{"line_number":97,"context_line":"    if $allow_noauth {"},{"line_number":98,"context_line":"      $auth_schemes \u003d \u0027vencrypt,none\u0027"},{"line_number":99,"context_line":"    } else {"},{"line_number":100,"context_line":"      $auth_schemes \u003d \u0027vencrypt\u0027"},{"line_number":101,"context_line":"    }"},{"line_number":102,"context_line":"  } else {"},{"line_number":103,"context_line":"    $auth_schemes \u003d \u0027none\u0027"},{"line_number":104,"context_line":"  }"}],"source_content_type":"text/x-puppet","patch_set":15,"id":"5f93b717_afad0fea","line":101,"range":{"start_line":97,"start_character":0,"end_line":101,"end_character":5},"updated":"2018-01-30 16:23:03.000000000","message":"Doesn\u0027t this mean that this if is redundant and $auth_schemes will always be equal to \u0027vencrypt\u0027 ?","commit_id":"f8020f0256b9d626f3028e42624d44cd73451fff"},{"author":{"_account_id":1004,"name":"Mohammed Naser","email":"mnaser@vexxhost.com","username":"mnaser"},"change_message_id":"83a441db445d970e4b129dffb889d40b9a8922b8","unresolved":false,"context_lines":[{"line_number":106,"context_line":"  nova_config {"},{"line_number":107,"context_line":"    \u0027vnc/novncproxy_host\u0027: value \u003d\u003e $host;"},{"line_number":108,"context_line":"    \u0027vnc/novncproxy_port\u0027: value \u003d\u003e $port;"},{"line_number":109,"context_line":"    \u0027vnc/auth_schemes\u0027: value \u003d\u003e $auth_schemes;"},{"line_number":110,"context_line":"  }"},{"line_number":111,"context_line":""},{"line_number":112,"context_line":"  nova::generic_service { \u0027vncproxy\u0027:"}],"source_content_type":"text/x-puppet","patch_set":15,"id":"5f93b717_6fb3874e","line":109,"range":{"start_line":109,"start_character":0,"end_line":109,"end_character":47},"updated":"2018-01-30 16:23:03.000000000","message":"Nit, *only* if you\u0027re going to revise this patch because of my comment above to line them! :)","commit_id":"f8020f0256b9d626f3028e42624d44cd73451fff"},{"author":{"_account_id":23811,"name":"Oliver Walsh","email":"owalsh@redhat.com","username":"owalsh"},"change_message_id":"19349d4941851958fcf2b8ad285b41866e3869c7","unresolved":false,"context_lines":[{"line_number":106,"context_line":"  nova_config {"},{"line_number":107,"context_line":"    \u0027vnc/novncproxy_host\u0027: value \u003d\u003e $host;"},{"line_number":108,"context_line":"    \u0027vnc/novncproxy_port\u0027: value \u003d\u003e $port;"},{"line_number":109,"context_line":"    \u0027vnc/auth_schemes\u0027: value \u003d\u003e $auth_schemes;"},{"line_number":110,"context_line":"  }"},{"line_number":111,"context_line":""},{"line_number":112,"context_line":"  nova::generic_service { \u0027vncproxy\u0027:"}],"source_content_type":"text/x-puppet","patch_set":15,"id":"5f93b717_a7453345","line":109,"range":{"start_line":109,"start_character":0,"end_line":109,"end_character":47},"in_reply_to":"5f93b717_6fb3874e","updated":"2018-01-30 19:33:00.000000000","message":"*sigh* where is the linter when I actually need it!","commit_id":"f8020f0256b9d626f3028e42624d44cd73451fff"}],"releasenotes/notes/vnc_tls-cfea520d82511758.yaml":[{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"91e68fe3b79ba7aadcee88a55317df11d15d3046","unresolved":false,"context_lines":[{"line_number":11,"context_line":"    * ``nova::compute::libvirt::qemu::vnc_tls``"},{"line_number":12,"context_line":"    * ``nova::compute::libvirt::qemu::vnc_tls_verify``"},{"line_number":13,"context_line":""},{"line_number":14,"context_line":"    More info is available in the `nova vnc-proxy documentation \u003chttps://docs.openstack.org/nova/latest/admin/remote-console-access.html#vnc-proxy-security\u003e`_."}],"source_content_type":"text/x-yaml","patch_set":10,"id":"5f93b717_81409e37","line":14,"range":{"start_line":14,"start_character":97,"end_line":14,"end_character":103},"updated":"2018-01-25 12:00:15.000000000","message":"Even though it doesn\u0027t exist yet, if you put Queens in here the link should never go away. That\u0027s the hope\n\nI\u0027ll talk to the docs guys about getting this published","commit_id":"a1bceeed21c85448a52627e60e32fd2abac2270f"}],"spec/classes/nova_compute_libvirt_qemu_spec.rb":[{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"91e68fe3b79ba7aadcee88a55317df11d15d3046","unresolved":false,"context_lines":[{"line_number":16,"context_line":"          :configure_qemu \u003d\u003e false"},{"line_number":17,"context_line":"        }"},{"line_number":18,"context_line":"      end"},{"line_number":19,"context_line":"      it { is_expected.to contain_augeas(\u0027qemu-conf-limits\u0027).with({"},{"line_number":20,"context_line":"        :context \u003d\u003e \u0027/files/etc/libvirt/qemu.conf\u0027,"},{"line_number":21,"context_line":"        :changes \u003d\u003e [ \"rm max_files\", \"rm max_processes\", \"rm group\", \"rm vnc_tls\", \"rm vnc_tls_x509_verify\" ],"},{"line_number":22,"context_line":"      }).that_notifies(\u0027Service[libvirt]\u0027) }"}],"source_content_type":"text/x-ruby","patch_set":10,"id":"5f93b717_416376dd","line":19,"range":{"start_line":19,"start_character":0,"end_line":19,"end_character":67},"updated":"2018-01-25 12:00:15.000000000","message":"I\u0027ve no idea what bearing this has on things, but I trust you know what you\u0027re at here","commit_id":"a1bceeed21c85448a52627e60e32fd2abac2270f"}],"spec/classes/nova_vnc_proxy_spec.rb":[{"author":{"_account_id":23811,"name":"Oliver Walsh","email":"owalsh@redhat.com","username":"owalsh"},"change_message_id":"350ffcb798a130338c03d788c740e29fce1ef7a8","unresolved":false,"context_lines":[{"line_number":84,"context_line":"      it_raises \u0027a Puppet::Error\u0027, /Either allow_noauth or allow_vencrypt must be true/"},{"line_number":85,"context_line":"    end"},{"line_number":86,"context_line":""},{"line_number":87,"context_line":"    context \u0027with vencrypt midding ca\u0027 do"},{"line_number":88,"context_line":"      let :params do"},{"line_number":89,"context_line":"        {"},{"line_number":90,"context_line":"          :allow_vencrypt \u003d\u003e true,"}],"source_content_type":"text/x-ruby","patch_set":12,"id":"5f93b717_04bc9cda","line":87,"range":{"start_line":87,"start_character":27,"end_line":87,"end_character":34},"updated":"2018-01-25 12:46:41.000000000","message":"doh","commit_id":"e87de3cb5a21d9ef76034384eb143efdd0b25d55"}]}
