)]}'
{"id":"openstack%2Fproject-config~921934","triplet_id":"openstack%2Fproject-config~master~I88ec309039a90bd0407743fb745167a21dd58868","project":"openstack/project-config","branch":"master","topic":"openapi","attention_set":{},"removed_from_attention_set":{"13252":{"account":{"_account_id":13252,"name":"Dr. Jens Harbott","display_name":"Jens Harbott (frickler)","email":"frickler@offenerstapel.de","username":"jrosenboom"},"last_update":"2024-09-25 06:13:23.000000000","reason":"Removed by \u003cGERRIT_ACCOUNT_13252\u003e by clicking the attention icon","reason_account":{"_account_id":13252,"name":"Dr. Jens Harbott","display_name":"Jens Harbott (frickler)","email":"frickler@offenerstapel.de","username":"jrosenboom"}},"27900":{"account":{"_account_id":27900,"name":"Artem Goncharov","email":"artem.goncharov@gmail.com","username":"gtema"},"last_update":"2024-11-07 16:30:09.000000000","reason":"Change was abandoned"}},"hashtags":[],"change_id":"I88ec309039a90bd0407743fb745167a21dd58868","subject":"Add publish openapi specs job","status":"ABANDONED","created":"2024-06-13 10:17:18.000000000","updated":"2024-11-07 16:30:09.000000000","total_comment_count":2,"unresolved_comment_count":0,"has_review_started":true,"meta_rev_id":"51107994492b8ef2184ae82323b2165672860792","_number":921934,"virtual_id_number":921934,"owner":{"_account_id":27900,"name":"Artem Goncharov","email":"artem.goncharov@gmail.com","username":"gtema"},"actions":{},"labels":{"Verified":{"recommended":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"all":[{"_account_id":13252,"name":"Dr. Jens Harbott","display_name":"Jens Harbott (frickler)","email":"frickler@offenerstapel.de","username":"jrosenboom"},{"tag":"autogenerated:zuul:check","value":1,"date":"2024-06-13 10:28:35.000000000","permitted_voting_range":{"min":-2,"max":2},"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},{"_account_id":5263,"name":"Jeremy Stanley","display_name":"fungi","email":"fungi@yuggoth.org","username":"fungi","status":"missing, presumed fed"}],"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":{"disliked":{"_account_id":13252,"name":"Dr. Jens Harbott","display_name":"Jens Harbott (frickler)","email":"frickler@offenerstapel.de","username":"jrosenboom"},"all":[{"value":-1,"date":"2024-09-24 19:28:41.000000000","permitted_voting_range":{"min":-2,"max":2},"_account_id":13252,"name":"Dr. Jens Harbott","display_name":"Jens Harbott (frickler)","email":"frickler@offenerstapel.de","username":"jrosenboom"},{"value":0,"permitted_voting_range":{"min":-1,"max":1},"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},{"value":0,"date":"2024-11-07 14:31:36.000000000","permitted_voting_range":{"min":-2,"max":2},"_account_id":5263,"name":"Jeremy Stanley","display_name":"fungi","email":"fungi@yuggoth.org","username":"fungi","status":"missing, presumed fed"}],"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":[{"value":0,"permitted_voting_range":{"min":-1,"max":1},"_account_id":13252,"name":"Dr. Jens Harbott","display_name":"Jens Harbott (frickler)","email":"frickler@offenerstapel.de","username":"jrosenboom"},{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},{"value":0,"permitted_voting_range":{"min":-1,"max":1},"_account_id":5263,"name":"Jeremy Stanley","display_name":"fungi","email":"fungi@yuggoth.org","username":"fungi","status":"missing, presumed fed"}],"values":{"-1":"Work in progress"," 0":"Ready for reviews","+1":"Approved"},"description":"","default_value":0,"optional":true}},"removable_reviewers":[],"reviewers":{"CC":[{"_account_id":4146,"name":"Clark Boylan","email":"cboylan@sapwetik.org","username":"cboylan"},{"_account_id":32553,"name":"Sven Kieske","email":"sven_oss@posteo.de","username":"skieske"}],"REVIEWER":[{"_account_id":5263,"name":"Jeremy Stanley","display_name":"fungi","email":"fungi@yuggoth.org","username":"fungi","status":"missing, presumed fed"},{"_account_id":13252,"name":"Dr. Jens Harbott","display_name":"Jens Harbott (frickler)","email":"frickler@offenerstapel.de","username":"jrosenboom"},{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]}]},"pending_reviewers":{},"reviewer_updates":[{"updated":"2024-06-13 10:28:35.000000000","updated_by":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"reviewer":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"state":"REVIEWER"},{"updated":"2024-06-13 12:56:11.000000000","updated_by":{"_account_id":32553,"name":"Sven Kieske","email":"sven_oss@posteo.de","username":"skieske"},"reviewer":{"_account_id":32553,"name":"Sven Kieske","email":"sven_oss@posteo.de","username":"skieske"},"state":"CC"},{"updated":"2024-09-20 15:45:46.000000000","updated_by":{"_account_id":5263,"name":"Jeremy Stanley","display_name":"fungi","email":"fungi@yuggoth.org","username":"fungi","status":"missing, presumed fed"},"reviewer":{"_account_id":5263,"name":"Jeremy Stanley","display_name":"fungi","email":"fungi@yuggoth.org","username":"fungi","status":"missing, presumed fed"},"state":"REVIEWER"},{"updated":"2024-09-24 19:28:41.000000000","updated_by":{"_account_id":13252,"name":"Dr. Jens Harbott","display_name":"Jens Harbott (frickler)","email":"frickler@offenerstapel.de","username":"jrosenboom"},"reviewer":{"_account_id":13252,"name":"Dr. Jens Harbott","display_name":"Jens Harbott (frickler)","email":"frickler@offenerstapel.de","username":"jrosenboom"},"state":"REVIEWER"},{"updated":"2024-09-24 21:07:21.000000000","updated_by":{"_account_id":4146,"name":"Clark Boylan","email":"cboylan@sapwetik.org","username":"cboylan"},"reviewer":{"_account_id":4146,"name":"Clark Boylan","email":"cboylan@sapwetik.org","username":"cboylan"},"state":"CC"}],"messages":[{"id":"93bf48923e48d540856037d5f67051552d748803","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":27900,"name":"Artem Goncharov","email":"artem.goncharov@gmail.com","username":"gtema"},"date":"2024-06-13 10:17:18.000000000","message":"Uploaded patch set 1.","accounts_in_message":[],"_revision_number":1},{"id":"f6851b323f238fb9c5754d0b99458ceb73a366dd","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2024-06-13 10:28:35.000000000","message":"Patch Set 1: Verified+1\n\nBuild succeeded (check pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/6cb2c6cc9054487c92f7db7f9ba5abce\n\n- openstack-zuul-jobs-linters https://zuul.opendev.org/t/openstack/build/96bb33b36dbe42d5ac198302e10bed22 : SUCCESS in 5m 58s","accounts_in_message":[],"_revision_number":1},{"id":"2a3b8944c644033e4d7e2b48a98bdf5c97a341bf","author":{"_account_id":5263,"name":"Jeremy Stanley","display_name":"fungi","email":"fungi@yuggoth.org","username":"fungi","status":"missing, presumed fed"},"date":"2024-09-20 15:45:46.000000000","message":"Patch Set 1: Code-Review+2\n\nThis will still need an AFS volume for openapi-specs.openstack.org manually created by an OpenDev Sysadmin. I recall there was some disagreement over whether using a similar approach to the service-types site made more sense than other options, so we should check that there is consensus before proceeding. I\u0027ll add this to the agenda for the next OpenDev meeting in hopes of being able to bring a bit of attention to the discussion.","accounts_in_message":[],"_revision_number":1},{"id":"bafa1597802000702ee61ba1ebe870b77bbfc82e","author":{"_account_id":13252,"name":"Dr. Jens Harbott","display_name":"Jens Harbott (frickler)","email":"frickler@offenerstapel.de","username":"jrosenboom"},"date":"2024-09-24 19:28:41.000000000","message":"Patch Set 1: Code-Review-1\n\n(1 comment)","accounts_in_message":[],"_revision_number":1},{"id":"7ad4abdd32796baa474aa6c13559ace49a97eb00","author":{"_account_id":4146,"name":"Clark Boylan","email":"cboylan@sapwetik.org","username":"cboylan"},"date":"2024-09-24 21:07:21.000000000","message":"Patch Set 1:\n\n(1 comment)","accounts_in_message":[],"_revision_number":1},{"id":"62d81728de4e45d57483d1be293d22c0bc567619","author":{"_account_id":5263,"name":"Jeremy Stanley","display_name":"fungi","email":"fungi@yuggoth.org","username":"fungi","status":"missing, presumed fed"},"date":"2024-11-07 14:31:36.000000000","message":"Patch Set 1: -Code-Review","accounts_in_message":[],"_revision_number":1},{"id":"51107994492b8ef2184ae82323b2165672860792","tag":"autogenerated:gerrit:abandon","author":{"_account_id":27900,"name":"Artem Goncharov","email":"artem.goncharov@gmail.com","username":"gtema"},"date":"2024-11-07 16:30:09.000000000","message":"Abandoned\n\nneed to rethink since also some projects want to \"own\" their specs","accounts_in_message":[],"_revision_number":1}],"current_revision_number":1,"current_revision":"ffbfc857a9d619ccf63d34c527a7d76794ea5b4b","revisions":{"ffbfc857a9d619ccf63d34c527a7d76794ea5b4b":{"kind":"REWORK","_number":1,"created":"2024-06-13 10:17:18.000000000","uploader":{"_account_id":27900,"name":"Artem Goncharov","email":"artem.goncharov@gmail.com","username":"gtema"},"ref":"refs/changes/34/921934/1","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/project-config","ref":"refs/changes/34/921934/1","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/project-config refs/changes/34/921934/1 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/project-config refs/changes/34/921934/1 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/project-config refs/changes/34/921934/1 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/project-config refs/changes/34/921934/1"}}},"commit":{"parents":[{"commit":"cea490f471c339cc5d454b139e65dadd3613f77a","subject":"Pause centos-8-stream image builds","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/project-config/commit/cea490f471c339cc5d454b139e65dadd3613f77a"}]}],"author":{"name":"Artem Goncharov","email":"artem.goncharov@gmail.com","date":"2024-06-13 10:03:46.000000000","tz":120},"committer":{"name":"Artem Goncharov","email":"artem.goncharov@gmail.com","date":"2024-06-13 10:17:16.000000000","tz":120},"subject":"Add publish openapi specs job","message":"Add publish openapi specs job\n\nIn the codegenerator project a new job\n(codegenerator-tox-publish-openapi-specs) has been added\n(https://review.opendev.org/c/openstack/codegenerator/+/921924). It\ngathers openapi specs built by individual service jobs. We want to\npublish specs to a central location (similar to how\nservice-types-authority) functions so that is it possible to consume\nartifacts by other automation processes and users. This was discussed\nduring the last PTG.\n\nOnce OpenStack adopts OpenAPI widely we may rework how specs are being\npublished, but for now this seems to be the only reasonable approach.\nCurrent challenge is that in order to be able to generate api-ref docs\nthe spec first need to be generated from the source code of the service.\nThis requires a certain rework of how services build their docs. Until\nwe reach this phase (requires wide coordination and acceptance) just\npublish specs in a central location.\n\nCurrently specs being produced have an API version as a file name, so\nthat for Keystone i.e. 2 files are being generated:\n - specs/identity/v3.14.yaml\n - specs/identity/v3.yaml\n\nThis scheme allows certain versioning with v3.yaml being a symlink to\nthe v3.14 version. We would eventually need to cleanup very old versions\nof the specs, but most likely till that moment we arrange CD pipeline\ndifferently.\n\nChange-Id: I88ec309039a90bd0407743fb745167a21dd58868\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/project-config/commit/ffbfc857a9d619ccf63d34c527a7d76794ea5b4b"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/project-config/commit/ffbfc857a9d619ccf63d34c527a7d76794ea5b4b"}]},"branch":"refs/heads/master"}},"requirements":[],"submit_records":[],"submit_requirements":[{"name":"Verified","description":"Verified in gate by CI","status":"UNSATISFIED","is_legacy":false,"submittability_expression_result":{"expression":"label:Verified\u003dMAX AND -label:Verified\u003dMIN","fulfilled":false,"status":"FAIL","passing_atoms":[],"failing_atoms":["label:Verified\u003dMAX","label:Verified\u003dMIN"],"atom_explanations":{}}},{"name":"Code-Review","description":"Code reviewed by core reviewer","status":"UNSATISFIED","is_legacy":false,"submittability_expression_result":{"expression":"label:Code-Review\u003dMAX AND -label:Code-Review\u003dMIN","fulfilled":false,"status":"FAIL","passing_atoms":[],"failing_atoms":["label:Code-Review\u003dMAX","label:Code-Review\u003dMIN"],"atom_explanations":{}}},{"name":"Workflow","description":"Approved for gate by core reviewer","status":"UNSATISFIED","is_legacy":false,"submittability_expression_result":{"expression":"label:Workflow\u003dMAX AND -label:Workflow\u003dMIN","fulfilled":false,"status":"FAIL","passing_atoms":[],"failing_atoms":["label:Workflow\u003dMAX","label:Workflow\u003dMIN"],"atom_explanations":{}}}]}
