)]}'
{"/PATCHSET_LEVEL":[{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"99ce4cd5c0bb794eaabf4899d3830cb49074df97","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"cc631db1_e50f2461","updated":"2025-08-07 11:26:01.000000000","message":"over all this look ok one question inline.","commit_id":"6a5726490ae0596e8d34614ebc4be9a3988c98c0"}],"stackrc":[{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"99ce4cd5c0bb794eaabf4899d3830cb49074df97","unresolved":true,"context_lines":[{"line_number":187,"context_line":""},{"line_number":188,"context_line":"# Ensure we use the correct Python version"},{"line_number":189,"context_line":"if [ -x \"$DEVSTACK_VENV/bin/python\" ]; then"},{"line_number":190,"context_line":"    PYTHON\u003d$DEVSTACK_VENV/bin/python"},{"line_number":191,"context_line":"else"},{"line_number":192,"context_line":"    PYTHON\u003d${PYTHON:-python3}"},{"line_number":193,"context_line":"fi"}],"source_content_type":"application/x-shellscript","patch_set":1,"id":"81df0fd8_39b509f2","line":190,"updated":"2025-08-07 11:26:01.000000000","message":"this is the correct plase to add this in my opionion but there is one semi catch 22 stiution that somewhat sutle.\n\nthis will have diffent behavior based on if yo have previously run stack.sh\n\nwe are still seting up the vars that will be used later ot create teh venv\n\nthis file is souced here \nhttps://github.com/openstack/devstack/blob/master/stack.sh#L226\n\nbut we do not `install_python` until here \nhttps://github.com/openstack/devstack/blob/master/stack.sh#L428\n\nand we do not setup the devstack virutal env until here \nhttps://github.com/openstack/devstack/blob/master/stack.sh#L838\n\nsetup_devstack_virtualenv will properly export updated python defintions\nwhen its invoked\n\nhttps://github.com/openstack/devstack/blob/master/inc/python#L37-L50\n\nso in practice this will actually work in all situation where it makes sense to use this i think but we may want to leave a comemtn that the behivor will differ if you have previously run devstack on the system.\nif you unstack and stack again stack.sh on the second execution will us python for the existing venv on any invocation prior to like 838.","commit_id":"6a5726490ae0596e8d34614ebc4be9a3988c98c0"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"99ce4cd5c0bb794eaabf4899d3830cb49074df97","unresolved":true,"context_lines":[{"line_number":195,"context_line":"# Adding the specific version of Python 3 to this variable will install"},{"line_number":196,"context_line":"# the app using that version of the interpreter instead of just 3."},{"line_number":197,"context_line":"_DEFAULT_PYTHON3_VERSION\u003d\"$(_get_python_version python3)\""},{"line_number":198,"context_line":"export PYTHON3_VERSION\u003d${PYTHON3_VERSION:-${_DEFAULT_PYTHON3_VERSION:-3}}"},{"line_number":199,"context_line":""},{"line_number":200,"context_line":"# Create a virtualenv with this"},{"line_number":201,"context_line":"# Use the built-in venv to avoid more dependencies"}],"source_content_type":"application/x-shellscript","patch_set":1,"id":"82daf61c_e3f6f86b","line":198,"updated":"2025-08-07 11:26:01.000000000","message":"install_python will consume this but for the actula package installation but also to update PYTHON to point at the newly installed version if its not the default.\n\nhttps://github.com/openstack/devstack/blob/5aa5d4d65213554998ada60cfdecee5f395e4e92/inc/python#L482-L485","commit_id":"6a5726490ae0596e8d34614ebc4be9a3988c98c0"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"99ce4cd5c0bb794eaabf4899d3830cb49074df97","unresolved":true,"context_lines":[{"line_number":199,"context_line":""},{"line_number":200,"context_line":"# Create a virtualenv with this"},{"line_number":201,"context_line":"# Use the built-in venv to avoid more dependencies"},{"line_number":202,"context_line":"export VIRTUALENV_CMD\u003d\"python3 -m venv\""},{"line_number":203,"context_line":""},{"line_number":204,"context_line":"# This can be used to turn database query logging on and off"},{"line_number":205,"context_line":"# (currently only implemented for MySQL backend)"}],"source_content_type":"application/x-shellscript","patch_set":1,"id":"f50eee9b_8ff05401","line":202,"range":{"start_line":202,"start_character":22,"end_line":202,"end_character":31},"updated":"2025-08-07 11:26:01.000000000","message":"should this not be $PYTHON now\n\nwhen we create the venv we want to use the one that was install in the install python step.\n\nthis feel like a pre exisitng bug.","commit_id":"6a5726490ae0596e8d34614ebc4be9a3988c98c0"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"347d768e7ab356c1f8b12495606af6c02b5ccacf","unresolved":false,"context_lines":[{"line_number":199,"context_line":""},{"line_number":200,"context_line":"# Create a virtualenv with this"},{"line_number":201,"context_line":"# Use the built-in venv to avoid more dependencies"},{"line_number":202,"context_line":"export VIRTUALENV_CMD\u003d\"python3 -m venv\""},{"line_number":203,"context_line":""},{"line_number":204,"context_line":"# This can be used to turn database query logging on and off"},{"line_number":205,"context_line":"# (currently only implemented for MySQL backend)"}],"source_content_type":"application/x-shellscript","patch_set":1,"id":"77425fa5_aadfa44f","line":202,"range":{"start_line":202,"start_character":22,"end_line":202,"end_character":31},"in_reply_to":"f50eee9b_8ff05401","updated":"2026-05-12 10:16:22.000000000","message":"It should. This was fixed in I3f9db8cfa38572cdc80d4973ed3b5908335ef6e8","commit_id":"6a5726490ae0596e8d34614ebc4be9a3988c98c0"},{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"e0f59ff308b4ce716aca2095d96eac936656acf1","unresolved":true,"context_lines":[{"line_number":192,"context_line":""},{"line_number":193,"context_line":"# Ensure we use the correct Python version"},{"line_number":194,"context_line":"if [ -x \"$DEVSTACK_VENV/bin/python\" ]; then"},{"line_number":195,"context_line":"    PYTHON\u003d$DEVSTACK_VENV/bin/python"},{"line_number":196,"context_line":"else"},{"line_number":197,"context_line":"    PYTHON\u003d${PYTHON:-python${PYTHON3_VERSION}}"},{"line_number":198,"context_line":"fi"},{"line_number":199,"context_line":""},{"line_number":200,"context_line":"# Create a virtualenv with this"},{"line_number":201,"context_line":"# Use the built-in venv to avoid more dependencies"},{"line_number":202,"context_line":"export VIRTUALENV_CMD\u003d\"$PYTHON -m venv\""},{"line_number":203,"context_line":""},{"line_number":204,"context_line":"# This can be used to turn database query logging on and off"},{"line_number":205,"context_line":"# (currently only implemented for MySQL backend)"}],"source_content_type":"application/x-shellscript","patch_set":2,"id":"9d2aa8c1_8f904e8c","line":202,"range":{"start_line":195,"start_character":0,"end_line":202,"end_character":39},"updated":"2026-05-14 16:51:23.000000000","message":"Is there a temporal inversion between L194 checking for the venv and L202 setting up the creation of such env?","commit_id":"7855cef32ff68a41a38031274baf72b93f0e1d57"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"8fe12fcec186e415c39ec891a620689aec098111","unresolved":true,"context_lines":[{"line_number":192,"context_line":""},{"line_number":193,"context_line":"# Ensure we use the correct Python version"},{"line_number":194,"context_line":"if [ -x \"$DEVSTACK_VENV/bin/python\" ]; then"},{"line_number":195,"context_line":"    PYTHON\u003d$DEVSTACK_VENV/bin/python"},{"line_number":196,"context_line":"else"},{"line_number":197,"context_line":"    PYTHON\u003d${PYTHON:-python${PYTHON3_VERSION}}"},{"line_number":198,"context_line":"fi"},{"line_number":199,"context_line":""},{"line_number":200,"context_line":"# Create a virtualenv with this"},{"line_number":201,"context_line":"# Use the built-in venv to avoid more dependencies"},{"line_number":202,"context_line":"export VIRTUALENV_CMD\u003d\"$PYTHON -m venv\""},{"line_number":203,"context_line":""},{"line_number":204,"context_line":"# This can be used to turn database query logging on and off"},{"line_number":205,"context_line":"# (currently only implemented for MySQL backend)"}],"source_content_type":"application/x-shellscript","patch_set":2,"id":"4dc87a37_16d024c1","line":202,"range":{"start_line":195,"start_character":0,"end_line":202,"end_character":39},"in_reply_to":"9d2aa8c1_8f904e8c","updated":"2026-05-14 18:03:04.000000000","message":"Yeah, there is. Good spot. We override `PYTHON` in `setup_devstack_virtualenv`.\n\nI think we\u0027re going to need two Python\u0027s here: one for the virtualenv creation, and another for the actual venv","commit_id":"7855cef32ff68a41a38031274baf72b93f0e1d57"}]}
