)]}'
{"specs/rocky/adapt-to-file-injection-deprecation-in-nova.rst":[{"author":{"_account_id":13157,"name":"Zhao Chao","email":"zhaochao1984@gmail.com","username":"zhaochao"},"change_message_id":"987896b55a6f80ea9aec637cf1b6dca20d3e3f77","unresolved":false,"context_lines":[{"line_number":58,"context_line":"  we should build and return an `InjectedFile` object list."},{"line_number":59,"context_line":""},{"line_number":60,"context_line":"* Change `trove.taskmanager.models.FreshInstanceTasks#_prepare_userdata`."},{"line_number":61,"context_line":"  Build cloud config scripts based on `InjectedFile` object list. If there is"},{"line_number":62,"context_line":"  a `\u003cdatastore_manager\u003e.cloudinit` script, e.g, mysql.cloudinit, then append"},{"line_number":63,"context_line":"  our scripts to it in order not to break user\u0027s customized functions."},{"line_number":64,"context_line":""},{"line_number":65,"context_line":"* Use `--user-data` to pass the parameter we build above while booting an"},{"line_number":66,"context_line":"  instance, then we can inject files into instance\u0027s specified location,"}],"source_content_type":"text/x-rst","patch_set":4,"id":"bf659307_f6455c16","line":63,"range":{"start_line":61,"start_character":66,"end_line":63,"end_character":70},"updated":"2018-04-10 03:38:30.000000000","message":"-1: I\u0027m not familiar with cloud-init, after reading some documents about it, it looks like when using cloud-init, a lot of different formats are supported, but we cannot mix the usages of these formats. In the situation that the deployer has already defined a customized cloudinit configuration, we may have to detect the format of existed config, and then organize our \u0027InjectedFile\u0027 accordingly, but this may not be easy. An alternative way may use the cloud-init \u0027Mime Multi Part Archive\u0027 format, however the existed config still need to be detected and converted.\n\nWould you explain more details about this, thanks.","commit_id":"3433de2bf1348012ac1f2ae48e80e575d9a82447"},{"author":{"_account_id":25113,"name":"Fan Zhang","email":"zh.f@outlook.com","username":"fanzhang"},"change_message_id":"c396e22ae0fb140b75879f88103cf8963b2eaf6f","unresolved":false,"context_lines":[{"line_number":58,"context_line":"  we should build and return an `InjectedFile` object list."},{"line_number":59,"context_line":""},{"line_number":60,"context_line":"* Change `trove.taskmanager.models.FreshInstanceTasks#_prepare_userdata`."},{"line_number":61,"context_line":"  Build cloud config scripts based on `InjectedFile` object list. If there is"},{"line_number":62,"context_line":"  a `\u003cdatastore_manager\u003e.cloudinit` script, e.g, mysql.cloudinit, then append"},{"line_number":63,"context_line":"  our scripts to it in order not to break user\u0027s customized functions."},{"line_number":64,"context_line":""},{"line_number":65,"context_line":"* Use `--user-data` to pass the parameter we build above while booting an"},{"line_number":66,"context_line":"  instance, then we can inject files into instance\u0027s specified location,"}],"source_content_type":"text/x-rst","patch_set":4,"id":"bf659307_23a155aa","line":63,"range":{"start_line":61,"start_character":66,"end_line":63,"end_character":70},"in_reply_to":"bf659307_f6455c16","updated":"2018-04-10 06:10:01.000000000","message":"Yes, that\u0027s one big issue I ignored. I double checked the doc, it looks like we have to detect if there is any \u003cdatastore\u003e.cloudinit files and try to convert all these files alongside with cloud config script into Mime Multi Part Archive.  Will update the spec sooner after trying out to accomplish that.","commit_id":"3433de2bf1348012ac1f2ae48e80e575d9a82447"},{"author":{"_account_id":13157,"name":"Zhao Chao","email":"zhaochao1984@gmail.com","username":"zhaochao"},"change_message_id":"e7aaba3f7baec31436caad3365a08a09cf99acf7","unresolved":false,"context_lines":[{"line_number":59,"context_line":""},{"line_number":60,"context_line":"* Change `trove.taskmanager.models.FreshInstanceTasks#_prepare_userdata`."},{"line_number":61,"context_line":"  Build cloud config scripts based on `InjectedFile` object list. If there is"},{"line_number":62,"context_line":"  a `\u003cdatastore_manager\u003e.cloudinit` scripts, e.g, mysql.cloudinit, whether"},{"line_number":63,"context_line":"  the first line beginning with `#!` or not, we should detect the format of"},{"line_number":64,"context_line":"  the script, and then convert it alongside with our cloud config scripts"},{"line_number":65,"context_line":"  into a mime-multi part file to pass more than one type of data to cloud-init."},{"line_number":66,"context_line":"  So here should be two main helpers, one for organizing cloud config scripts"},{"line_number":67,"context_line":"  like:"},{"line_number":68,"context_line":""}],"source_content_type":"text/x-rst","patch_set":6,"id":"bf659307_ea1765ed","line":65,"range":{"start_line":62,"start_character":67,"end_line":65,"end_character":79},"updated":"2018-04-12 12:27:25.000000000","message":"According to the discussion on the 2018.04.11 weekly meeting(http://eavesdrop.openstack.org/meetings/trove/2018/trove.2018-04-11-14.00.log.html), we could firstly only support the existing cloud-init config in shell script format, and it should be stated here.","commit_id":"2d3c1b79c9cb273bfe3e4216f31a81255c572b95"},{"author":{"_account_id":13157,"name":"Zhao Chao","email":"zhaochao1984@gmail.com","username":"zhaochao"},"change_message_id":"e7aaba3f7baec31436caad3365a08a09cf99acf7","unresolved":false,"context_lines":[{"line_number":83,"context_line":"  with proper owner and permission. One thing to clarify here is that by"},{"line_number":84,"context_line":"  default, we don\u0027t enable `--config-drive` when calling novaclient to create"},{"line_number":85,"context_line":"  a server, assume that the instance can access metadata service successfully."},{"line_number":86,"context_line":"  But we can add a configuration for user to choose metadata service or"},{"line_number":87,"context_line":"  config drive as cloud-init data source."},{"line_number":88,"context_line":""},{"line_number":89,"context_line":"* Remove unused and deprecated codes."},{"line_number":90,"context_line":""}],"source_content_type":"text/x-rst","patch_set":6,"id":"bf659307_2ae79d14","line":87,"range":{"start_line":86,"start_character":0,"end_line":87,"end_character":41},"updated":"2018-04-12 12:27:25.000000000","message":"According to the discussion on the 2018.04.11 weekly meeting(http://eavesdrop.openstack.org/meetings/trove/2018/trove.2018-04-11-14.00.log.html), the existing configuration \u0027use_nova_server_config_drive\u0027 should be investigated to see if it does the same thing stated here, and this part should also updated accordingly.","commit_id":"2d3c1b79c9cb273bfe3e4216f31a81255c572b95"},{"author":{"_account_id":13157,"name":"Zhao Chao","email":"zhaochao1984@gmail.com","username":"zhaochao"},"change_message_id":"e7aaba3f7baec31436caad3365a08a09cf99acf7","unresolved":false,"context_lines":[{"line_number":92,"context_line":"Configuration"},{"line_number":93,"context_line":"-------------"},{"line_number":94,"context_line":""},{"line_number":95,"context_line":"Add the follow configuration:"},{"line_number":96,"context_line":""},{"line_number":97,"context_line":".. code-block:: python"},{"line_number":98,"context_line":""},{"line_number":99,"context_line":"    cfg.BoolOpt(\u0027force_config_drive\u0027,"},{"line_number":100,"context_line":"               default\u003dFalse,"},{"line_number":101,"context_line":"               help\u003d\u0027Use config-drive to pass user data for \u0027"},{"line_number":102,"context_line":"                    \u0027cloud-init\u0027),"},{"line_number":103,"context_line":""},{"line_number":104,"context_line":"By simply setting this item to True, administrators can specify config drive"},{"line_number":105,"context_line":"as data source for cloud-init while booting an instance."},{"line_number":106,"context_line":""},{"line_number":107,"context_line":"Database"},{"line_number":108,"context_line":"--------"}],"source_content_type":"text/x-rst","patch_set":6,"id":"bf659307_cac14156","line":105,"range":{"start_line":95,"start_character":0,"end_line":105,"end_character":56},"updated":"2018-04-12 12:27:25.000000000","message":"See the above comment, \u0027use_nova_server_config_drive\u0027 should be investigated first.","commit_id":"2d3c1b79c9cb273bfe3e4216f31a81255c572b95"},{"author":{"_account_id":13157,"name":"Zhao Chao","email":"zhaochao1984@gmail.com","username":"zhaochao"},"change_message_id":"3e3762a91ece7a98352822a1f5958472f36e9b24","unresolved":false,"context_lines":[{"line_number":80,"context_line":""},{"line_number":81,"context_line":"  .. note::"},{"line_number":82,"context_line":""},{"line_number":83,"context_line":"     Noted that currently we\u0027re not going to support mine multi-part script for"},{"line_number":84,"context_line":"     `*.cloudinit` file. It may be difficult for us to organize one"},{"line_number":85,"context_line":"     user-data scripts based on one mime multi-part file. As for formats"},{"line_number":86,"context_line":"     reference, please see [3]_ ."},{"line_number":87,"context_line":""}],"source_content_type":"text/x-rst","patch_set":8,"id":"bf659307_ba752666","line":84,"range":{"start_line":83,"start_character":5,"end_line":84,"end_character":24},"updated":"2018-04-13 02:01:39.000000000","message":"What about the other formats like \u0027Gzip Compressed Content\u0027, \u0027Include File\u0027, \u0027Cloud Config Data\u0027, \u0027Upstart Job\u0027, \u0027Part Handler\u0027?","commit_id":"cbb0446555571c530a4c415c5156f6d98cf7ce4e"}]}
