)]}'
{"/PATCHSET_LEVEL":[{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"ce0a8759a7691ed4d78349e3482d81e90b96ed0d","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"e92d49bd_05eb678d","updated":"2022-07-07 14:33:53.000000000","message":"Thanks! Looks good, just a few minor comments.\n\nDid we ever mention that we modified our downstream ironic so that we could specify an anaconda updates.img too? ha ha.","commit_id":"1f886762ec21e77eda643cbd98ef4ef216f37147"},{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"af965a8648c3f321e3f3edf35004656680813a7a","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":4,"id":"d54c020d_1913aac9","updated":"2022-07-08 14:00:20.000000000","message":"Thanks! Just need to decide and make consistent how/when we add stage2 \u0026 ks-template info in driver_internal_info.","commit_id":"94199c428b68c26e3f46f61ce0cd01af043bb44c"},{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"78431c33644df955649ed5f0942abf13d1194d59","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":5,"id":"5254d332_52ebbc00","updated":"2022-07-15 17:47:47.000000000","message":"Thanks. There were a couple of unesolved comments that I wasn\u0027t sure about, but probably not that important or can be updated later. unless we want to backport this, then we might want to address in this PR.","commit_id":"681ed8ffed1a991437cc2f659058be834a264e54"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"45e63020ec6e0b92cb9cd7d787a680093546616f","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":5,"id":"88e16e88_704a9886","updated":"2022-07-12 15:05:13.000000000","message":"recheck metalsmith gate fixed","commit_id":"681ed8ffed1a991437cc2f659058be834a264e54"}],"doc/source/admin/anaconda-deploy-interface.rst":[{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"ce0a8759a7691ed4d78349e3482d81e90b96ed0d","unresolved":true,"context_lines":[{"line_number":194,"context_line":"where to get various dependencies, such as what would be used as the anaconda"},{"line_number":195,"context_line":"``stage2`` ramdisk. Unfortunately, this functionality is not well documented."},{"line_number":196,"context_line":""},{"line_number":197,"context_line":"An example \".treeinfo file, an example can be found at"},{"line_number":198,"context_line":"http://mirror.stream.centos.org/9-stream/BaseOS/x86_64/os/.treeinfo."},{"line_number":199,"context_line":""},{"line_number":200,"context_line":".. note::"}],"source_content_type":"text/x-rst","patch_set":3,"id":"59b674a9_d1fdaf82","line":197,"updated":"2022-07-07 14:33:53.000000000","message":"nit s/\".treeinfo file, an example/``.treeinfo`` file/ ??","commit_id":"1f886762ec21e77eda643cbd98ef4ef216f37147"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"19a7ac1055286711a0018f21a2954400d5779659","unresolved":false,"context_lines":[{"line_number":194,"context_line":"where to get various dependencies, such as what would be used as the anaconda"},{"line_number":195,"context_line":"``stage2`` ramdisk. Unfortunately, this functionality is not well documented."},{"line_number":196,"context_line":""},{"line_number":197,"context_line":"An example \".treeinfo file, an example can be found at"},{"line_number":198,"context_line":"http://mirror.stream.centos.org/9-stream/BaseOS/x86_64/os/.treeinfo."},{"line_number":199,"context_line":""},{"line_number":200,"context_line":".. note::"}],"source_content_type":"text/x-rst","patch_set":3,"id":"28d29bb7_55cab8d2","line":197,"in_reply_to":"59b674a9_d1fdaf82","updated":"2022-07-07 18:21:15.000000000","message":"Done","commit_id":"1f886762ec21e77eda643cbd98ef4ef216f37147"},{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"ce0a8759a7691ed4d78349e3482d81e90b96ed0d","unresolved":true,"context_lines":[{"line_number":199,"context_line":""},{"line_number":200,"context_line":".. note::"},{"line_number":201,"context_line":"   In the context of the ``.treeinfo`` file and the related folder structure"},{"line_number":202,"context_line":"   for an deployment utilizing the ``anaconda`` deployment interface,"},{"line_number":203,"context_line":"   ``images/install.img`` file represents a ``stage2`` ramdisk."},{"line_number":204,"context_line":""},{"line_number":205,"context_line":"In the context of one wishing to deploy Centos Stream-9, the following may"}],"source_content_type":"text/x-rst","patch_set":3,"id":"c15c5541_f0a6109c","line":202,"updated":"2022-07-07 14:33:53.000000000","message":"nit s/an deployment/a deployment/","commit_id":"1f886762ec21e77eda643cbd98ef4ef216f37147"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"19a7ac1055286711a0018f21a2954400d5779659","unresolved":false,"context_lines":[{"line_number":199,"context_line":""},{"line_number":200,"context_line":".. note::"},{"line_number":201,"context_line":"   In the context of the ``.treeinfo`` file and the related folder structure"},{"line_number":202,"context_line":"   for an deployment utilizing the ``anaconda`` deployment interface,"},{"line_number":203,"context_line":"   ``images/install.img`` file represents a ``stage2`` ramdisk."},{"line_number":204,"context_line":""},{"line_number":205,"context_line":"In the context of one wishing to deploy Centos Stream-9, the following may"}],"source_content_type":"text/x-rst","patch_set":3,"id":"25d5fe37_c45c2fd4","line":202,"in_reply_to":"c15c5541_f0a6109c","updated":"2022-07-07 18:21:15.000000000","message":"Done","commit_id":"1f886762ec21e77eda643cbd98ef4ef216f37147"},{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"af965a8648c3f321e3f3edf35004656680813a7a","unresolved":true,"context_lines":[{"line_number":215,"context_line":"where to get various dependencies, such as what would be used as the anaconda"},{"line_number":216,"context_line":"``stage2`` ramdisk. Unfortunately, this functionality is not well documented."},{"line_number":217,"context_line":""},{"line_number":218,"context_line":"An example ``.treeinfo`` file, an example can be found at"},{"line_number":219,"context_line":"http://mirror.stream.centos.org/9-stream/BaseOS/x86_64/os/.treeinfo."},{"line_number":220,"context_line":""},{"line_number":221,"context_line":".. note::"}],"source_content_type":"text/x-rst","patch_set":4,"id":"1864455b_8680e219","line":218,"updated":"2022-07-08 14:00:20.000000000","message":"nit, \"An example\" is duplicated. s/file, an example/file/","commit_id":"94199c428b68c26e3f46f61ce0cd01af043bb44c"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"5f556a593b1f4168a29671f89f330699f81f4c7d","unresolved":false,"context_lines":[{"line_number":215,"context_line":"where to get various dependencies, such as what would be used as the anaconda"},{"line_number":216,"context_line":"``stage2`` ramdisk. Unfortunately, this functionality is not well documented."},{"line_number":217,"context_line":""},{"line_number":218,"context_line":"An example ``.treeinfo`` file, an example can be found at"},{"line_number":219,"context_line":"http://mirror.stream.centos.org/9-stream/BaseOS/x86_64/os/.treeinfo."},{"line_number":220,"context_line":""},{"line_number":221,"context_line":".. note::"}],"source_content_type":"text/x-rst","patch_set":4,"id":"cea6384e_5d9aa9a3","line":218,"in_reply_to":"1864455b_8680e219","updated":"2022-07-11 15:28:18.000000000","message":"Done","commit_id":"94199c428b68c26e3f46f61ce0cd01af043bb44c"}],"ironic/common/pxe_utils.py":[{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"ce0a8759a7691ed4d78349e3482d81e90b96ed0d","unresolved":true,"context_lines":[{"line_number":706,"context_line":"        if not isap:"},{"line_number":707,"context_line":"            anaconda_labels \u003d (\u0027stage2\u0027, \u0027ks_template\u0027, \u0027ks_cfg\u0027)"},{"line_number":708,"context_line":"        else:"},{"line_number":709,"context_line":"            anaconda_labels \u003d (\u0027ks_template\u0027, \u0027ks_cfg\u0027)"},{"line_number":710,"context_line":"        # NOTE(rloo): We save stage2 \u0026 ks_template values in case they"},{"line_number":711,"context_line":"        # are changed by the user after we start using them and to"},{"line_number":712,"context_line":"        # prevent re-computing them again."}],"source_content_type":"text/x-python","patch_set":3,"id":"95f9468a_65975c92","line":709,"updated":"2022-07-07 14:33:53.000000000","message":"why do we need this line and the above L705? They look very similar to me.","commit_id":"1f886762ec21e77eda643cbd98ef4ef216f37147"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"19a7ac1055286711a0018f21a2954400d5779659","unresolved":false,"context_lines":[{"line_number":706,"context_line":"        if not isap:"},{"line_number":707,"context_line":"            anaconda_labels \u003d (\u0027stage2\u0027, \u0027ks_template\u0027, \u0027ks_cfg\u0027)"},{"line_number":708,"context_line":"        else:"},{"line_number":709,"context_line":"            anaconda_labels \u003d (\u0027ks_template\u0027, \u0027ks_cfg\u0027)"},{"line_number":710,"context_line":"        # NOTE(rloo): We save stage2 \u0026 ks_template values in case they"},{"line_number":711,"context_line":"        # are changed by the user after we start using them and to"},{"line_number":712,"context_line":"        # prevent re-computing them again."}],"source_content_type":"text/x-python","patch_set":3,"id":"ac036104_f471d78a","line":709,"in_reply_to":"95f9468a_65975c92","updated":"2022-07-07 18:21:15.000000000","message":"doh, 705 can be dropped.","commit_id":"1f886762ec21e77eda643cbd98ef4ef216f37147"},{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"ce0a8759a7691ed4d78349e3482d81e90b96ed0d","unresolved":true,"context_lines":[{"line_number":710,"context_line":"        # NOTE(rloo): We save stage2 \u0026 ks_template values in case they"},{"line_number":711,"context_line":"        # are changed by the user after we start using them and to"},{"line_number":712,"context_line":"        # prevent re-computing them again."},{"line_number":713,"context_line":"        if not node.driver_internal_info.get(\u0027stage2\u0027):"},{"line_number":714,"context_line":"            if i_info.get(\u0027stage2\u0027):"},{"line_number":715,"context_line":"                node.set_driver_internal_info(\u0027stage2\u0027, i_info[\u0027stage2\u0027])"},{"line_number":716,"context_line":"            elif not isap:"}],"source_content_type":"text/x-python","patch_set":3,"id":"39fc7cde_65095d0c","line":713,"updated":"2022-07-07 14:33:53.000000000","message":"i\u0027d probably change this to s/stage2/ks_template/ OR add \u0027or not node.driver_internal_info.get(\u0027ks_template\u0027). The idea being that we only need to set the internal info once, but if not isap, \u0027stage2\u0027 won\u0027t ever get set and we\u0027d be setting ks_template again -- which we don\u0027t want to do if eg the user changed that value after we initially set things up to use the original value...","commit_id":"1f886762ec21e77eda643cbd98ef4ef216f37147"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"5f556a593b1f4168a29671f89f330699f81f4c7d","unresolved":true,"context_lines":[{"line_number":710,"context_line":"        # NOTE(rloo): We save stage2 \u0026 ks_template values in case they"},{"line_number":711,"context_line":"        # are changed by the user after we start using them and to"},{"line_number":712,"context_line":"        # prevent re-computing them again."},{"line_number":713,"context_line":"        if not node.driver_internal_info.get(\u0027stage2\u0027):"},{"line_number":714,"context_line":"            if i_info.get(\u0027stage2\u0027):"},{"line_number":715,"context_line":"                node.set_driver_internal_info(\u0027stage2\u0027, i_info[\u0027stage2\u0027])"},{"line_number":716,"context_line":"            elif not isap:"}],"source_content_type":"text/x-python","patch_set":3,"id":"847bef3d_887b76a2","line":713,"in_reply_to":"37eee026_0873ebd4","updated":"2022-07-11 15:28:18.000000000","message":"Originally I was thinking we needed another unit test, but the added test test_get_instance_image_info_with_kickstart_url appears to cover no stage2, and ensuring an output ks_template is in the resulting body.\n\nI\u0027m not sure if we need to go much deeper on the testing, fwiw.","commit_id":"1f886762ec21e77eda643cbd98ef4ef216f37147"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"19a7ac1055286711a0018f21a2954400d5779659","unresolved":true,"context_lines":[{"line_number":710,"context_line":"        # NOTE(rloo): We save stage2 \u0026 ks_template values in case they"},{"line_number":711,"context_line":"        # are changed by the user after we start using them and to"},{"line_number":712,"context_line":"        # prevent re-computing them again."},{"line_number":713,"context_line":"        if not node.driver_internal_info.get(\u0027stage2\u0027):"},{"line_number":714,"context_line":"            if i_info.get(\u0027stage2\u0027):"},{"line_number":715,"context_line":"                node.set_driver_internal_info(\u0027stage2\u0027, i_info[\u0027stage2\u0027])"},{"line_number":716,"context_line":"            elif not isap:"}],"source_content_type":"text/x-python","patch_set":3,"id":"e086a17b_09690760","line":713,"in_reply_to":"39fc7cde_65095d0c","updated":"2022-07-07 18:21:15.000000000","message":"Well, you need the ks_template with or without the stage2 file, so I\u0027m not entirely sure?\n\nbut if isap, it is pointless I think.","commit_id":"1f886762ec21e77eda643cbd98ef4ef216f37147"},{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"af965a8648c3f321e3f3edf35004656680813a7a","unresolved":true,"context_lines":[{"line_number":710,"context_line":"        # NOTE(rloo): We save stage2 \u0026 ks_template values in case they"},{"line_number":711,"context_line":"        # are changed by the user after we start using them and to"},{"line_number":712,"context_line":"        # prevent re-computing them again."},{"line_number":713,"context_line":"        if not node.driver_internal_info.get(\u0027stage2\u0027):"},{"line_number":714,"context_line":"            if i_info.get(\u0027stage2\u0027):"},{"line_number":715,"context_line":"                node.set_driver_internal_info(\u0027stage2\u0027, i_info[\u0027stage2\u0027])"},{"line_number":716,"context_line":"            elif not isap:"}],"source_content_type":"text/x-python","patch_set":3,"id":"37eee026_0873ebd4","line":713,"in_reply_to":"b33e59db_dcf7c6b0","updated":"2022-07-08 14:00:20.000000000","message":"When i wrote this, my assumption was that both stage2 AND ks_template had to be set in dii, so I didn\u0027t bother to check for both. If one was there, they would both be there. This change breaks that assumption, so we just need to code for it :) We want to only set it once, when starting, cuz it is possible (maybe? i\u0027ve already forgotten but I think that\u0027s why I coded it this way) for the user to change it again and we don\u0027t want to use the newer value if we\u0027re in the midst of deploying (or debugging a failed deploy...?)","commit_id":"1f886762ec21e77eda643cbd98ef4ef216f37147"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"df7e881b99d696369967bbba645612f171f44867","unresolved":true,"context_lines":[{"line_number":710,"context_line":"        # NOTE(rloo): We save stage2 \u0026 ks_template values in case they"},{"line_number":711,"context_line":"        # are changed by the user after we start using them and to"},{"line_number":712,"context_line":"        # prevent re-computing them again."},{"line_number":713,"context_line":"        if not node.driver_internal_info.get(\u0027stage2\u0027):"},{"line_number":714,"context_line":"            if i_info.get(\u0027stage2\u0027):"},{"line_number":715,"context_line":"                node.set_driver_internal_info(\u0027stage2\u0027, i_info[\u0027stage2\u0027])"},{"line_number":716,"context_line":"            elif not isap:"}],"source_content_type":"text/x-python","patch_set":3,"id":"b33e59db_dcf7c6b0","line":713,"in_reply_to":"e086a17b_09690760","updated":"2022-07-07 18:38:19.000000000","message":"ah! okay, so the conundrum is we actually have an unrelated bug here of sorts. Specifically we should be independently evaluating everything, not just based on this if. If you look further down, the ks_template stuff is under this conditional as well.","commit_id":"1f886762ec21e77eda643cbd98ef4ef216f37147"},{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"ce0a8759a7691ed4d78349e3482d81e90b96ed0d","unresolved":true,"context_lines":[{"line_number":712,"context_line":"        # prevent re-computing them again."},{"line_number":713,"context_line":"        if not node.driver_internal_info.get(\u0027stage2\u0027):"},{"line_number":714,"context_line":"            if i_info.get(\u0027stage2\u0027):"},{"line_number":715,"context_line":"                node.set_driver_internal_info(\u0027stage2\u0027, i_info[\u0027stage2\u0027])"},{"line_number":716,"context_line":"            elif not isap:"},{"line_number":717,"context_line":"                _get_image_properties()"},{"line_number":718,"context_line":"                if \u0027stage2_id\u0027 not in image_properties:"}],"source_content_type":"text/x-python","patch_set":3,"id":"75b4c11a_b419c4fd","line":715,"updated":"2022-07-07 14:33:53.000000000","message":"just want to confirm. if isap -- stage2 could still be specified, right?","commit_id":"1f886762ec21e77eda643cbd98ef4ef216f37147"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"19a7ac1055286711a0018f21a2954400d5779659","unresolved":true,"context_lines":[{"line_number":712,"context_line":"        # prevent re-computing them again."},{"line_number":713,"context_line":"        if not node.driver_internal_info.get(\u0027stage2\u0027):"},{"line_number":714,"context_line":"            if i_info.get(\u0027stage2\u0027):"},{"line_number":715,"context_line":"                node.set_driver_internal_info(\u0027stage2\u0027, i_info[\u0027stage2\u0027])"},{"line_number":716,"context_line":"            elif not isap:"},{"line_number":717,"context_line":"                _get_image_properties()"},{"line_number":718,"context_line":"                if \u0027stage2_id\u0027 not in image_properties:"}],"source_content_type":"text/x-python","patch_set":3,"id":"320c18e5_74d592f9","line":715,"in_reply_to":"75b4c11a_b419c4fd","updated":"2022-07-07 18:21:15.000000000","message":"I\u0027m going to have to go check dracut.... But I don\u0027t see why one would. So I suspect we could just exclude all of the stage2 stuffs... if the source is a path.","commit_id":"1f886762ec21e77eda643cbd98ef4ef216f37147"},{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"ce0a8759a7691ed4d78349e3482d81e90b96ed0d","unresolved":true,"context_lines":[{"line_number":828,"context_line":"                pxe_opts[option] \u003d os.path.relpath(pxe_info[label][1],"},{"line_number":829,"context_line":"                                                   CONF.pxe.tftp_root)"},{"line_number":830,"context_line":""},{"line_number":831,"context_line":"    # NOTE(TheJulia): This is basically anaconda specifc, but who knows"},{"line_number":832,"context_line":"    # one day! Copy image_source to repo_url if it is a URL to a directory"},{"line_number":833,"context_line":"    # path, and an explicit stage2 URL is not defined as .treeinfo is totally"},{"line_number":834,"context_line":"    # a thing and anaconda\u0027s dracut element knows the secrets of how to"}],"source_content_type":"text/x-python","patch_set":3,"id":"af0af31a_cf51fe18","line":831,"updated":"2022-07-07 14:33:53.000000000","message":"nit s/specifc/specific/","commit_id":"1f886762ec21e77eda643cbd98ef4ef216f37147"},{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"ce0a8759a7691ed4d78349e3482d81e90b96ed0d","unresolved":true,"context_lines":[{"line_number":836,"context_line":"    # example:"},{"line_number":837,"context_line":"    # http://mirror.stream.centos.org/9-stream/BaseOS/x86_64/os/.treeinfo"},{"line_number":838,"context_line":"    if isap and \u0027stage2_url\u0027 not in pxe_opts:"},{"line_number":839,"context_line":"        pxe_opts[\u0027repo_url\u0027] \u003d node.instance_info[\u0027image_source\u0027]"},{"line_number":840,"context_line":""},{"line_number":841,"context_line":"    pxe_opts.setdefault(\u0027aki_path\u0027, \u0027no_kernel\u0027)"},{"line_number":842,"context_line":"    pxe_opts.setdefault(\u0027ari_path\u0027, \u0027no_ramdisk\u0027)"}],"source_content_type":"text/x-python","patch_set":3,"id":"6a557afa_f2db2232","line":839,"updated":"2022-07-07 14:33:53.000000000","message":"will node.instance_info[\u0027image_source\u0027] always exist? Wondering if node.instance_info.get(\u0027image_source\u0027) is safer cuz too lazy to go through to code to verify that it must exist.","commit_id":"1f886762ec21e77eda643cbd98ef4ef216f37147"},{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"78431c33644df955649ed5f0942abf13d1194d59","unresolved":true,"context_lines":[{"line_number":836,"context_line":"    # example:"},{"line_number":837,"context_line":"    # http://mirror.stream.centos.org/9-stream/BaseOS/x86_64/os/.treeinfo"},{"line_number":838,"context_line":"    if isap and \u0027stage2_url\u0027 not in pxe_opts:"},{"line_number":839,"context_line":"        pxe_opts[\u0027repo_url\u0027] \u003d node.instance_info[\u0027image_source\u0027]"},{"line_number":840,"context_line":""},{"line_number":841,"context_line":"    pxe_opts.setdefault(\u0027aki_path\u0027, \u0027no_kernel\u0027)"},{"line_number":842,"context_line":"    pxe_opts.setdefault(\u0027ari_path\u0027, \u0027no_ramdisk\u0027)"}],"source_content_type":"text/x-python","patch_set":3,"id":"f365e6a2_600ce351","line":839,"in_reply_to":"2cd7ec24_42d6dc33","updated":"2022-07-15 17:47:47.000000000","message":"sorry, were you going to update this to node.instance_info.get(\u0027image_source\u0027) ?","commit_id":"1f886762ec21e77eda643cbd98ef4ef216f37147"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"5f556a593b1f4168a29671f89f330699f81f4c7d","unresolved":true,"context_lines":[{"line_number":836,"context_line":"    # example:"},{"line_number":837,"context_line":"    # http://mirror.stream.centos.org/9-stream/BaseOS/x86_64/os/.treeinfo"},{"line_number":838,"context_line":"    if isap and \u0027stage2_url\u0027 not in pxe_opts:"},{"line_number":839,"context_line":"        pxe_opts[\u0027repo_url\u0027] \u003d node.instance_info[\u0027image_source\u0027]"},{"line_number":840,"context_line":""},{"line_number":841,"context_line":"    pxe_opts.setdefault(\u0027aki_path\u0027, \u0027no_kernel\u0027)"},{"line_number":842,"context_line":"    pxe_opts.setdefault(\u0027ari_path\u0027, \u0027no_ramdisk\u0027)"}],"source_content_type":"text/x-python","patch_set":3,"id":"2cd7ec24_42d6dc33","line":839,"in_reply_to":"6a557afa_f2db2232","updated":"2022-07-11 15:28:18.000000000","message":"whoops, yeah, that should be fixed. In theory, it *should* always exist, but anaconda doesn\u0027t explicitly require it AIUI. At least, in standalone mode it is not used really except as the glance reference in fully integrated. This makes it semi-redundant to be nice to users.","commit_id":"1f886762ec21e77eda643cbd98ef4ef216f37147"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"6e7671f1e7eab488bc1d9c3d926cfa548887977f","unresolved":true,"context_lines":[{"line_number":836,"context_line":"    # example:"},{"line_number":837,"context_line":"    # http://mirror.stream.centos.org/9-stream/BaseOS/x86_64/os/.treeinfo"},{"line_number":838,"context_line":"    if isap and \u0027stage2_url\u0027 not in pxe_opts:"},{"line_number":839,"context_line":"        pxe_opts[\u0027repo_url\u0027] \u003d node.instance_info[\u0027image_source\u0027]"},{"line_number":840,"context_line":""},{"line_number":841,"context_line":"    pxe_opts.setdefault(\u0027aki_path\u0027, \u0027no_kernel\u0027)"},{"line_number":842,"context_line":"    pxe_opts.setdefault(\u0027ari_path\u0027, \u0027no_ramdisk\u0027)"}],"source_content_type":"text/x-python","patch_set":3,"id":"830f64fa_822de341","line":839,"in_reply_to":"dfc46448_aeda59ee","updated":"2022-07-20 13:50:51.000000000","message":"Doh, forgot it. Fixing.","commit_id":"1f886762ec21e77eda643cbd98ef4ef216f37147"},{"author":{"_account_id":10342,"name":"Jay Faulkner","display_name":"JayF","email":"jay@jvf.cc","username":"JayF","status":"youtube.com/@oss-gr / podcast.gr-oss.io"},"change_message_id":"9f6d094e2becfc9431099b880679dbdcf5d1b9f8","unresolved":true,"context_lines":[{"line_number":836,"context_line":"    # example:"},{"line_number":837,"context_line":"    # http://mirror.stream.centos.org/9-stream/BaseOS/x86_64/os/.treeinfo"},{"line_number":838,"context_line":"    if isap and \u0027stage2_url\u0027 not in pxe_opts:"},{"line_number":839,"context_line":"        pxe_opts[\u0027repo_url\u0027] \u003d node.instance_info[\u0027image_source\u0027]"},{"line_number":840,"context_line":""},{"line_number":841,"context_line":"    pxe_opts.setdefault(\u0027aki_path\u0027, \u0027no_kernel\u0027)"},{"line_number":842,"context_line":"    pxe_opts.setdefault(\u0027ari_path\u0027, \u0027no_ramdisk\u0027)"}],"source_content_type":"text/x-python","patch_set":3,"id":"dfc46448_aeda59ee","line":839,"in_reply_to":"f365e6a2_600ce351","updated":"2022-07-19 17:34:23.000000000","message":"We need to fix this before this can merge IMO","commit_id":"1f886762ec21e77eda643cbd98ef4ef216f37147"},{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"af965a8648c3f321e3f3edf35004656680813a7a","unresolved":true,"context_lines":[{"line_number":724,"context_line":"                else:"},{"line_number":725,"context_line":"                    node.set_driver_internal_info("},{"line_number":726,"context_line":"                        \u0027stage2\u0027, str(image_properties[\u0027stage2_id\u0027]))"},{"line_number":727,"context_line":"        if i_info.get(\u0027ks_template\u0027):"},{"line_number":728,"context_line":"            node.set_driver_internal_info(\u0027ks_template\u0027,"},{"line_number":729,"context_line":"                                          i_info[\u0027ks_template\u0027])"},{"line_number":730,"context_line":"        else:"}],"source_content_type":"text/x-python","patch_set":4,"id":"41a02a3a_e29706d5","line":727,"updated":"2022-07-08 14:00:20.000000000","message":"i think (based on the comment) that we want to put before this: \"if not node.driver_internal_info.get(\u0027ks_template\u0027) \"\n\nI\u0027ve lost track -- am wondering if we actually need to change something to indicate that \u0027this value isn\u0027t set\u0027 in driver_internal_info. (eg set it to None or something, but that would mean modifying other code to check the value i think). Cuz original code assumed that they HAD to be set. If stage2 doesn\u0027t need to be set, how do we know it doesn\u0027t need to be set IF this code is called more than once during a deploy and if the user can somehow change instance_info in the meantime... Am thinking we don\u0027t allow the user to change instance_info so it may be moot, but I\u0027m not certain and don\u0027t have time to look into it now.","commit_id":"94199c428b68c26e3f46f61ce0cd01af043bb44c"},{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"78431c33644df955649ed5f0942abf13d1194d59","unresolved":true,"context_lines":[{"line_number":731,"context_line":"        # NOTE(TheJulia): A kickstart template is entirely independent"},{"line_number":732,"context_line":"        # of the stage2 ramdisk. In the end, it was the configuration which"},{"line_number":733,"context_line":"        # told anaconda how to execute."},{"line_number":734,"context_line":"        if i_info.get(\u0027ks_template\u0027):"},{"line_number":735,"context_line":"            # If the value is set, we always overwrite it, in the event"},{"line_number":736,"context_line":"            # a rebuild is occuring or something along those lines."},{"line_number":737,"context_line":"            node.set_driver_internal_info(\u0027ks_template\u0027,"}],"source_content_type":"text/x-python","patch_set":5,"id":"63264908_a23d4787","line":734,"updated":"2022-07-15 17:47:47.000000000","message":"this is not consistent with stage2 (and with the original code) in the sense that if driver_internal_info already has \u0027ks_template\u0027 set, we don\u0027t do this. But it is probably fine (unless someone discovers a use case later where it isn\u0027t quite fine, heh).","commit_id":"681ed8ffed1a991437cc2f659058be834a264e54"}],"releasenotes/notes/simplify-standalone-anaconda-use-7160d0d3401e468e.yaml":[{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"ce0a8759a7691ed4d78349e3482d81e90b96ed0d","unresolved":true,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"fixes:"},{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    Anaconda supports an ability to explicitly pass a repository URL instead"},{"line_number":5,"context_line":"    of a ``stage2`` ramdisk parameter. This has resulted in confusion"},{"line_number":6,"context_line":"    in use of the ``anaconda`` deployment interface, as a ``stage2``"},{"line_number":7,"context_line":"    ramdisk is typically not used, but made sense with Glance images in"}],"source_content_type":"text/x-yaml","patch_set":3,"id":"7e38c0ec_8d3cf1e0","line":4,"updated":"2022-07-07 14:33:53.000000000","message":"nit s/an/the/","commit_id":"1f886762ec21e77eda643cbd98ef4ef216f37147"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"19a7ac1055286711a0018f21a2954400d5779659","unresolved":false,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"fixes:"},{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    Anaconda supports an ability to explicitly pass a repository URL instead"},{"line_number":5,"context_line":"    of a ``stage2`` ramdisk parameter. This has resulted in confusion"},{"line_number":6,"context_line":"    in use of the ``anaconda`` deployment interface, as a ``stage2``"},{"line_number":7,"context_line":"    ramdisk is typically not used, but made sense with Glance images in"}],"source_content_type":"text/x-yaml","patch_set":3,"id":"1a3a7b4e_3a08df81","line":4,"in_reply_to":"7e38c0ec_8d3cf1e0","updated":"2022-07-07 18:21:15.000000000","message":"Done","commit_id":"1f886762ec21e77eda643cbd98ef4ef216f37147"},{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"ce0a8759a7691ed4d78349e3482d81e90b96ed0d","unresolved":true,"context_lines":[{"line_number":5,"context_line":"    of a ``stage2`` ramdisk parameter. This has resulted in confusion"},{"line_number":6,"context_line":"    in use of the ``anaconda`` deployment interface, as a ``stage2``"},{"line_number":7,"context_line":"    ramdisk is typically not used, but made sense with Glance images in"},{"line_number":8,"context_line":"    a full integrated OpenStack deployment. Now a URL to a path can be"},{"line_number":9,"context_line":"    supplied to the ``anaconda`` deployment interface to simplify the"},{"line_number":10,"context_line":"    interaction and use."}],"source_content_type":"text/x-yaml","patch_set":3,"id":"a30b1a1d_b6775257","line":8,"updated":"2022-07-07 14:33:53.000000000","message":"nit s/full/fully/","commit_id":"1f886762ec21e77eda643cbd98ef4ef216f37147"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"19a7ac1055286711a0018f21a2954400d5779659","unresolved":false,"context_lines":[{"line_number":5,"context_line":"    of a ``stage2`` ramdisk parameter. This has resulted in confusion"},{"line_number":6,"context_line":"    in use of the ``anaconda`` deployment interface, as a ``stage2``"},{"line_number":7,"context_line":"    ramdisk is typically not used, but made sense with Glance images in"},{"line_number":8,"context_line":"    a full integrated OpenStack deployment. Now a URL to a path can be"},{"line_number":9,"context_line":"    supplied to the ``anaconda`` deployment interface to simplify the"},{"line_number":10,"context_line":"    interaction and use."}],"source_content_type":"text/x-yaml","patch_set":3,"id":"d8716318_034a24a8","line":8,"in_reply_to":"a30b1a1d_b6775257","updated":"2022-07-07 18:21:15.000000000","message":"Done","commit_id":"1f886762ec21e77eda643cbd98ef4ef216f37147"},{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"ce0a8759a7691ed4d78349e3482d81e90b96ed0d","unresolved":true,"context_lines":[{"line_number":7,"context_line":"    ramdisk is typically not used, but made sense with Glance images in"},{"line_number":8,"context_line":"    a full integrated OpenStack deployment. Now a URL to a path can be"},{"line_number":9,"context_line":"    supplied to the ``anaconda`` deployment interface to simplify the"},{"line_number":10,"context_line":"    interaction and use."}],"source_content_type":"text/x-yaml","patch_set":3,"id":"5cf0b36b_f96181cf","line":10,"updated":"2022-07-07 14:33:53.000000000","message":"is this a fix or a new feature?","commit_id":"1f886762ec21e77eda643cbd98ef4ef216f37147"},{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"af965a8648c3f321e3f3edf35004656680813a7a","unresolved":false,"context_lines":[{"line_number":7,"context_line":"    ramdisk is typically not used, but made sense with Glance images in"},{"line_number":8,"context_line":"    a full integrated OpenStack deployment. Now a URL to a path can be"},{"line_number":9,"context_line":"    supplied to the ``anaconda`` deployment interface to simplify the"},{"line_number":10,"context_line":"    interaction and use."}],"source_content_type":"text/x-yaml","patch_set":3,"id":"b2461637_26c863af","line":10,"in_reply_to":"241d8ab1_4787016c","updated":"2022-07-08 14:00:20.000000000","message":"Done","commit_id":"1f886762ec21e77eda643cbd98ef4ef216f37147"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"19a7ac1055286711a0018f21a2954400d5779659","unresolved":true,"context_lines":[{"line_number":7,"context_line":"    ramdisk is typically not used, but made sense with Glance images in"},{"line_number":8,"context_line":"    a full integrated OpenStack deployment. Now a URL to a path can be"},{"line_number":9,"context_line":"    supplied to the ``anaconda`` deployment interface to simplify the"},{"line_number":10,"context_line":"    interaction and use."}],"source_content_type":"text/x-yaml","patch_set":3,"id":"241d8ab1_4787016c","line":10,"in_reply_to":"5cf0b36b_f96181cf","updated":"2022-07-07 18:21:15.000000000","message":"I think it is debatable. This all feels like fixes since the use of the anaconda interface has been difficult for non-integrated users. Specifically where things such as stage2 has to be supplied, but they are feeding a URL path through for treeinfo files to be used... Or using templates which don\u0027t use liveimg_url.","commit_id":"1f886762ec21e77eda643cbd98ef4ef216f37147"},{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"af965a8648c3f321e3f3edf35004656680813a7a","unresolved":true,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"fixes:"},{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    Anaconda supports an ability to explicitly pass an repository URL instead"},{"line_number":5,"context_line":"    of a ``stage2`` ramdisk parameter. This has resulted in confusion"},{"line_number":6,"context_line":"    in use of the ``anaconda`` deployment interface, as a ``stage2``"},{"line_number":7,"context_line":"    ramdisk is typically not used, but made sense with Glance images in"}],"source_content_type":"text/x-yaml","patch_set":4,"id":"16741a82_e1d0264d","line":4,"updated":"2022-07-08 14:00:20.000000000","message":"ugh, sorry, i wasn\u0027t clear. s/an ability/the ability/\n\nand undo s/an repository/a repository/","commit_id":"94199c428b68c26e3f46f61ce0cd01af043bb44c"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"5f556a593b1f4168a29671f89f330699f81f4c7d","unresolved":false,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"fixes:"},{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    Anaconda supports an ability to explicitly pass an repository URL instead"},{"line_number":5,"context_line":"    of a ``stage2`` ramdisk parameter. This has resulted in confusion"},{"line_number":6,"context_line":"    in use of the ``anaconda`` deployment interface, as a ``stage2``"},{"line_number":7,"context_line":"    ramdisk is typically not used, but made sense with Glance images in"}],"source_content_type":"text/x-yaml","patch_set":4,"id":"2860d9fd_1e8b5395","line":4,"in_reply_to":"16741a82_e1d0264d","updated":"2022-07-11 15:28:18.000000000","message":"Done","commit_id":"94199c428b68c26e3f46f61ce0cd01af043bb44c"}]}
