)]}'
{"manifests/inspector.pp":[{"author":{"_account_id":14985,"name":"Alex Schultz","email":"aschultz@next-development.com","username":"mwhahaha"},"change_message_id":"d13b08faff9c6d54ac682a3a7403bb95748ea237","unresolved":false,"context_lines":[{"line_number":134,"context_line":"#   Comma-separated list of IPA inspection collectors"},{"line_number":135,"context_line":"#   Defaults to \u0027default\u0027"},{"line_number":136,"context_line":"#"},{"line_number":137,"context_line":"# [*processing_hooks*]"},{"line_number":138,"context_line":"#   Comma-separated list of processing hooks to append to the default list."},{"line_number":139,"context_line":"#   Defaults to \u0027\u0027"},{"line_number":140,"context_line":"#"}],"source_content_type":"text/x-puppet","patch_set":2,"id":"5a5ae5dd_6bf28308","line":137,"updated":"2016-02-09 16:54:01.000000000","message":"So by reading this I would assume by setting this, it will completely overwrite the processing hooks. I think it might be better to renamed this to additional_processing_hooks to indicate that it\u0027s an addition to the default set","commit_id":"f92c2110dca9fc1d9cc8b7704992fac438d5125f"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"7ce7e80b5f16221c486ed8ceeaacf2961cf33f71","unresolved":false,"context_lines":[{"line_number":134,"context_line":"#   Comma-separated list of IPA inspection collectors"},{"line_number":135,"context_line":"#   Defaults to \u0027default\u0027"},{"line_number":136,"context_line":"#"},{"line_number":137,"context_line":"# [*processing_hooks*]"},{"line_number":138,"context_line":"#   Comma-separated list of processing hooks to append to the default list."},{"line_number":139,"context_line":"#   Defaults to \u0027\u0027"},{"line_number":140,"context_line":"#"}],"source_content_type":"text/x-puppet","patch_set":2,"id":"5a5ae5dd_2bdb2bef","line":137,"in_reply_to":"5a5ae5dd_6bf28308","updated":"2016-02-09 16:55:54.000000000","message":"Done","commit_id":"f92c2110dca9fc1d9cc8b7704992fac438d5125f"},{"author":{"_account_id":7745,"name":"Denis Egorenko","email":"degorenko@mirantis.com","username":"degorenko"},"change_message_id":"fe9cef76a863e939463dde9791eac30259e2d231","unresolved":false,"context_lines":[{"line_number":168,"context_line":"  $dnsmasq_local_ip                \u003d \u0027192.168.0.1\u0027,"},{"line_number":169,"context_line":"  $sync_db                         \u003d true,"},{"line_number":170,"context_line":"  $ramdisk_collectors              \u003d \u0027default\u0027,"},{"line_number":171,"context_line":"  $processing_hooks                \u003d \u0027\u0027,"},{"line_number":172,"context_line":") {"},{"line_number":173,"context_line":""},{"line_number":174,"context_line":"  include ::ironic::params"}],"source_content_type":"text/x-puppet","patch_set":2,"id":"5a5ae5dd_b29242f5","line":171,"range":{"start_line":171,"start_character":37,"end_line":171,"end_character":39},"updated":"2016-02-09 12:26:38.000000000","message":"it can be switched to $::os_service_default pattern. Then we don\u0027t need additional if check.\n\nAlso, i guess it should be only string, isn\u0027t it? Then you can also add validate_string function.","commit_id":"f92c2110dca9fc1d9cc8b7704992fac438d5125f"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"dd121007117385a4349cd54e055c000065cbcc39","unresolved":false,"context_lines":[{"line_number":168,"context_line":"  $dnsmasq_local_ip                \u003d \u0027192.168.0.1\u0027,"},{"line_number":169,"context_line":"  $sync_db                         \u003d true,"},{"line_number":170,"context_line":"  $ramdisk_collectors              \u003d \u0027default\u0027,"},{"line_number":171,"context_line":"  $processing_hooks                \u003d \u0027\u0027,"},{"line_number":172,"context_line":") {"},{"line_number":173,"context_line":""},{"line_number":174,"context_line":"  include ::ironic::params"}],"source_content_type":"text/x-puppet","patch_set":2,"id":"5a5ae5dd_f8409937","line":171,"range":{"start_line":171,"start_character":37,"end_line":171,"end_character":39},"in_reply_to":"5a5ae5dd_381f115d","updated":"2016-02-09 12:47:32.000000000","message":"yep, please see the test case","commit_id":"f92c2110dca9fc1d9cc8b7704992fac438d5125f"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"4f531f521fdbe680630e4396b011aedadf2759da","unresolved":false,"context_lines":[{"line_number":168,"context_line":"  $dnsmasq_local_ip                \u003d \u0027192.168.0.1\u0027,"},{"line_number":169,"context_line":"  $sync_db                         \u003d true,"},{"line_number":170,"context_line":"  $ramdisk_collectors              \u003d \u0027default\u0027,"},{"line_number":171,"context_line":"  $processing_hooks                \u003d \u0027\u0027,"},{"line_number":172,"context_line":") {"},{"line_number":173,"context_line":""},{"line_number":174,"context_line":"  include ::ironic::params"}],"source_content_type":"text/x-puppet","patch_set":2,"id":"5a5ae5dd_9d64f749","line":171,"range":{"start_line":171,"start_character":37,"end_line":171,"end_character":39},"in_reply_to":"5a5ae5dd_7d049bc5","updated":"2016-02-09 12:40:53.000000000","message":"yeah, but I\u0027m not sure how string interpolation on line 248 will work then. Will the result be still os_service_default?","commit_id":"f92c2110dca9fc1d9cc8b7704992fac438d5125f"},{"author":{"_account_id":7745,"name":"Denis Egorenko","email":"degorenko@mirantis.com","username":"degorenko"},"change_message_id":"ccffcb71b9fffd44072949f34fd65d0721358342","unresolved":false,"context_lines":[{"line_number":168,"context_line":"  $dnsmasq_local_ip                \u003d \u0027192.168.0.1\u0027,"},{"line_number":169,"context_line":"  $sync_db                         \u003d true,"},{"line_number":170,"context_line":"  $ramdisk_collectors              \u003d \u0027default\u0027,"},{"line_number":171,"context_line":"  $processing_hooks                \u003d \u0027\u0027,"},{"line_number":172,"context_line":") {"},{"line_number":173,"context_line":""},{"line_number":174,"context_line":"  include ::ironic::params"}],"source_content_type":"text/x-puppet","patch_set":2,"id":"5a5ae5dd_381f115d","line":171,"range":{"start_line":171,"start_character":37,"end_line":171,"end_character":39},"in_reply_to":"5a5ae5dd_9d64f749","updated":"2016-02-09 12:46:38.000000000","message":"is having of $default_processing_hooks in line important?\n\nso, should it be like:\n\n[processing]\nprocessing_hooks \u003d $default_processing_hooks,some_hook\n\nor what?","commit_id":"f92c2110dca9fc1d9cc8b7704992fac438d5125f"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"90215d5a3cdc97374c0c927dcbf3068c776809c2","unresolved":false,"context_lines":[{"line_number":168,"context_line":"  $dnsmasq_local_ip                \u003d \u0027192.168.0.1\u0027,"},{"line_number":169,"context_line":"  $sync_db                         \u003d true,"},{"line_number":170,"context_line":"  $ramdisk_collectors              \u003d \u0027default\u0027,"},{"line_number":171,"context_line":"  $processing_hooks                \u003d \u0027\u0027,"},{"line_number":172,"context_line":") {"},{"line_number":173,"context_line":""},{"line_number":174,"context_line":"  include ::ironic::params"}],"source_content_type":"text/x-puppet","patch_set":2,"id":"5a5ae5dd_d2025e0b","line":171,"range":{"start_line":171,"start_character":37,"end_line":171,"end_character":39},"in_reply_to":"5a5ae5dd_b29242f5","updated":"2016-02-09 12:30:31.000000000","message":"Sorry, could you elaborate for someone not knowing puppet? :) why won\u0027t we need a check when interpolation a string?","commit_id":"f92c2110dca9fc1d9cc8b7704992fac438d5125f"},{"author":{"_account_id":7745,"name":"Denis Egorenko","email":"degorenko@mirantis.com","username":"degorenko"},"change_message_id":"f403f09619c4700b2626f661b5b8e6fe33b38c02","unresolved":false,"context_lines":[{"line_number":168,"context_line":"  $dnsmasq_local_ip                \u003d \u0027192.168.0.1\u0027,"},{"line_number":169,"context_line":"  $sync_db                         \u003d true,"},{"line_number":170,"context_line":"  $ramdisk_collectors              \u003d \u0027default\u0027,"},{"line_number":171,"context_line":"  $processing_hooks                \u003d \u0027\u0027,"},{"line_number":172,"context_line":") {"},{"line_number":173,"context_line":""},{"line_number":174,"context_line":"  include ::ironic::params"}],"source_content_type":"text/x-puppet","patch_set":2,"id":"5a5ae5dd_7d049bc5","line":171,"range":{"start_line":171,"start_character":37,"end_line":171,"end_character":39},"in_reply_to":"5a5ae5dd_d2025e0b","updated":"2016-02-09 12:36:23.000000000","message":"Sure.\n\nNow we have puppet fact ($::os_service_default - https://github.com/openstack/puppet-openstacklib/commit/989d8e999a4f17126c37007bab3d71d023ab7d10)\n\nAll parameters, which have this unchanged - will have ensure \u003d\u003e absent, and we don\u0027t need additional checks.\n\nFor example: https://review.openstack.org/#/c/276422/\n\nIronic is not switched to this pattern yet, but all new parameters should use this fact now.","commit_id":"f92c2110dca9fc1d9cc8b7704992fac438d5125f"},{"author":{"_account_id":7745,"name":"Denis Egorenko","email":"degorenko@mirantis.com","username":"degorenko"},"change_message_id":"75417b4338d2bc9997f3ed72de4ebee4e76059c7","unresolved":false,"context_lines":[{"line_number":168,"context_line":"  $dnsmasq_local_ip                \u003d \u0027192.168.0.1\u0027,"},{"line_number":169,"context_line":"  $sync_db                         \u003d true,"},{"line_number":170,"context_line":"  $ramdisk_collectors              \u003d \u0027default\u0027,"},{"line_number":171,"context_line":"  $processing_hooks                \u003d \u0027\u0027,"},{"line_number":172,"context_line":") {"},{"line_number":173,"context_line":""},{"line_number":174,"context_line":"  include ::ironic::params"}],"source_content_type":"text/x-puppet","patch_set":2,"id":"5a5ae5dd_380e31e6","line":171,"range":{"start_line":171,"start_character":37,"end_line":171,"end_character":39},"in_reply_to":"5a5ae5dd_f8409937","updated":"2016-02-09 12:53:32.000000000","message":"For such case we also have is_service_default function actually. But ok for this solution.","commit_id":"f92c2110dca9fc1d9cc8b7704992fac438d5125f"},{"author":{"_account_id":14985,"name":"Alex Schultz","email":"aschultz@next-development.com","username":"mwhahaha"},"change_message_id":"d13b08faff9c6d54ac682a3a7403bb95748ea237","unresolved":false,"context_lines":[{"line_number":242,"context_line":"    \u0027swift/os_auth_url\u0027:                          value \u003d\u003e $swift_auth_url;"},{"line_number":243,"context_line":"  }"},{"line_number":244,"context_line":""},{"line_number":245,"context_line":"  if $processing_hooks !\u003d \u0027\u0027 {"},{"line_number":246,"context_line":"    ironic_inspector_config {"},{"line_number":247,"context_line":"      # Here we use oslo.config interpolation with another option default_processing_hooks"},{"line_number":248,"context_line":"      \u0027processing/processing_hooks\u0027: value \u003d\u003e \"\\$default_processing_hooks,${processing_hooks}\";"}],"source_content_type":"text/x-puppet","patch_set":2,"id":"5a5ae5dd_6b57e3ca","line":245,"updated":"2016-02-09 16:54:01.000000000","message":"There is no way to unset this as it is currently written. So if i set $processing_hooks \u003d \u0027hook1\u0027 and then later i want to remove hook1 I can\u0027t.\n\nIf you use $processing_hooks \u003d undef as the default, you can do something like\n\n\nironic_inspector_config {\n  \u0027processing/processing_hooks\u0027: value \u003d\u003e join(delete_undef_values([\u0027$defaut_processing_hooks\u0027, $processing_hooks]), \u0027,\u0027);\n}","commit_id":"f92c2110dca9fc1d9cc8b7704992fac438d5125f"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"7ce7e80b5f16221c486ed8ceeaacf2961cf33f71","unresolved":false,"context_lines":[{"line_number":242,"context_line":"    \u0027swift/os_auth_url\u0027:                          value \u003d\u003e $swift_auth_url;"},{"line_number":243,"context_line":"  }"},{"line_number":244,"context_line":""},{"line_number":245,"context_line":"  if $processing_hooks !\u003d \u0027\u0027 {"},{"line_number":246,"context_line":"    ironic_inspector_config {"},{"line_number":247,"context_line":"      # Here we use oslo.config interpolation with another option default_processing_hooks"},{"line_number":248,"context_line":"      \u0027processing/processing_hooks\u0027: value \u003d\u003e \"\\$default_processing_hooks,${processing_hooks}\";"}],"source_content_type":"text/x-puppet","patch_set":2,"id":"5a5ae5dd_0be2ef9f","line":245,"in_reply_to":"5a5ae5dd_6b57e3ca","updated":"2016-02-09 16:55:54.000000000","message":"Done","commit_id":"f92c2110dca9fc1d9cc8b7704992fac438d5125f"},{"author":{"_account_id":14985,"name":"Alex Schultz","email":"aschultz@next-development.com","username":"mwhahaha"},"change_message_id":"d13b08faff9c6d54ac682a3a7403bb95748ea237","unresolved":false,"context_lines":[{"line_number":245,"context_line":"  if $processing_hooks !\u003d \u0027\u0027 {"},{"line_number":246,"context_line":"    ironic_inspector_config {"},{"line_number":247,"context_line":"      # Here we use oslo.config interpolation with another option default_processing_hooks"},{"line_number":248,"context_line":"      \u0027processing/processing_hooks\u0027: value \u003d\u003e \"\\$default_processing_hooks,${processing_hooks}\";"},{"line_number":249,"context_line":"    }"},{"line_number":250,"context_line":"  }"},{"line_number":251,"context_line":""}],"source_content_type":"text/x-puppet","patch_set":2,"id":"5a5ae5dd_8b2a5f2b","line":248,"range":{"start_line":248,"start_character":49,"end_line":248,"end_character":73},"updated":"2016-02-09 16:54:01.000000000","message":"so where does default_processing_hooks get set?","commit_id":"f92c2110dca9fc1d9cc8b7704992fac438d5125f"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"7ce7e80b5f16221c486ed8ceeaacf2961cf33f71","unresolved":false,"context_lines":[{"line_number":245,"context_line":"  if $processing_hooks !\u003d \u0027\u0027 {"},{"line_number":246,"context_line":"    ironic_inspector_config {"},{"line_number":247,"context_line":"      # Here we use oslo.config interpolation with another option default_processing_hooks"},{"line_number":248,"context_line":"      \u0027processing/processing_hooks\u0027: value \u003d\u003e \"\\$default_processing_hooks,${processing_hooks}\";"},{"line_number":249,"context_line":"    }"},{"line_number":250,"context_line":"  }"},{"line_number":251,"context_line":""}],"source_content_type":"text/x-puppet","patch_set":2,"id":"5a5ae5dd_2b024b3f","line":248,"range":{"start_line":248,"start_character":49,"end_line":248,"end_character":73},"in_reply_to":"5a5ae5dd_8b2a5f2b","updated":"2016-02-09 16:55:54.000000000","message":"it\u0027s another configuration option, which we don\u0027t touch as it\u0027s highly advanced","commit_id":"f92c2110dca9fc1d9cc8b7704992fac438d5125f"},{"author":{"_account_id":14985,"name":"Alex Schultz","email":"aschultz@next-development.com","username":"mwhahaha"},"change_message_id":"5c99c369845e829cae7da4f3127ac82c9466be96","unresolved":false,"context_lines":[{"line_number":136,"context_line":"#"},{"line_number":137,"context_line":"# [*additional_processing_hooks*]"},{"line_number":138,"context_line":"#   Comma-separated list of processing hooks to append to the default list."},{"line_number":139,"context_line":"#   Defaults to \u0027\u0027"},{"line_number":140,"context_line":"#"},{"line_number":141,"context_line":"class ironic::inspector ("},{"line_number":142,"context_line":"  $package_ensure                  \u003d \u0027present\u0027,"}],"source_content_type":"text/x-puppet","patch_set":3,"id":"5a5ae5dd_0655061c","line":139,"range":{"start_line":139,"start_character":16,"end_line":139,"end_character":18},"updated":"2016-02-09 17:10:54.000000000","message":"is undef now","commit_id":"d6cef608bb9a33d75b7392cdd2bd71807231d30c"},{"author":{"_account_id":14985,"name":"Alex Schultz","email":"aschultz@next-development.com","username":"mwhahaha"},"change_message_id":"5c99c369845e829cae7da4f3127ac82c9466be96","unresolved":false,"context_lines":[{"line_number":242,"context_line":"    \u0027swift/os_auth_url\u0027:                          value \u003d\u003e $swift_auth_url;"},{"line_number":243,"context_line":"  }"},{"line_number":244,"context_line":""},{"line_number":245,"context_line":"  if $processing_hooks !\u003d \u0027\u0027 {"},{"line_number":246,"context_line":"    ironic_inspector_config {"},{"line_number":247,"context_line":"      # Here we use oslo.config interpolation with another option default_processing_hooks,"},{"line_number":248,"context_line":"      # which we don\u0027t change as it might break introspection completely."}],"source_content_type":"text/x-puppet","patch_set":3,"id":"5a5ae5dd_66439a6d","line":245,"updated":"2016-02-09 17:10:54.000000000","message":"I don\u0027t think you need this if clause anymore.","commit_id":"d6cef608bb9a33d75b7392cdd2bd71807231d30c"},{"author":{"_account_id":7745,"name":"Denis Egorenko","email":"degorenko@mirantis.com","username":"degorenko"},"change_message_id":"ffc117e3e58f65c740910a5738964e6f288ed5e6","unresolved":false,"context_lines":[{"line_number":242,"context_line":"    \u0027swift/os_auth_url\u0027:                          value \u003d\u003e $swift_auth_url;"},{"line_number":243,"context_line":"    # Here we use oslo.config interpolation with another option default_processing_hooks,"},{"line_number":244,"context_line":"    # which we don\u0027t change as it might break introspection completely."},{"line_number":245,"context_line":"    \u0027processing/processing_hooks\u0027: value \u003d\u003e join(delete_undef_values([\u0027$default_processing_hooks\u0027, $additional_processing_hooks]), \u0027,\u0027);"},{"line_number":246,"context_line":"  }"},{"line_number":247,"context_line":""},{"line_number":248,"context_line":"  # Install package"}],"source_content_type":"text/x-puppet","patch_set":4,"id":"3a57f1b5_aeb97f30","line":245,"updated":"2016-02-10 09:13:02.000000000","message":"fix alignment please :)","commit_id":"cc0c7ff97cd01c3e2dee95adbc9f7eb28ff4840c"}],"spec/classes/ironic_inspector_spec.rb":[{"author":{"_account_id":18893,"name":"Miles Gould","email":"mgould@redhat.com","username":"pozorvlak"},"change_message_id":"9474c479726edb8649094b1569a9dda64c541758","unresolved":false,"context_lines":[{"line_number":153,"context_line":"        is_expected.to contain_ironic_inspector_config(\u0027ironic/os_auth_url\u0027).with_value(p[:ironic_auth_url])"},{"line_number":154,"context_line":"        is_expected.to contain_ironic_inspector_config(\u0027swift/password\u0027).with_value(p[:swift_password])"},{"line_number":155,"context_line":"        is_expected.to contain_ironic_inspector_config(\u0027swift/os_auth_url\u0027).with_value(p[:swift_auth_url])"},{"line_number":156,"context_line":"        is_expected.to contain_ironic_inspector_config(\u0027processing/processing_hooks\u0027).with_value(\u0027$default_processing_hooks,hook1,hook2\u0027)"},{"line_number":157,"context_line":"      end"},{"line_number":158,"context_line":""},{"line_number":159,"context_line":"      it \u0027should contain file /etc/ironic-inspector/dnsmasq.conf\u0027 do"}],"source_content_type":"text/x-ruby","patch_set":1,"id":"5a5ae5dd_89d7dd22","line":156,"updated":"2016-02-09 11:13:27.000000000","message":"Where is $default_processing_hooks set? And do you need to test the case where no extra processing hooks are set?","commit_id":"9cb5efbc9c2c3b231b01e9612dcd126639fb8b7e"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"d326f21e3af4297580fc7350472ad3dd9952d6ff","unresolved":false,"context_lines":[{"line_number":153,"context_line":"        is_expected.to contain_ironic_inspector_config(\u0027ironic/os_auth_url\u0027).with_value(p[:ironic_auth_url])"},{"line_number":154,"context_line":"        is_expected.to contain_ironic_inspector_config(\u0027swift/password\u0027).with_value(p[:swift_password])"},{"line_number":155,"context_line":"        is_expected.to contain_ironic_inspector_config(\u0027swift/os_auth_url\u0027).with_value(p[:swift_auth_url])"},{"line_number":156,"context_line":"        is_expected.to contain_ironic_inspector_config(\u0027processing/processing_hooks\u0027).with_value(\u0027$default_processing_hooks,hook1,hook2\u0027)"},{"line_number":157,"context_line":"      end"},{"line_number":158,"context_line":""},{"line_number":159,"context_line":"      it \u0027should contain file /etc/ironic-inspector/dnsmasq.conf\u0027 do"}],"source_content_type":"text/x-ruby","patch_set":1,"id":"5a5ae5dd_49afa594","line":156,"in_reply_to":"5a5ae5dd_89d7dd22","updated":"2016-02-09 11:15:12.000000000","message":"it\u0027s set in configuration itself: https://github.com/openstack/ironic-inspector/blob/master/example.conf#L602-L614","commit_id":"9cb5efbc9c2c3b231b01e9612dcd126639fb8b7e"},{"author":{"_account_id":7745,"name":"Denis Egorenko","email":"degorenko@mirantis.com","username":"degorenko"},"change_message_id":"ffc117e3e58f65c740910a5738964e6f288ed5e6","unresolved":false,"context_lines":[{"line_number":102,"context_line":"      is_expected.to contain_ironic_inspector_config(\u0027ironic/retry_interval\u0027).with_value(p[:ironic_retry_interval])"},{"line_number":103,"context_line":"      is_expected.to contain_ironic_inspector_config(\u0027swift/username\u0027).with_value(p[:swift_username])"},{"line_number":104,"context_line":"      is_expected.to contain_ironic_inspector_config(\u0027swift/tenant_name\u0027).with_value(p[:swift_tenant_name])"},{"line_number":105,"context_line":"      is_expected.to contain_ironic_inspector_config(\u0027swift/os_auth_url\u0027).with_value(p[:swift_auth_url])"},{"line_number":106,"context_line":"    end"},{"line_number":107,"context_line":""},{"line_number":108,"context_line":"    it \u0027should contain file /etc/ironic-inspector/dnsmasq.conf\u0027 do"}],"source_content_type":"text/x-ruby","patch_set":4,"id":"3a57f1b5_ee969793","line":105,"updated":"2016-02-10 09:13:02.000000000","message":"add please default case: just only $default_hooks should be here","commit_id":"cc0c7ff97cd01c3e2dee95adbc9f7eb28ff4840c"}]}
