)]}'
{"manifests/resource/authconfig.pp":[{"author":{"_account_id":3153,"name":"Emilien Macchi","email":"emilien@redhat.com","username":"emilienm"},"change_message_id":"9cae0eee963c635af3b05e7eda28689eca9859d8","unresolved":false,"context_lines":[{"line_number":1,"context_line":"# \u003d\u003d Definition: keystone::authconfig"},{"line_number":2,"context_line":"#"},{"line_number":3,"context_line":"# This resource configures Keystone authentication resources for an OpenStack"},{"line_number":4,"context_line":"# service.  It will manage the [keystone_authtoken] section in the given"}],"source_content_type":"text/x-puppet","patch_set":8,"id":"ba3cc151_ce3aa4cd","line":1,"updated":"2015-07-07 04:55:05.000000000","message":"this is keystone::resource::authconfig","commit_id":"0bc2ca767f4c2b8bac03cd67d2edf834a3a96ac5"},{"author":{"_account_id":3153,"name":"Emilien Macchi","email":"emilien@redhat.com","username":"emilienm"},"change_message_id":"66f09a21df631cb3c9db73e4f63aabd267fd9619","unresolved":false,"context_lines":[{"line_number":132,"context_line":"  $insecure            \u003d false,"},{"line_number":133,"context_line":") {"},{"line_number":134,"context_line":"  include ::stdlib # for pick()"},{"line_number":135,"context_line":""},{"line_number":136,"context_line":"  if !$project_name and !$project_id and !$domain_name and !$domain_id {"},{"line_number":137,"context_line":"    fail(\u0027Must specify either a project (project_name or project_id, for a project scoped token) or a domain (domain_name or domain_id, for a domain scoped token)\u0027)"},{"line_number":138,"context_line":"  }"}],"source_content_type":"text/x-puppet","patch_set":8,"id":"ba3cc151_d3b00b8e","line":135,"updated":"2015-07-07 04:48:37.000000000","message":"I think this resource should notify Keystone service.\nSee why on https://review.openstack.org/#/c/178828/55/spec/acceptance/basic_keystone_spec.rb,cm","commit_id":"0bc2ca767f4c2b8bac03cd67d2edf834a3a96ac5"},{"author":{"_account_id":3153,"name":"Emilien Macchi","email":"emilien@redhat.com","username":"emilienm"},"change_message_id":"f6a6a9b527afbfc25a6d705ac442a0378802877b","unresolved":false,"context_lines":[{"line_number":132,"context_line":"  $insecure            \u003d false,"},{"line_number":133,"context_line":") {"},{"line_number":134,"context_line":"  include ::stdlib # for pick()"},{"line_number":135,"context_line":""},{"line_number":136,"context_line":"  if !$project_name and !$project_id and !$domain_name and !$domain_id {"},{"line_number":137,"context_line":"    fail(\u0027Must specify either a project (project_name or project_id, for a project scoped token) or a domain (domain_name or domain_id, for a domain scoped token)\u0027)"},{"line_number":138,"context_line":"  }"}],"source_content_type":"text/x-puppet","patch_set":8,"id":"ba3cc151_ee3c48c1","line":135,"in_reply_to":"ba3cc151_d3b00b8e","updated":"2015-07-07 04:56:42.000000000","message":"err, not keystone but the service that connects to keystone","commit_id":"0bc2ca767f4c2b8bac03cd67d2edf834a3a96ac5"},{"author":{"_account_id":9983,"name":"Richard Megginson","email":"rmeggins@redhat.com","username":"rmeggins"},"change_message_id":"c7ed7606c4fb96613983323a9096f0768ce3f340","unresolved":false,"context_lines":[{"line_number":132,"context_line":"  $insecure            \u003d false,"},{"line_number":133,"context_line":") {"},{"line_number":134,"context_line":"  include ::stdlib # for pick()"},{"line_number":135,"context_line":""},{"line_number":136,"context_line":"  if !$project_name and !$project_id and !$domain_name and !$domain_id {"},{"line_number":137,"context_line":"    fail(\u0027Must specify either a project (project_name or project_id, for a project scoped token) or a domain (domain_name or domain_id, for a domain scoped token)\u0027)"},{"line_number":138,"context_line":"  }"}],"source_content_type":"text/x-puppet","patch_set":8,"id":"ba3cc151_2930d1e7","line":135,"in_reply_to":"ba3cc151_ee3c48c1","updated":"2015-07-07 14:29:23.000000000","message":"I don\u0027t think this resource needs to notify the Keystone service.\n\n* none of these settings require Keystone to be running first\n* this resource will be used by many different components, not just Keystone","commit_id":"0bc2ca767f4c2b8bac03cd67d2edf834a3a96ac5"},{"author":{"_account_id":7156,"name":"Mathieu Gagné","email":"mgagne@calavera.ca","username":"mgagne"},"change_message_id":"d2c8faa1a3de2f13bc59a4db3d8754e52c90b7e1","unresolved":false,"context_lines":[{"line_number":1,"context_line":"# \u003d\u003d Definition: keystone::authconfig"},{"line_number":2,"context_line":"#"},{"line_number":3,"context_line":"# This resource configures Keystone authentication resources for an OpenStack"},{"line_number":4,"context_line":"# service.  It will manage the [keystone_authtoken] section in the given"}],"source_content_type":"text/x-puppet","patch_set":14,"id":"ba3cc151_17b06ddc","line":1,"updated":"2015-07-07 22:37:37.000000000","message":"This should be keystone::resource::authconfig.\n\nHowever I suggest we name it authtoken instead of authconfig to reflect what\u0027s actually configured. authconfig (looks to be) a RedHat specific tool and shouldn\u0027t be used as an example to named stuff here.","commit_id":"51765a99c880390a0bd6683a03179c0eaaca59a9"},{"author":{"_account_id":9983,"name":"Richard Megginson","email":"rmeggins@redhat.com","username":"rmeggins"},"change_message_id":"7806ba2c1b9249459c2c6892ffe88a7fb9e2ca68","unresolved":false,"context_lines":[{"line_number":1,"context_line":"# \u003d\u003d Definition: keystone::authconfig"},{"line_number":2,"context_line":"#"},{"line_number":3,"context_line":"# This resource configures Keystone authentication resources for an OpenStack"},{"line_number":4,"context_line":"# service.  It will manage the [keystone_authtoken] section in the given"}],"source_content_type":"text/x-puppet","patch_set":14,"id":"ba3cc151_97cd5333","line":1,"in_reply_to":"ba3cc151_1354fefb","updated":"2015-07-08 05:00:10.000000000","message":"Done","commit_id":"51765a99c880390a0bd6683a03179c0eaaca59a9"},{"author":{"_account_id":9983,"name":"Richard Megginson","email":"rmeggins@redhat.com","username":"rmeggins"},"change_message_id":"fa8bda0f45b5bae488fabb5e1a00a48ac9b74499","unresolved":false,"context_lines":[{"line_number":1,"context_line":"# \u003d\u003d Definition: keystone::authconfig"},{"line_number":2,"context_line":"#"},{"line_number":3,"context_line":"# This resource configures Keystone authentication resources for an OpenStack"},{"line_number":4,"context_line":"# service.  It will manage the [keystone_authtoken] section in the given"}],"source_content_type":"text/x-puppet","patch_set":14,"id":"ba3cc151_d77765d2","line":1,"in_reply_to":"ba3cc151_17b06ddc","updated":"2015-07-07 22:45:29.000000000","message":"I wanted this to be the resource used to \"Configure this OpenStack component to do Keystone authentication\".  The name \"keystone::resource::authconfig\" seemed most appropriate.  I didn\u0027t want to perpetuate the \"token\" part of the name since this has nothing to do with token based auth.  However:\n\n* This resource is configuring the unfortunately named \"keystone_authtoken\" section which unfortunately is already perpetuating the \"token\" misnomer.\n* authconfig is the Red Hat OS family OS level authentication configuration tool.\n\nSo if you guys want to use keystone::resource::authtoken it is ok by me.","commit_id":"51765a99c880390a0bd6683a03179c0eaaca59a9"},{"author":{"_account_id":7156,"name":"Mathieu Gagné","email":"mgagne@calavera.ca","username":"mgagne"},"change_message_id":"124c8a0818877efe78f9a0c44bcd43ade13474f7","unresolved":false,"context_lines":[{"line_number":1,"context_line":"# \u003d\u003d Definition: keystone::authconfig"},{"line_number":2,"context_line":"#"},{"line_number":3,"context_line":"# This resource configures Keystone authentication resources for an OpenStack"},{"line_number":4,"context_line":"# service.  It will manage the [keystone_authtoken] section in the given"}],"source_content_type":"text/x-puppet","patch_set":14,"id":"ba3cc151_50759c95","line":1,"in_reply_to":"ba3cc151_32f6dff9","updated":"2015-07-07 23:25:39.000000000","message":"It is named keystone_authtoken because it configures the keystonemiddleware auth_token middleware:\nhttps://github.com/openstack/keystonemiddleware/blob/master/keystonemiddleware/auth_token/_base.py\nhttps://github.com/openstack/keystonemiddleware/blob/master/keystonemiddleware/auth_token/__init__.py\n\nAny other middleware would require a new section.\n\nFor example, the ec2_token middleware is named keystone_ec2_token:\nhttps://github.com/openstack/keystonemiddleware/blob/master/keystonemiddleware/ec2_token.py","commit_id":"51765a99c880390a0bd6683a03179c0eaaca59a9"},{"author":{"_account_id":9983,"name":"Richard Megginson","email":"rmeggins@redhat.com","username":"rmeggins"},"change_message_id":"a44ba608de49bf04bdbca376bee6bc17908bed6c","unresolved":false,"context_lines":[{"line_number":1,"context_line":"# \u003d\u003d Definition: keystone::authconfig"},{"line_number":2,"context_line":"#"},{"line_number":3,"context_line":"# This resource configures Keystone authentication resources for an OpenStack"},{"line_number":4,"context_line":"# service.  It will manage the [keystone_authtoken] section in the given"}],"source_content_type":"text/x-puppet","patch_set":14,"id":"ba3cc151_1354fefb","line":1,"in_reply_to":"ba3cc151_50759c95","updated":"2015-07-08 00:07:47.000000000","message":"Yes, I understand that the section is named keystone_authtoken because it refers to the keystonemiddleware/auth_token.  I am saying that the use of the term \"token\" in this context is misleading because it implies that it is token based authentication rather than username/password or some other form of authentication.  I thought that \"authconfig\" would be more descriptive.\n\nSince it seems that using a name other than \"keystone::resource::authtoken\" is going to cause more problems than it solves, I will change the name to keystone::resource::authtoken and update the blueprint.","commit_id":"51765a99c880390a0bd6683a03179c0eaaca59a9"},{"author":{"_account_id":9983,"name":"Richard Megginson","email":"rmeggins@redhat.com","username":"rmeggins"},"change_message_id":"e165b52bc08b95c06c7dd5ccb02de93dc4e0aff0","unresolved":false,"context_lines":[{"line_number":1,"context_line":"# \u003d\u003d Definition: keystone::authconfig"},{"line_number":2,"context_line":"#"},{"line_number":3,"context_line":"# This resource configures Keystone authentication resources for an OpenStack"},{"line_number":4,"context_line":"# service.  It will manage the [keystone_authtoken] section in the given"}],"source_content_type":"text/x-puppet","patch_set":14,"id":"ba3cc151_32f6dff9","line":1,"in_reply_to":"ba3cc151_d77765d2","updated":"2015-07-07 22:53:24.000000000","message":"This will also require a change to the bp/api-v3-support::\n\n    Use `keystone::resource::authconfig` and the new `keystone_authtoken` parameters in config files\n\netc.","commit_id":"51765a99c880390a0bd6683a03179c0eaaca59a9"}],"manifests/resource/authtoken.pp":[{"author":{"_account_id":8482,"name":"Colleen Murphy","email":"colleen@gazlene.net","username":"krinkle"},"change_message_id":"927a41dd10f86600431d53d2b3068358317f8ecc","unresolved":false,"context_lines":[{"line_number":131,"context_line":"  $key                 \u003d undef,"},{"line_number":132,"context_line":"  $insecure            \u003d false,"},{"line_number":133,"context_line":") {"},{"line_number":134,"context_line":"  include ::stdlib # for pick()"},{"line_number":135,"context_line":""},{"line_number":136,"context_line":"  if !$project_name and !$project_id and !$domain_name and !$domain_id {"},{"line_number":137,"context_line":"    fail(\u0027Must specify either a project (project_name or project_id, for a project scoped token) or a domain (domain_name or domain_id, for a domain scoped token)\u0027)"}],"source_content_type":"text/x-puppet","patch_set":16,"id":"ba3cc151_b8785bc5","line":134,"updated":"2015-07-08 21:26:46.000000000","message":"You do not ever need to include stdlib directly. pick() is a function that is available if the stdlib module is installed, it has nothing to do with the stdlib class. https://github.com/puppetlabs/puppetlabs-stdlib/blob/master/manifests/init.pp","commit_id":"28016b9520953ce5e664f82b80cf87d75672518f"},{"author":{"_account_id":9983,"name":"Richard Megginson","email":"rmeggins@redhat.com","username":"rmeggins"},"change_message_id":"bc8b11adeb197ac334e5c39a64911672333cf4da","unresolved":false,"context_lines":[{"line_number":131,"context_line":"  $key                 \u003d undef,"},{"line_number":132,"context_line":"  $insecure            \u003d false,"},{"line_number":133,"context_line":") {"},{"line_number":134,"context_line":"  include ::stdlib # for pick()"},{"line_number":135,"context_line":""},{"line_number":136,"context_line":"  if !$project_name and !$project_id and !$domain_name and !$domain_id {"},{"line_number":137,"context_line":"    fail(\u0027Must specify either a project (project_name or project_id, for a project scoped token) or a domain (domain_name or domain_id, for a domain scoped token)\u0027)"}],"source_content_type":"text/x-puppet","patch_set":16,"id":"ba3cc151_45c287ea","line":134,"in_reply_to":"ba3cc151_b8785bc5","updated":"2015-07-08 22:07:42.000000000","message":"Done","commit_id":"28016b9520953ce5e664f82b80cf87d75672518f"},{"author":{"_account_id":8482,"name":"Colleen Murphy","email":"colleen@gazlene.net","username":"krinkle"},"change_message_id":"927a41dd10f86600431d53d2b3068358317f8ecc","unresolved":false,"context_lines":[{"line_number":141,"context_line":"    fail(\u0027Cannot specify both a project (project_name or project_id) and a domain (domain_name or domain_id)\u0027)"},{"line_number":142,"context_line":"  }"},{"line_number":143,"context_line":""},{"line_number":144,"context_line":"  $userary \u003d split($username, \u0027::\u0027)"},{"line_number":145,"context_line":"  $real_username \u003d $userary[0]"},{"line_number":146,"context_line":"  $real_user_domain_name \u003d pick($user_domain_name, $userary[1], $default_domain_name, \u0027__nodomain__\u0027)"},{"line_number":147,"context_line":""}],"source_content_type":"text/x-puppet","patch_set":16,"id":"ba3cc151_d85c3f4d","line":144,"updated":"2015-07-08 21:26:46.000000000","message":"Can this be user_data or user_array? I spent far too long trying to figure out what userary meant.","commit_id":"28016b9520953ce5e664f82b80cf87d75672518f"},{"author":{"_account_id":9983,"name":"Richard Megginson","email":"rmeggins@redhat.com","username":"rmeggins"},"change_message_id":"bc8b11adeb197ac334e5c39a64911672333cf4da","unresolved":false,"context_lines":[{"line_number":141,"context_line":"    fail(\u0027Cannot specify both a project (project_name or project_id) and a domain (domain_name or domain_id)\u0027)"},{"line_number":142,"context_line":"  }"},{"line_number":143,"context_line":""},{"line_number":144,"context_line":"  $userary \u003d split($username, \u0027::\u0027)"},{"line_number":145,"context_line":"  $real_username \u003d $userary[0]"},{"line_number":146,"context_line":"  $real_user_domain_name \u003d pick($user_domain_name, $userary[1], $default_domain_name, \u0027__nodomain__\u0027)"},{"line_number":147,"context_line":""}],"source_content_type":"text/x-puppet","patch_set":16,"id":"ba3cc151_05b8ff73","line":144,"in_reply_to":"ba3cc151_d85c3f4d","updated":"2015-07-08 22:07:42.000000000","message":"Done","commit_id":"28016b9520953ce5e664f82b80cf87d75672518f"},{"author":{"_account_id":8482,"name":"Colleen Murphy","email":"colleen@gazlene.net","username":"krinkle"},"change_message_id":"927a41dd10f86600431d53d2b3068358317f8ecc","unresolved":false,"context_lines":[{"line_number":145,"context_line":"  $real_username \u003d $userary[0]"},{"line_number":146,"context_line":"  $real_user_domain_name \u003d pick($user_domain_name, $userary[1], $default_domain_name, \u0027__nodomain__\u0027)"},{"line_number":147,"context_line":""},{"line_number":148,"context_line":"  $projectary \u003d split($project_name, \u0027::\u0027)"},{"line_number":149,"context_line":"  $real_project_name \u003d $projectary[0]"},{"line_number":150,"context_line":"  $real_project_domain_name \u003d pick($project_domain_name, $projectary[1], $default_domain_name, \u0027__nodomain__\u0027)"},{"line_number":151,"context_line":""}],"source_content_type":"text/x-puppet","patch_set":16,"id":"ba3cc151_b314fc43","line":148,"updated":"2015-07-08 21:26:46.000000000","message":"Same here","commit_id":"28016b9520953ce5e664f82b80cf87d75672518f"},{"author":{"_account_id":9983,"name":"Richard Megginson","email":"rmeggins@redhat.com","username":"rmeggins"},"change_message_id":"bc8b11adeb197ac334e5c39a64911672333cf4da","unresolved":false,"context_lines":[{"line_number":145,"context_line":"  $real_username \u003d $userary[0]"},{"line_number":146,"context_line":"  $real_user_domain_name \u003d pick($user_domain_name, $userary[1], $default_domain_name, \u0027__nodomain__\u0027)"},{"line_number":147,"context_line":""},{"line_number":148,"context_line":"  $projectary \u003d split($project_name, \u0027::\u0027)"},{"line_number":149,"context_line":"  $real_project_name \u003d $projectary[0]"},{"line_number":150,"context_line":"  $real_project_domain_name \u003d pick($project_domain_name, $projectary[1], $default_domain_name, \u0027__nodomain__\u0027)"},{"line_number":151,"context_line":""}],"source_content_type":"text/x-puppet","patch_set":16,"id":"ba3cc151_a5b11391","line":148,"in_reply_to":"ba3cc151_b314fc43","updated":"2015-07-08 22:07:42.000000000","message":"Done","commit_id":"28016b9520953ce5e664f82b80cf87d75672518f"},{"author":{"_account_id":8482,"name":"Colleen Murphy","email":"colleen@gazlene.net","username":"krinkle"},"change_message_id":"927a41dd10f86600431d53d2b3068358317f8ecc","unresolved":false,"context_lines":[{"line_number":222,"context_line":"  } else {"},{"line_number":223,"context_line":"    create_resources($name, {\u0027keystone_authtoken/key\u0027 \u003d\u003e {\u0027ensure\u0027 \u003d\u003e \u0027absent\u0027}})"},{"line_number":224,"context_line":"  }"},{"line_number":225,"context_line":"  create_resources($name, {\u0027keystone_authtoken/insecure\u0027 \u003d\u003e {\u0027value\u0027 \u003d\u003e $insecure}})"},{"line_number":226,"context_line":"}"}],"source_content_type":"text/x-puppet","patch_set":16,"id":"ba3cc151_53533017","line":225,"updated":"2015-07-08 21:26:46.000000000","message":"Why is this not wrapped in an if/else?","commit_id":"28016b9520953ce5e664f82b80cf87d75672518f"},{"author":{"_account_id":9983,"name":"Richard Megginson","email":"rmeggins@redhat.com","username":"rmeggins"},"change_message_id":"bc8b11adeb197ac334e5c39a64911672333cf4da","unresolved":false,"context_lines":[{"line_number":222,"context_line":"  } else {"},{"line_number":223,"context_line":"    create_resources($name, {\u0027keystone_authtoken/key\u0027 \u003d\u003e {\u0027ensure\u0027 \u003d\u003e \u0027absent\u0027}})"},{"line_number":224,"context_line":"  }"},{"line_number":225,"context_line":"  create_resources($name, {\u0027keystone_authtoken/insecure\u0027 \u003d\u003e {\u0027value\u0027 \u003d\u003e $insecure}})"},{"line_number":226,"context_line":"}"}],"source_content_type":"text/x-puppet","patch_set":16,"id":"ba3cc151_657eabb0","line":225,"in_reply_to":"ba3cc151_53533017","updated":"2015-07-08 22:07:42.000000000","message":"$insecure is a boolean value with a default of false, so it will always be present in the argument list.  I didn\u0027t think it made sense to use an if/else here.","commit_id":"28016b9520953ce5e664f82b80cf87d75672518f"}]}
