)]}'
{"id":"openstack%2Fskyline-console~995783","triplet_id":"openstack%2Fskyline-console~stable%2F2025.1~I2c4cfebc319ae59d637f48f247be768854809b65","project":"openstack/skyline-console","branch":"stable/2025.1","attention_set":{},"removed_from_attention_set":{"30434":{"account":{"_account_id":30434,"name":"Jingwei.Zhang","email":"zhang.jingwei@algoblu.com","username":"jwzhang"},"last_update":"2026-07-07 03:06:50.000000000","reason":"\u003cGERRIT_ACCOUNT_30434\u003e replied on the change","reason_account":{"_account_id":30434,"name":"Jingwei.Zhang","email":"zhang.jingwei@algoblu.com","username":"jwzhang"}},"38366":{"account":{"_account_id":38366,"name":"Maximilian Sesterhenn","display_name":"Maximilian Sesterhenn","email":"maximilian.sesterhenn@wiit.cloud","username":"msesterhenn","status":"@WIIT AG"},"last_update":"2026-07-07 04:17:52.000000000","reason":"Change was submitted"}},"hashtags":[],"change_id":"I2c4cfebc319ae59d637f48f247be768854809b65","subject":"Fix port forwarding ports sent as string instead of integer","status":"MERGED","created":"2026-07-02 08:28:59.000000000","updated":"2026-07-07 04:19:05.000000000","submitted":"2026-07-07 04:17:52.000000000","submitter":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"total_comment_count":0,"unresolved_comment_count":0,"has_review_started":true,"submission_id":"995783","meta_rev_id":"477617678a090d69723171442d82da9aa5a6315e","_number":995783,"virtual_id_number":995783,"owner":{"_account_id":38366,"name":"Maximilian Sesterhenn","display_name":"Maximilian Sesterhenn","email":"maximilian.sesterhenn@wiit.cloud","username":"msesterhenn","status":"@WIIT AG"},"actions":{},"labels":{"Verified":{"approved":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"all":[{"value":0,"_account_id":30434,"name":"Jingwei.Zhang","email":"zhang.jingwei@algoblu.com","username":"jwzhang"},{"tag":"autogenerated:zuul:gate","value":2,"date":"2026-07-07 04:17:52.000000000","permitted_voting_range":{"min":2,"max":2},"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},{"value":0,"_account_id":37598,"name":"Ivan Anfimov","display_name":"Ivan Anfimov","email":"lazekteam@gmail.com","username":"anfimovir"}],"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":30434,"name":"Jingwei.Zhang","email":"zhang.jingwei@algoblu.com","username":"jwzhang"},"all":[{"value":2,"date":"2026-07-07 03:06:50.000000000","permitted_voting_range":{"min":2,"max":2},"_account_id":30434,"name":"Jingwei.Zhang","email":"zhang.jingwei@algoblu.com","username":"jwzhang"},{"value":0,"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},{"value":1,"date":"2026-07-03 01:16:51.000000000","permitted_voting_range":{"min":1,"max":1},"_account_id":37598,"name":"Ivan Anfimov","display_name":"Ivan Anfimov","email":"lazekteam@gmail.com","username":"anfimovir"}],"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":30434,"name":"Jingwei.Zhang","email":"zhang.jingwei@algoblu.com","username":"jwzhang"},"all":[{"value":1,"date":"2026-07-07 03:06:50.000000000","permitted_voting_range":{"min":1,"max":1},"_account_id":30434,"name":"Jingwei.Zhang","email":"zhang.jingwei@algoblu.com","username":"jwzhang"},{"value":0,"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},{"value":0,"_account_id":37598,"name":"Ivan Anfimov","display_name":"Ivan Anfimov","email":"lazekteam@gmail.com","username":"anfimovir"}],"values":{"-1":"Work in progress"," 0":"Ready for reviews","+1":"Approved"},"description":"","default_value":0,"optional":true}},"removable_reviewers":[],"reviewers":{"REVIEWER":[{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},{"_account_id":30434,"name":"Jingwei.Zhang","email":"zhang.jingwei@algoblu.com","username":"jwzhang"},{"_account_id":37598,"name":"Ivan Anfimov","display_name":"Ivan Anfimov","email":"lazekteam@gmail.com","username":"anfimovir"}]},"pending_reviewers":{},"reviewer_updates":[{"updated":"2026-07-02 09:32:15.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":"2026-07-03 01:16:51.000000000","updated_by":{"_account_id":37598,"name":"Ivan Anfimov","display_name":"Ivan Anfimov","email":"lazekteam@gmail.com","username":"anfimovir"},"reviewer":{"_account_id":37598,"name":"Ivan Anfimov","display_name":"Ivan Anfimov","email":"lazekteam@gmail.com","username":"anfimovir"},"state":"REVIEWER"},{"updated":"2026-07-03 01:16:51.000000000","updated_by":{"_account_id":37598,"name":"Ivan Anfimov","display_name":"Ivan Anfimov","email":"lazekteam@gmail.com","username":"anfimovir"},"reviewer":{"_account_id":30434,"name":"Jingwei.Zhang","email":"zhang.jingwei@algoblu.com","username":"jwzhang"},"state":"REVIEWER"}],"messages":[{"id":"41c8d28c7919ba490a9d9a89f10d903234867fb2","tag":"autogenerated:gerrit:newWipPatchSet","author":{"_account_id":38366,"name":"Maximilian Sesterhenn","display_name":"Maximilian Sesterhenn","email":"maximilian.sesterhenn@wiit.cloud","username":"msesterhenn","status":"@WIIT AG"},"date":"2026-07-02 08:28:59.000000000","message":"Uploaded patch set 1.","accounts_in_message":[],"_revision_number":1},{"id":"8ccc9aeb8980f0767e2fafe3727bf40d1590d28a","author":{"_account_id":38366,"name":"Maximilian Sesterhenn","display_name":"Maximilian Sesterhenn","email":"maximilian.sesterhenn@wiit.cloud","username":"msesterhenn","status":"@WIIT AG"},"date":"2026-07-02 08:29:44.000000000","message":"Patch Set 1:\n\nThis change is ready for review.","accounts_in_message":[],"_revision_number":1},{"id":"274335ecaf674f7bff442f267e766b9ad1a94685","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-07-02 09:32:15.000000000","message":"Patch Set 1: Verified+1\n\nBuild succeeded (check pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/34169bf98d614e9eb89dbe65c4d41726\n\n- build-openstack-releasenotes https://zuul.opendev.org/t/openstack/build/00f68484fe3d45149d8a0ce98db54046 : SUCCESS in 2m 45s\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/189d34a955e5478b81b13991c62a7997 : SUCCESS in 7m 17s\n- skyline-nodejs16-run-lint-src https://zuul.opendev.org/t/openstack/build/231f8fe187f645658341b7e02f7183e9 : SUCCESS in 4m 30s\n- skyline-nodejs16-run-lint-test https://zuul.opendev.org/t/openstack/build/1efa0f7c16404539be9e277a3aa7f694 : SUCCESS in 8m 24s\n- skyline-nodejs16-run-unit-test https://zuul.opendev.org/t/openstack/build/738a594da1fe4b16b3d7f8b051ccc5df : SUCCESS in 7m 42s\n- skyline-console-devstack-e2etests-network https://zuul.opendev.org/t/openstack/build/b857b8b22e084fcf81aadc4cf5b9881c : SUCCESS in 58m 09s","accounts_in_message":[],"_revision_number":1},{"id":"95ffb712463cf0733fc46679d2273f9864a647f6","author":{"_account_id":37598,"name":"Ivan Anfimov","display_name":"Ivan Anfimov","email":"lazekteam@gmail.com","username":"anfimovir"},"date":"2026-07-03 01:16:51.000000000","message":"Patch Set 1: Code-Review+1","accounts_in_message":[],"_revision_number":1},{"id":"2e68f50cb98ba2d2d2c03e7b06637b049109b577","author":{"_account_id":30434,"name":"Jingwei.Zhang","email":"zhang.jingwei@algoblu.com","username":"jwzhang"},"date":"2026-07-07 03:06:50.000000000","message":"Patch Set 1: Code-Review+2 Workflow+1","accounts_in_message":[],"_revision_number":1},{"id":"07cdefb12809bd8535775038b68917d4079df8d2","tag":"autogenerated:zuul:gate","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-07-07 03:07:24.000000000","message":"Patch Set 1: -Verified\n\nStarting gate jobs.","accounts_in_message":[],"_revision_number":1},{"id":"eff9e36c6696248852677399a520d12a2289946b","tag":"autogenerated:zuul:gate","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-07-07 04:17:52.000000000","message":"Patch Set 1: Verified+2\n\nBuild succeeded (gate pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/bc014deba4cc4cc1ad3f17a0fa685b6a\n\n- build-openstack-releasenotes https://zuul.opendev.org/t/openstack/build/b78904d4b6eb4bed89dd2fedd74acb7e : SUCCESS in 3m 11s\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/06ad2cb1e0d3401eb5cb502bf8321de7 : SUCCESS in 6m 22s\n- skyline-nodejs16-run-lint-src https://zuul.opendev.org/t/openstack/build/c29364072ab0425dac1bbafd8f01e22b : SUCCESS in 11m 02s\n- skyline-nodejs16-run-lint-test https://zuul.opendev.org/t/openstack/build/2158956d8a0c449b812e4f8e2d97e4e6 : SUCCESS in 7m 37s\n- skyline-nodejs16-run-unit-test https://zuul.opendev.org/t/openstack/build/5b83c255dd8e44e9a9360b24a17cb8a9 : SUCCESS in 7m 10s\n- skyline-console-devstack-e2etests-network https://zuul.opendev.org/t/openstack/build/e3d1c75c4009432fab8708a2c3e415f9 : SUCCESS in 1h 05m 27s","accounts_in_message":[],"_revision_number":1},{"id":"667c01e6e422b7491f9587432adb0daa998395dc","tag":"autogenerated:gerrit:merged","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-07-07 04:17:52.000000000","message":"Change has been successfully merged","accounts_in_message":[],"_revision_number":1},{"id":"477617678a090d69723171442d82da9aa5a6315e","tag":"autogenerated:zuul:promote","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-07-07 04:19:05.000000000","message":"Patch Set 1:\n\nBuild failed (promote 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/d135d6c417df486f8b96f27a96eb73e9\n\n- promote-openstack-releasenotes https://zuul.opendev.org/t/openstack/build/15be9d27e0d145cf886d0aa05fd56dfa : FAILURE in 46s\n- promote-openstack-tox-docs https://zuul.opendev.org/t/openstack/build/e1cc6ae8ba5f486187ee36a746f95e5d : SUCCESS in 50s","accounts_in_message":[],"_revision_number":1}],"current_revision_number":1,"current_revision":"7d2aa21801207153dd3c4ad8bfec5655c1ac656b","revisions":{"7d2aa21801207153dd3c4ad8bfec5655c1ac656b":{"kind":"REWORK","_number":1,"created":"2026-07-02 08:28:59.000000000","uploader":{"_account_id":38366,"name":"Maximilian Sesterhenn","display_name":"Maximilian Sesterhenn","email":"maximilian.sesterhenn@wiit.cloud","username":"msesterhenn","status":"@WIIT AG"},"ref":"refs/changes/83/995783/1","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/skyline-console","ref":"refs/changes/83/995783/1","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/skyline-console refs/changes/83/995783/1 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/skyline-console refs/changes/83/995783/1 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/skyline-console refs/changes/83/995783/1 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/skyline-console refs/changes/83/995783/1"}}},"commit":{"parents":[{"commit":"0b8fdaede17db6579c9ef158cffd72d7632b2934","subject":"Fix hypervisor display for dedicated CPUs (pCPU)","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/skyline-console/commit/0b8fdaede17db6579c9ef158cffd72d7632b2934"}]}],"author":{"name":"Maximilian Sesterhenn","email":"maximilian.sesterhenn@wiit.cloud","date":"2026-07-01 11:09:51.000000000","tz":120},"committer":{"name":"Maximilian Sesterhenn","email":"maximilian.sesterhenn@wiit.cloud","date":"2026-07-02 08:28:10.000000000","tz":120},"subject":"Fix port forwarding ports sent as string instead of integer","message":"Fix port forwarding ports sent as string instead of integer\n\nThe Neutron API expects external_port and internal_port as integers,\nbut the port forwarding create and edit forms were passing them as\nstrings from the form input without conversion. This caused port\nforwarding creation to fail.\n\nWrap single port values with Number() to ensure they are sent as\nintegers. Port ranges are unaffected as they use\nexternal_port_range/internal_port_range string fields.\n\nCloses-Bug: #2112167\nChange-Id: I2c4cfebc319ae59d637f48f247be768854809b65\nSigned-off-by: Maximilian Sesterhenn \u003cmaximilian.sesterhenn@wiit.cloud\u003e\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/skyline-console/commit/7d2aa21801207153dd3c4ad8bfec5655c1ac656b"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/skyline-console/commit/7d2aa21801207153dd3c4ad8bfec5655c1ac656b"}]},"branch":"refs/heads/stable/2025.1"}},"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":30434,"name":"Jingwei.Zhang","email":"zhang.jingwei@algoblu.com","username":"jwzhang"}},{"label":"Workflow","status":"MAY","applied_by":{"_account_id":30434,"name":"Jingwei.Zhang","email":"zhang.jingwei@algoblu.com","username":"jwzhang"}}]}],"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":{"label:Verified\u003dMAX":"","label:Verified\u003dMIN":""}}},{"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":{"label:Code-Review\u003dMAX":"","label:Code-Review\u003dMIN":""}}},{"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":{"label:Workflow\u003dMAX":"","label:Workflow\u003dMIN":""}}}]}
