)]}'
{"manifests/api.pp":[{"author":{"_account_id":8482,"name":"Colleen Murphy","email":"colleen@gazlene.net","username":"krinkle"},"change_message_id":"2c924ce32e67ff039aa54fc4e6d887da1b7730af","unresolved":false,"context_lines":[{"line_number":250,"context_line":"      \u0027DEFAULT/os_privileged_user_password\u0027: ensure \u003d\u003e absent;"},{"line_number":251,"context_line":"      \u0027DEFAULT/os_privileged_user_tenant\u0027:   ensure \u003d\u003e absent;"},{"line_number":252,"context_line":"      \u0027DEFAULT/os_privileged_user_name\u0027:     ensure \u003d\u003e absent;"},{"line_number":253,"context_line":"      \u0027DEFAULT/os_privileged_user_auth_url\u0027: ensure \u003d\u003e absent;"},{"line_number":254,"context_line":"    }"},{"line_number":255,"context_line":"  }"},{"line_number":256,"context_line":""}],"source_content_type":"text/x-puppet","patch_set":2,"id":"da20952f_3c00cb00","line":253,"updated":"2015-09-04 19:37:40.000000000","message":"I think we should be able to do this automatically now  - /cc Yanis","commit_id":"0fa59d0b06648d604acd906a51dad8584a192ca3"},{"author":{"_account_id":9410,"name":"Yanis Guenane","email":"yguenane@redhat.com","username":"yguenane"},"change_message_id":"2d5ce36cf52bce02ffa0828186fb85da43ee91bb","unresolved":false,"context_lines":[{"line_number":250,"context_line":"      \u0027DEFAULT/os_privileged_user_password\u0027: ensure \u003d\u003e absent;"},{"line_number":251,"context_line":"      \u0027DEFAULT/os_privileged_user_tenant\u0027:   ensure \u003d\u003e absent;"},{"line_number":252,"context_line":"      \u0027DEFAULT/os_privileged_user_name\u0027:     ensure \u003d\u003e absent;"},{"line_number":253,"context_line":"      \u0027DEFAULT/os_privileged_user_auth_url\u0027: ensure \u003d\u003e absent;"},{"line_number":254,"context_line":"    }"},{"line_number":255,"context_line":"  }"},{"line_number":256,"context_line":""}],"source_content_type":"text/x-puppet","patch_set":2,"id":"da20952f_ad6f9929","line":253,"in_reply_to":"da20952f_3c00cb00","updated":"2015-09-07 10:40:17.000000000","message":"@Denis: Agree with Colleen, let\u0027s use Cinder as the Canary module for the \u0027\u003cSERVICE DEFAULT\u003e\u0027 new feature. I will advertise this choice on the ML today and will submit reviews for the other part of the module.","commit_id":"0fa59d0b06648d604acd906a51dad8584a192ca3"},{"author":{"_account_id":14985,"name":"Alex Schultz","email":"aschultz@next-development.com","username":"mwhahaha"},"change_message_id":"0b3b4f517f7d22b595efdf364808efe4f0ed9ed9","unresolved":false,"context_lines":[{"line_number":164,"context_line":"  $nova_catalog_info           \u003d \u0027compute:Compute Service:publicURL\u0027,"},{"line_number":165,"context_line":"  $nova_catalog_admin_info     \u003d \u0027compute:Compute Service:adminURL\u0027,"},{"line_number":166,"context_line":"  $privileged_user             \u003d false,"},{"line_number":167,"context_line":"  $os_privileged_user_name     \u003d \u0027\u003cSERVICE DEFAULT\u003e\u0027,"},{"line_number":168,"context_line":"  $os_privileged_user_password \u003d \u0027\u003cSERVICE DEFAULT\u003e\u0027,"},{"line_number":169,"context_line":"  $os_privileged_user_tenant   \u003d \u0027\u003cSERVICE DEFAULT\u003e\u0027,"},{"line_number":170,"context_line":"  $os_privileged_user_auth_url \u003d \u0027\u003cSERVICE DEFAULT\u003e\u0027,"}],"source_content_type":"text/x-puppet","patch_set":4,"id":"ba15a1d1_9ad5e944","line":167,"updated":"2015-09-14 13:47:59.000000000","message":"What\u0027s the point of using \u0027\u003cSERVICE DEFAULT\u003e\u0027 here when the validate_re will just error on this value?  Shouldn\u0027t this just be undef?","commit_id":"5cb712dd4499b4718f18bc4bcc14ea55001c1062"},{"author":{"_account_id":14985,"name":"Alex Schultz","email":"aschultz@next-development.com","username":"mwhahaha"},"change_message_id":"f4647766983c91496612dc6d21501d5c4587f33b","unresolved":false,"context_lines":[{"line_number":164,"context_line":"  $nova_catalog_info           \u003d \u0027compute:Compute Service:publicURL\u0027,"},{"line_number":165,"context_line":"  $nova_catalog_admin_info     \u003d \u0027compute:Compute Service:adminURL\u0027,"},{"line_number":166,"context_line":"  $privileged_user             \u003d false,"},{"line_number":167,"context_line":"  $os_privileged_user_name     \u003d \u0027\u003cSERVICE DEFAULT\u003e\u0027,"},{"line_number":168,"context_line":"  $os_privileged_user_password \u003d \u0027\u003cSERVICE DEFAULT\u003e\u0027,"},{"line_number":169,"context_line":"  $os_privileged_user_tenant   \u003d \u0027\u003cSERVICE DEFAULT\u003e\u0027,"},{"line_number":170,"context_line":"  $os_privileged_user_auth_url \u003d \u0027\u003cSERVICE DEFAULT\u003e\u0027,"}],"source_content_type":"text/x-puppet","patch_set":4,"id":"ba15a1d1_fa542555","line":167,"in_reply_to":"ba15a1d1_3a261d69","updated":"2015-09-14 13:58:39.000000000","message":"IMO, checking for undef to ensure they are set is better than the regex validation that may limit password complexity.  If there is no \u003cSERVICE DEFAULT\u003e for these values, I don\u0027t believe we should be using that value as the parameter default.","commit_id":"5cb712dd4499b4718f18bc4bcc14ea55001c1062"},{"author":{"_account_id":7745,"name":"Denis Egorenko","email":"degorenko@mirantis.com","username":"degorenko"},"change_message_id":"cad829c1ad644a0391e2b98d362ddc28fef7648f","unresolved":false,"context_lines":[{"line_number":164,"context_line":"  $nova_catalog_info           \u003d \u0027compute:Compute Service:publicURL\u0027,"},{"line_number":165,"context_line":"  $nova_catalog_admin_info     \u003d \u0027compute:Compute Service:adminURL\u0027,"},{"line_number":166,"context_line":"  $privileged_user             \u003d false,"},{"line_number":167,"context_line":"  $os_privileged_user_name     \u003d \u0027\u003cSERVICE DEFAULT\u003e\u0027,"},{"line_number":168,"context_line":"  $os_privileged_user_password \u003d \u0027\u003cSERVICE DEFAULT\u003e\u0027,"},{"line_number":169,"context_line":"  $os_privileged_user_tenant   \u003d \u0027\u003cSERVICE DEFAULT\u003e\u0027,"},{"line_number":170,"context_line":"  $os_privileged_user_auth_url \u003d \u0027\u003cSERVICE DEFAULT\u003e\u0027,"}],"source_content_type":"text/x-puppet","patch_set":4,"id":"ba15a1d1_3a261d69","line":167,"in_reply_to":"ba15a1d1_9ad5e944","updated":"2015-09-14 13:53:05.000000000","message":"Alex,\n\nthe point is that we can pass empty line and also we can don\u0027t pass os_privileged_* params with privileged_user \u003d true, i think it\u0027s not correct.","commit_id":"5cb712dd4499b4718f18bc4bcc14ea55001c1062"},{"author":{"_account_id":7745,"name":"Denis Egorenko","email":"degorenko@mirantis.com","username":"degorenko"},"change_message_id":"1d4ebb738d1ffa37afc5ac53cdd09a86331c8381","unresolved":false,"context_lines":[{"line_number":164,"context_line":"  $nova_catalog_info           \u003d \u0027compute:Compute Service:publicURL\u0027,"},{"line_number":165,"context_line":"  $nova_catalog_admin_info     \u003d \u0027compute:Compute Service:adminURL\u0027,"},{"line_number":166,"context_line":"  $privileged_user             \u003d false,"},{"line_number":167,"context_line":"  $os_privileged_user_name     \u003d \u0027\u003cSERVICE DEFAULT\u003e\u0027,"},{"line_number":168,"context_line":"  $os_privileged_user_password \u003d \u0027\u003cSERVICE DEFAULT\u003e\u0027,"},{"line_number":169,"context_line":"  $os_privileged_user_tenant   \u003d \u0027\u003cSERVICE DEFAULT\u003e\u0027,"},{"line_number":170,"context_line":"  $os_privileged_user_auth_url \u003d \u0027\u003cSERVICE DEFAULT\u003e\u0027,"}],"source_content_type":"text/x-puppet","patch_set":4,"id":"ba15a1d1_283817d3","line":167,"in_reply_to":"ba15a1d1_fa542555","updated":"2015-09-14 14:24:10.000000000","message":"According to Yanis\u0027 and Colleen\u0027 comments in patch set 2, we will use Cinder module as Canary module for the \u0027\u003cSERVICE DEFAULT\u003e\u0027 new feature. So, using \u0027undef\u0027 conflicts with this new feature, because we need explicitly set to \u0027absent\u0027 then.","commit_id":"5cb712dd4499b4718f18bc4bcc14ea55001c1062"},{"author":{"_account_id":14985,"name":"Alex Schultz","email":"aschultz@next-development.com","username":"mwhahaha"},"change_message_id":"0b3b4f517f7d22b595efdf364808efe4f0ed9ed9","unresolved":false,"context_lines":[{"line_number":245,"context_line":""},{"line_number":246,"context_line":"  if $privileged_user {"},{"line_number":247,"context_line":"    validate_re($os_privileged_user_name, \u0027^\\w+$\u0027)"},{"line_number":248,"context_line":"    validate_re($os_privileged_user_password, \u0027^\\w+$\u0027)"},{"line_number":249,"context_line":"    validate_re($os_privileged_user_tenant, \u0027^\\w+$\u0027)"},{"line_number":250,"context_line":"  }"},{"line_number":251,"context_line":""}],"source_content_type":"text/x-puppet","patch_set":4,"id":"ba15a1d1_5a5c3125","line":248,"updated":"2015-09-14 13:47:59.000000000","message":"This won\u0027t support passwords with spaces will it?  Do we need to be validating these?","commit_id":"5cb712dd4499b4718f18bc4bcc14ea55001c1062"},{"author":{"_account_id":14985,"name":"Alex Schultz","email":"aschultz@next-development.com","username":"mwhahaha"},"change_message_id":"f4647766983c91496612dc6d21501d5c4587f33b","unresolved":false,"context_lines":[{"line_number":245,"context_line":""},{"line_number":246,"context_line":"  if $privileged_user {"},{"line_number":247,"context_line":"    validate_re($os_privileged_user_name, \u0027^\\w+$\u0027)"},{"line_number":248,"context_line":"    validate_re($os_privileged_user_password, \u0027^\\w+$\u0027)"},{"line_number":249,"context_line":"    validate_re($os_privileged_user_tenant, \u0027^\\w+$\u0027)"},{"line_number":250,"context_line":"  }"},{"line_number":251,"context_line":""}],"source_content_type":"text/x-puppet","patch_set":4,"id":"ba15a1d1_fadbc5eb","line":248,"in_reply_to":"ba15a1d1_3a993d6f","updated":"2015-09-14 13:58:39.000000000","message":"I would hope that this could support passwords with spaces for security complexity.  I know we\u0027ve run into issues elsewhere where a space was used and we\u0027ve not supported that.","commit_id":"5cb712dd4499b4718f18bc4bcc14ea55001c1062"},{"author":{"_account_id":7745,"name":"Denis Egorenko","email":"degorenko@mirantis.com","username":"degorenko"},"change_message_id":"cad829c1ad644a0391e2b98d362ddc28fef7648f","unresolved":false,"context_lines":[{"line_number":245,"context_line":""},{"line_number":246,"context_line":"  if $privileged_user {"},{"line_number":247,"context_line":"    validate_re($os_privileged_user_name, \u0027^\\w+$\u0027)"},{"line_number":248,"context_line":"    validate_re($os_privileged_user_password, \u0027^\\w+$\u0027)"},{"line_number":249,"context_line":"    validate_re($os_privileged_user_tenant, \u0027^\\w+$\u0027)"},{"line_number":250,"context_line":"  }"},{"line_number":251,"context_line":""}],"source_content_type":"text/x-puppet","patch_set":4,"id":"ba15a1d1_3a993d6f","line":248,"in_reply_to":"ba15a1d1_5a5c3125","updated":"2015-09-14 13:53:05.000000000","message":"Will it be correct to have spaces in passwords?","commit_id":"5cb712dd4499b4718f18bc4bcc14ea55001c1062"},{"author":{"_account_id":7745,"name":"Denis Egorenko","email":"degorenko@mirantis.com","username":"degorenko"},"change_message_id":"1d4ebb738d1ffa37afc5ac53cdd09a86331c8381","unresolved":false,"context_lines":[{"line_number":245,"context_line":""},{"line_number":246,"context_line":"  if $privileged_user {"},{"line_number":247,"context_line":"    validate_re($os_privileged_user_name, \u0027^\\w+$\u0027)"},{"line_number":248,"context_line":"    validate_re($os_privileged_user_password, \u0027^\\w+$\u0027)"},{"line_number":249,"context_line":"    validate_re($os_privileged_user_tenant, \u0027^\\w+$\u0027)"},{"line_number":250,"context_line":"  }"},{"line_number":251,"context_line":""}],"source_content_type":"text/x-puppet","patch_set":4,"id":"ba15a1d1_685ccf25","line":248,"in_reply_to":"ba15a1d1_fadbc5eb","updated":"2015-09-14 14:24:10.000000000","message":"Well, probably you\u0027re right. Let\u0027s wait more feedbacks.","commit_id":"5cb712dd4499b4718f18bc4bcc14ea55001c1062"},{"author":{"_account_id":14985,"name":"Alex Schultz","email":"aschultz@next-development.com","username":"mwhahaha"},"change_message_id":"cfc16b9f9fd5002b90e4d3141148e0498d346cb8","unresolved":false,"context_lines":[{"line_number":245,"context_line":""},{"line_number":246,"context_line":"  if $privileged_user {"},{"line_number":247,"context_line":"    validate_re($os_privileged_user_name, \u0027\\w+\u0027)"},{"line_number":248,"context_line":"    validate_re($os_privileged_user_password, \u0027^\\w+$\u0027)"},{"line_number":249,"context_line":"    validate_re($os_privileged_user_tenant, \u0027^\\w+$\u0027)"},{"line_number":250,"context_line":""},{"line_number":251,"context_line":"    cinder_config {"}],"source_content_type":"text/x-puppet","patch_set":6,"id":"9a1a9d01_a6c44f40","line":248,"updated":"2015-09-25 13:50:22.000000000","message":"Going back to my original comments on this validate_re, I don\u0027t think it should be here as it will prevent the usage of spaces and special characters.  Just switch this to validate_string(...)","commit_id":"1dfebc61eba1694d2d32f6885f13afd84f322bd6"},{"author":{"_account_id":7155,"name":"Sebastien Badia","email":"seb@sebian.fr","username":"sbadia"},"change_message_id":"8dbba33f5141cf05aa81f6d7d98243d871647a86","unresolved":false,"context_lines":[{"line_number":245,"context_line":""},{"line_number":246,"context_line":"  if $privileged_user {"},{"line_number":247,"context_line":"    validate_re($os_privileged_user_name, \u0027\\w+\u0027)"},{"line_number":248,"context_line":"    validate_re($os_privileged_user_password, \u0027^\\w+$\u0027)"},{"line_number":249,"context_line":"    validate_re($os_privileged_user_tenant, \u0027^\\w+$\u0027)"},{"line_number":250,"context_line":""},{"line_number":251,"context_line":"    cinder_config {"}],"source_content_type":"text/x-puppet","patch_set":6,"id":"9a1a9d01_b974699c","line":248,"in_reply_to":"9a1a9d01_45fa08bf","updated":"2015-09-25 15:47:18.000000000","message":"^(undef.+|(?!undef).*)$\n\nIn order to match all word char (and keep password complexity) but not undef :-)","commit_id":"1dfebc61eba1694d2d32f6885f13afd84f322bd6"},{"author":{"_account_id":7745,"name":"Denis Egorenko","email":"degorenko@mirantis.com","username":"degorenko"},"change_message_id":"4702b5746aabfae595fe8ab6716107d8a95a35e2","unresolved":false,"context_lines":[{"line_number":245,"context_line":""},{"line_number":246,"context_line":"  if $privileged_user {"},{"line_number":247,"context_line":"    validate_re($os_privileged_user_name, \u0027\\w+\u0027)"},{"line_number":248,"context_line":"    validate_re($os_privileged_user_password, \u0027^\\w+$\u0027)"},{"line_number":249,"context_line":"    validate_re($os_privileged_user_tenant, \u0027^\\w+$\u0027)"},{"line_number":250,"context_line":""},{"line_number":251,"context_line":"    cinder_config {"}],"source_content_type":"text/x-puppet","patch_set":6,"id":"9a1a9d01_45fa08bf","line":248,"in_reply_to":"9a1a9d01_81949537","updated":"2015-09-25 14:27:54.000000000","message":"We can use simple fail if undef - like it done in 1 patch set.","commit_id":"1dfebc61eba1694d2d32f6885f13afd84f322bd6"},{"author":{"_account_id":7745,"name":"Denis Egorenko","email":"degorenko@mirantis.com","username":"degorenko"},"change_message_id":"c672113050a53e798f0cbea8e425e166203de7ef","unresolved":false,"context_lines":[{"line_number":245,"context_line":""},{"line_number":246,"context_line":"  if $privileged_user {"},{"line_number":247,"context_line":"    validate_re($os_privileged_user_name, \u0027\\w+\u0027)"},{"line_number":248,"context_line":"    validate_re($os_privileged_user_password, \u0027^\\w+$\u0027)"},{"line_number":249,"context_line":"    validate_re($os_privileged_user_tenant, \u0027^\\w+$\u0027)"},{"line_number":250,"context_line":""},{"line_number":251,"context_line":"    cinder_config {"}],"source_content_type":"text/x-puppet","patch_set":6,"id":"9a1a9d01_c1b60d3d","line":248,"in_reply_to":"9a1a9d01_a6c44f40","updated":"2015-09-25 14:03:41.000000000","message":"Alex, validate_string doesn\u0027t occur error when it undef.\n\nhttps://forge.puppetlabs.com/puppetlabs/stdlib#validate_string","commit_id":"1dfebc61eba1694d2d32f6885f13afd84f322bd6"},{"author":{"_account_id":7745,"name":"Denis Egorenko","email":"degorenko@mirantis.com","username":"degorenko"},"change_message_id":"65b67ee88f67de3ace0511a94856bee21a016c46","unresolved":false,"context_lines":[{"line_number":245,"context_line":""},{"line_number":246,"context_line":"  if $privileged_user {"},{"line_number":247,"context_line":"    validate_re($os_privileged_user_name, \u0027\\w+\u0027)"},{"line_number":248,"context_line":"    validate_re($os_privileged_user_password, \u0027^\\w+$\u0027)"},{"line_number":249,"context_line":"    validate_re($os_privileged_user_tenant, \u0027^\\w+$\u0027)"},{"line_number":250,"context_line":""},{"line_number":251,"context_line":"    cinder_config {"}],"source_content_type":"text/x-puppet","patch_set":6,"id":"9a1a9d01_945fec71","line":248,"in_reply_to":"9a1a9d01_b974699c","updated":"2015-09-25 16:18:45.000000000","message":"it doesn\u0027t work when some parameter will be \"undef\" as string","commit_id":"1dfebc61eba1694d2d32f6885f13afd84f322bd6"},{"author":{"_account_id":14985,"name":"Alex Schultz","email":"aschultz@next-development.com","username":"mwhahaha"},"change_message_id":"4d98fd07142383a83314478e432f6c1c1b7f4af5","unresolved":false,"context_lines":[{"line_number":245,"context_line":""},{"line_number":246,"context_line":"  if $privileged_user {"},{"line_number":247,"context_line":"    validate_re($os_privileged_user_name, \u0027\\w+\u0027)"},{"line_number":248,"context_line":"    validate_re($os_privileged_user_password, \u0027^\\w+$\u0027)"},{"line_number":249,"context_line":"    validate_re($os_privileged_user_tenant, \u0027^\\w+$\u0027)"},{"line_number":250,"context_line":""},{"line_number":251,"context_line":"    cinder_config {"}],"source_content_type":"text/x-puppet","patch_set":6,"id":"9a1a9d01_81949537","line":248,"in_reply_to":"9a1a9d01_c1b60d3d","updated":"2015-09-25 14:12:00.000000000","message":"Ah you\u0027re right, still we need to do something other than validate_re as this prevents quality passwords from being used.","commit_id":"1dfebc61eba1694d2d32f6885f13afd84f322bd6"}]}
