)]}'
{"manifests/cell_v2/cell.pp":[{"author":{"_account_id":23811,"name":"Oliver Walsh","email":"owalsh@redhat.com","username":"owalsh"},"change_message_id":"e91096722d462ec2159a57446cfa4282f74f1563","unresolved":false,"context_lines":[{"line_number":48,"context_line":"  }"},{"line_number":49,"context_line":""},{"line_number":50,"context_line":"  if $ensure \u003d\u003d present {"},{"line_number":51,"context_line":"    #TODO(aschultz):  do we need to also include the db creation for this cell?"},{"line_number":52,"context_line":"    exec { \"nova-cell_v2-${title}\":"},{"line_number":53,"context_line":"      path      \u003d\u003e [ \u0027/bin\u0027, \u0027/usr/bin\u0027 ],"},{"line_number":54,"context_line":"      command   \u003d\u003e \"nova-manage ${extra_params} cell_v2 create_cell --name\u003d${title} ${transport_url_real} ${database_connection}\","}],"source_content_type":"text/x-puppet","patch_set":3,"id":"5a3905b3_0d41113a","line":51,"range":{"start_line":51,"start_character":4,"end_line":51,"end_character":79},"updated":"2017-01-19 01:24:03.000000000","message":"No, thinking about it... for real cells it\u0027s almost certainly on a different host (different region? that\u0027s the point of cells isn\u0027t it?).","commit_id":"14ef2c02ee36ef9b446abae8e3d4976203c192f8"},{"author":{"_account_id":23811,"name":"Oliver Walsh","email":"owalsh@redhat.com","username":"owalsh"},"change_message_id":"e91096722d462ec2159a57446cfa4282f74f1563","unresolved":false,"context_lines":[{"line_number":52,"context_line":"    exec { \"nova-cell_v2-${title}\":"},{"line_number":53,"context_line":"      path      \u003d\u003e [ \u0027/bin\u0027, \u0027/usr/bin\u0027 ],"},{"line_number":54,"context_line":"      command   \u003d\u003e \"nova-manage ${extra_params} cell_v2 create_cell --name\u003d${title} ${transport_url_real} ${database_connection}\","},{"line_number":55,"context_line":"      unless    \u003d\u003e \"nova-manage ${extra_params} cell_v2 list_cells | grep -q ${title}\","},{"line_number":56,"context_line":"      logoutput \u003d\u003e on_failure,"},{"line_number":57,"context_line":"      notify    \u003d\u003e ["},{"line_number":58,"context_line":"        Anchor[\u0027nova::cell_v2::end\u0027],"}],"source_content_type":"text/x-puppet","patch_set":3,"id":"5a3905b3_ed24c5b0","line":55,"range":{"start_line":55,"start_character":77,"end_line":55,"end_character":85},"updated":"2017-01-19 01:24:03.000000000","message":"Probably needs to be something like grep ${transport_url_real} grep | ${database_connection}, and they need to be mandatory params and an optional name instead of using the title - then we could be completely consistent with the simple setup creating an unnamed default cell with the default transport/db...","commit_id":"14ef2c02ee36ef9b446abae8e3d4976203c192f8"},{"author":{"_account_id":23811,"name":"Oliver Walsh","email":"owalsh@redhat.com","username":"owalsh"},"change_message_id":"e91096722d462ec2159a57446cfa4282f74f1563","unresolved":false,"context_lines":[{"line_number":62,"context_line":"  } else {"},{"line_number":63,"context_line":"    exec { \"nova-cell_v2-${title}\":"},{"line_number":64,"context_line":"      path      \u003d\u003e [ \u0027/bin\u0027, \u0027/usr/bin\u0027 ],"},{"line_number":65,"context_line":"      command   \u003d\u003e \"nova-manage ${extra_params} cell_v2 delete_cell --name\u003d${title}\","},{"line_number":66,"context_line":"      onlyif    \u003d\u003e \"nova-manage ${extra_params} cell_v2 list_cells | grep -q ${title}\","},{"line_number":67,"context_line":"      logoutput \u003d\u003e on_failure,"},{"line_number":68,"context_line":"      notify    \u003d\u003e ["}],"source_content_type":"text/x-puppet","patch_set":3,"id":"7a3c09a3_5640f635","line":65,"range":{"start_line":65,"start_character":69,"end_line":65,"end_character":74},"updated":"2017-01-19 01:24:03.000000000","message":"I assume it would accept a uuid, name is optional","commit_id":"14ef2c02ee36ef9b446abae8e3d4976203c192f8"},{"author":{"_account_id":23811,"name":"Oliver Walsh","email":"owalsh@redhat.com","username":"owalsh"},"change_message_id":"e91096722d462ec2159a57446cfa4282f74f1563","unresolved":false,"context_lines":[{"line_number":62,"context_line":"  } else {"},{"line_number":63,"context_line":"    exec { \"nova-cell_v2-${title}\":"},{"line_number":64,"context_line":"      path      \u003d\u003e [ \u0027/bin\u0027, \u0027/usr/bin\u0027 ],"},{"line_number":65,"context_line":"      command   \u003d\u003e \"nova-manage ${extra_params} cell_v2 delete_cell --name\u003d${title}\","},{"line_number":66,"context_line":"      onlyif    \u003d\u003e \"nova-manage ${extra_params} cell_v2 list_cells | grep -q ${title}\","},{"line_number":67,"context_line":"      logoutput \u003d\u003e on_failure,"},{"line_number":68,"context_line":"      notify    \u003d\u003e ["}],"source_content_type":"text/x-puppet","patch_set":3,"id":"7a3c09a3_5639d6d7","line":65,"range":{"start_line":65,"start_character":56,"end_line":65,"end_character":67},"updated":"2017-01-19 01:24:03.000000000","message":"does this exist yet? still a WIP I belive","commit_id":"14ef2c02ee36ef9b446abae8e3d4976203c192f8"},{"author":{"_account_id":23811,"name":"Oliver Walsh","email":"owalsh@redhat.com","username":"owalsh"},"change_message_id":"38a1ff70d6f7c8f8ec4b4188faabee2441bd9256","unresolved":false,"context_lines":[{"line_number":62,"context_line":"  } else {"},{"line_number":63,"context_line":"    exec { \"nova-cell_v2-${title}\":"},{"line_number":64,"context_line":"      path      \u003d\u003e [ \u0027/bin\u0027, \u0027/usr/bin\u0027 ],"},{"line_number":65,"context_line":"      command   \u003d\u003e \"nova-manage ${extra_params} cell_v2 delete_cell --name\u003d${title}\","},{"line_number":66,"context_line":"      onlyif    \u003d\u003e \"nova-manage ${extra_params} cell_v2 list_cells | grep -q ${title}\","},{"line_number":67,"context_line":"      logoutput \u003d\u003e on_failure,"},{"line_number":68,"context_line":"      notify    \u003d\u003e ["}],"source_content_type":"text/x-puppet","patch_set":3,"id":"5a3905b3_c036e3b3","line":65,"range":{"start_line":65,"start_character":69,"end_line":65,"end_character":74},"in_reply_to":"7a3c09a3_5640f635","updated":"2017-01-19 08:50:31.000000000","message":"https://review.openstack.org/#/c/420451/2/nova/cmd/manage.py@1470","commit_id":"14ef2c02ee36ef9b446abae8e3d4976203c192f8"}],"manifests/cell_v2/map_cell0.pp":[{"author":{"_account_id":3153,"name":"Emilien Macchi","email":"emilien@redhat.com","username":"emilienm"},"change_message_id":"c8974c73bda12f72c5bfd96e0e7667e1dd7bafdd","unresolved":false,"context_lines":[{"line_number":12,"context_line":"#"},{"line_number":13,"context_line":"#"},{"line_number":14,"context_line":"class nova::cell_v2::map_cell0 ("},{"line_number":15,"context_line":"  $extra_params        \u003d \u0027\u0027,"},{"line_number":16,"context_line":") {"},{"line_number":17,"context_line":""},{"line_number":18,"context_line":"  include ::nova::deps"}],"source_content_type":"text/x-puppet","patch_set":8,"id":"5a3905b3_19139cb9","line":15,"range":{"start_line":15,"start_character":16,"end_line":15,"end_character":23},"updated":"2017-01-20 23:19:01.000000000","message":"if you can fix alignment","commit_id":"f0f3bc6e187ad7fc2aaf897f885cb4caa0e6a195"},{"author":{"_account_id":3153,"name":"Emilien Macchi","email":"emilien@redhat.com","username":"emilienm"},"change_message_id":"c8974c73bda12f72c5bfd96e0e7667e1dd7bafdd","unresolved":false,"context_lines":[{"line_number":21,"context_line":"    path        \u003d\u003e [\u0027/bin\u0027, \u0027/usr/bin\u0027],"},{"line_number":22,"context_line":"    command     \u003d\u003e \"nova-manage ${extra_params} cell_v2 map_cell0\","},{"line_number":23,"context_line":"    refreshonly \u003d\u003e true,"},{"line_number":24,"context_line":"    returns     \u003d\u003e [0,1], # TODO(owalsh): Remove when this lands https://review.openstack.org/#/c/420132/"},{"line_number":25,"context_line":"    logoutput   \u003d\u003e on_failure,"},{"line_number":26,"context_line":"    subscribe   \u003d\u003e ["},{"line_number":27,"context_line":"      Anchor[\u0027nova::dbsync_api::end\u0027],"}],"source_content_type":"text/x-puppet","patch_set":8,"id":"5a3905b3_f945f0b2","line":24,"updated":"2017-01-20 23:19:01.000000000","message":"FYI it just got +A. I think we can remove this TODO and consider it merged. Our CI will be promoted very soon.","commit_id":"f0f3bc6e187ad7fc2aaf897f885cb4caa0e6a195"}],"manifests/db/mysql_api.pp":[{"author":{"_account_id":14985,"name":"Alex Schultz","email":"aschultz@next-development.com","username":"mwhahaha"},"change_message_id":"078547d2dcab37dff443ade25a141d89dbb9a69b","unresolved":false,"context_lines":[{"line_number":44,"context_line":"  $charset       \u003d \u0027utf8\u0027,"},{"line_number":45,"context_line":"  $collate       \u003d \u0027utf8_general_ci\u0027,"},{"line_number":46,"context_line":"  $allowed_hosts \u003d undef,"},{"line_number":47,"context_line":"  $setup_cell0   \u003d false,"},{"line_number":48,"context_line":") {"},{"line_number":49,"context_line":""},{"line_number":50,"context_line":"  include ::nova::deps"}],"source_content_type":"text/x-puppet","patch_set":1,"id":"7a3c09a3_da2ed2f9","side":"PARENT","line":47,"range":{"start_line":47,"start_character":0,"end_line":47,"end_character":25},"updated":"2017-01-18 22:22:12.000000000","message":"you need to leave the param in but deprecate it, since we just released 9.5.0 with it in. It doesn\u0027t have to actually do anything but it has to exist for one cycle.","commit_id":"da498929757ae53b76504f7d7eeda06ee6e73072"},{"author":{"_account_id":3153,"name":"Emilien Macchi","email":"emilien@redhat.com","username":"emilienm"},"change_message_id":"c8974c73bda12f72c5bfd96e0e7667e1dd7bafdd","unresolved":false,"context_lines":[{"line_number":36,"context_line":"# [*setup_cell0*]"},{"line_number":37,"context_line":"#   (optional) Setup a cell0 for the cell_v2 functionality. This option will"},{"line_number":38,"context_line":"#   be set to true by default in Ocata when the cell v2 setup is mandatory."},{"line_number":39,"context_line":"#   Defaults to undef"},{"line_number":40,"context_line":"#"},{"line_number":41,"context_line":"class nova::db::mysql_api("},{"line_number":42,"context_line":"  $password,"}],"source_content_type":"text/x-puppet","patch_set":8,"id":"5a3905b3_795e6077","line":39,"updated":"2017-01-20 23:19:01.000000000","message":"I don\u0027t think we need to deprecate it but I understand why you did it (TripleO uses it already, well dprince use it).\nPlease add a TODO to remove it once tripleo stop using it. I don\u0027t think anyone else use it.","commit_id":"f0f3bc6e187ad7fc2aaf897f885cb4caa0e6a195"}],"manifests/db/sync_cell_v2.pp":[{"author":{"_account_id":14985,"name":"Alex Schultz","email":"aschultz@next-development.com","username":"mwhahaha"},"change_message_id":"5b9622335e265f5e7a290d96f5b8bece3a2149aa","unresolved":false,"context_lines":[{"line_number":41,"context_line":"      Anchor[\u0027nova::cell_v2::begin\u0027]"},{"line_number":42,"context_line":"    ],"},{"line_number":43,"context_line":"  } ~\u003e"},{"line_number":44,"context_line":"  exec { \u0027nova-cell_v2-create-cell1\u0027:"},{"line_number":45,"context_line":"    command     \u003d\u003e \"/usr/bin/nova-manage ${extra_params} cell_v2 create_cell --name\u003dcell1 ${transport_url_real}\","},{"line_number":46,"context_line":"    refreshonly \u003d\u003e true,"},{"line_number":47,"context_line":"    logoutput   \u003d\u003e on_failure,"},{"line_number":48,"context_line":"    returns     \u003d\u003e [0,2], # returns 2 if the cell exists"},{"line_number":49,"context_line":"    notify      \u003d\u003e ["},{"line_number":50,"context_line":"      Anchor[\u0027nova::cell_v2::end\u0027],"},{"line_number":51,"context_line":"      Anchor[\u0027nova::dbsync::begin\u0027],"},{"line_number":52,"context_line":"    ]"},{"line_number":53,"context_line":"  }"},{"line_number":54,"context_line":"}"}],"source_content_type":"text/x-puppet","patch_set":1,"id":"7a3c09a3_64f46387","line":53,"range":{"start_line":44,"start_character":0,"end_line":53,"end_character":3},"updated":"2017-01-18 21:41:57.000000000","message":"the nova_cell provider should probably be updated to do this instead of relying on an exec to do this. If cell v1 is no more, then we could reuse nova_cell or create a new nova_cellv2.  Alternatively, you should use a \u0027unless\u0027 with the list cell comand/grep for the cell rather than  ignoring the failure and relying on refreshonly","commit_id":"77002c95695f7019542ff3ff073575a8cc6ddddb"},{"author":{"_account_id":23811,"name":"Oliver Walsh","email":"owalsh@redhat.com","username":"owalsh"},"change_message_id":"2eedaa56fc38fcd009a3e05d343d6cd32bfdb286","unresolved":false,"context_lines":[{"line_number":41,"context_line":"      Anchor[\u0027nova::cell_v2::begin\u0027]"},{"line_number":42,"context_line":"    ],"},{"line_number":43,"context_line":"  } ~\u003e"},{"line_number":44,"context_line":"  exec { \u0027nova-cell_v2-create-cell1\u0027:"},{"line_number":45,"context_line":"    command     \u003d\u003e \"/usr/bin/nova-manage ${extra_params} cell_v2 create_cell --name\u003dcell1 ${transport_url_real}\","},{"line_number":46,"context_line":"    refreshonly \u003d\u003e true,"},{"line_number":47,"context_line":"    logoutput   \u003d\u003e on_failure,"},{"line_number":48,"context_line":"    returns     \u003d\u003e [0,2], # returns 2 if the cell exists"},{"line_number":49,"context_line":"    notify      \u003d\u003e ["},{"line_number":50,"context_line":"      Anchor[\u0027nova::cell_v2::end\u0027],"},{"line_number":51,"context_line":"      Anchor[\u0027nova::dbsync::begin\u0027],"},{"line_number":52,"context_line":"    ]"},{"line_number":53,"context_line":"  }"},{"line_number":54,"context_line":"}"}],"source_content_type":"text/x-puppet","patch_set":1,"id":"7a3c09a3_ff246061","line":53,"range":{"start_line":44,"start_character":0,"end_line":53,"end_character":3},"in_reply_to":"7a3c09a3_64f46387","updated":"2017-01-18 21:55:37.000000000","message":"That was my initial thought. However the cell name is insignificant so we can\u0027t just list and grep/awk for the cell by name. We would need the transport_url and database connection to check.","commit_id":"77002c95695f7019542ff3ff073575a8cc6ddddb"},{"author":{"_account_id":14985,"name":"Alex Schultz","email":"aschultz@next-development.com","username":"mwhahaha"},"change_message_id":"078547d2dcab37dff443ade25a141d89dbb9a69b","unresolved":false,"context_lines":[{"line_number":41,"context_line":"      Anchor[\u0027nova::cell_v2::begin\u0027]"},{"line_number":42,"context_line":"    ],"},{"line_number":43,"context_line":"  } ~\u003e"},{"line_number":44,"context_line":"  exec { \u0027nova-cell_v2-create-cell1\u0027:"},{"line_number":45,"context_line":"    command     \u003d\u003e \"/usr/bin/nova-manage ${extra_params} cell_v2 create_cell --name\u003dcell1 ${transport_url_real}\","},{"line_number":46,"context_line":"    refreshonly \u003d\u003e true,"},{"line_number":47,"context_line":"    logoutput   \u003d\u003e on_failure,"},{"line_number":48,"context_line":"    returns     \u003d\u003e [0,2], # returns 2 if the cell exists"},{"line_number":49,"context_line":"    notify      \u003d\u003e ["},{"line_number":50,"context_line":"      Anchor[\u0027nova::cell_v2::end\u0027],"},{"line_number":51,"context_line":"      Anchor[\u0027nova::dbsync::begin\u0027],"},{"line_number":52,"context_line":"    ]"},{"line_number":53,"context_line":"  }"},{"line_number":54,"context_line":"}"}],"source_content_type":"text/x-puppet","patch_set":1,"id":"7a3c09a3_1ab85ae5","line":53,"range":{"start_line":44,"start_character":0,"end_line":53,"end_character":3},"in_reply_to":"7a3c09a3_ff246061","updated":"2017-01-18 22:22:12.000000000","message":"I\u0027m not sure the cell1 creation belongs in here. Anwyay...while I get that in nova, the name is optional. It should not be treated as optional for us so let\u0027s assume cell1 is there and continue.   I honestly thing we need to extract the create call out because we may want to do that as it\u0027s own thing. We should create a nova::cellv2 resource that encapsulates this create call. We should make name required for our usages as we\u0027ll need the name to determine if it already exists or not.\n\n\ndefine nova::cellv2 (\n  $ensure \u003d present,\n  $transport_url \u003d undef\n) {\n\n  if $transport_url {\n    $transport_url_real \u003d \"--transport-url\u003d${transport_url}\"\n  } else {\n    $transport_url_real \u003d \u0027\u0027\n  }\n\n  if $ensure \u003d\u003d absent  {\n    exec { \"nova-cell_v2-${title}\":\n      path        \u003d\u003e [ \u0027/bin\u0027, \u0027/usr/bin\u0027 ],\n      command     \u003d\u003e \"nova-manage cell_v2 delete_cell --name\u003d${title}\",\n      onlyif      \u003d\u003e \"nova-manage cell_v2 list_cell | grep -q ${title}\",\n      logoutput   \u003d\u003e on_failure,\n      notify      \u003d\u003e [\n        Anchor[\u0027nova::cell_v2::end\u0027],\n        Anchor[\u0027nova::dbsync::begin\u0027],\n      ]\n    }\n  } else {\n   exec { \"nova-cell_v2-${title}\":\n      path        \u003d\u003e [ \u0027/bin\u0027, \u0027/usr/bin\u0027 ],\n      command     \u003d\u003e \"nova-manage cell_v2 create_cell --name\u003d${title} ${transport_url_real}\",\n      unless      \u003d\u003e \"nova-manage cell_v2 list_cell | grep -q ${title}\",\n      logoutput   \u003d\u003e on_failure,\n      notify      \u003d\u003e [\n        Anchor[\u0027nova::cell_v2::end\u0027],\n        Anchor[\u0027nova::dbsync::begin\u0027],\n      ]\n    }\n  }\n}","commit_id":"77002c95695f7019542ff3ff073575a8cc6ddddb"},{"author":{"_account_id":3153,"name":"Emilien Macchi","email":"emilien@redhat.com","username":"emilienm"},"change_message_id":"c8974c73bda12f72c5bfd96e0e7667e1dd7bafdd","unresolved":false,"context_lines":[{"line_number":23,"context_line":") {"},{"line_number":24,"context_line":""},{"line_number":25,"context_line":"  include ::nova::deps"},{"line_number":26,"context_line":"  warning(\u0027nova::db::sync_cell_v2 is deprecated for nova::cell_v2::simple_setup\u0027)"},{"line_number":27,"context_line":""},{"line_number":28,"context_line":"  class { \u0027::nova::cell_v2::simple_setup\u0027:"},{"line_number":29,"context_line":"    extra_params  \u003d\u003e $extra_params,"}],"source_content_type":"text/x-puppet","patch_set":8,"id":"5a3905b3_19c8fc21","line":26,"updated":"2017-01-20 23:19:01.000000000","message":"ditto on deprecation","commit_id":"f0f3bc6e187ad7fc2aaf897f885cb4caa0e6a195"}],"manifests/deps.pp":[{"author":{"_account_id":23811,"name":"Oliver Walsh","email":"owalsh@redhat.com","username":"owalsh"},"change_message_id":"fef98b466f6f0bd9c4ff46db538d432fbcf5241b","unresolved":false,"context_lines":[{"line_number":47,"context_line":""},{"line_number":48,"context_line":"  # The following resourcs are managed by calling \u0027nova manage\u0027 and so the"},{"line_number":49,"context_line":"  # database must be provisioned before they can be applied."},{"line_number":50,"context_line":"  Anchor[\u0027nova::dbsync_api::end\u0027]"},{"line_number":51,"context_line":"  -\u003e Anchor[\u0027nova::dbsync::end\u0027]"},{"line_number":52,"context_line":"  -\u003e Nova_cells\u003c||\u003e"},{"line_number":53,"context_line":"  Anchor[\u0027nova::dbsync_api::end\u0027]"},{"line_number":54,"context_line":"  -\u003e Anchor[\u0027nova::dbsync::end\u0027]"},{"line_number":55,"context_line":"  -\u003e Nova_floating\u003c||\u003e"}],"source_content_type":"text/x-puppet","patch_set":12,"id":"5a3905b3_e2978be9","line":52,"range":{"start_line":50,"start_character":1,"end_line":52,"end_character":19},"updated":"2017-01-24 11:03:50.000000000","message":"To allow upgrades do we need to remove the dbsync_api-\u003edbsync ordering here? E.g:\n\n    Anchor[\u0027nova::dbsync_api::end\u0027] -\u003e Nova_cells\u003c||\u003e\n    Anchor[\u0027nova::dbsync::end\u0027] -\u003e Nova_cells\u003c||\u003e","commit_id":"10acdab25c9208fde601efb4ab09d80ca9ef935d"},{"author":{"_account_id":14985,"name":"Alex Schultz","email":"aschultz@next-development.com","username":"mwhahaha"},"change_message_id":"30cf3aacbcd2c887716dbdd873351af8554cee84","unresolved":false,"context_lines":[{"line_number":47,"context_line":""},{"line_number":48,"context_line":"  # The following resourcs are managed by calling \u0027nova manage\u0027 and so the"},{"line_number":49,"context_line":"  # database must be provisioned before they can be applied."},{"line_number":50,"context_line":"  Anchor[\u0027nova::dbsync_api::end\u0027]"},{"line_number":51,"context_line":"  -\u003e Anchor[\u0027nova::dbsync::end\u0027]"},{"line_number":52,"context_line":"  -\u003e Nova_cells\u003c||\u003e"},{"line_number":53,"context_line":"  Anchor[\u0027nova::dbsync_api::end\u0027]"},{"line_number":54,"context_line":"  -\u003e Anchor[\u0027nova::dbsync::end\u0027]"},{"line_number":55,"context_line":"  -\u003e Nova_floating\u003c||\u003e"}],"source_content_type":"text/x-puppet","patch_set":12,"id":"5a3905b3_7c6b3385","line":52,"range":{"start_line":50,"start_character":1,"end_line":52,"end_character":19},"in_reply_to":"5a3905b3_e2978be9","updated":"2017-01-24 15:14:42.000000000","message":"I\u0027m going take a look at how we can work around the ordering for upgrades. since nova_cells is v1 cells this doesn\u0027t really affect our upgrade stuff","commit_id":"10acdab25c9208fde601efb4ab09d80ca9ef935d"}]}
