)]}'
{"id":"openstack%2Ftacker~817893","triplet_id":"openstack%2Ftacker~master~I2380ee72d058ec3cac93f941fda602cf8b0aadd7","project":"openstack/tacker","branch":"master","topic":"refactoring","attention_set":{},"removed_from_attention_set":{"33455":{"account":{"_account_id":33455,"name":"Hiromu Asahina","email":"hiromu.a5a@gmail.com","username":"h_asahina"},"last_update":"2022-02-04 11:33:01.000000000","reason":"Change was abandoned"}},"hashtags":[],"change_id":"I2380ee72d058ec3cac93f941fda602cf8b0aadd7","subject":"[WIP] Refactor v1 LCM operation","status":"ABANDONED","created":"2021-11-15 04:40:33.000000000","updated":"2022-02-07 05:18:31.000000000","total_comment_count":2,"unresolved_comment_count":0,"has_review_started":true,"meta_rev_id":"b158f8e0cd4d9a9256580605b95ecda4e37ceadd","_number":817893,"virtual_id_number":817893,"owner":{"_account_id":33455,"name":"Hiromu Asahina","email":"hiromu.a5a@gmail.com","username":"h_asahina"},"actions":{},"labels":{"Verified":{"recommended":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"all":[{"tag":"autogenerated:zuul:check","value":1,"date":"2022-01-07 07:34:09.000000000","permitted_voting_range":{"min":-2,"max":2},"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]}],"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":{"all":[{"value":0,"permitted_voting_range":{"min":-1,"max":1},"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]}],"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":{"all":[{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]}],"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"]}]},"pending_reviewers":{},"reviewer_updates":[{"updated":"2021-11-15 07:42:25.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":"2022-02-07 05:18:17.000000000","updated_by":{"_account_id":33455,"name":"Hiromu Asahina","email":"hiromu.a5a@gmail.com","username":"h_asahina"},"reviewer":{"_account_id":17255,"name":"Toshiaki Takahashi","email":"ts-takahashi@nec.com","username":"takahashi_ts"},"state":"REVIEWER"},{"updated":"2022-02-07 05:18:17.000000000","updated_by":{"_account_id":33455,"name":"Hiromu Asahina","email":"hiromu.a5a@gmail.com","username":"h_asahina"},"reviewer":{"_account_id":32102,"name":"Manpreet Kaur","email":"kaurmanpreet2620@gmail.com","username":"manpreet"},"state":"REVIEWER"},{"updated":"2022-02-07 05:18:17.000000000","updated_by":{"_account_id":33455,"name":"Hiromu Asahina","email":"hiromu.a5a@gmail.com","username":"h_asahina"},"reviewer":{"_account_id":31857,"name":"Ayumu Ueha","email":"ueha.ayumu@fujitsu.com","username":"ueha"},"state":"REVIEWER"},{"updated":"2022-02-07 05:18:17.000000000","updated_by":{"_account_id":33455,"name":"Hiromu Asahina","email":"hiromu.a5a@gmail.com","username":"h_asahina"},"reviewer":{"_account_id":25701,"name":"Yasufumi Ogawa","email":"yasufum.o@gmail.com","username":"yasufum"},"state":"REVIEWER"},{"updated":"2022-02-07 05:18:24.000000000","updated_by":{"_account_id":33455,"name":"Hiromu Asahina","email":"hiromu.a5a@gmail.com","username":"h_asahina"},"reviewer":{"_account_id":25701,"name":"Yasufumi Ogawa","email":"yasufum.o@gmail.com","username":"yasufum"},"state":"REMOVED"},{"updated":"2022-02-07 05:18:26.000000000","updated_by":{"_account_id":33455,"name":"Hiromu Asahina","email":"hiromu.a5a@gmail.com","username":"h_asahina"},"reviewer":{"_account_id":17255,"name":"Toshiaki Takahashi","email":"ts-takahashi@nec.com","username":"takahashi_ts"},"state":"REMOVED"},{"updated":"2022-02-07 05:18:28.000000000","updated_by":{"_account_id":33455,"name":"Hiromu Asahina","email":"hiromu.a5a@gmail.com","username":"h_asahina"},"reviewer":{"_account_id":31857,"name":"Ayumu Ueha","email":"ueha.ayumu@fujitsu.com","username":"ueha"},"state":"REMOVED"},{"updated":"2022-02-07 05:18:31.000000000","updated_by":{"_account_id":33455,"name":"Hiromu Asahina","email":"hiromu.a5a@gmail.com","username":"h_asahina"},"reviewer":{"_account_id":32102,"name":"Manpreet Kaur","email":"kaurmanpreet2620@gmail.com","username":"manpreet"},"state":"REMOVED"}],"messages":[{"id":"051d03cdbec29b40778c41bb193b915a0447f679","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":33455,"name":"Hiromu Asahina","email":"hiromu.a5a@gmail.com","username":"h_asahina"},"date":"2021-11-15 04:40:33.000000000","message":"Uploaded patch set 1.","accounts_in_message":[],"_revision_number":1},{"id":"13fb03477f8c9affd2f459490d491fc7af26743f","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2021-11-15 07:42:25.000000000","message":"Patch Set 1: Verified-1\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\n\n- openstack-tox-cover https://zuul.opendev.org/t/openstack/build/fe34cce54ab54e93a11d9c22913d4fca : SUCCESS in 7m 22s\n- openstack-tox-lower-constraints https://zuul.opendev.org/t/openstack/build/6ba2cfdf873e443e9edf64f0c89f7d56 : SUCCESS in 13m 56s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/9ea528023f2f4d708f886da441ff6590 : SUCCESS in 5m 22s\n- openstack-tox-py36 https://zuul.opendev.org/t/openstack/build/ca410469078e4bc6b0bbb6343095a081 : SUCCESS in 14m 01s\n- openstack-tox-py38 https://zuul.opendev.org/t/openstack/build/cadf6524479d4e56bb2b359b3fba4812 : SUCCESS in 14m 12s\n- openstack-tox-py39 https://zuul.opendev.org/t/openstack/build/68073f42d49541e686026faad363667a : SUCCESS in 14m 37s (non-voting)\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/ddccd376f33546f892933dc2cff478c0 : FAILURE in 6m 35s\n- tacker-functional-devstack-multinode-legacy https://zuul.opendev.org/t/openstack/build/886528e38989460595815ec86d4dc948 : RETRY_LIMIT in 48m 31s\n- tacker-functional-devstack-multinode-sol https://zuul.opendev.org/t/openstack/build/3c3be547f3b141499e9add79081f9290 : RETRY_LIMIT in 51m 16s\n- tacker-functional-devstack-multinode-sol-separated-nfvo https://zuul.opendev.org/t/openstack/build/2916f4982c2f4db2b8c13addae46cf19 : RETRY_LIMIT in 48m 25s\n- tacker-functional-devstack-multinode-sol-kubernetes https://zuul.opendev.org/t/openstack/build/964655367b0141ae8ac592a2659627db : RETRY_LIMIT in 52m 46s\n- tacker-functional-devstack-multinode-libs-master https://zuul.opendev.org/t/openstack/build/e5a86744f070430189bef8b5864f26ed : RETRY_LIMIT in 36m 46s\n- tacker-functional-devstack-multinode-sol-v2 https://zuul.opendev.org/t/openstack/build/4d306265eb0746a0a5b14f420670b20c : RETRY_LIMIT in 43m 13s","accounts_in_message":[],"_revision_number":1},{"id":"09fac845a0feb63d04df2aeab959fc537d32016f","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":33455,"name":"Hiromu Asahina","email":"hiromu.a5a@gmail.com","username":"h_asahina"},"date":"2021-11-24 08:34:59.000000000","message":"Uploaded patch set 2: Patch Set 1 was rebased.","accounts_in_message":[],"_revision_number":2},{"id":"738bcceb3e39dcd05c3bfe17252a84a3cb4afa42","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2021-11-24 11:11:55.000000000","message":"Patch Set 2: Verified-1\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\n\n- openstack-tox-cover https://zuul.opendev.org/t/openstack/build/ce6e6d8a45e045cf9dad44616f56bcd7 : SUCCESS in 8m 15s\n- openstack-tox-lower-constraints https://zuul.opendev.org/t/openstack/build/c78267bb09da48418bad8ff67884d729 : SUCCESS in 14m 16s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/d02d1d8df6d445e69d5ae09d63ebca4b : SUCCESS in 4m 47s\n- openstack-tox-py36 https://zuul.opendev.org/t/openstack/build/7f7a215a91234269a9457ce7d03d0847 : SUCCESS in 14m 23s\n- openstack-tox-py38 https://zuul.opendev.org/t/openstack/build/6f54f8de30a944be9398b7e10da5dbc0 : SUCCESS in 13m 48s\n- openstack-tox-py39 https://zuul.opendev.org/t/openstack/build/85795eecd9074378987c7371f09ed3c5 : SUCCESS in 13m 54s (non-voting)\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/deb65766f8ac4677a53ed1f14c310109 : SUCCESS in 7m 15s\n- tacker-functional-devstack-multinode-legacy https://zuul.opendev.org/t/openstack/build/dabc923febf94333bee301142093ff25 : SUCCESS in 1h 35m 32s\n- tacker-functional-devstack-multinode-sol https://zuul.opendev.org/t/openstack/build/9faf24b90247453aab01e11d9f4f6c1a : FAILURE in 2h 32m 00s\n- tacker-functional-devstack-multinode-sol-separated-nfvo https://zuul.opendev.org/t/openstack/build/dc4485686b2849f7b16dfb92816cb8ae : SUCCESS in 58m 38s\n- tacker-functional-devstack-multinode-sol-kubernetes https://zuul.opendev.org/t/openstack/build/ca6561804be846dda4a3761e483736cd : SUCCESS in 1h 56m 07s\n- tacker-functional-devstack-multinode-libs-master https://zuul.opendev.org/t/openstack/build/bb73b22b2577409580c64a49535c5336 : SUCCESS in 1h 49m 39s\n- tacker-functional-devstack-multinode-sol-v2 https://zuul.opendev.org/t/openstack/build/4df2be2bba3247a2a4539b73e34ec7f3 : SUCCESS in 56m 51s","accounts_in_message":[],"_revision_number":2},{"id":"b8411cf9bc03aa8ffb9e25589355c5456db3ac6d","author":{"_account_id":33455,"name":"Hiromu Asahina","email":"hiromu.a5a@gmail.com","username":"h_asahina"},"date":"2021-11-25 01:07:34.000000000","message":"Patch Set 2:\n\n(1 comment)","accounts_in_message":[],"_revision_number":2},{"id":"7f2e3db47561dcd2dd3806df1983ab888606072d","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2021-11-25 03:56:13.000000000","message":"Patch Set 2:\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\n\n- openstack-tox-cover https://zuul.opendev.org/t/openstack/build/89e5db16da51496ea57cd90ece87e444 : SUCCESS in 8m 06s\n- openstack-tox-lower-constraints https://zuul.opendev.org/t/openstack/build/5da94335b2644bd3b37ced9d400c7989 : SUCCESS in 17m 50s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/3a4dfbc472e7484fb559623b78f3b75c : SUCCESS in 5m 23s\n- openstack-tox-py38 https://zuul.opendev.org/t/openstack/build/03a51589fb334a22be1abc70e56aa3a4 : SUCCESS in 14m 03s\n- openstack-tox-py39 https://zuul.opendev.org/t/openstack/build/0005052e5740495bbbb610fd6c6c9e6f : SUCCESS in 13m 45s\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/19b972e41fbb4467806bf34c35a29472 : SUCCESS in 7m 28s\n- tacker-functional-devstack-multinode-legacy https://zuul.opendev.org/t/openstack/build/5e5a55b1982546119056b338a83cb3c7 : FAILURE in 2h 34m 24s\n- tacker-functional-devstack-multinode-sol https://zuul.opendev.org/t/openstack/build/55f087a325ab4800945166e97289960d : FAILURE in 2h 38m 38s\n- tacker-functional-devstack-multinode-sol-separated-nfvo https://zuul.opendev.org/t/openstack/build/177f80807c004a308de03ff097c3a6ac : SUCCESS in 2h 10m 42s\n- tacker-functional-devstack-multinode-sol-kubernetes https://zuul.opendev.org/t/openstack/build/a51983b963bc48c1bbf3b3b9f8b494c3 : SUCCESS in 1h 39m 59s\n- tacker-functional-devstack-multinode-libs-master https://zuul.opendev.org/t/openstack/build/9efc73b149cb425982bbc763aa7c7221 : FAILURE in 2h 33m 14s\n- tacker-functional-devstack-multinode-sol-v2 https://zuul.opendev.org/t/openstack/build/3bf9d1157a3c4657ae35f927eb54ada8 : SUCCESS in 1h 06m 10s","accounts_in_message":[],"_revision_number":2},{"id":"2ad33f2a5a587458b35342cc348702e55035a23c","author":{"_account_id":33455,"name":"Hiromu Asahina","email":"hiromu.a5a@gmail.com","username":"h_asahina"},"date":"2021-11-25 04:07:17.000000000","message":"Patch Set 2:\n\n(1 comment)","accounts_in_message":[],"_revision_number":2},{"id":"824e43df2a4dfef720e5d463e2871e18ca076bc6","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2021-11-25 07:21:16.000000000","message":"Patch Set 2:\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\n\n- openstack-tox-cover https://zuul.opendev.org/t/openstack/build/8caeefaa91504189bd644b1564b50c96 : SUCCESS in 8m 06s\n- openstack-tox-lower-constraints https://zuul.opendev.org/t/openstack/build/c7633787396a41bd94a6fbb6017c240f : SUCCESS in 13m 08s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/e748f30878fc4b48953cf7e3504ad2d9 : SUCCESS in 5m 13s\n- openstack-tox-py38 https://zuul.opendev.org/t/openstack/build/044f5cc0d100481d8bcd714c597392ed : SUCCESS in 13m 42s\n- openstack-tox-py39 https://zuul.opendev.org/t/openstack/build/cfcce6f43d60470494dac5842502ad37 : SUCCESS in 13m 37s\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/d4d10432495f42eeb8df64e394478bc3 : SUCCESS in 6m 39s\n- tacker-functional-devstack-multinode-legacy https://zuul.opendev.org/t/openstack/build/29d3f8d077164947b4bab14f85b8b9ad : FAILURE in 2h 27m 58s\n- tacker-functional-devstack-multinode-sol https://zuul.opendev.org/t/openstack/build/bae2f0fa2a4a4dbfbed9b93a49756b05 : TIMED_OUT in 3h 07m 47s\n- tacker-functional-devstack-multinode-sol-separated-nfvo https://zuul.opendev.org/t/openstack/build/49fb091185ee43eab026ca0157a165cb : SUCCESS in 1h 09m 02s\n- tacker-functional-devstack-multinode-sol-kubernetes https://zuul.opendev.org/t/openstack/build/92a65161f4bd4a1fb6aaffae29793be4 : FAILURE in 1h 41m 59s\n- tacker-functional-devstack-multinode-libs-master https://zuul.opendev.org/t/openstack/build/cc2e4ab38f1f4e7d942bc27e66f44bf1 : FAILURE in 2h 42m 35s\n- tacker-functional-devstack-multinode-sol-v2 https://zuul.opendev.org/t/openstack/build/a31df998dc0943df9f34e90a33f6ff76 : SUCCESS in 1h 00m 18s","accounts_in_message":[],"_revision_number":2},{"id":"e2ff9ebcc40bfb915f8ae38cba4ac1aa4f381bdf","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":33455,"name":"Hiromu Asahina","email":"hiromu.a5a@gmail.com","username":"h_asahina"},"date":"2021-12-09 07:52:24.000000000","message":"Uploaded patch set 3: Patch Set 2 was rebased.","accounts_in_message":[],"_revision_number":3},{"id":"1f21da2d871d2019877ce95a76e1af39d7091cbe","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2021-12-09 10:15:07.000000000","message":"Patch Set 3: Verified-1\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\n\n- openstack-tox-cover https://zuul.opendev.org/t/openstack/build/afee2e9754dc43278c23868491b61246 : SUCCESS in 7m 37s\n- openstack-tox-lower-constraints https://zuul.opendev.org/t/openstack/build/7e4030ea85c6491c80ba57e8ede1d10e : SUCCESS in 15m 16s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/846e008cbea74db2ba51468735f82aaa : SUCCESS in 5m 34s\n- openstack-tox-py38 https://zuul.opendev.org/t/openstack/build/19910882da8f4f67ac7b231429fbca60 : SUCCESS in 13m 20s\n- openstack-tox-py39 https://zuul.opendev.org/t/openstack/build/f047f7366aeb441fa958e0936cdbee57 : SUCCESS in 14m 03s\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/bb595d2bc448401fa77e4a5b8c7d71e8 : SUCCESS in 7m 13s\n- tacker-functional-devstack-multinode-legacy https://zuul.opendev.org/t/openstack/build/2817fb0ba7474d3cb99fe4cbac7bf2d5 : SUCCESS in 1h 47m 47s\n- tacker-functional-devstack-multinode-sol https://zuul.opendev.org/t/openstack/build/dce608d70f95434bb1d23e63f228bc8d : FAILURE in 2h 20m 37s\n- tacker-functional-devstack-multinode-sol-separated-nfvo https://zuul.opendev.org/t/openstack/build/cbfaf2977ae74bbb897aa9ca0e2d9bb2 : SUCCESS in 59m 34s\n- tacker-functional-devstack-multinode-sol-kubernetes https://zuul.opendev.org/t/openstack/build/a69baddd9b484a3ab259f8d0411b11d2 : SUCCESS in 1h 24m 01s\n- tacker-functional-devstack-multinode-libs-master https://zuul.opendev.org/t/openstack/build/2ec719d8d0214580a07fe3ab95d7dc9c : SUCCESS in 1h 39m 04s\n- tacker-functional-devstack-multinode-sol-v2 https://zuul.opendev.org/t/openstack/build/be4ec00da3574c919d170e98278933ea : SUCCESS in 47m 59s","accounts_in_message":[],"_revision_number":3},{"id":"92d46b4c675f8d29be62d0c7dbcd016c45bf4db2","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":33455,"name":"Hiromu Asahina","email":"hiromu.a5a@gmail.com","username":"h_asahina"},"date":"2022-01-07 02:37:24.000000000","message":"Uploaded patch set 4.","accounts_in_message":[],"_revision_number":4},{"id":"288b09d0c5a1b27baf8c0c74c88eca26596bc22c","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2022-01-07 04:57:21.000000000","message":"Patch Set 4: Verified-1\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\n\n- build-openstack-api-ref https://zuul.opendev.org/t/openstack/build/9912bd8f61d14a978dd47771be96e222 : SUCCESS in 7m 37s\n- openstack-tox-cover https://zuul.opendev.org/t/openstack/build/861f8c68b47549dc872a055ca9b2ccfa : FAILURE in 10m 48s\n- openstack-tox-lower-constraints https://zuul.opendev.org/t/openstack/build/bb3d8c9eabe24263a13605148c109b2c : FAILURE in 15m 27s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/669d2dd64f0f41bb80f82e29d3cd3247 : SUCCESS in 6m 52s\n- openstack-tox-py36 https://zuul.opendev.org/t/openstack/build/a852c77b1113437b8d36c83fc509e187 : FAILURE in 15m 26s\n- openstack-tox-py39 https://zuul.opendev.org/t/openstack/build/a0478af24a20410d92d9e83595c55887 : FAILURE in 14m 59s\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/d685d1e2ca0141aabe15c34256cc8d42 : SUCCESS in 8m 12s\n- build-openstack-releasenotes https://zuul.opendev.org/t/openstack/build/6af6f1929f794a5fa47c5158ccd0cf9f : SUCCESS in 6m 58s\n- tacker-functional-devstack-multinode-sol https://zuul.opendev.org/t/openstack/build/c1af92d05b1e41a0a631061efa971964 : FAILURE in 1h 43m 13s","accounts_in_message":[],"_revision_number":4},{"id":"2a9fe062a98f61625afe46eb70a618d768b38144","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":33455,"name":"Hiromu Asahina","email":"hiromu.a5a@gmail.com","username":"h_asahina"},"date":"2022-01-07 05:23:51.000000000","message":"Uploaded patch set 5.","accounts_in_message":[],"_revision_number":5},{"id":"c1ab2e62cc0ab5a86bae94caa49caae419abbd0e","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2022-01-07 07:34:09.000000000","message":"Patch Set 5: Verified+1\n\nBuild succeeded (check pipeline).\n\n- openstack-tox-cover https://zuul.opendev.org/t/openstack/build/b0ba2d63d7454b5cb6ced09933a6a15c : SUCCESS in 9m 05s\n- openstack-tox-lower-constraints https://zuul.opendev.org/t/openstack/build/94ece41a67f546fc82583d4d5ae0ebcc : SUCCESS in 14m 08s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/b5b6019de9f6494180ad1c8b47e0051d : SUCCESS in 5m 01s\n- openstack-tox-py36 https://zuul.opendev.org/t/openstack/build/2fb0b906903341b5a5f0973d4164726d : SUCCESS in 14m 37s\n- openstack-tox-py39 https://zuul.opendev.org/t/openstack/build/6da1e7ca470f417d995ca00bcb7d95de : SUCCESS in 14m 29s\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/72f386da7b044a35b8b28daa7f4a9ea0 : SUCCESS in 7m 56s\n- tacker-functional-devstack-multinode-legacy https://zuul.opendev.org/t/openstack/build/18bfd59bb39e4a88965a59a519cfa8ef : SUCCESS in 1h 26m 34s\n- tacker-functional-devstack-multinode-sol https://zuul.opendev.org/t/openstack/build/6746637955f444f192f657bf591a0d47 : SUCCESS in 2h 08m 15s\n- tacker-functional-devstack-multinode-sol-separated-nfvo https://zuul.opendev.org/t/openstack/build/c952b7e6ffaa4d459daba350c8da8eb5 : SUCCESS in 1h 03m 49s\n- tacker-functional-devstack-multinode-sol-kubernetes https://zuul.opendev.org/t/openstack/build/a8b214b69833451f9ce7d38a18301846 : SUCCESS in 1h 28m 34s\n- tacker-functional-devstack-multinode-libs-master https://zuul.opendev.org/t/openstack/build/e128b21a43234ca89b8da4904573cee2 : SUCCESS in 1h 38m 23s\n- tacker-functional-devstack-multinode-sol-v2 https://zuul.opendev.org/t/openstack/build/06c90e8b74004ad6a8c02a19e288992c : SUCCESS in 56m 05s","accounts_in_message":[],"_revision_number":5},{"id":"d4980bca6004566239c7c64055361adfaa71c7d4","tag":"autogenerated:gerrit:abandon","author":{"_account_id":33455,"name":"Hiromu Asahina","email":"hiromu.a5a@gmail.com","username":"h_asahina"},"date":"2022-02-04 11:33:01.000000000","message":"Abandoned\n\nduplicates","accounts_in_message":[],"_revision_number":5},{"id":"8b934fd574c607d5f2763bbd90a7658733c1ac86","tag":"autogenerated:gerrit:deleteReviewer","author":{"_account_id":33455,"name":"Hiromu Asahina","email":"hiromu.a5a@gmail.com","username":"h_asahina"},"date":"2022-02-07 05:18:24.000000000","message":"Removed reviewer Yasufumi Ogawa.","accounts_in_message":[],"_revision_number":5},{"id":"03e15a743251f7058fab6c21355dbc2d5ee233ca","tag":"autogenerated:gerrit:deleteReviewer","author":{"_account_id":33455,"name":"Hiromu Asahina","email":"hiromu.a5a@gmail.com","username":"h_asahina"},"date":"2022-02-07 05:18:26.000000000","message":"Removed reviewer Toshiaki Takahashi.","accounts_in_message":[],"_revision_number":5},{"id":"d07a23127c91d83debf40c0759e5a850323c862d","tag":"autogenerated:gerrit:deleteReviewer","author":{"_account_id":33455,"name":"Hiromu Asahina","email":"hiromu.a5a@gmail.com","username":"h_asahina"},"date":"2022-02-07 05:18:28.000000000","message":"Removed reviewer Ayumu Ueha.","accounts_in_message":[],"_revision_number":5},{"id":"b158f8e0cd4d9a9256580605b95ecda4e37ceadd","tag":"autogenerated:gerrit:deleteReviewer","author":{"_account_id":33455,"name":"Hiromu Asahina","email":"hiromu.a5a@gmail.com","username":"h_asahina"},"date":"2022-02-07 05:18:31.000000000","message":"Removed reviewer Manpreet Kaur.","accounts_in_message":[],"_revision_number":5}],"current_revision_number":5,"current_revision":"1a7375c6ad2842e1d00f06cd788cd50d41b73095","revisions":{"a227c81bffde6f6279c705a398020bd4d2f58fbf":{"kind":"REWORK","_number":1,"created":"2021-11-15 04:40:33.000000000","uploader":{"_account_id":33455,"name":"Hiromu Asahina","email":"hiromu.a5a@gmail.com","username":"h_asahina"},"ref":"refs/changes/93/817893/1","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/tacker","ref":"refs/changes/93/817893/1","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/tacker refs/changes/93/817893/1 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/tacker refs/changes/93/817893/1 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/tacker refs/changes/93/817893/1 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/tacker refs/changes/93/817893/1"}}},"commit":{"parents":[{"commit":"8c69dda51fcfe215c4878a86b82018d2b96e5561","subject":"drop anyjson requirement","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/tacker/commit/8c69dda51fcfe215c4878a86b82018d2b96e5561"}]}],"author":{"name":"Hiromu Asahina","email":"hiromu.asahina.az@hco.ntt.co.jp","date":"2021-11-12 14:18:50.000000000","tz":540},"committer":{"name":"Hiromu Asahina","email":"hiromu.asahina.az@hco.ntt.co.jp","date":"2021-11-15 04:40:08.000000000","tz":540},"subject":"Refactor v1 LCM operation","message":"Refactor v1 LCM operation\n\nIn the current codes about LCM operation, there are some codes that are\nhard to trace, which can cause an additional error and makes bug-fixing\na time-consuming task.\n\nThis patch refactors parts of these codes such as implicit arguments,\ndefinitions in an inappropriate place, confusing variable names,\nunnecessary dependencies, inappropriate ``else`` use, unused variables,\nand redundant functions, though the tip of the iceberg.  In addition,\nthis patch refactor tests such as tests that take too much time, and\ntests that cannot run correctly in places other than the root\ndirectory.\n\nThe details of the refactoring are listed below.\n\n- controller.py:VnfLcmController._notification_process (implicit\n  arguments)\n\n  Better to explicitly specify the operation_state and\n  notification_state\n\n- conductor_server.py:constants (inappropriate definition place)\n\n  A group of constants should be declared in constants.py\n\n- conductor_server.py:Conductor._change_vnf_status (confusing variable\n  names)\n\n  The variable name `current_status` is confusing. It is a condition\n  indicating the state to which is allowed to transition to the next\n  state.\n\n- conductor_server.py:Conductor._send_lcm_op_occ_notification\n  (confusing variable names)\n\n  The variable name `vnf_notif` is confusing. This is just a\n  `VnfLcmOpOcc`\n\n- conductor_server.py:Conductor._get_vnf_notify (redundant functions)\n\n- conductor_server.py:Conductor._send_lcm_op_occ_notification (implicit\n  arguments)\n\n  Better to explicitly specify the operation_state and operation\n\n- conductor_server.py:Conductor.instantiate (unnecessary dependencies)\n\n  The error points should be updated by vnflcm_driver.\n\n- vnfm_db.py (other)\n\n  Explicitly import Vim table. Due to the dependency from vnfm_db to\n  nfvo_db, if we import vnfm_db before importing nfvo_db, an error\n  happens, which is not explicitly indicated.\n\n- vnfm_db.py:VNFMPluginDb._update_vnf_scaling (unnecessary\n  dependencies)\n- vnfm_db.py:VNFMPluginDb._update_vnf_rollback (unnecessary\n  dependencies)\n\n  Implecitly saving these two objects: vnf_instance and vnf_lcm_op_occ\n  looks not good idea. The parent methods calling this method should\n  save them.\n\n- vnfm_db.py:VNFMPluginDb.update_vnf_rollback_status_err (inappropriate\n  ``else`` use)\n- vnfm_db.py:VNFMPluginDb._update_vnf_rollback_pre (inappropriate\n  ``else`` use)\n- vnfm_db.py:VNFMPluginDb._update_vnf_rollback (inappropriate ``else``\n  use)\n\n  Looks redundant.\n\n-\n  test_conductor_server:TestConductor.test_terminate_vnf_instance_exception\n  (other)\n\n  Improved side effect usage.\n\n- test_conductor_server:TestConductor.test_send_notification_timeout\n  (tests that take too long time)\n- test_conductor_server:TestConductor.test_get_notification_retry\n  (tests that take too long time)\n- test_conductor_server:TestConductor.test_get_notification_timeout\n  (tests that take too long time)\n\n  Mocked timers by setting `retry_wait` 0 in time-consuming tests.\n\n- utils.py (absolute test file paths)\n\n  In the current implementation, a relative path from the project root\n  is used. Due to this, it\u0027s not possible to run test in different\n  place from the project root. Thus, this patch change it to relative\n  paths from a test file.\n\n- vnflcm_driver.py:VnfLcmDriver._scale_vnf_pre (unused variables)\n\n  `scale_id_list` is not used\n\n- vnflcm_driver.py:VnfLcmDriver._scale_vnf_pre (inappropriate ``else``\n  use)\n\n  Better to write ``elif scale_vnf_request.type \u003d\u003d \u0027SCALE_OUT\u0027:``\n  explicitly because all unknown request types are considered as\n  \u0027SCALE_OUT\u0027\n\n- vnflcm_driver.py:VnfLcmDriver._scale_vnf_post (unused variables)\n\n  `id_list` is not used\n\n- vnflcm_driver.py:VnfLcmDriver._scale_vnf (redundant functions)\n\n  These two methods: `scale` and `_scale_vnf` can be merged. Since most\n  LCM operation methods consist of a pair of a protected method and\n  public method, e.g., `heal_vnf and _heal_vnf`, I merged\n  ``_scale_vnf`` and ``scale`` and then renamed it to ``_scale_vnf``.\n\nChange-Id: I2380ee72d058ec3cac93f941fda602cf8b0aadd7\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/tacker/commit/a227c81bffde6f6279c705a398020bd4d2f58fbf"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/tacker/commit/a227c81bffde6f6279c705a398020bd4d2f58fbf"}]},"branch":"refs/heads/master"},"cacad9b75e915febf9879dd987714c0c9205ac5c":{"kind":"TRIVIAL_REBASE","_number":2,"created":"2021-11-24 08:34:59.000000000","uploader":{"_account_id":33455,"name":"Hiromu Asahina","email":"hiromu.a5a@gmail.com","username":"h_asahina"},"ref":"refs/changes/93/817893/2","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/tacker","ref":"refs/changes/93/817893/2","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/tacker refs/changes/93/817893/2 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/tacker refs/changes/93/817893/2 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/tacker refs/changes/93/817893/2 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/tacker refs/changes/93/817893/2"}}},"commit":{"parents":[{"commit":"975cce621e732deb2ea5daf86a6281aecbb955bc","subject":"CI: Create admin endpoint for keystone","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/tacker/commit/975cce621e732deb2ea5daf86a6281aecbb955bc"}]}],"author":{"name":"Hiromu Asahina","email":"hiromu.asahina.az@hco.ntt.co.jp","date":"2021-11-12 14:18:50.000000000","tz":540},"committer":{"name":"Hiromu Asahina","email":"hiromu.asahina.az@hco.ntt.co.jp","date":"2021-11-24 08:34:47.000000000","tz":540},"subject":"Refactor v1 LCM operation","message":"Refactor v1 LCM operation\n\nIn the current codes about LCM operation, there are some codes that are\nhard to trace, which can cause an additional error and makes bug-fixing\na time-consuming task.\n\nThis patch refactors parts of these codes such as implicit arguments,\ndefinitions in an inappropriate place, confusing variable names,\nunnecessary dependencies, inappropriate ``else`` use, unused variables,\nand redundant functions, though the tip of the iceberg.  In addition,\nthis patch refactor tests such as tests that take too much time, and\ntests that cannot run correctly in places other than the root\ndirectory.\n\nThe details of the refactoring are listed below.\n\n- controller.py:VnfLcmController._notification_process (implicit\n  arguments)\n\n  Better to explicitly specify the operation_state and\n  notification_state\n\n- conductor_server.py:constants (inappropriate definition place)\n\n  A group of constants should be declared in constants.py\n\n- conductor_server.py:Conductor._change_vnf_status (confusing variable\n  names)\n\n  The variable name `current_status` is confusing. It is a condition\n  indicating the state to which is allowed to transition to the next\n  state.\n\n- conductor_server.py:Conductor._send_lcm_op_occ_notification\n  (confusing variable names)\n\n  The variable name `vnf_notif` is confusing. This is just a\n  `VnfLcmOpOcc`\n\n- conductor_server.py:Conductor._get_vnf_notify (redundant functions)\n\n- conductor_server.py:Conductor._send_lcm_op_occ_notification (implicit\n  arguments)\n\n  Better to explicitly specify the operation_state and operation\n\n- conductor_server.py:Conductor.instantiate (unnecessary dependencies)\n\n  The error points should be updated by vnflcm_driver.\n\n- vnfm_db.py (other)\n\n  Explicitly import Vim table. Due to the dependency from vnfm_db to\n  nfvo_db, if we import vnfm_db before importing nfvo_db, an error\n  happens, which is not explicitly indicated.\n\n- vnfm_db.py:VNFMPluginDb._update_vnf_scaling (unnecessary\n  dependencies)\n- vnfm_db.py:VNFMPluginDb._update_vnf_rollback (unnecessary\n  dependencies)\n\n  Implecitly saving these two objects: vnf_instance and vnf_lcm_op_occ\n  looks not good idea. The parent methods calling this method should\n  save them.\n\n- vnfm_db.py:VNFMPluginDb.update_vnf_rollback_status_err (inappropriate\n  ``else`` use)\n- vnfm_db.py:VNFMPluginDb._update_vnf_rollback_pre (inappropriate\n  ``else`` use)\n- vnfm_db.py:VNFMPluginDb._update_vnf_rollback (inappropriate ``else``\n  use)\n\n  Looks redundant.\n\n-\n  test_conductor_server:TestConductor.test_terminate_vnf_instance_exception\n  (other)\n\n  Improved side effect usage.\n\n- test_conductor_server:TestConductor.test_send_notification_timeout\n  (tests that take too long time)\n- test_conductor_server:TestConductor.test_get_notification_retry\n  (tests that take too long time)\n- test_conductor_server:TestConductor.test_get_notification_timeout\n  (tests that take too long time)\n\n  Mocked timers by setting `retry_wait` 0 in time-consuming tests.\n\n- utils.py (absolute test file paths)\n\n  In the current implementation, a relative path from the project root\n  is used. Due to this, it\u0027s not possible to run test in different\n  place from the project root. Thus, this patch change it to relative\n  paths from a test file.\n\n- vnflcm_driver.py:VnfLcmDriver._scale_vnf_pre (unused variables)\n\n  `scale_id_list` is not used\n\n- vnflcm_driver.py:VnfLcmDriver._scale_vnf_pre (inappropriate ``else``\n  use)\n\n  Better to write ``elif scale_vnf_request.type \u003d\u003d \u0027SCALE_OUT\u0027:``\n  explicitly because all unknown request types are considered as\n  \u0027SCALE_OUT\u0027\n\n- vnflcm_driver.py:VnfLcmDriver._scale_vnf_post (unused variables)\n\n  `id_list` is not used\n\n- vnflcm_driver.py:VnfLcmDriver._scale_vnf (redundant functions)\n\n  These two methods: `scale` and `_scale_vnf` can be merged. Since most\n  LCM operation methods consist of a pair of a protected method and\n  public method, e.g., `heal_vnf and _heal_vnf`, I merged\n  ``_scale_vnf`` and ``scale`` and then renamed it to ``_scale_vnf``.\n\nChange-Id: I2380ee72d058ec3cac93f941fda602cf8b0aadd7\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/tacker/commit/cacad9b75e915febf9879dd987714c0c9205ac5c"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/tacker/commit/cacad9b75e915febf9879dd987714c0c9205ac5c"}]},"branch":"refs/heads/master"},"4b2447ddda6603aa19996da4ae43ca2715743033":{"kind":"TRIVIAL_REBASE","_number":3,"created":"2021-12-09 07:52:24.000000000","uploader":{"_account_id":33455,"name":"Hiromu Asahina","email":"hiromu.a5a@gmail.com","username":"h_asahina"},"ref":"refs/changes/93/817893/3","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/tacker","ref":"refs/changes/93/817893/3","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/tacker refs/changes/93/817893/3 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/tacker refs/changes/93/817893/3 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/tacker refs/changes/93/817893/3 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/tacker refs/changes/93/817893/3"}}},"commit":{"parents":[{"commit":"e501198b0f425cb25817314130e2080e8e1715fd","subject":"Merge \"Add fenix in k8s local.conf example\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/tacker/commit/e501198b0f425cb25817314130e2080e8e1715fd"}]}],"author":{"name":"Hiromu Asahina","email":"hiromu.asahina.az@hco.ntt.co.jp","date":"2021-11-12 14:18:50.000000000","tz":540},"committer":{"name":"Hiromu Asahina","email":"hiromu.asahina.az@hco.ntt.co.jp","date":"2021-12-09 07:52:15.000000000","tz":540},"subject":"Refactor v1 LCM operation","message":"Refactor v1 LCM operation\n\nIn the current codes about LCM operation, there are some codes that are\nhard to trace, which can cause an additional error and makes bug-fixing\na time-consuming task.\n\nThis patch refactors parts of these codes such as implicit arguments,\ndefinitions in an inappropriate place, confusing variable names,\nunnecessary dependencies, inappropriate ``else`` use, unused variables,\nand redundant functions, though the tip of the iceberg.  In addition,\nthis patch refactor tests such as tests that take too much time, and\ntests that cannot run correctly in places other than the root\ndirectory.\n\nThe details of the refactoring are listed below.\n\n- controller.py:VnfLcmController._notification_process (implicit\n  arguments)\n\n  Better to explicitly specify the operation_state and\n  notification_state\n\n- conductor_server.py:constants (inappropriate definition place)\n\n  A group of constants should be declared in constants.py\n\n- conductor_server.py:Conductor._change_vnf_status (confusing variable\n  names)\n\n  The variable name `current_status` is confusing. It is a condition\n  indicating the state to which is allowed to transition to the next\n  state.\n\n- conductor_server.py:Conductor._send_lcm_op_occ_notification\n  (confusing variable names)\n\n  The variable name `vnf_notif` is confusing. This is just a\n  `VnfLcmOpOcc`\n\n- conductor_server.py:Conductor._get_vnf_notify (redundant functions)\n\n- conductor_server.py:Conductor._send_lcm_op_occ_notification (implicit\n  arguments)\n\n  Better to explicitly specify the operation_state and operation\n\n- conductor_server.py:Conductor.instantiate (unnecessary dependencies)\n\n  The error points should be updated by vnflcm_driver.\n\n- vnfm_db.py (other)\n\n  Explicitly import Vim table. Due to the dependency from vnfm_db to\n  nfvo_db, if we import vnfm_db before importing nfvo_db, an error\n  happens, which is not explicitly indicated.\n\n- vnfm_db.py:VNFMPluginDb._update_vnf_scaling (unnecessary\n  dependencies)\n- vnfm_db.py:VNFMPluginDb._update_vnf_rollback (unnecessary\n  dependencies)\n\n  Implecitly saving these two objects: vnf_instance and vnf_lcm_op_occ\n  looks not good idea. The parent methods calling this method should\n  save them.\n\n- vnfm_db.py:VNFMPluginDb.update_vnf_rollback_status_err (inappropriate\n  ``else`` use)\n- vnfm_db.py:VNFMPluginDb._update_vnf_rollback_pre (inappropriate\n  ``else`` use)\n- vnfm_db.py:VNFMPluginDb._update_vnf_rollback (inappropriate ``else``\n  use)\n\n  Looks redundant.\n\n-\n  test_conductor_server:TestConductor.test_terminate_vnf_instance_exception\n  (other)\n\n  Improved side effect usage.\n\n- test_conductor_server:TestConductor.test_send_notification_timeout\n  (tests that take too long time)\n- test_conductor_server:TestConductor.test_get_notification_retry\n  (tests that take too long time)\n- test_conductor_server:TestConductor.test_get_notification_timeout\n  (tests that take too long time)\n\n  Mocked timers by setting `retry_wait` 0 in time-consuming tests.\n\n- utils.py (absolute test file paths)\n\n  In the current implementation, a relative path from the project root\n  is used. Due to this, it\u0027s not possible to run test in different\n  place from the project root. Thus, this patch change it to relative\n  paths from a test file.\n\n- vnflcm_driver.py:VnfLcmDriver._scale_vnf_pre (unused variables)\n\n  `scale_id_list` is not used\n\n- vnflcm_driver.py:VnfLcmDriver._scale_vnf_pre (inappropriate ``else``\n  use)\n\n  Better to write ``elif scale_vnf_request.type \u003d\u003d \u0027SCALE_OUT\u0027:``\n  explicitly because all unknown request types are considered as\n  \u0027SCALE_OUT\u0027\n\n- vnflcm_driver.py:VnfLcmDriver._scale_vnf_post (unused variables)\n\n  `id_list` is not used\n\n- vnflcm_driver.py:VnfLcmDriver._scale_vnf (redundant functions)\n\n  These two methods: `scale` and `_scale_vnf` can be merged. Since most\n  LCM operation methods consist of a pair of a protected method and\n  public method, e.g., `heal_vnf and _heal_vnf`, I merged\n  ``_scale_vnf`` and ``scale`` and then renamed it to ``_scale_vnf``.\n\nChange-Id: I2380ee72d058ec3cac93f941fda602cf8b0aadd7\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/tacker/commit/4b2447ddda6603aa19996da4ae43ca2715743033"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/tacker/commit/4b2447ddda6603aa19996da4ae43ca2715743033"}]},"branch":"refs/heads/master"},"cfaeb41a9f3eceaf1426ecaa64447ff54de60041":{"kind":"REWORK","_number":4,"created":"2022-01-07 02:37:24.000000000","uploader":{"_account_id":33455,"name":"Hiromu Asahina","email":"hiromu.a5a@gmail.com","username":"h_asahina"},"ref":"refs/changes/93/817893/4","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/tacker","ref":"refs/changes/93/817893/4","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/tacker refs/changes/93/817893/4 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/tacker refs/changes/93/817893/4 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/tacker refs/changes/93/817893/4 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/tacker refs/changes/93/817893/4"}}},"commit":{"parents":[{"commit":"e501198b0f425cb25817314130e2080e8e1715fd","subject":"Merge \"Add fenix in k8s local.conf example\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/tacker/commit/e501198b0f425cb25817314130e2080e8e1715fd"}]}],"author":{"name":"Hiromu Asahina","email":"hiromu.asahina.az@hco.ntt.co.jp","date":"2021-11-12 14:18:50.000000000","tz":540},"committer":{"name":"Hiromu Asahina","email":"hiromu.asahina.az@hco.ntt.co.jp","date":"2022-01-07 02:37:08.000000000","tz":540},"subject":"[WIP] Refactor v1 LCM operation","message":"[WIP] Refactor v1 LCM operation\n\nIn the current codes about LCM operation, there are some codes that are\nhard to trace, which can cause an additional error and makes bug-fixing\na time-consuming task.\n\nThis patch refactors parts of these codes such as implicit arguments,\ndefinitions in an inappropriate place, confusing variable names,\nunnecessary dependencies, inappropriate ``else`` use, unused variables,\nand redundant functions, though the tip of the iceberg.  In addition,\nthis patch refactor tests such as tests that take too much time, and\ntests that cannot run correctly in places other than the root\ndirectory.\n\nThe details of the refactoring are listed below.\n\n- controller.py:VnfLcmController._notification_process (implicit\n  arguments)\n\n  Better to explicitly specify the operation_state and\n  notification_state\n\n- conductor_server.py:constants (inappropriate definition place)\n\n  A group of constants should be declared in constants.py\n\n- conductor_server.py:Conductor._change_vnf_status (confusing variable\n  names)\n\n  The variable name `current_status` is confusing. It is a condition\n  indicating the state to which is allowed to transition to the next\n  state.\n\n- conductor_server.py:Conductor._send_lcm_op_occ_notification\n  (confusing variable names)\n\n  The variable name `vnf_notif` is confusing. This is just a\n  `VnfLcmOpOcc`\n\n- conductor_server.py:Conductor._get_vnf_notify (redundant functions)\n\n- conductor_server.py:Conductor._send_lcm_op_occ_notification (implicit\n  arguments)\n\n  Better to explicitly specify the operation_state and operation\n\n- conductor_server.py:Conductor.instantiate (unnecessary dependencies)\n\n  The error points should be updated by vnflcm_driver.\n\n- vnfm_db.py (other)\n\n  Explicitly import Vim table. Due to the dependency from vnfm_db to\n  nfvo_db, if we import vnfm_db before importing nfvo_db, an error\n  happens, which is not explicitly indicated.\n\n- vnfm_db.py:VNFMPluginDb._update_vnf_scaling (unnecessary\n  dependencies)\n- vnfm_db.py:VNFMPluginDb._update_vnf_rollback (unnecessary\n  dependencies)\n\n  Implecitly saving these two objects: vnf_instance and vnf_lcm_op_occ\n  looks not good idea. The parent methods calling this method should\n  save them.\n\n- vnfm_db.py:VNFMPluginDb.update_vnf_rollback_status_err (inappropriate\n  ``else`` use)\n- vnfm_db.py:VNFMPluginDb._update_vnf_rollback_pre (inappropriate\n  ``else`` use)\n- vnfm_db.py:VNFMPluginDb._update_vnf_rollback (inappropriate ``else``\n  use)\n\n  Looks redundant.\n\n-\n  test_conductor_server:TestConductor.test_terminate_vnf_instance_exception\n  (other)\n\n  Improved side effect usage.\n\n- test_conductor_server:TestConductor.test_send_notification_timeout\n  (tests that take too long time)\n- test_conductor_server:TestConductor.test_get_notification_retry\n  (tests that take too long time)\n- test_conductor_server:TestConductor.test_get_notification_timeout\n  (tests that take too long time)\n\n  Mocked timers by setting `retry_wait` 0 in time-consuming tests.\n\n- utils.py (absolute test file paths)\n\n  In the current implementation, a relative path from the project root\n  is used. Due to this, it\u0027s not possible to run test in different\n  place from the project root. Thus, this patch change it to relative\n  paths from a test file.\n\n- vnflcm_driver.py:VnfLcmDriver._scale_vnf_pre (unused variables)\n\n  `scale_id_list` is not used\n\n- vnflcm_driver.py:VnfLcmDriver._scale_vnf_pre (inappropriate ``else``\n  use)\n\n  Better to write ``elif scale_vnf_request.type \u003d\u003d \u0027SCALE_OUT\u0027:``\n  explicitly because all unknown request types are considered as\n  \u0027SCALE_OUT\u0027\n\n- vnflcm_driver.py:VnfLcmDriver._scale_vnf_post (unused variables)\n\n  `id_list` is not used\n\n- vnflcm_driver.py:VnfLcmDriver._scale_vnf (redundant functions)\n\n  These two methods: `scale` and `_scale_vnf` can be merged. Since most\n  LCM operation methods consist of a pair of a protected method and\n  public method, e.g., `heal_vnf and _heal_vnf`, I merged\n  ``_scale_vnf`` and ``scale`` and then renamed it to ``_scale_vnf``.\n\nChange-Id: I2380ee72d058ec3cac93f941fda602cf8b0aadd7\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/tacker/commit/cfaeb41a9f3eceaf1426ecaa64447ff54de60041"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/tacker/commit/cfaeb41a9f3eceaf1426ecaa64447ff54de60041"}]},"branch":"refs/heads/master"},"1a7375c6ad2842e1d00f06cd788cd50d41b73095":{"kind":"REWORK","_number":5,"created":"2022-01-07 05:23:51.000000000","uploader":{"_account_id":33455,"name":"Hiromu Asahina","email":"hiromu.a5a@gmail.com","username":"h_asahina"},"ref":"refs/changes/93/817893/5","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/tacker","ref":"refs/changes/93/817893/5","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/tacker refs/changes/93/817893/5 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/tacker refs/changes/93/817893/5 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/tacker refs/changes/93/817893/5 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/tacker refs/changes/93/817893/5"}}},"commit":{"parents":[{"commit":"e501198b0f425cb25817314130e2080e8e1715fd","subject":"Merge \"Add fenix in k8s local.conf example\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/tacker/commit/e501198b0f425cb25817314130e2080e8e1715fd"}]}],"author":{"name":"Hiromu Asahina","email":"hiromu.asahina.az@hco.ntt.co.jp","date":"2021-11-12 14:18:50.000000000","tz":540},"committer":{"name":"Hiromu Asahina","email":"hiromu.asahina.az@hco.ntt.co.jp","date":"2022-01-07 05:23:00.000000000","tz":540},"subject":"[WIP] Refactor v1 LCM operation","message":"[WIP] Refactor v1 LCM operation\n\nIn the current codes about LCM operation, there are some codes that are\nhard to trace, which can cause an additional error and makes bug-fixing\na time-consuming task.\n\nThis patch refactors parts of these codes such as implicit arguments,\ndefinitions in an inappropriate place, confusing variable names,\nunnecessary dependencies, inappropriate ``else`` use, unused variables,\nand redundant functions, though the tip of the iceberg.  In addition,\nthis patch refactor tests such as tests that take too much time, and\ntests that cannot run correctly in places other than the root\ndirectory.\n\nThe details of the refactoring are listed below.\n\n- controller.py:VnfLcmController._notification_process (implicit\n  arguments)\n\n  Better to explicitly specify the operation_state and\n  notification_state\n\n- conductor_server.py:constants (inappropriate definition place)\n\n  A group of constants should be declared in constants.py\n\n- conductor_server.py:Conductor._change_vnf_status (confusing variable\n  names)\n\n  The variable name `current_status` is confusing. It is a condition\n  indicating the state to which is allowed to transition to the next\n  state.\n\n- conductor_server.py:Conductor._send_lcm_op_occ_notification\n  (confusing variable names)\n\n  The variable name `vnf_notif` is confusing. This is just a\n  `VnfLcmOpOcc`\n\n- conductor_server.py:Conductor._get_vnf_notify (redundant functions)\n\n- conductor_server.py:Conductor._send_lcm_op_occ_notification (implicit\n  arguments)\n\n  Better to explicitly specify the operation_state and operation\n\n- conductor_server.py:Conductor.instantiate (unnecessary dependencies)\n\n  The error points should be updated by vnflcm_driver.\n\n- vnfm_db.py (other)\n\n  Explicitly import Vim table. Due to the dependency from vnfm_db to\n  nfvo_db, if we import vnfm_db before importing nfvo_db, an error\n  happens, which is not explicitly indicated.\n\n- vnfm_db.py:VNFMPluginDb._update_vnf_scaling (unnecessary\n  dependencies)\n- vnfm_db.py:VNFMPluginDb._update_vnf_rollback (unnecessary\n  dependencies)\n\n  Implecitly saving these two objects: vnf_instance and vnf_lcm_op_occ\n  looks not good idea. The parent methods calling this method should\n  save them.\n\n- vnfm_db.py:VNFMPluginDb.update_vnf_rollback_status_err (inappropriate\n  ``else`` use)\n- vnfm_db.py:VNFMPluginDb._update_vnf_rollback_pre (inappropriate\n  ``else`` use)\n- vnfm_db.py:VNFMPluginDb._update_vnf_rollback (inappropriate ``else``\n  use)\n\n  Looks redundant.\n\n-\n  test_conductor_server:TestConductor.test_terminate_vnf_instance_exception\n  (other)\n\n  Improved side effect usage.\n\n- test_conductor_server:TestConductor.test_send_notification_timeout\n  (tests that take too long time)\n- test_conductor_server:TestConductor.test_get_notification_retry\n  (tests that take too long time)\n- test_conductor_server:TestConductor.test_get_notification_timeout\n  (tests that take too long time)\n\n  Mocked timers by setting `retry_wait` 0 in time-consuming tests.\n\n- utils.py (absolute test file paths)\n\n  In the current implementation, a relative path from the project root\n  is used. Due to this, it\u0027s not possible to run test in different\n  place from the project root. Thus, this patch change it to relative\n  paths from a test file.\n\n- vnflcm_driver.py:VnfLcmDriver._scale_vnf_pre (unused variables)\n\n  `scale_id_list` is not used\n\n- vnflcm_driver.py:VnfLcmDriver._scale_vnf_pre (inappropriate ``else``\n  use)\n\n  Better to write ``elif scale_vnf_request.type \u003d\u003d \u0027SCALE_OUT\u0027:``\n  explicitly because all unknown request types are considered as\n  \u0027SCALE_OUT\u0027\n\n- vnflcm_driver.py:VnfLcmDriver._scale_vnf_post (unused variables)\n\n  `id_list` is not used\n\n- vnflcm_driver.py:VnfLcmDriver._scale_vnf (redundant functions)\n\n  These two methods: `scale` and `_scale_vnf` can be merged. Since most\n  LCM operation methods consist of a pair of a protected method and\n  public method, e.g., `heal_vnf and _heal_vnf`, I merged\n  ``_scale_vnf`` and ``scale`` and then renamed it to ``_scale_vnf``.\n\nChange-Id: I2380ee72d058ec3cac93f941fda602cf8b0aadd7\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/tacker/commit/1a7375c6ad2842e1d00f06cd788cd50d41b73095"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/tacker/commit/1a7375c6ad2842e1d00f06cd788cd50d41b73095"}]},"branch":"refs/heads/master"}},"requirements":[],"submit_records":[],"submit_requirements":[]}
