)]}'
{"id":"openstack%2Fopenstack-ansible~431724","triplet_id":"openstack%2Fopenstack-ansible~master~I22566aba1e23cf7d575759219aeb8a7508361f3d","project":"openstack/openstack-ansible","branch":"master","topic":"bug/1663328","hashtags":[],"change_id":"I22566aba1e23cf7d575759219aeb8a7508361f3d","subject":"Fix error during \u0027inventory-manage.py -r\u0027 calls","status":"ABANDONED","created":"2017-02-09 19:36:55.000000000","updated":"2017-02-14 18:38:07.000000000","total_comment_count":2,"unresolved_comment_count":0,"has_review_started":true,"meta_rev_id":"62398b2ea91113aae38439f57582a4a9451aa040","_number":431724,"virtual_id_number":431724,"owner":{"_account_id":25114,"name":"Joel Griffiths","email":"joel.griffiths@unitasglobal.com","username":"joelgriffiths"},"actions":{},"labels":{"Verified":{"disliked":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"all":[{"_account_id":12892,"name":"Nolan Brubaker","email":"nolan.brubaker@rackspace.com","username":"nrb"},{"_account_id":7353,"name":"Kevin Carter","email":"kevin@cloudnull.com","username":"cloudnull"},{"date":"2017-02-09 20:33:49.000000000","_account_id":25114,"name":"Joel Griffiths","email":"joel.griffiths@unitasglobal.com","username":"joelgriffiths"},{"date":"2017-02-09 20:32:36.000000000","_account_id":12807,"name":"Steve Lewis (stevelle)","email":"stevelle@gmail.com","username":"stevelle"},{"_account_id":4656,"name":"Sean M. Collins","email":"sean@coreitpro.com","username":"scollins"},{"_account_id":819,"name":"Adrien Cunin","email":"adrien@adriencunin.fr","username":"adri2000"},{"value":-1,"date":"2017-02-09 20:53:36.000000000","_account_id":3,"name":"Jenkins","username":"jenkins"}],"values":{"-2":"Fails","-1":"Doesn\u0027t seem to work"," 0":"No score","+1":"Works for me","+2":"Verified"},"description":"","value":-1,"default_value":0,"optional":true},"Code-Review":{"approved":{"_account_id":7353,"name":"Kevin Carter","email":"kevin@cloudnull.com","username":"cloudnull"},"disliked":{"_account_id":819,"name":"Adrien Cunin","email":"adrien@adriencunin.fr","username":"adri2000"},"all":[{"value":-1,"date":"2017-02-10 15:46:36.000000000","permitted_voting_range":{"min":-1,"max":1},"_account_id":12892,"name":"Nolan Brubaker","email":"nolan.brubaker@rackspace.com","username":"nrb"},{"value":2,"date":"2017-02-09 20:25:07.000000000","permitted_voting_range":{"min":-2,"max":2},"_account_id":7353,"name":"Kevin Carter","email":"kevin@cloudnull.com","username":"cloudnull"},{"value":0,"permitted_voting_range":{"min":-1,"max":1},"_account_id":25114,"name":"Joel Griffiths","email":"joel.griffiths@unitasglobal.com","username":"joelgriffiths"},{"value":0,"permitted_voting_range":{"min":-1,"max":1},"_account_id":12807,"name":"Steve Lewis (stevelle)","email":"stevelle@gmail.com","username":"stevelle"},{"value":1,"date":"2017-02-09 20:25:23.000000000","permitted_voting_range":{"min":-1,"max":1},"_account_id":4656,"name":"Sean M. Collins","email":"sean@coreitpro.com","username":"scollins"},{"value":-1,"date":"2017-02-10 10:52:55.000000000","permitted_voting_range":{"min":-1,"max":1},"_account_id":819,"name":"Adrien Cunin","email":"adrien@adriencunin.fr","username":"adri2000"},{"value":0,"permitted_voting_range":{"min":-1,"max":1},"_account_id":3,"name":"Jenkins","username":"jenkins"}],"values":{"-2":"Do not merge","-1":"This patch needs further work before it can be merged"," 0":"No score","+1":"Looks good to me, but someone else must approve","+2":"Looks good to me (core reviewer)"},"description":"","value":-1,"default_value":0,"optional":true},"Workflow":{"all":[{"date":"2017-02-09 20:23:46.000000000","_account_id":12892,"name":"Nolan Brubaker","email":"nolan.brubaker@rackspace.com","username":"nrb"},{"value":0,"permitted_voting_range":{"min":-1,"max":1},"_account_id":7353,"name":"Kevin Carter","email":"kevin@cloudnull.com","username":"cloudnull"},{"value":0,"permitted_voting_range":{"min":-1,"max":0},"_account_id":25114,"name":"Joel Griffiths","email":"joel.griffiths@unitasglobal.com","username":"joelgriffiths"},{"_account_id":12807,"name":"Steve Lewis (stevelle)","email":"stevelle@gmail.com","username":"stevelle"},{"_account_id":4656,"name":"Sean M. Collins","email":"sean@coreitpro.com","username":"scollins"},{"_account_id":819,"name":"Adrien Cunin","email":"adrien@adriencunin.fr","username":"adri2000"},{"_account_id":3,"name":"Jenkins","username":"jenkins"}],"values":{"-1":"Work in progress"," 0":"Ready for reviews","+1":"Approved"},"description":"","default_value":0,"optional":true},"Backport-Candidate":{"all":[{"_account_id":12892,"name":"Nolan Brubaker","email":"nolan.brubaker@rackspace.com","username":"nrb"},{"value":0,"permitted_voting_range":{"min":-1,"max":1},"_account_id":7353,"name":"Kevin Carter","email":"kevin@cloudnull.com","username":"cloudnull"},{"_account_id":25114,"name":"Joel Griffiths","email":"joel.griffiths@unitasglobal.com","username":"joelgriffiths"},{"_account_id":12807,"name":"Steve Lewis (stevelle)","email":"stevelle@gmail.com","username":"stevelle"},{"_account_id":4656,"name":"Sean M. Collins","email":"sean@coreitpro.com","username":"scollins"},{"_account_id":819,"name":"Adrien Cunin","email":"adrien@adriencunin.fr","username":"adri2000"},{"_account_id":3,"name":"Jenkins","username":"jenkins"}],"values":{"-1":"Not A Backport Candidate"," 0":"Backport Review Needed","+1":"Proposed Backport"},"description":"","default_value":0,"optional":true}},"removable_reviewers":[],"reviewers":{"REVIEWER":[{"_account_id":3,"name":"Jenkins","username":"jenkins"},{"_account_id":819,"name":"Adrien Cunin","email":"adrien@adriencunin.fr","username":"adri2000"},{"_account_id":4656,"name":"Sean M. Collins","email":"sean@coreitpro.com","username":"scollins"},{"_account_id":7353,"name":"Kevin Carter","email":"kevin@cloudnull.com","username":"cloudnull"},{"_account_id":12807,"name":"Steve Lewis (stevelle)","email":"stevelle@gmail.com","username":"stevelle"},{"_account_id":12892,"name":"Nolan Brubaker","email":"nolan.brubaker@rackspace.com","username":"nrb"},{"_account_id":25114,"name":"Joel Griffiths","email":"joel.griffiths@unitasglobal.com","username":"joelgriffiths"}]},"pending_reviewers":{},"reviewer_updates":[{"updated":"2017-02-09 20:23:46.000000000","updated_by":{"_account_id":12892,"name":"Nolan Brubaker","email":"nolan.brubaker@rackspace.com","username":"nrb"},"reviewer":{"_account_id":12892,"name":"Nolan Brubaker","email":"nolan.brubaker@rackspace.com","username":"nrb"},"state":"REVIEWER"},{"updated":"2017-02-09 20:25:07.000000000","updated_by":{"_account_id":7353,"name":"Kevin Carter","email":"kevin@cloudnull.com","username":"cloudnull"},"reviewer":{"_account_id":7353,"name":"Kevin Carter","email":"kevin@cloudnull.com","username":"cloudnull"},"state":"REVIEWER"},{"updated":"2017-02-09 20:25:23.000000000","updated_by":{"_account_id":4656,"name":"Sean M. Collins","email":"sean@coreitpro.com","username":"scollins"},"reviewer":{"_account_id":4656,"name":"Sean M. Collins","email":"sean@coreitpro.com","username":"scollins"},"state":"REVIEWER"},{"updated":"2017-02-09 20:32:36.000000000","updated_by":{"_account_id":12807,"name":"Steve Lewis (stevelle)","email":"stevelle@gmail.com","username":"stevelle"},"reviewer":{"_account_id":12807,"name":"Steve Lewis (stevelle)","email":"stevelle@gmail.com","username":"stevelle"},"state":"REVIEWER"},{"updated":"2017-02-09 20:53:36.000000000","updated_by":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"reviewer":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"state":"REVIEWER"},{"updated":"2017-02-10 10:52:55.000000000","updated_by":{"_account_id":819,"name":"Adrien Cunin","email":"adrien@adriencunin.fr","username":"adri2000"},"reviewer":{"_account_id":819,"name":"Adrien Cunin","email":"adrien@adriencunin.fr","username":"adri2000"},"state":"REVIEWER"}],"messages":[{"id":"9657dae8d6ed22e6e7cdcf8296bf4f6563887a76","author":{"_account_id":25114,"name":"Joel Griffiths","email":"joel.griffiths@unitasglobal.com","username":"joelgriffiths"},"date":"2017-02-09 19:36:55.000000000","message":"Uploaded patch set 1.","accounts_in_message":[],"_revision_number":1},{"id":"1623977674760a04a2c73e0c26ea8f21d79a7dee","author":{"_account_id":25114,"name":"Joel Griffiths","email":"joel.griffiths@unitasglobal.com","username":"joelgriffiths"},"date":"2017-02-09 19:38:34.000000000","message":"Uploaded patch set 2: Commit message was updated.","accounts_in_message":[],"_revision_number":2},{"id":"08f834c2fe4c2ad3a4bc4d82cb03100b5fb646a7","author":{"_account_id":7353,"name":"Kevin Carter","email":"kevin@cloudnull.com","username":"cloudnull"},"date":"2017-02-09 20:25:07.000000000","message":"Patch Set 2: Code-Review+2\n\nLGTM, baring any objections from Nolan.","accounts_in_message":[],"_revision_number":2},{"id":"44fd4b38c20b1ad480f0173b0c889a061eec5465","author":{"_account_id":4656,"name":"Sean M. Collins","email":"sean@coreitpro.com","username":"scollins"},"date":"2017-02-09 20:25:23.000000000","message":"Patch Set 2: Code-Review+1","accounts_in_message":[],"_revision_number":2},{"id":"109f38178f1bae31a1f6e35adf6b797c4b41ec36","author":{"_account_id":12892,"name":"Nolan Brubaker","email":"nolan.brubaker@rackspace.com","username":"nrb"},"date":"2017-02-09 20:26:13.000000000","message":"Patch Set 2:\n\nNice catch!\n\nMight I ask for a test case? It looks like the code that included the separator might have passed existing tests, which is unfortunate.","accounts_in_message":[],"_revision_number":2},{"id":"a814145ac43989f5568f7660bfd77deb330aeebd","author":{"_account_id":12807,"name":"Steve Lewis (stevelle)","email":"stevelle@gmail.com","username":"stevelle"},"date":"2017-02-09 20:32:36.000000000","message":"Patch Set 2:\n\n(1 comment)","accounts_in_message":[],"_revision_number":2},{"id":"53ca6e93778468f192011d91563fcd8d26e87156","author":{"_account_id":25114,"name":"Joel Griffiths","email":"joel.griffiths@unitasglobal.com","username":"joelgriffiths"},"date":"2017-02-09 20:33:49.000000000","message":"Patch Set 2:\n\nI agree. Thanks for the suggestion.","accounts_in_message":[],"_revision_number":2},{"id":"0ef4e1a033d4634bd337d34c64638a2cceaa69a3","author":{"_account_id":12892,"name":"Nolan Brubaker","email":"nolan.brubaker@rackspace.com","username":"nrb"},"date":"2017-02-09 20:39:59.000000000","message":"Patch Set 2:\n\nTo expound on my request for a test case - the test_manage suite currently doesn\u0027t call the manage.main function.\n\nFor this problem, I think it would be fine to just call it, so we can catch basic execution errors.","accounts_in_message":[],"_revision_number":2},{"id":"9fee0015fe37822e9170329d3d48d8f20207a691","author":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"date":"2017-02-09 20:53:36.000000000","message":"Patch Set 2: Verified-1\n\nBuild failed (check pipeline).  For information on how to proceed, see http://docs.openstack.org/infra/manual/developers.html#automated-testing\n\n- gate-openstack-ansible-docs-ubuntu-xenial http://docs-draft.openstack.org/24/431724/2/check/gate-openstack-ansible-docs-ubuntu-xenial/e8dba82//doc/build/html/ : SUCCESS in 1m 20s\n- gate-openstack-ansible-linters-ubuntu-xenial http://logs.openstack.org/24/431724/2/check/gate-openstack-ansible-linters-ubuntu-xenial/86e59bf/ : FAILURE in 1m 17s\n- gate-openstack-ansible-openstack-ansible-aio-ubuntu-xenial http://logs.openstack.org/24/431724/2/check/gate-openstack-ansible-openstack-ansible-aio-ubuntu-xenial/ca9a589/ : SUCCESS in 1h 13m 41s\n- gate-openstack-ansible-openstack-ansible-ceph-ubuntu-xenial-nv http://logs.openstack.org/24/431724/2/check/gate-openstack-ansible-openstack-ansible-ceph-ubuntu-xenial-nv/a8a1255/ : FAILURE in 1h 06m 51s (non-voting)\n- gate-openstack-ansible-openstack-ansible-aio-centos-7-nv http://logs.openstack.org/24/431724/2/check/gate-openstack-ansible-openstack-ansible-aio-centos-7-nv/87b330a/ : FAILURE in 2m 29s (non-voting)","accounts_in_message":[],"_revision_number":2},{"id":"61b4ecd67594c263153eefb1dfb60d500e7dd114","author":{"_account_id":819,"name":"Adrien Cunin","email":"adrien@adriencunin.fr","username":"adri2000"},"date":"2017-02-10 10:52:55.000000000","message":"Patch Set 2: Code-Review-1\n\nI\u0027ve been debugging these issues as I just hit them in a deployment, and I agree with Steve, it seems possible to have a cleaner fix within the filesystem module. That way no need to import os.path in manage.py.","accounts_in_message":[],"_revision_number":2},{"id":"745634e6fd42eef7b6f0b353d347e27bb20338ba","author":{"_account_id":12892,"name":"Nolan Brubaker","email":"nolan.brubaker@rackspace.com","username":"nrb"},"date":"2017-02-10 15:46:36.000000000","message":"Patch Set 2: Code-Review-1\n\n(1 comment)\n\nOne more note - the bug should be mentioned in the commit message.","accounts_in_message":[],"_revision_number":2},{"id":"6aa367762ac0c6f491798fa39cf1b62211996dbb","author":{"_account_id":25114,"name":"Joel Griffiths","email":"joel.griffiths@unitasglobal.com","username":"joelgriffiths"},"date":"2017-02-10 19:18:04.000000000","message":"Patch Set 2:\n\nI\u0027m probably making too much of this change since it\u0027s simple either way, but here goes.\n\nThe more I look at the rest of the code, the more I feel like the current functionality for save_inventory makes more sense given the way the rest of filesystem.py and the associated tests are defined. If I\u0027m just fixing the bug, the argument should be a path instead of a filename. Here\u0027s why:\n\n- INVENTORY_FILENAME is a constant in filesystem.py\n- load_inventory uses a path and the INVENTORY_FILENAME constant\n- load_environment and uses a path\n- load_user_configuration uses a path and a constant filename as well\n- The tests expect INVENTORY_FILENAME to be fixed. They also expect openstack_hostnames_ips.yml and backup_openstack_inventory.tar to be fixed.\n\nChanging save_inventory to accept a filename arguments seems inconsistent with the rest of the design. If anything, I would think changing load_from_json to return a path instead of a filename (or both) would make a lot of sense given the fixed nature of filesystem.py. It\u0027s still not pretty, but it would solve the problem and keep load_inventory and load_environment consistent with save_inventory.\n\nSo it\u0027s up to you. Do we want to change everything to expect a filename or change file_find_json to return a path to inventory?","accounts_in_message":[],"_revision_number":2},{"id":"748d86da778a79d13bade870e2f6d37592ad3861","author":{"_account_id":25114,"name":"Joel Griffiths","email":"joel.griffiths@unitasglobal.com","username":"joelgriffiths"},"date":"2017-02-10 19:19:44.000000000","message":"Patch Set 2:\n\nload_from_json rather\n\nI was considering changing load_from_json to load_inventory since that\u0027s what it does.","accounts_in_message":[],"_revision_number":2},{"id":"461936ba1f7ddbc37c0ac9e178be86067ea0d08b","author":{"_account_id":25114,"name":"Joel Griffiths","email":"joel.griffiths@unitasglobal.com","username":"joelgriffiths"},"date":"2017-02-10 19:21:20.000000000","message":"Patch Set 2:\n\nScratch that last comment rename comment. :/","accounts_in_message":[],"_revision_number":2},{"id":"eb2ae4807960eb5deff9d016aff721fbac402bb6","author":{"_account_id":25114,"name":"Joel Griffiths","email":"joel.griffiths@unitasglobal.com","username":"joelgriffiths"},"date":"2017-02-10 19:24:47.000000000","message":"Patch Set 2:\n\nActually. I think that (load_inventory) is what they really wanted to call in the main of manage.py. That would return a path instead of a fully qualified path. I don\u0027t think load_from_json was meant to be exposed.","accounts_in_message":[],"_revision_number":2},{"id":"5e3121ebbfc98640f17cd05c6742911973bf172e","author":{"_account_id":12807,"name":"Steve Lewis (stevelle)","email":"stevelle@gmail.com","username":"stevelle"},"date":"2017-02-10 20:12:31.000000000","message":"Patch Set 2:\n\n+1 for your latest thoughts on load_inventory","accounts_in_message":[],"_revision_number":2},{"id":"250f1967f587ea5b4c764ca989e61b0abcb49e4c","author":{"_account_id":25114,"name":"Joel Griffiths","email":"joel.griffiths@unitasglobal.com","username":"joelgriffiths"},"date":"2017-02-14 17:22:54.000000000","message":"Abandoned\n\nMoving this to 433542","accounts_in_message":[],"_revision_number":2},{"id":"faccf4fc2ca316cbc5a7f12e2063c262b9bb8917","author":{"_account_id":25114,"name":"Joel Griffiths","email":"joel.griffiths@unitasglobal.com","username":"joelgriffiths"},"date":"2017-02-14 18:38:07.000000000","message":"Patch Set 2:\n\nSorry. Moved to 433802","accounts_in_message":[],"_revision_number":2}],"current_revision_number":2,"current_revision":"cf36f3e1b413f6e90c66b40aadff2e51bdd2fc3c","revisions":{"44b63da8205cb6629ee82399a10da46f366a1d52":{"kind":"REWORK","_number":1,"created":"2017-02-09 19:36:55.000000000","uploader":{"_account_id":25114,"name":"Joel Griffiths","email":"joel.griffiths@unitasglobal.com","username":"joelgriffiths"},"ref":"refs/changes/24/431724/1","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/openstack-ansible","ref":"refs/changes/24/431724/1","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/openstack-ansible refs/changes/24/431724/1 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/openstack-ansible refs/changes/24/431724/1 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/openstack-ansible refs/changes/24/431724/1 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/openstack-ansible refs/changes/24/431724/1"}}},"commit":{"parents":[{"commit":"2013dbd9ef84c6d3b0565395bbd61382eec902e5","subject":"Merge \"Bring idempotency to swapon\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/openstack-ansible/commit/2013dbd9ef84c6d3b0565395bbd61382eec902e5"}]}],"author":{"name":"Joel Griffiths","email":"joel.griffiths@unitasglobal.com","date":"2017-02-09 19:21:49.000000000","tz":-480},"committer":{"name":"Joel Griffiths","email":"joel.griffiths@unitasglobal.com","date":"2017-02-09 19:21:49.000000000","tz":-480},"subject":"Fix error during \u0027inventory-manage.py -r\u0027 calls","message":"Fix error during \u0027inventory-manage.py -r\u0027 calls\n\nscript/inventory-manage.py -r hostname was failing.\n\n\"separator\" was mispelled in lib/manage.py. This caused a syntax error when the \u0027inventory-manage.py -r hostname\u0027 command was run.\n\nWhen the updated inventory was saved to the inventory json file, manage.py called the filesys.save_inventory function. The function expects a path for the second argument, but manage.py was sending the entire path and filename instead. This caused an invalid path error.\n\nChange-Id: I22566aba1e23cf7d575759219aeb8a7508361f3d\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/openstack-ansible/commit/44b63da8205cb6629ee82399a10da46f366a1d52"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/openstack-ansible/commit/44b63da8205cb6629ee82399a10da46f366a1d52"}]},"parents_data":[{"branch_name":"refs/heads/master","commit_id":"2013dbd9ef84c6d3b0565395bbd61382eec902e5","is_merged_in_target_branch":true}],"branch":"refs/heads/master"},"cf36f3e1b413f6e90c66b40aadff2e51bdd2fc3c":{"kind":"NO_CODE_CHANGE","_number":2,"created":"2017-02-09 19:38:34.000000000","uploader":{"_account_id":25114,"name":"Joel Griffiths","email":"joel.griffiths@unitasglobal.com","username":"joelgriffiths"},"ref":"refs/changes/24/431724/2","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/openstack-ansible","ref":"refs/changes/24/431724/2","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/openstack-ansible refs/changes/24/431724/2 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/openstack-ansible refs/changes/24/431724/2 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/openstack-ansible refs/changes/24/431724/2 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/openstack-ansible refs/changes/24/431724/2"}}},"commit":{"parents":[{"commit":"2013dbd9ef84c6d3b0565395bbd61382eec902e5","subject":"Merge \"Bring idempotency to swapon\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/openstack-ansible/commit/2013dbd9ef84c6d3b0565395bbd61382eec902e5"}]}],"author":{"name":"Joel Griffiths","email":"joel.griffiths@unitasglobal.com","date":"2017-02-09 19:21:49.000000000","tz":-480},"committer":{"name":"Joel Griffiths","email":"joel.griffiths@unitasglobal.com","date":"2017-02-09 19:37:55.000000000","tz":-480},"subject":"Fix error during \u0027inventory-manage.py -r\u0027 calls","message":"Fix error during \u0027inventory-manage.py -r\u0027 calls\n\nscript/inventory-manage.py -r hostname was failing.\n\n\"separator\" was mispelled in lib/manage.py. This caused a syntax\nerror when the \u0027inventory-manage.py -r hostname\u0027 command was run.\n\nWhen the updated inventory was saved to the inventory json file,\nmanage.py called the filesys.save_inventory function. The function\nexpects a path for the second argument, but manage.py was sending\nthe entire path and filename instead. This caused an invalid path\nerror.\n\nChange-Id: I22566aba1e23cf7d575759219aeb8a7508361f3d\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/openstack-ansible/commit/cf36f3e1b413f6e90c66b40aadff2e51bdd2fc3c"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/openstack-ansible/commit/cf36f3e1b413f6e90c66b40aadff2e51bdd2fc3c"}]},"parents_data":[{"branch_name":"refs/heads/master","commit_id":"2013dbd9ef84c6d3b0565395bbd61382eec902e5","is_merged_in_target_branch":true}],"branch":"refs/heads/master"}},"requirements":[],"submit_records":[],"submit_requirements":[]}
