)]}'
{"id":"openstack%2Fptgbot~897269","triplet_id":"openstack%2Fptgbot~master~I458924bfc26c47f4e062cc16f48e2d72da361918","project":"openstack/ptgbot","branch":"master","topic":"feature/iCal","attention_set":{},"removed_from_attention_set":{"12898":{"account":{"_account_id":12898,"name":"Tony Breeds","email":"tony@bakeyournoodle.com","username":"tonyb"},"last_update":"2023-10-04 17:18:28.000000000","reason":"Change was submitted"}},"hashtags":[],"change_id":"I458924bfc26c47f4e062cc16f48e2d72da361918","subject":"Fix errors in iCal","status":"MERGED","created":"2023-10-03 23:06:41.000000000","updated":"2023-10-04 17:20:19.000000000","submitted":"2023-10-04 17:18:28.000000000","submitter":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"total_comment_count":2,"unresolved_comment_count":0,"has_review_started":true,"submission_id":"897269-feature/iCal","meta_rev_id":"fadaf9630ab38363248815ce5f4cd06dbac93fa5","_number":897269,"virtual_id_number":897269,"owner":{"_account_id":12898,"name":"Tony Breeds","email":"tony@bakeyournoodle.com","username":"tonyb"},"actions":{},"labels":{"Verified":{"approved":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"all":[{"tag":"autogenerated:zuul:gate","value":2,"date":"2023-10-04 17:18:28.000000000","permitted_voting_range":{"min":2,"max":2},"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},{"value":0,"_account_id":308,"name":"Thierry Carrez","email":"thierry@openstack.org","username":"ttx"},{"value":0,"_account_id":4146,"name":"Clark Boylan","email":"cboylan@sapwetik.org","username":"cboylan"}],"values":{"-2":"Fails","-1":"Doesn\u0027t seem to work"," 0":"No score","+1":"Works for me","+2":"Verified"},"description":"","default_value":0,"optional":true},"Code-Review":{"approved":{"_account_id":308,"name":"Thierry Carrez","email":"thierry@openstack.org","username":"ttx"},"all":[{"value":0,"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},{"value":2,"date":"2023-10-04 08:14:12.000000000","permitted_voting_range":{"min":2,"max":2},"_account_id":308,"name":"Thierry Carrez","email":"thierry@openstack.org","username":"ttx"},{"value":2,"date":"2023-10-04 17:04:57.000000000","permitted_voting_range":{"min":2,"max":2},"_account_id":4146,"name":"Clark Boylan","email":"cboylan@sapwetik.org","username":"cboylan"}],"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":"","default_value":0,"optional":true},"Workflow":{"approved":{"_account_id":4146,"name":"Clark Boylan","email":"cboylan@sapwetik.org","username":"cboylan"},"all":[{"value":0,"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},{"value":0,"_account_id":308,"name":"Thierry Carrez","email":"thierry@openstack.org","username":"ttx"},{"value":1,"date":"2023-10-04 17:04:57.000000000","permitted_voting_range":{"min":1,"max":1},"_account_id":4146,"name":"Clark Boylan","email":"cboylan@sapwetik.org","username":"cboylan"}],"values":{"-1":"Work in progress"," 0":"Ready for reviews","+1":"Approved"},"description":"","default_value":0,"optional":true}},"removable_reviewers":[],"reviewers":{"REVIEWER":[{"_account_id":308,"name":"Thierry Carrez","email":"thierry@openstack.org","username":"ttx"},{"_account_id":4146,"name":"Clark Boylan","email":"cboylan@sapwetik.org","username":"cboylan"},{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]}]},"pending_reviewers":{},"reviewer_updates":[{"updated":"2023-10-03 23:15:38.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":"2023-10-04 08:14:12.000000000","updated_by":{"_account_id":308,"name":"Thierry Carrez","email":"thierry@openstack.org","username":"ttx"},"reviewer":{"_account_id":308,"name":"Thierry Carrez","email":"thierry@openstack.org","username":"ttx"},"state":"REVIEWER"},{"updated":"2023-10-04 17:04:57.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":"REVIEWER"}],"messages":[{"id":"d297ef2eb682eb769031003a2a42d29f543c0f0e","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":12898,"name":"Tony Breeds","email":"tony@bakeyournoodle.com","username":"tonyb"},"date":"2023-10-03 23:06:41.000000000","message":"Uploaded patch set 1.","accounts_in_message":[],"_revision_number":1},{"id":"f2ee6120c3bd431530c22316c4e3515db2626e7b","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2023-10-03 23:15:38.000000000","message":"Patch Set 1: Verified-1\n\n(2 comments)\n\nBuild failed (check pipeline).  For information on how to proceed, see\nhttps://docs.opendev.org/opendev/infra-manual/latest/developers.html#automated-testing\n\nhttps://zuul.opendev.org/t/openstack/buildset/f2a401654f734f0db2e692ed3c068bb6\n\n- tox-pep8 https://zuul.opendev.org/t/openstack/build/a3ff2eae1ad342fcaa647f96de41d69f : FAILURE in 4m 24s\n- tox-py311 https://zuul.opendev.org/t/openstack/build/6ec332770e784092b893eade7b86c201 : SUCCESS in 4m 40s\n- ptgbot-build-opendev-image https://zuul.opendev.org/t/openstack/build/972edd0861914f91a4730261be60cae0 : SUCCESS in 7m 25s","accounts_in_message":[],"_revision_number":1},{"id":"ef6113da75d7d1f51350d63d0b0cafac524cad28","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":12898,"name":"Tony Breeds","email":"tony@bakeyournoodle.com","username":"tonyb"},"date":"2023-10-03 23:41:13.000000000","message":"Uploaded patch set 2.\n\nOutdated Votes:\n* Verified-1\n","accounts_in_message":[],"_revision_number":2},{"id":"d912eba949cbae081d1fe6e82e75d24ae26a0783","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2023-10-03 23:47:41.000000000","message":"Patch Set 2: Verified+1\n\nBuild succeeded (check pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/c9c0292a62c64bd3b0d2caea27f388e3\n\n- tox-pep8 https://zuul.opendev.org/t/openstack/build/8f71ed925ed3496e8436fbb2292583c8 : SUCCESS in 2m 24s\n- tox-py311 https://zuul.opendev.org/t/openstack/build/0210129fd7204d1ca465f05a170fab35 : SUCCESS in 2m 46s\n- ptgbot-build-opendev-image https://zuul.opendev.org/t/openstack/build/521c6c78b7c94070923e3bf01dd7a1f4 : SUCCESS in 5m 40s","accounts_in_message":[],"_revision_number":2},{"id":"2d510ec9c051b4f1cfdf4fe66e309d76a0aa0422","author":{"_account_id":308,"name":"Thierry Carrez","email":"thierry@openstack.org","username":"ttx"},"date":"2023-10-04 08:14:12.000000000","message":"Patch Set 2: Code-Review+2","accounts_in_message":[],"_revision_number":2},{"id":"36801773d5d645d27a784d14062b5ff9780abd14","author":{"_account_id":4146,"name":"Clark Boylan","email":"cboylan@sapwetik.org","username":"cboylan"},"date":"2023-10-04 17:04:57.000000000","message":"Patch Set 2: Code-Review+2 Workflow+1","accounts_in_message":[],"_revision_number":2},{"id":"67428008a1289c8f26740419ac2b59c87853fbad","tag":"autogenerated:zuul:gate","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2023-10-04 17:05:16.000000000","message":"Patch Set 2: -Verified\n\nStarting gate jobs.","accounts_in_message":[],"_revision_number":2},{"id":"0495fb1b625779f1125ef7523edaf65ad0149483","tag":"autogenerated:zuul:gate","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2023-10-04 17:18:28.000000000","message":"Patch Set 2: Verified+2\n\nBuild succeeded (gate pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/64df41dc45d545ac9eaa4facb113d4b8\n\n- tox-pep8 https://zuul.opendev.org/t/openstack/build/4ac9a32df6af4cde8be462934b0a9058 : SUCCESS in 3m 47s\n- tox-py311 https://zuul.opendev.org/t/openstack/build/73f22501d3cd4ab8879a6cb7c70739a3 : SUCCESS in 4m 43s\n- ptgbot-upload-opendev-image https://zuul.opendev.org/t/openstack/build/cc39b8729adc4a1abead064a58bb6a96 : SUCCESS in 7m 56s","accounts_in_message":[],"_revision_number":2},{"id":"9ff4345eeb471db43b745c060264b0120e913562","tag":"autogenerated:gerrit:merged","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2023-10-04 17:18:28.000000000","message":"Change has been successfully merged","accounts_in_message":[],"_revision_number":2},{"id":"fadaf9630ab38363248815ce5f4cd06dbac93fa5","tag":"autogenerated:zuul:promote","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2023-10-04 17:20:19.000000000","message":"Patch Set 2:\n\nBuild succeeded (promote pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/287786ed48a645c0adcaf1088d0b5440\n\n- ptgbot-promote-opendev-image https://zuul.opendev.org/t/openstack/build/ce0187479bc245699bb91efc90c94cf6 : SUCCESS in 1m 03s","accounts_in_message":[],"_revision_number":2}],"current_revision_number":2,"current_revision":"d01468e1880d294abd82ab65ca50a6b419f758d8","revisions":{"bf406ff6f6f6e16566a64cbdc76185533a636602":{"kind":"REWORK","_number":1,"created":"2023-10-03 23:06:41.000000000","uploader":{"_account_id":12898,"name":"Tony Breeds","email":"tony@bakeyournoodle.com","username":"tonyb"},"ref":"refs/changes/69/897269/1","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/ptgbot","ref":"refs/changes/69/897269/1","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/ptgbot refs/changes/69/897269/1 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/ptgbot refs/changes/69/897269/1 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/ptgbot refs/changes/69/897269/1 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/ptgbot refs/changes/69/897269/1"}}},"commit":{"parents":[{"commit":"0954e95fdcfdcf55d54752af77c33cc0f706c531","subject":"[scripts]  Add an example/helper script for adding realtime fields.","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/ptgbot/commit/0954e95fdcfdcf55d54752af77c33cc0f706c531"}]}],"author":{"name":"Tony Breeds","email":"tony@bakeyournoodle.com","date":"2023-10-03 22:54:11.000000000","tz":660},"committer":{"name":"Tony Breeds","email":"tony@bakeyournoodle.com","date":"2023-10-03 22:54:11.000000000","tz":660},"subject":"Fix errors in iCal","message":"Fix errors in iCal\n\nThere were several issues with generating the ptg.ics.\n\nErrors causing python tracebacks:\n\n1. teams \u003d slots \u003d {}\n   This was a gotcha for me.  This essentially makes teams and slots\n   aliases for the *same* empty dictionary.  Not as I thought creating\n   creating 2 empty dictionaries.  Upon reflection it is obvious.\n\n   This meant that I was treating a \"slot code\" [MonA1] as a track/team\n\n2. datetime.timedelta()\u0027s keyword is \"minutes\" not \"mins\"\n\nFunctional errors:\n\n1. If a team/track sets a VC url, it goes into db[\"urls\"].\n   Look there first and if not there look for a URL from the slot/room\n   location.\n\n2. Use a reasonable isn\u0027t a team/track key in db[\"etherpads\"].\n\nNon-functional changes:\n\n1. There were a couple of FIXMEs which were addressed.\n   e[\"key\"] \u003d \"value\" is the same as e.add(\"key\", \"value\")\n\n2. An empty url (\"\"), is fine to add into the location, just strange.\n\nChange-Id: I458924bfc26c47f4e062cc16f48e2d72da361918\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/ptgbot/commit/bf406ff6f6f6e16566a64cbdc76185533a636602"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/ptgbot/commit/bf406ff6f6f6e16566a64cbdc76185533a636602"}]},"branch":"refs/heads/master"},"d01468e1880d294abd82ab65ca50a6b419f758d8":{"kind":"REWORK","_number":2,"created":"2023-10-03 23:41:13.000000000","uploader":{"_account_id":12898,"name":"Tony Breeds","email":"tony@bakeyournoodle.com","username":"tonyb"},"ref":"refs/changes/69/897269/2","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/ptgbot","ref":"refs/changes/69/897269/2","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/ptgbot refs/changes/69/897269/2 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/ptgbot refs/changes/69/897269/2 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/ptgbot refs/changes/69/897269/2 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/ptgbot refs/changes/69/897269/2"}}},"commit":{"parents":[{"commit":"0954e95fdcfdcf55d54752af77c33cc0f706c531","subject":"[scripts]  Add an example/helper script for adding realtime fields.","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/ptgbot/commit/0954e95fdcfdcf55d54752af77c33cc0f706c531"}]}],"author":{"name":"Tony Breeds","email":"tony@bakeyournoodle.com","date":"2023-10-03 22:54:11.000000000","tz":660},"committer":{"name":"Tony Breeds","email":"tony@bakeyournoodle.com","date":"2023-10-03 23:41:00.000000000","tz":660},"subject":"Fix errors in iCal","message":"Fix errors in iCal\n\nThere were several issues with generating the ptg.ics.\n\nErrors causing python tracebacks:\n\n1. teams \u003d slots \u003d {}\n   This was a gotcha for me.  This essentially makes teams and slots\n   aliases for the *same* empty dictionary.  Not as I thought creating\n   creating 2 empty dictionaries.  Upon reflection it is obvious.\n\n   This meant that I was treating a \"slot code\" [MonA1] as a track/team\n\n2. datetime.timedelta()\u0027s keyword is \"minutes\" not \"mins\"\n\nFunctional errors:\n\n1. If a team/track sets a VC url, it goes into db[\"urls\"].\n   Look there first and if not there look for a URL from the slot/room\n   location.\n\n2. Use a reasonable isn\u0027t a team/track key in db[\"etherpads\"].\n\nNon-functional changes:\n\n1. There were a couple of FIXMEs which were addressed.\n   e[\"key\"] \u003d \"value\" is the same as e.add(\"key\", \"value\")\n\n2. An empty url (\"\"), is fine to add into the location, just strange.\n\nChange-Id: I458924bfc26c47f4e062cc16f48e2d72da361918\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/ptgbot/commit/d01468e1880d294abd82ab65ca50a6b419f758d8"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/ptgbot/commit/d01468e1880d294abd82ab65ca50a6b419f758d8"}]},"branch":"refs/heads/master"}},"requirements":[],"submit_records":[{"rule_name":"gerrit~DefaultSubmitRule","status":"CLOSED","labels":[{"label":"Verified","status":"MAY","applied_by":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]}},{"label":"Code-Review","status":"MAY","applied_by":{"_account_id":4146,"name":"Clark Boylan","email":"cboylan@sapwetik.org","username":"cboylan"}},{"label":"Workflow","status":"MAY","applied_by":{"_account_id":4146,"name":"Clark Boylan","email":"cboylan@sapwetik.org","username":"cboylan"}}]}],"submit_requirements":[{"name":"Verified","description":"Verified in gate by CI","status":"SATISFIED","is_legacy":false,"submittability_expression_result":{"expression":"label:Verified\u003dMAX AND -label:Verified\u003dMIN","fulfilled":true,"status":"PASS","passing_atoms":["label:Verified\u003dMAX"],"failing_atoms":["label:Verified\u003dMIN"],"atom_explanations":{}}},{"name":"Code-Review","description":"Code reviewed by core reviewer","status":"SATISFIED","is_legacy":false,"submittability_expression_result":{"expression":"label:Code-Review\u003dMAX AND -label:Code-Review\u003dMIN","fulfilled":true,"status":"PASS","passing_atoms":["label:Code-Review\u003dMAX"],"failing_atoms":["label:Code-Review\u003dMIN"],"atom_explanations":{}}},{"name":"Workflow","description":"Approved for gate by core reviewer","status":"SATISFIED","is_legacy":false,"submittability_expression_result":{"expression":"label:Workflow\u003dMAX AND -label:Workflow\u003dMIN","fulfilled":true,"status":"PASS","passing_atoms":["label:Workflow\u003dMAX"],"failing_atoms":["label:Workflow\u003dMIN"],"atom_explanations":{}}}]}
