)]}'
{"id":"openstack%2Fmistral-lib~746021","triplet_id":"openstack%2Fmistral-lib~master~Ic9108c9293731b3576081c75f2786e1156ba0ccd","project":"openstack/mistral-lib","branch":"master","topic":"bp/mistral-action-providers","hashtags":[],"change_id":"Ic9108c9293731b3576081c75f2786e1156ba0ccd","subject":"Add main entities related to action providers","status":"MERGED","created":"2020-08-13 08:31:27.000000000","updated":"2020-09-03 12:14:05.000000000","submitted":"2020-09-03 12:11:48.000000000","submitter":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"total_comment_count":41,"unresolved_comment_count":0,"has_review_started":true,"submission_id":"746021-1599135108850-038e877c","meta_rev_id":"1fb8a843a756a830a2d66dbdfd4e3b645ffb648d","_number":746021,"virtual_id_number":746021,"owner":{"_account_id":8731,"name":"Renat Akhmerov","email":"renat.akhmerov@gmail.com","username":"rakhmerov"},"actions":{},"labels":{"Verified":{"approved":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"all":[{"value":0,"_account_id":21970,"name":"Andras Kovi","email":"akovi@nokia.com","username":"andras.kovi"},{"value":0,"_account_id":30755,"name":"ali","email":"ali.abdelal@nokia.com","username":"abdelal"},{"value":0,"_account_id":29124,"name":"Oleg Ovcharuk","email":"vgvoleg@gmail.com","username":"vgvoleg"},{"value":0,"_account_id":15895,"name":"Adriano Petrich","email":"apetrich@redhat.com","username":"apetrich"},{"value":0,"_account_id":8731,"name":"Renat Akhmerov","email":"renat.akhmerov@gmail.com","username":"rakhmerov"},{"tag":"autogenerated:zuul:gate","value":2,"date":"2020-09-03 12:11:48.000000000","post_submit":true,"permitted_voting_range":{"min":2,"max":2},"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},{"value":0,"_account_id":19134,"name":"Eyal","email":"eyalb1@gmail.com","username":"eyalb"}],"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":21970,"name":"Andras Kovi","email":"akovi@nokia.com","username":"andras.kovi"},"all":[{"value":2,"date":"2020-09-03 12:00:21.000000000","permitted_voting_range":{"min":2,"max":2},"_account_id":21970,"name":"Andras Kovi","email":"akovi@nokia.com","username":"andras.kovi"},{"value":0,"_account_id":30755,"name":"ali","email":"ali.abdelal@nokia.com","username":"abdelal"},{"value":0,"_account_id":29124,"name":"Oleg Ovcharuk","email":"vgvoleg@gmail.com","username":"vgvoleg"},{"value":0,"_account_id":15895,"name":"Adriano Petrich","email":"apetrich@redhat.com","username":"apetrich"},{"value":0,"_account_id":8731,"name":"Renat Akhmerov","email":"renat.akhmerov@gmail.com","username":"rakhmerov"},{"value":0,"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},{"value":0,"_account_id":19134,"name":"Eyal","email":"eyalb1@gmail.com","username":"eyalb"}],"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":21970,"name":"Andras Kovi","email":"akovi@nokia.com","username":"andras.kovi"},"all":[{"value":1,"date":"2020-09-03 12:00:21.000000000","permitted_voting_range":{"min":1,"max":1},"_account_id":21970,"name":"Andras Kovi","email":"akovi@nokia.com","username":"andras.kovi"},{"value":0,"_account_id":30755,"name":"ali","email":"ali.abdelal@nokia.com","username":"abdelal"},{"value":0,"_account_id":29124,"name":"Oleg Ovcharuk","email":"vgvoleg@gmail.com","username":"vgvoleg"},{"value":0,"_account_id":15895,"name":"Adriano Petrich","email":"apetrich@redhat.com","username":"apetrich"},{"value":0,"_account_id":8731,"name":"Renat Akhmerov","email":"renat.akhmerov@gmail.com","username":"rakhmerov"},{"value":0,"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},{"value":0,"_account_id":19134,"name":"Eyal","email":"eyalb1@gmail.com","username":"eyalb"}],"values":{"-1":"Work in progress"," 0":"Ready for reviews","+1":"Approved"},"description":"","default_value":0,"optional":true}},"removable_reviewers":[],"reviewers":{"REVIEWER":[{"_account_id":8731,"name":"Renat Akhmerov","email":"renat.akhmerov@gmail.com","username":"rakhmerov"},{"_account_id":15895,"name":"Adriano Petrich","email":"apetrich@redhat.com","username":"apetrich"},{"_account_id":19134,"name":"Eyal","email":"eyalb1@gmail.com","username":"eyalb"},{"_account_id":21970,"name":"Andras Kovi","email":"akovi@nokia.com","username":"andras.kovi"},{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},{"_account_id":29124,"name":"Oleg Ovcharuk","email":"vgvoleg@gmail.com","username":"vgvoleg"},{"_account_id":30755,"name":"ali","email":"ali.abdelal@nokia.com","username":"abdelal"}]},"pending_reviewers":{},"reviewer_updates":[{"updated":"2020-09-02 06:47:16.000000000","updated_by":{"_account_id":19134,"name":"Eyal","email":"eyalb1@gmail.com","username":"eyalb"},"reviewer":{"_account_id":19134,"name":"Eyal","email":"eyalb1@gmail.com","username":"eyalb"},"state":"REVIEWER"},{"updated":"2020-09-02 06:47:29.000000000","updated_by":{"_account_id":29124,"name":"Oleg Ovcharuk","email":"vgvoleg@gmail.com","username":"vgvoleg"},"reviewer":{"_account_id":29124,"name":"Oleg Ovcharuk","email":"vgvoleg@gmail.com","username":"vgvoleg"},"state":"REVIEWER"},{"updated":"2020-09-02 06:53:56.000000000","updated_by":{"_account_id":15895,"name":"Adriano Petrich","email":"apetrich@redhat.com","username":"apetrich"},"reviewer":{"_account_id":15895,"name":"Adriano Petrich","email":"apetrich@redhat.com","username":"apetrich"},"state":"REVIEWER"},{"updated":"2020-09-02 07:25:57.000000000","updated_by":{"_account_id":30755,"name":"ali","email":"ali.abdelal@nokia.com","username":"abdelal"},"reviewer":{"_account_id":30755,"name":"ali","email":"ali.abdelal@nokia.com","username":"abdelal"},"state":"REVIEWER"},{"updated":"2020-09-03 12:00:21.000000000","updated_by":{"_account_id":21970,"name":"Andras Kovi","email":"akovi@nokia.com","username":"andras.kovi"},"reviewer":{"_account_id":21970,"name":"Andras Kovi","email":"akovi@nokia.com","username":"andras.kovi"},"state":"REVIEWER"},{"updated":"2020-09-03 12:11:48.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"}],"messages":[{"id":"33e0fe1a517667e8bbb00487fc5997de3844a0d7","author":{"_account_id":8731,"name":"Renat Akhmerov","email":"renat.akhmerov@gmail.com","username":"rakhmerov"},"date":"2020-08-13 08:31:27.000000000","message":"Uploaded patch set 1.","accounts_in_message":[],"_revision_number":1},{"id":"f42e7b7d7bec631b2a4e9e6d3aa49f304fcbdf0f","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2020-08-13 08:39:06.000000000","message":"Patch Set 1: Verified-1\n\n(12 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\n\n- requirements-check https://zuul.opendev.org/t/openstack/build/62291c042f9c49c6b95e7513e32a8c56 : FAILURE in 2m 50s\n- openstack-tox-lower-constraints https://zuul.opendev.org/t/openstack/build/de13f03199c349179931ee7c1388a5ef : FAILURE in 5m 51s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/90e35efbf4574e1fad0f5e00e5f2b8e1 : FAILURE in 3m 09s\n- openstack-tox-py36 https://zuul.opendev.org/t/openstack/build/61e2297b49c347e89f856c3d93b74119 : FAILURE in 3m 15s\n- openstack-tox-py38 https://zuul.opendev.org/t/openstack/build/a9ebb2f0379e4176a4b1e73492091ebf : FAILURE in 4m 04s\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/69c67613e4154167b1a2e71e47d1795c : SUCCESS in 3m 30s","accounts_in_message":[],"_revision_number":1},{"id":"c202438840115e440b911b34a357416f87612e86","author":{"_account_id":8731,"name":"Renat Akhmerov","email":"renat.akhmerov@gmail.com","username":"rakhmerov"},"date":"2020-08-13 09:09:00.000000000","message":"Uploaded patch set 2.","accounts_in_message":[],"_revision_number":2},{"id":"e7d6ed662b895565cc176b31a83709b6a470aee8","author":{"_account_id":8731,"name":"Renat Akhmerov","email":"renat.akhmerov@gmail.com","username":"rakhmerov"},"date":"2020-08-13 09:09:44.000000000","message":"Uploaded patch set 3.","accounts_in_message":[],"_revision_number":3},{"id":"e83c0a563a413ec248022b2a7a6feb4e802cc775","author":{"_account_id":8731,"name":"Renat Akhmerov","email":"renat.akhmerov@gmail.com","username":"rakhmerov"},"date":"2020-08-13 09:10:02.000000000","message":"Patch Set 3: Workflow-1","accounts_in_message":[],"_revision_number":3},{"id":"d3bd58dd7e0320bf325075565c70a83f311ea76a","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2020-08-13 09:18:46.000000000","message":"Patch Set 3: Verified+1\n\nBuild succeeded (check pipeline).\n\n- openstack-tox-lower-constraints https://zuul.opendev.org/t/openstack/build/da5ad1862d284a5d8c018674a3055d63 : SUCCESS in 4m 57s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/33c99b67df51456fb7641b8c6c2eee14 : SUCCESS in 2m 58s\n- openstack-tox-py36 https://zuul.opendev.org/t/openstack/build/ccd33bdfe0724a228a8c7daf58a4ca7f : SUCCESS in 4m 29s\n- openstack-tox-py38 https://zuul.opendev.org/t/openstack/build/ef4cd0e563d0447187c4d93ea3f4b180 : SUCCESS in 4m 25s\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/72da5d488a0b4db08b798cc455234381 : SUCCESS in 3m 16s","accounts_in_message":[],"_revision_number":3},{"id":"84799d7da88c65311d13a125a328caa5c32d43d1","author":{"_account_id":8731,"name":"Renat Akhmerov","email":"renat.akhmerov@gmail.com","username":"rakhmerov"},"date":"2020-08-20 04:31:23.000000000","message":"Uploaded patch set 4.","accounts_in_message":[],"_revision_number":4},{"id":"c45cef8a20a72e078a7688e58de92dac19532297","author":{"_account_id":8731,"name":"Renat Akhmerov","email":"renat.akhmerov@gmail.com","username":"rakhmerov"},"date":"2020-08-20 04:32:25.000000000","message":"Patch Set 4: Workflow-1","accounts_in_message":[],"_revision_number":4},{"id":"1e8aec47d2788423f9f761f0ed58921e5d23180e","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2020-08-20 04:40:40.000000000","message":"Patch Set 4: Verified-1\n\n(1 comment)\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-lower-constraints https://zuul.opendev.org/t/openstack/build/1d4fee6198604c1581abf2ed76de565f : SUCCESS in 3m 56s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/09bc7937c46840479cfbc1cd9d01f468 : FAILURE in 2m 32s\n- openstack-tox-py36 https://zuul.opendev.org/t/openstack/build/ba696d2da84548ddbf3068b045773c17 : SUCCESS in 2m 57s\n- openstack-tox-py38 https://zuul.opendev.org/t/openstack/build/835f79116e4941d68b979bff21378ee7 : SUCCESS in 3m 15s\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/bc6fced0440946b2bee49d6c5e0d865a : SUCCESS in 2m 59s","accounts_in_message":[],"_revision_number":4},{"id":"2ec6111a6077c9e4e48158f8238bb8fa5ba4d325","author":{"_account_id":8731,"name":"Renat Akhmerov","email":"renat.akhmerov@gmail.com","username":"rakhmerov"},"date":"2020-08-25 04:54:46.000000000","message":"Uploaded patch set 5.","accounts_in_message":[],"_revision_number":5},{"id":"1a48172d0c5a9261289c46e136258e96623c4d8a","author":{"_account_id":8731,"name":"Renat Akhmerov","email":"renat.akhmerov@gmail.com","username":"rakhmerov"},"date":"2020-08-25 04:55:05.000000000","message":"Patch Set 5: Workflow-1","accounts_in_message":[],"_revision_number":5},{"id":"17d993f21a25698dd3804cb65af56218f09562e1","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2020-08-25 05:04:01.000000000","message":"Patch Set 5: Verified+1\n\nBuild succeeded (check pipeline).\n\n- openstack-tox-lower-constraints https://zuul.opendev.org/t/openstack/build/4e6df434ae8b46a28f3ed8e4a17bab4a : SUCCESS in 3m 50s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/4f67295b96fb4921a11e94fc31af7838 : SUCCESS in 2m 25s\n- openstack-tox-py36 https://zuul.opendev.org/t/openstack/build/e7e01dc8527745acbff242fd39175ab3 : SUCCESS in 2m 55s\n- openstack-tox-py38 https://zuul.opendev.org/t/openstack/build/19a7e653933344738059804c7ba2065e : SUCCESS in 2m 58s\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/563e5ad953894df1aaf8aad6c4881119 : SUCCESS in 3m 09s","accounts_in_message":[],"_revision_number":5},{"id":"d0af15d493e5097ca67f8ab523ae23b141b0b359","author":{"_account_id":8731,"name":"Renat Akhmerov","email":"renat.akhmerov@gmail.com","username":"rakhmerov"},"date":"2020-08-25 05:09:55.000000000","message":"Uploaded patch set 6.","accounts_in_message":[],"_revision_number":6},{"id":"0e9fed178d131285354202d4b57e7769d6668a19","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2020-08-25 05:21:20.000000000","message":"Patch Set 6: Verified+1\n\nBuild succeeded (check pipeline).\n\n- openstack-tox-lower-constraints https://zuul.opendev.org/t/openstack/build/8e33a0c65225473cb400e72854c82496 : SUCCESS in 4m 29s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/5e5618b6dec040048cf95e94de4480f1 : SUCCESS in 3m 48s\n- openstack-tox-py36 https://zuul.opendev.org/t/openstack/build/a02741d6929046c19bc68d512c920187 : SUCCESS in 4m 43s\n- openstack-tox-py38 https://zuul.opendev.org/t/openstack/build/0cd7c362b8104560bb9d3c0288e90484 : SUCCESS in 3m 51s\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/1fd2a4e5c9584ff4b9b7824f2e89f797 : SUCCESS in 3m 45s","accounts_in_message":[],"_revision_number":6},{"id":"80878ebd492142508fdeee030a2ce18400337500","author":{"_account_id":8731,"name":"Renat Akhmerov","email":"renat.akhmerov@gmail.com","username":"rakhmerov"},"date":"2020-08-25 08:20:28.000000000","message":"Patch Set 6: Workflow-1","accounts_in_message":[],"_revision_number":6},{"id":"e956445f6a6aee595a25cf4e9d8eccf654e6b659","author":{"_account_id":8731,"name":"Renat Akhmerov","email":"renat.akhmerov@gmail.com","username":"rakhmerov"},"date":"2020-08-26 08:30:21.000000000","message":"Uploaded patch set 7.","accounts_in_message":[],"_revision_number":7},{"id":"47c848383ceb814253ad8ba2eacf21a4f548d710","author":{"_account_id":8731,"name":"Renat Akhmerov","email":"renat.akhmerov@gmail.com","username":"rakhmerov"},"date":"2020-08-26 08:38:21.000000000","message":"Patch Set 7: Workflow-1","accounts_in_message":[],"_revision_number":7},{"id":"f472435e5ddc79ee1dae34d4250a9e9003e1a684","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2020-08-26 08:42:46.000000000","message":"Patch Set 7: Verified+1\n\nBuild succeeded (check pipeline).\n\n- openstack-tox-lower-constraints https://zuul.opendev.org/t/openstack/build/e17fe0b12a87447ab46aa1e16afa236c : SUCCESS in 7m 08s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/d9dcc6ffb7c348928ef557f5a9a4aa1d : SUCCESS in 3m 19s\n- openstack-tox-py36 https://zuul.opendev.org/t/openstack/build/4ad7e8ee47bd46c29ad3c9a43b148b57 : SUCCESS in 3m 37s\n- openstack-tox-py38 https://zuul.opendev.org/t/openstack/build/784e20b4b693423facca9130989174d1 : SUCCESS in 6m 14s\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/318177ac80e14ce0a334990c705f3c0a : SUCCESS in 5m 31s","accounts_in_message":[],"_revision_number":7},{"id":"0f025fd467e7dd0b686743e18c424aa5ef40e634","author":{"_account_id":8731,"name":"Renat Akhmerov","email":"renat.akhmerov@gmail.com","username":"rakhmerov"},"date":"2020-08-26 09:55:52.000000000","message":"Uploaded patch set 8.","accounts_in_message":[],"_revision_number":8},{"id":"4d268141bec540cd18a72c437890726104669ede","author":{"_account_id":8731,"name":"Renat Akhmerov","email":"renat.akhmerov@gmail.com","username":"rakhmerov"},"date":"2020-08-26 09:56:27.000000000","message":"Patch Set 8: Workflow-1","accounts_in_message":[],"_revision_number":8},{"id":"79f3e38284d1debdd3f347523e71395234f2b60f","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2020-08-26 10:05:59.000000000","message":"Patch Set 8: Verified+1\n\nBuild succeeded (check pipeline).\n\n- openstack-tox-lower-constraints https://zuul.opendev.org/t/openstack/build/bd26c5ee24bd49ce924811a622b4e5b0 : SUCCESS in 4m 52s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/5c5be486a21a467a949fda8fd6840133 : SUCCESS in 3m 25s\n- openstack-tox-py36 https://zuul.opendev.org/t/openstack/build/a9ddedc9d4764f08bd230b4b8eedfaa7 : SUCCESS in 3m 29s\n- openstack-tox-py38 https://zuul.opendev.org/t/openstack/build/e04ef9d874404014ab0910c466b4fada : SUCCESS in 4m 15s\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/9a94cb86da684bf580cf4df8075fce8d : SUCCESS in 5m 01s","accounts_in_message":[],"_revision_number":8},{"id":"047b5ea7b3e14c5418a95af3be56d4f198a40954","author":{"_account_id":8731,"name":"Renat Akhmerov","email":"renat.akhmerov@gmail.com","username":"rakhmerov"},"date":"2020-08-28 09:02:08.000000000","message":"Uploaded patch set 9.","accounts_in_message":[],"_revision_number":9},{"id":"6cc23eeaa84c679f8bb3fca434ee06252196d309","author":{"_account_id":8731,"name":"Renat Akhmerov","email":"renat.akhmerov@gmail.com","username":"rakhmerov"},"date":"2020-08-28 09:05:10.000000000","message":"Patch Set 9: Workflow-1","accounts_in_message":[],"_revision_number":9},{"id":"ec360a4c2651feea6543f48f5e2071d707bb9523","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2020-08-28 09:12:18.000000000","message":"Patch Set 9: Verified+1\n\nBuild succeeded (check pipeline).\n\n- openstack-tox-lower-constraints https://zuul.opendev.org/t/openstack/build/aaaab83c55ba4fb9a361e5c6ed7c95b0 : SUCCESS in 5m 22s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/b78e4db75c4d4203a3b5d12c5b10d0b6 : SUCCESS in 3m 35s\n- openstack-tox-py36 https://zuul.opendev.org/t/openstack/build/1f11925315bd4b749a1ca9fed247307d : SUCCESS in 4m 16s\n- openstack-tox-py38 https://zuul.opendev.org/t/openstack/build/1c33469206944045b89aae65c0bacc39 : SUCCESS in 5m 06s\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/8469b50136a8493994af6dac02c915ff : SUCCESS in 3m 09s","accounts_in_message":[],"_revision_number":9},{"id":"f2c0382f09e722a561358d515787ffaa5894c1ef","author":{"_account_id":8731,"name":"Renat Akhmerov","email":"renat.akhmerov@gmail.com","username":"rakhmerov"},"date":"2020-08-28 09:37:03.000000000","message":"Patch Set 9: -Workflow","accounts_in_message":[],"_revision_number":9},{"id":"1d9d112acdbb2ea183123268924c3565704fdeff","author":{"_account_id":8731,"name":"Renat Akhmerov","email":"renat.akhmerov@gmail.com","username":"rakhmerov"},"date":"2020-09-01 07:33:16.000000000","message":"Uploaded patch set 10.","accounts_in_message":[],"_revision_number":10},{"id":"c55c1a3dcd83f9181e41fcdcb3c7bf747b036c20","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2020-09-01 07:50:59.000000000","message":"Patch Set 10: Verified+1\n\nBuild succeeded (check pipeline).\n\n- openstack-tox-lower-constraints https://zuul.opendev.org/t/openstack/build/95035e50b44449578c494416060c8276 : SUCCESS in 5m 47s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/17dc102347534b69a329cf0e8c00998e : SUCCESS in 5m 25s\n- openstack-tox-py36 https://zuul.opendev.org/t/openstack/build/972b51c8579244009a57f0dcd6a388af : SUCCESS in 4m 55s\n- openstack-tox-py38 https://zuul.opendev.org/t/openstack/build/52257025b8ec4c438299a282c19ec5d7 : SUCCESS in 5m 03s\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/671668167d1d4a1086fa0f600139337a : SUCCESS in 6m 42s","accounts_in_message":[],"_revision_number":10},{"id":"c568372bcf71f1a489ff545850964cd7476af86e","author":{"_account_id":8731,"name":"Renat Akhmerov","email":"renat.akhmerov@gmail.com","username":"rakhmerov"},"date":"2020-09-01 11:47:40.000000000","message":"Uploaded patch set 11.","accounts_in_message":[],"_revision_number":11},{"id":"595e451c0e29377f56bd784560088297c7839d8f","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2020-09-01 11:56:52.000000000","message":"Patch Set 11: Verified+1\n\nBuild succeeded (check pipeline).\n\n- openstack-tox-lower-constraints https://zuul.opendev.org/t/openstack/build/889330129df74776af123c649b3576f2 : SUCCESS in 5m 24s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/658956f3fa5748e0a58e0f3afdb01f8a : SUCCESS in 3m 18s\n- openstack-tox-py36 https://zuul.opendev.org/t/openstack/build/f61a16222da7481e828390e7bde47e48 : SUCCESS in 3m 38s\n- openstack-tox-py38 https://zuul.opendev.org/t/openstack/build/c4be12ac2e814308a601a1ba353b7299 : SUCCESS in 4m 38s\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/c35937900a6c473dbefa40f6cd0e7c0c : SUCCESS in 3m 40s","accounts_in_message":[],"_revision_number":11},{"id":"0a0e6fad0d4e111256e7531bb6f2db13ebca9dd3","author":{"_account_id":30755,"name":"ali","email":"ali.abdelal@nokia.com","username":"abdelal"},"date":"2020-09-02 07:25:57.000000000","message":"Patch Set 11:\n\n(1 comment)","accounts_in_message":[],"_revision_number":11},{"id":"64ed215bf1ca74c865a91978f0fe943224ec000c","author":{"_account_id":21970,"name":"Andras Kovi","email":"akovi@nokia.com","username":"andras.kovi"},"date":"2020-09-02 08:16:56.000000000","message":"Patch Set 11: Code-Review-1\n\n(11 comments)\n\noverall looks good but I\u0027d iterate on the naming","accounts_in_message":[],"_revision_number":11},{"id":"3312c91538ba690cebc50826ac0677f84b50c9f0","author":{"_account_id":8731,"name":"Renat Akhmerov","email":"renat.akhmerov@gmail.com","username":"rakhmerov"},"date":"2020-09-02 08:20:13.000000000","message":"Patch Set 11:\n\nThanks! Will address your comments soon.","accounts_in_message":[],"_revision_number":11},{"id":"b7139d20a8b5df7405831e3b4eff9440fce81eb3","author":{"_account_id":8731,"name":"Renat Akhmerov","email":"renat.akhmerov@gmail.com","username":"rakhmerov"},"date":"2020-09-03 08:43:31.000000000","message":"Patch Set 11:\n\n(10 comments)","accounts_in_message":[],"_revision_number":11},{"id":"1a07f67375d6824a55a9b9d3ba36aebd901757af","author":{"_account_id":8731,"name":"Renat Akhmerov","email":"renat.akhmerov@gmail.com","username":"rakhmerov"},"date":"2020-09-03 09:20:22.000000000","message":"Uploaded patch set 12.","accounts_in_message":[],"_revision_number":12},{"id":"0fe4b58793f243ee3923013895737f89ffa3962b","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2020-09-03 09:30:16.000000000","message":"Patch Set 12: Verified-1\n\n(1 comment)\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-lower-constraints https://zuul.opendev.org/t/openstack/build/c791e10733c24f5888fc2dcf95c41788 : SUCCESS in 5m 11s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/522ade4d9e104a2aa81b3bd2bb65ab14 : FAILURE in 5m 29s\n- openstack-tox-py36 https://zuul.opendev.org/t/openstack/build/f232458c78af4ee294a0ed04630d6633 : SUCCESS in 4m 50s\n- openstack-tox-py38 https://zuul.opendev.org/t/openstack/build/92478a07f8f44b379e446f497743dc63 : SUCCESS in 4m 19s\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/3a915f62365944538081efd58958250f : SUCCESS in 4m 35s","accounts_in_message":[],"_revision_number":12},{"id":"7a4636f82b93fb748af5bf03baf58ddf0f0003a5","author":{"_account_id":8731,"name":"Renat Akhmerov","email":"renat.akhmerov@gmail.com","username":"rakhmerov"},"date":"2020-09-03 09:35:03.000000000","message":"Uploaded patch set 13.","accounts_in_message":[],"_revision_number":13},{"id":"93d60761a3384b9ac5c013df4ef52c43d0a02bde","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2020-09-03 09:45:39.000000000","message":"Patch Set 13: Verified+1\n\nBuild succeeded (check pipeline).\n\n- openstack-tox-lower-constraints https://zuul.opendev.org/t/openstack/build/8a92d1757dd147d78faac999919e3ace : SUCCESS in 6m 23s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/06b1ad67c3f94d4b94f0fdf1a9e6c12b : SUCCESS in 4m 05s\n- openstack-tox-py36 https://zuul.opendev.org/t/openstack/build/5264d3e3decb40c9a2c142c9f96bc126 : SUCCESS in 5m 36s\n- openstack-tox-py38 https://zuul.opendev.org/t/openstack/build/19a5fb1e918b42e1a5c54ababf2111f3 : SUCCESS in 4m 27s\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/8e23d698824546d2957cb771e7562461 : SUCCESS in 3m 43s","accounts_in_message":[],"_revision_number":13},{"id":"61660d64b3eb3df771d4a0f959da0c61538f10ce","author":{"_account_id":21970,"name":"Andras Kovi","email":"akovi@nokia.com","username":"andras.kovi"},"date":"2020-09-03 09:59:34.000000000","message":"Patch Set 13: Code-Review-1\n\n(5 comments)","accounts_in_message":[],"_revision_number":13},{"id":"feba59ad7716b63188b5bd9eb6fcd8fc2bf75d7d","author":{"_account_id":8731,"name":"Renat Akhmerov","email":"renat.akhmerov@gmail.com","username":"rakhmerov"},"date":"2020-09-03 10:15:00.000000000","message":"Uploaded patch set 14.","accounts_in_message":[],"_revision_number":14},{"id":"7f61c63a24c56c5ab1b42ce0e1bfeb81515c7c8d","author":{"_account_id":8731,"name":"Renat Akhmerov","email":"renat.akhmerov@gmail.com","username":"rakhmerov"},"date":"2020-09-03 10:17:03.000000000","message":"Uploaded patch set 15.","accounts_in_message":[],"_revision_number":15},{"id":"db6288c760c4afcf4e375efdaaf72069879cab97","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2020-09-03 10:28:08.000000000","message":"Patch Set 15: Verified+1\n\nBuild succeeded (check pipeline).\n\n- openstack-tox-lower-constraints https://zuul.opendev.org/t/openstack/build/800f7e7abf6042bea49279d9ef8bc9c9 : SUCCESS in 5m 45s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/c5b3e4591d274243b900054f0f15ae69 : SUCCESS in 4m 05s\n- openstack-tox-py36 https://zuul.opendev.org/t/openstack/build/3353b885e89d4919b04e1a1bec545621 : SUCCESS in 3m 57s\n- openstack-tox-py38 https://zuul.opendev.org/t/openstack/build/55b3e5b6209943649a17ef08355dbd45 : SUCCESS in 4m 25s\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/d0a574f9cb974c1dbd2b413683f1d822 : SUCCESS in 4m 00s","accounts_in_message":[],"_revision_number":15},{"id":"d7e585a8bdd2e8ccae1780f02d33a0a4a36cf3b9","author":{"_account_id":21970,"name":"Andras Kovi","email":"akovi@nokia.com","username":"andras.kovi"},"date":"2020-09-03 12:00:21.000000000","message":"Patch Set 15: Code-Review+2 Workflow+1","accounts_in_message":[],"_revision_number":15},{"id":"cf3e6227eb4d6b28926bf2380f23606b6be20109","tag":"autogenerated:zuul:gate","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2020-09-03 12:00:35.000000000","message":"Patch Set 15: -Verified\n\nStarting gate jobs.","accounts_in_message":[],"_revision_number":15},{"id":"7ac5f6fb1f9167dcb7122ff0eb0842a8e263cc61","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2020-09-03 12:11:48.000000000","message":"Change has been successfully merged by Zuul","accounts_in_message":[],"_revision_number":15},{"id":"18f7cbe0c11cf5b69e8717d00482b568610d9fc2","tag":"autogenerated:zuul:gate","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2020-09-03 12:11:48.000000000","message":"Patch Set 15: Verified+2\n\nBuild succeeded (gate pipeline).\n\n- openstack-tox-lower-constraints https://zuul.opendev.org/t/openstack/build/598e31e25ac440058a0c8a461ccb8ffc : SUCCESS in 4m 51s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/77283782fa6e41a4ad23b60fe4e5ac02 : SUCCESS in 4m 48s\n- openstack-tox-py36 https://zuul.opendev.org/t/openstack/build/4acb52e9fc934105990e96a7b470939c : SUCCESS in 4m 34s\n- openstack-tox-py38 https://zuul.opendev.org/t/openstack/build/9c10dfe7dfa64afab0386f320bbbd6aa : SUCCESS in 5m 05s\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/9f0b8bc00764483095c2135ef986c812 : SUCCESS in 4m 28s","accounts_in_message":[],"_revision_number":15},{"id":"6bc80a3269d1f7faa7cb0d9a0d6f15aedf3ce189","tag":"autogenerated:zuul:promote","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2020-09-03 12:14:05.000000000","message":"Patch Set 15:\n\nBuild succeeded (promote pipeline).\n\n- promote-openstack-tox-docs https://zuul.opendev.org/t/openstack/build/7a44e6597bc045d9896f1eea729047b0 : SUCCESS in 1m 39s","accounts_in_message":[],"_revision_number":15}],"current_revision_number":15,"current_revision":"f818f1f02cf51a3e5371c2b4240ab6ab38fa4883","revisions":{"bc7097a350c9b5c3a7e943e031933810847aacdf":{"kind":"REWORK","_number":1,"created":"2020-08-13 08:31:27.000000000","uploader":{"_account_id":8731,"name":"Renat Akhmerov","email":"renat.akhmerov@gmail.com","username":"rakhmerov"},"ref":"refs/changes/21/746021/1","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/mistral-lib","ref":"refs/changes/21/746021/1","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/mistral-lib refs/changes/21/746021/1 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/mistral-lib refs/changes/21/746021/1 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/mistral-lib refs/changes/21/746021/1 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/mistral-lib refs/changes/21/746021/1"}}},"commit":{"parents":[{"commit":"301c17e7eabeb0d60b2216cd4e1919b095a5d410","subject":"Merge \"drop mock from lower-constraints\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/mistral-lib/commit/301c17e7eabeb0d60b2216cd4e1919b095a5d410"}]}],"author":{"name":"Renat Akhmerov","email":"renat.akhmerov@gmail.com","date":"2020-07-20 05:19:01.000000000","tz":420},"committer":{"name":"Renat Akhmerov","email":"renat.akhmerov@gmail.com","date":"2020-08-12 05:20:16.000000000","tz":420},"subject":"WIP: action providers","message":"WIP: action providers\n\nChange-Id: Ic9108c9293731b3576081c75f2786e1156ba0ccd\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/mistral-lib/commit/bc7097a350c9b5c3a7e943e031933810847aacdf"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/mistral-lib/commit/bc7097a350c9b5c3a7e943e031933810847aacdf"}]},"branch":"refs/heads/master"},"ca5e4dc4eb2f23cd345540939cb391ad8c59c4c0":{"kind":"REWORK","_number":2,"created":"2020-08-13 09:09:00.000000000","uploader":{"_account_id":8731,"name":"Renat Akhmerov","email":"renat.akhmerov@gmail.com","username":"rakhmerov"},"ref":"refs/changes/21/746021/2","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/mistral-lib","ref":"refs/changes/21/746021/2","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/mistral-lib refs/changes/21/746021/2 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/mistral-lib refs/changes/21/746021/2 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/mistral-lib refs/changes/21/746021/2 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/mistral-lib refs/changes/21/746021/2"}}},"commit":{"parents":[{"commit":"301c17e7eabeb0d60b2216cd4e1919b095a5d410","subject":"Merge \"drop mock from lower-constraints\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/mistral-lib/commit/301c17e7eabeb0d60b2216cd4e1919b095a5d410"}]}],"author":{"name":"Renat Akhmerov","email":"renat.akhmerov@gmail.com","date":"2020-07-20 05:19:01.000000000","tz":420},"committer":{"name":"Renat Akhmerov","email":"renat.akhmerov@gmail.com","date":"2020-08-13 09:08:34.000000000","tz":420},"subject":"Add main entities related to action providers","message":"Add main entities related to action providers\n\n* This patch adds the base infrastructure for the new concept\n  that we call Action Providers. It will allow to refactor\n  Mistral in a way that all action management will be encapsulated\n  with action providers. For example, Mistral Engine needs to\n  schedule actions while processing a workflow. Now it has to\n  access DB itself to find an action definition (meta info about\n  what this action is, like python class, input params etc.),\n  then prepare input parameters, validate parameters and send a\n  message to an executor to run it. In many other places, Mistral\n  also directly access DB to fetch an action definition. It\u0027s\n  not flexible because we assume that definitions of Mistral\n  actions must always be stored in DB. The concept of an Action\n  Provider allows moving away from that limitation. A particular\n  implementation of the ActionProvider interface can store action\n  definitions in any suitable way, even fetching them using\n  various transport protocols like AMQP, HTTP, TCP, or anything\n  else. An action provider may also generate action definitions\n  dynamically, like creating wrappers around a set of operating\n  system commands. But for the rest of the system it won\u0027t matter\n  what happens inside action providers. All details will be\n  hidden behind a unified interface.\n* Added ActionDescriptor interface and its convenience base\n  abstract implementation. ActionDescriptor is an entity\n  representing an action before it\u0027s instantiated. It carries\n  the most important meta information about an action like name,\n  description, input parameters etc. It is also responsible for\n  validating action input parameters and instantiating a real\n  action.\n* Added PythonActionDescriptor which represents a regular action\n  written as a Python class.\n* Added CompositeActionProvider that delegates calls find() and\n  find_all() to a collection of other action providers.\n* Minor style changes.\n\nPartially implements: bp/mistral-action-providers\n\nChange-Id: Ic9108c9293731b3576081c75f2786e1156ba0ccd\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/mistral-lib/commit/ca5e4dc4eb2f23cd345540939cb391ad8c59c4c0"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/mistral-lib/commit/ca5e4dc4eb2f23cd345540939cb391ad8c59c4c0"}]},"branch":"refs/heads/master"},"67967fc6ad339f528803c1355fc07846b23d7916":{"kind":"REWORK","_number":3,"created":"2020-08-13 09:09:44.000000000","uploader":{"_account_id":8731,"name":"Renat Akhmerov","email":"renat.akhmerov@gmail.com","username":"rakhmerov"},"ref":"refs/changes/21/746021/3","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/mistral-lib","ref":"refs/changes/21/746021/3","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/mistral-lib refs/changes/21/746021/3 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/mistral-lib refs/changes/21/746021/3 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/mistral-lib refs/changes/21/746021/3 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/mistral-lib refs/changes/21/746021/3"}}},"commit":{"parents":[{"commit":"301c17e7eabeb0d60b2216cd4e1919b095a5d410","subject":"Merge \"drop mock from lower-constraints\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/mistral-lib/commit/301c17e7eabeb0d60b2216cd4e1919b095a5d410"}]}],"author":{"name":"Renat Akhmerov","email":"renat.akhmerov@gmail.com","date":"2020-07-20 05:19:01.000000000","tz":420},"committer":{"name":"Renat Akhmerov","email":"renat.akhmerov@gmail.com","date":"2020-08-13 09:09:32.000000000","tz":420},"subject":"Add main entities related to action providers","message":"Add main entities related to action providers\n\n* This patch adds the base infrastructure for the new concept\n  that we call Action Providers. It will allow to refactor\n  Mistral in a way that all action management will be encapsulated\n  with action providers. For example, Mistral Engine needs to\n  schedule actions while processing a workflow. Now it has to\n  access DB itself to find an action definition (meta info about\n  what this action is, like python class, input params etc.),\n  then prepare input parameters, validate parameters and send a\n  message to an executor to run it. In many other places, Mistral\n  also directly access DB to fetch an action definition. It\u0027s\n  not flexible because we assume that definitions of Mistral\n  actions must always be stored in DB. The concept of an Action\n  Provider allows moving away from that limitation. A particular\n  implementation of the ActionProvider interface can store action\n  definitions in any suitable way, even fetching them using\n  various transport protocols like AMQP, HTTP, TCP, or anything\n  else. An action provider may also generate action definitions\n  dynamically, like creating wrappers around a set of operating\n  system commands. But for the rest of the system it won\u0027t matter\n  what happens inside action providers. All details will be\n  hidden behind a unified interface.\n* Added ActionDescriptor interface and its convenience base\n  abstract implementation. ActionDescriptor is an entity\n  representing an action before it\u0027s instantiated. It carries\n  the most important meta information about an action like name,\n  description, input parameters etc. It is also responsible for\n  validating action input parameters and instantiating a real\n  action.\n* Added PythonActionDescriptor which represents a regular action\n  written as a Python class.\n* Added CompositeActionProvider that delegates calls find() and\n  find_all() to a collection of other action providers.\n* Minor style changes.\n\nPartially implements: bp/mistral-action-providers\n\nChange-Id: Ic9108c9293731b3576081c75f2786e1156ba0ccd\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/mistral-lib/commit/67967fc6ad339f528803c1355fc07846b23d7916"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/mistral-lib/commit/67967fc6ad339f528803c1355fc07846b23d7916"}]},"branch":"refs/heads/master"},"a8e73ecf6fa6a4a813e75142a1888cf4a6043523":{"kind":"REWORK","_number":4,"created":"2020-08-20 04:31:23.000000000","uploader":{"_account_id":8731,"name":"Renat Akhmerov","email":"renat.akhmerov@gmail.com","username":"rakhmerov"},"ref":"refs/changes/21/746021/4","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/mistral-lib","ref":"refs/changes/21/746021/4","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/mistral-lib refs/changes/21/746021/4 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/mistral-lib refs/changes/21/746021/4 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/mistral-lib refs/changes/21/746021/4 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/mistral-lib refs/changes/21/746021/4"}}},"commit":{"parents":[{"commit":"301c17e7eabeb0d60b2216cd4e1919b095a5d410","subject":"Merge \"drop mock from lower-constraints\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/mistral-lib/commit/301c17e7eabeb0d60b2216cd4e1919b095a5d410"}]}],"author":{"name":"Renat Akhmerov","email":"renat.akhmerov@gmail.com","date":"2020-07-20 05:19:01.000000000","tz":420},"committer":{"name":"Renat Akhmerov","email":"renat.akhmerov@gmail.com","date":"2020-08-20 04:31:02.000000000","tz":420},"subject":"Add main entities related to action providers","message":"Add main entities related to action providers\n\n* This patch adds the base infrastructure for the new concept\n  that we call Action Providers. It will allow to refactor\n  Mistral in a way that all action management will be encapsulated\n  with action providers. For example, Mistral Engine needs to\n  schedule actions while processing a workflow. Now it has to\n  access DB itself to find an action definition (meta info about\n  what this action is, like python class, input params etc.),\n  then prepare input parameters, validate parameters and send a\n  message to an executor to run it. In many other places, Mistral\n  also directly access DB to fetch an action definition. It\u0027s\n  not flexible because we assume that definitions of Mistral\n  actions must always be stored in DB. The concept of an Action\n  Provider allows moving away from that limitation. A particular\n  implementation of the ActionProvider interface can store action\n  definitions in any suitable way, even fetching them using\n  various transport protocols like AMQP, HTTP, TCP, or anything\n  else. An action provider may also generate action definitions\n  dynamically, like creating wrappers around a set of operating\n  system commands. But for the rest of the system it won\u0027t matter\n  what happens inside action providers. All details will be\n  hidden behind a unified interface.\n* Added ActionDescriptor interface and its convenience base\n  abstract implementation. ActionDescriptor is an entity\n  representing an action before it\u0027s instantiated. It carries\n  the most important meta information about an action like name,\n  description, input parameters etc. It is also responsible for\n  validating action input parameters and instantiating a real\n  action.\n* Added PythonActionDescriptor which represents a regular action\n  written as a Python class.\n* Added CompositeActionProvider that delegates calls find() and\n  find_all() to a collection of other action providers.\n* Minor style changes.\n\nPartially implements: bp/mistral-action-providers\n\nChange-Id: Ic9108c9293731b3576081c75f2786e1156ba0ccd\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/mistral-lib/commit/a8e73ecf6fa6a4a813e75142a1888cf4a6043523"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/mistral-lib/commit/a8e73ecf6fa6a4a813e75142a1888cf4a6043523"}]},"branch":"refs/heads/master"},"b322c71df892ba3e82f45b17dd6cea9c9d96ddf6":{"kind":"REWORK","_number":5,"created":"2020-08-25 04:54:46.000000000","uploader":{"_account_id":8731,"name":"Renat Akhmerov","email":"renat.akhmerov@gmail.com","username":"rakhmerov"},"ref":"refs/changes/21/746021/5","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/mistral-lib","ref":"refs/changes/21/746021/5","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/mistral-lib refs/changes/21/746021/5 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/mistral-lib refs/changes/21/746021/5 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/mistral-lib refs/changes/21/746021/5 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/mistral-lib refs/changes/21/746021/5"}}},"commit":{"parents":[{"commit":"301c17e7eabeb0d60b2216cd4e1919b095a5d410","subject":"Merge \"drop mock from lower-constraints\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/mistral-lib/commit/301c17e7eabeb0d60b2216cd4e1919b095a5d410"}]}],"author":{"name":"Renat Akhmerov","email":"renat.akhmerov@gmail.com","date":"2020-07-20 05:19:01.000000000","tz":420},"committer":{"name":"Renat Akhmerov","email":"renat.akhmerov@gmail.com","date":"2020-08-25 04:54:31.000000000","tz":420},"subject":"Add main entities related to action providers","message":"Add main entities related to action providers\n\n* This patch adds the base infrastructure for the new concept\n  that we call Action Providers. It will allow to refactor\n  Mistral in a way that all action management will be encapsulated\n  with action providers. For example, Mistral Engine needs to\n  schedule actions while processing a workflow. Now it has to\n  access DB itself to find an action definition (meta info about\n  what this action is, like python class, input params etc.),\n  then prepare input parameters, validate parameters and send a\n  message to an executor to run it. In many other places, Mistral\n  also directly access DB to fetch an action definition. It\u0027s\n  not flexible because we assume that definitions of Mistral\n  actions must always be stored in DB. The concept of an Action\n  Provider allows moving away from that limitation. A particular\n  implementation of the ActionProvider interface can store action\n  definitions in any suitable way, even fetching them using\n  various transport protocols like AMQP, HTTP, TCP, or anything\n  else. An action provider may also generate action definitions\n  dynamically, like creating wrappers around a set of operating\n  system commands. But for the rest of the system it won\u0027t matter\n  what happens inside action providers. All details will be\n  hidden behind a unified interface.\n* Added ActionDescriptor interface and its convenience base\n  abstract implementation. ActionDescriptor is an entity\n  representing an action before it\u0027s instantiated. It carries\n  the most important meta information about an action like name,\n  description, input parameters etc. It is also responsible for\n  validating action input parameters and instantiating a real\n  action.\n* Added PythonActionDescriptor which represents a regular action\n  written as a Python class.\n* Added CompositeActionProvider that delegates calls find() and\n  find_all() to a collection of other action providers.\n* Minor style changes.\n\nPartially implements: bp/mistral-action-providers\n\nChange-Id: Ic9108c9293731b3576081c75f2786e1156ba0ccd\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/mistral-lib/commit/b322c71df892ba3e82f45b17dd6cea9c9d96ddf6"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/mistral-lib/commit/b322c71df892ba3e82f45b17dd6cea9c9d96ddf6"}]},"branch":"refs/heads/master"},"3f31e97de37fcad46ba7b31352175cca16b1712f":{"kind":"REWORK","_number":6,"created":"2020-08-25 05:09:55.000000000","uploader":{"_account_id":8731,"name":"Renat Akhmerov","email":"renat.akhmerov@gmail.com","username":"rakhmerov"},"ref":"refs/changes/21/746021/6","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/mistral-lib","ref":"refs/changes/21/746021/6","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/mistral-lib refs/changes/21/746021/6 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/mistral-lib refs/changes/21/746021/6 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/mistral-lib refs/changes/21/746021/6 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/mistral-lib refs/changes/21/746021/6"}}},"commit":{"parents":[{"commit":"301c17e7eabeb0d60b2216cd4e1919b095a5d410","subject":"Merge \"drop mock from lower-constraints\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/mistral-lib/commit/301c17e7eabeb0d60b2216cd4e1919b095a5d410"}]}],"author":{"name":"Renat Akhmerov","email":"renat.akhmerov@gmail.com","date":"2020-07-20 05:19:01.000000000","tz":420},"committer":{"name":"Renat Akhmerov","email":"renat.akhmerov@gmail.com","date":"2020-08-25 05:09:40.000000000","tz":420},"subject":"Add main entities related to action providers","message":"Add main entities related to action providers\n\n* This patch adds the base infrastructure for the new concept\n  that we call Action Providers. It will allow to refactor\n  Mistral in a way that all action management will be encapsulated\n  with action providers. For example, Mistral Engine needs to\n  schedule actions while processing a workflow. Now it has to\n  access DB itself to find an action definition (meta info about\n  what this action is, like python class, input params etc.),\n  then prepare input parameters, validate parameters and send a\n  message to an executor to run it. In many other places, Mistral\n  also directly access DB to fetch an action definition. It\u0027s\n  not flexible because we assume that definitions of Mistral\n  actions must always be stored in DB. The concept of an Action\n  Provider allows moving away from that limitation. A particular\n  implementation of the ActionProvider interface can store action\n  definitions in any suitable way, even fetching them using\n  various transport protocols like AMQP, HTTP, TCP, or anything\n  else. An action provider may also generate action definitions\n  dynamically, like creating wrappers around a set of operating\n  system commands. But for the rest of the system it won\u0027t matter\n  what happens inside action providers. All details will be\n  hidden behind a unified interface.\n* Added ActionDescriptor interface and its convenience base\n  abstract implementation. ActionDescriptor is an entity\n  representing an action before it\u0027s instantiated. It carries\n  the most important meta information about an action like name,\n  description, input parameters etc. It is also responsible for\n  validating action input parameters and instantiating a real\n  action.\n* Added PythonActionDescriptor which represents a regular action\n  written as a Python class.\n* Added CompositeActionProvider that delegates calls find() and\n  find_all() to a collection of other action providers.\n* Minor style changes.\n\nPartially implements: bp/mistral-action-providers\n\nChange-Id: Ic9108c9293731b3576081c75f2786e1156ba0ccd\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/mistral-lib/commit/3f31e97de37fcad46ba7b31352175cca16b1712f"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/mistral-lib/commit/3f31e97de37fcad46ba7b31352175cca16b1712f"}]},"branch":"refs/heads/master"},"b974ab9aeb289001cc8d9dc00491f1e03d204ce2":{"kind":"REWORK","_number":7,"created":"2020-08-26 08:30:21.000000000","uploader":{"_account_id":8731,"name":"Renat Akhmerov","email":"renat.akhmerov@gmail.com","username":"rakhmerov"},"ref":"refs/changes/21/746021/7","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/mistral-lib","ref":"refs/changes/21/746021/7","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/mistral-lib refs/changes/21/746021/7 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/mistral-lib refs/changes/21/746021/7 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/mistral-lib refs/changes/21/746021/7 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/mistral-lib refs/changes/21/746021/7"}}},"commit":{"parents":[{"commit":"301c17e7eabeb0d60b2216cd4e1919b095a5d410","subject":"Merge \"drop mock from lower-constraints\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/mistral-lib/commit/301c17e7eabeb0d60b2216cd4e1919b095a5d410"}]}],"author":{"name":"Renat Akhmerov","email":"renat.akhmerov@gmail.com","date":"2020-07-20 05:19:01.000000000","tz":420},"committer":{"name":"Renat Akhmerov","email":"renat.akhmerov@gmail.com","date":"2020-08-26 08:30:07.000000000","tz":420},"subject":"Add main entities related to action providers","message":"Add main entities related to action providers\n\n* This patch adds the base infrastructure for the new concept\n  that we call Action Providers. It will allow to refactor\n  Mistral in a way that all action management will be encapsulated\n  with action providers. For example, Mistral Engine needs to\n  schedule actions while processing a workflow. Now it has to\n  access DB itself to find an action definition (meta info about\n  what this action is, like python class, input params etc.),\n  then prepare input parameters, validate parameters and send a\n  message to an executor to run it. In many other places, Mistral\n  also directly access DB to fetch an action definition. It\u0027s\n  not flexible because we assume that definitions of Mistral\n  actions must always be stored in DB. The concept of an Action\n  Provider allows moving away from that limitation. A particular\n  implementation of the ActionProvider interface can store action\n  definitions in any suitable way, even fetching them using\n  various transport protocols like AMQP, HTTP, TCP, or anything\n  else. An action provider may also generate action definitions\n  dynamically, like creating wrappers around a set of operating\n  system commands. But for the rest of the system it won\u0027t matter\n  what happens inside action providers. All details will be\n  hidden behind a unified interface.\n* Added ActionDescriptor interface and its convenience base\n  abstract implementation. ActionDescriptor is an entity\n  representing an action before it\u0027s instantiated. It carries\n  the most important meta information about an action like name,\n  description, input parameters etc. It is also responsible for\n  validating action input parameters and instantiating a real\n  action.\n* Added PythonActionDescriptor which represents a regular action\n  written as a Python class.\n* Added CompositeActionProvider that delegates calls find() and\n  find_all() to a collection of other action providers.\n* Minor style changes.\n\nPartially implements: bp/mistral-action-providers\n\nChange-Id: Ic9108c9293731b3576081c75f2786e1156ba0ccd\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/mistral-lib/commit/b974ab9aeb289001cc8d9dc00491f1e03d204ce2"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/mistral-lib/commit/b974ab9aeb289001cc8d9dc00491f1e03d204ce2"}]},"branch":"refs/heads/master"},"f81d7edca696dea5e0f7a570f5d34d974c5a4c6b":{"kind":"REWORK","_number":8,"created":"2020-08-26 09:55:52.000000000","uploader":{"_account_id":8731,"name":"Renat Akhmerov","email":"renat.akhmerov@gmail.com","username":"rakhmerov"},"ref":"refs/changes/21/746021/8","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/mistral-lib","ref":"refs/changes/21/746021/8","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/mistral-lib refs/changes/21/746021/8 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/mistral-lib refs/changes/21/746021/8 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/mistral-lib refs/changes/21/746021/8 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/mistral-lib refs/changes/21/746021/8"}}},"commit":{"parents":[{"commit":"301c17e7eabeb0d60b2216cd4e1919b095a5d410","subject":"Merge \"drop mock from lower-constraints\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/mistral-lib/commit/301c17e7eabeb0d60b2216cd4e1919b095a5d410"}]}],"author":{"name":"Renat Akhmerov","email":"renat.akhmerov@gmail.com","date":"2020-07-20 05:19:01.000000000","tz":420},"committer":{"name":"Renat Akhmerov","email":"renat.akhmerov@gmail.com","date":"2020-08-26 09:55:18.000000000","tz":420},"subject":"Add main entities related to action providers","message":"Add main entities related to action providers\n\n* This patch adds the base infrastructure for the new concept\n  that we call Action Providers. It will allow to refactor\n  Mistral in a way that all action management will be encapsulated\n  with action providers. For example, Mistral Engine needs to\n  schedule actions while processing a workflow. Now it has to\n  access DB itself to find an action definition (meta info about\n  what this action is, like python class, input params etc.),\n  then prepare input parameters, validate parameters and send a\n  message to an executor to run it. In many other places, Mistral\n  also directly access DB to fetch an action definition. It\u0027s\n  not flexible because we assume that definitions of Mistral\n  actions must always be stored in DB. The concept of an Action\n  Provider allows moving away from that limitation. A particular\n  implementation of the ActionProvider interface can store action\n  definitions in any suitable way, even fetching them using\n  various transport protocols like AMQP, HTTP, TCP, or anything\n  else. An action provider may also generate action definitions\n  dynamically, like creating wrappers around a set of operating\n  system commands. But for the rest of the system it won\u0027t matter\n  what happens inside action providers. All details will be\n  hidden behind a unified interface.\n* Added ActionDescriptor interface and its convenience base\n  abstract implementation. ActionDescriptor is an entity\n  representing an action before it\u0027s instantiated. It carries\n  the most important meta information about an action like name,\n  description, input parameters etc. It is also responsible for\n  validating action input parameters and instantiating a real\n  action.\n* Added PythonActionDescriptor which represents a regular action\n  written as a Python class.\n* Added CompositeActionProvider that delegates calls find() and\n  find_all() to a collection of other action providers.\n* Minor style changes.\n\nPartially implements: bp/mistral-action-providers\n\nChange-Id: Ic9108c9293731b3576081c75f2786e1156ba0ccd\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/mistral-lib/commit/f81d7edca696dea5e0f7a570f5d34d974c5a4c6b"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/mistral-lib/commit/f81d7edca696dea5e0f7a570f5d34d974c5a4c6b"}]},"branch":"refs/heads/master"},"41eae6f2747ce7f71ac0c3fad09ada6d15620e4e":{"kind":"REWORK","_number":9,"created":"2020-08-28 09:02:08.000000000","uploader":{"_account_id":8731,"name":"Renat Akhmerov","email":"renat.akhmerov@gmail.com","username":"rakhmerov"},"ref":"refs/changes/21/746021/9","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/mistral-lib","ref":"refs/changes/21/746021/9","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/mistral-lib refs/changes/21/746021/9 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/mistral-lib refs/changes/21/746021/9 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/mistral-lib refs/changes/21/746021/9 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/mistral-lib refs/changes/21/746021/9"}}},"commit":{"parents":[{"commit":"301c17e7eabeb0d60b2216cd4e1919b095a5d410","subject":"Merge \"drop mock from lower-constraints\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/mistral-lib/commit/301c17e7eabeb0d60b2216cd4e1919b095a5d410"}]}],"author":{"name":"Renat Akhmerov","email":"renat.akhmerov@gmail.com","date":"2020-07-20 05:19:01.000000000","tz":420},"committer":{"name":"Renat Akhmerov","email":"renat.akhmerov@gmail.com","date":"2020-08-28 09:01:56.000000000","tz":420},"subject":"Add main entities related to action providers","message":"Add main entities related to action providers\n\n* This patch adds the base infrastructure for the new concept\n  that we call Action Providers. It will allow to refactor\n  Mistral in a way that all action management will be encapsulated\n  with action providers. For example, Mistral Engine needs to\n  schedule actions while processing a workflow. Now it has to\n  access DB itself to find an action definition (meta info about\n  what this action is, like python class, input params etc.),\n  then prepare input parameters, validate parameters and send a\n  message to an executor to run it. In many other places, Mistral\n  also directly access DB to fetch an action definition. It\u0027s\n  not flexible because we assume that definitions of Mistral\n  actions must always be stored in DB. The concept of an Action\n  Provider allows moving away from that limitation. A particular\n  implementation of the ActionProvider interface can store action\n  definitions in any suitable way, even fetching them using\n  various transport protocols like AMQP, HTTP, TCP, or anything\n  else. An action provider may also generate action definitions\n  dynamically, like creating wrappers around a set of operating\n  system commands. But for the rest of the system it won\u0027t matter\n  what happens inside action providers. All details will be\n  hidden behind a unified interface.\n* Added ActionDescriptor interface and its convenience base\n  abstract implementation. ActionDescriptor is an entity\n  representing an action before it\u0027s instantiated. It carries\n  the most important meta information about an action like name,\n  description, input parameters etc. It is also responsible for\n  validating action input parameters and instantiating a real\n  action.\n* Added PythonActionDescriptor which represents a regular action\n  written as a Python class.\n* Added CompositeActionProvider that delegates calls find() and\n  find_all() to a collection of other action providers.\n* Minor style changes.\n\nPartially implements: bp/mistral-action-providers\n\nChange-Id: Ic9108c9293731b3576081c75f2786e1156ba0ccd\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/mistral-lib/commit/41eae6f2747ce7f71ac0c3fad09ada6d15620e4e"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/mistral-lib/commit/41eae6f2747ce7f71ac0c3fad09ada6d15620e4e"}]},"branch":"refs/heads/master"},"fc9523b64fb1bd1e2e8d914c2e0f2a45df4948da":{"kind":"REWORK","_number":10,"created":"2020-09-01 07:33:16.000000000","uploader":{"_account_id":8731,"name":"Renat Akhmerov","email":"renat.akhmerov@gmail.com","username":"rakhmerov"},"ref":"refs/changes/21/746021/10","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/mistral-lib","ref":"refs/changes/21/746021/10","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/mistral-lib refs/changes/21/746021/10 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/mistral-lib refs/changes/21/746021/10 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/mistral-lib refs/changes/21/746021/10 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/mistral-lib refs/changes/21/746021/10"}}},"commit":{"parents":[{"commit":"301c17e7eabeb0d60b2216cd4e1919b095a5d410","subject":"Merge \"drop mock from lower-constraints\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/mistral-lib/commit/301c17e7eabeb0d60b2216cd4e1919b095a5d410"}]}],"author":{"name":"Renat Akhmerov","email":"renat.akhmerov@gmail.com","date":"2020-07-20 05:19:01.000000000","tz":420},"committer":{"name":"Renat Akhmerov","email":"renat.akhmerov@gmail.com","date":"2020-09-01 07:33:04.000000000","tz":420},"subject":"Add main entities related to action providers","message":"Add main entities related to action providers\n\n* This patch adds the base infrastructure for the new concept\n  that we call Action Providers. It will allow to refactor\n  Mistral in a way that all action management will be encapsulated\n  with action providers. For example, Mistral Engine needs to\n  schedule actions while processing a workflow. Now it has to\n  access DB itself to find an action definition (meta info about\n  what this action is, like python class, input params etc.),\n  then prepare input parameters, validate parameters and send a\n  message to an executor to run it. In many other places, Mistral\n  also directly access DB to fetch an action definition. It\u0027s\n  not flexible because we assume that definitions of Mistral\n  actions must always be stored in DB. The concept of an Action\n  Provider allows moving away from that limitation. A particular\n  implementation of the ActionProvider interface can store action\n  definitions in any suitable way, even fetching them using\n  various transport protocols like AMQP, HTTP, TCP, or anything\n  else. An action provider may also generate action definitions\n  dynamically, like creating wrappers around a set of operating\n  system commands. But for the rest of the system it won\u0027t matter\n  what happens inside action providers. All details will be\n  hidden behind a unified interface.\n* Added ActionDescriptor interface and its convenience base\n  abstract implementation. ActionDescriptor is an entity\n  representing an action before it\u0027s instantiated. It carries\n  the most important meta information about an action like name,\n  description, input parameters etc. It is also responsible for\n  validating action input parameters and instantiating a real\n  action.\n* Added PythonActionDescriptor which represents a regular action\n  written as a Python class.\n* Added CompositeActionProvider that delegates calls find() and\n  find_all() to a collection of other action providers.\n* Minor style changes.\n\nPartially implements: bp/mistral-action-providers\n\nChange-Id: Ic9108c9293731b3576081c75f2786e1156ba0ccd\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/mistral-lib/commit/fc9523b64fb1bd1e2e8d914c2e0f2a45df4948da"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/mistral-lib/commit/fc9523b64fb1bd1e2e8d914c2e0f2a45df4948da"}]},"branch":"refs/heads/master"},"653c923a3ef2b673fdfa2e3a0a9f5e3cdfea151b":{"kind":"REWORK","_number":11,"created":"2020-09-01 11:47:40.000000000","uploader":{"_account_id":8731,"name":"Renat Akhmerov","email":"renat.akhmerov@gmail.com","username":"rakhmerov"},"ref":"refs/changes/21/746021/11","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/mistral-lib","ref":"refs/changes/21/746021/11","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/mistral-lib refs/changes/21/746021/11 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/mistral-lib refs/changes/21/746021/11 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/mistral-lib refs/changes/21/746021/11 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/mistral-lib refs/changes/21/746021/11"}}},"commit":{"parents":[{"commit":"301c17e7eabeb0d60b2216cd4e1919b095a5d410","subject":"Merge \"drop mock from lower-constraints\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/mistral-lib/commit/301c17e7eabeb0d60b2216cd4e1919b095a5d410"}]}],"author":{"name":"Renat Akhmerov","email":"renat.akhmerov@gmail.com","date":"2020-07-20 05:19:01.000000000","tz":420},"committer":{"name":"Renat Akhmerov","email":"renat.akhmerov@gmail.com","date":"2020-09-01 11:47:27.000000000","tz":420},"subject":"Add main entities related to action providers","message":"Add main entities related to action providers\n\n* This patch adds the base infrastructure for the new concept\n  that we call Action Providers. It will allow to refactor\n  Mistral in a way that all action management will be encapsulated\n  with action providers. For example, Mistral Engine needs to\n  schedule actions while processing a workflow. Now it has to\n  access DB itself to find an action definition (meta info about\n  what this action is, like python class, input params etc.),\n  then prepare input parameters, validate parameters and send a\n  message to an executor to run it. In many other places, Mistral\n  also directly access DB to fetch an action definition. It\u0027s\n  not flexible because we assume that definitions of Mistral\n  actions must always be stored in DB. The concept of an Action\n  Provider allows moving away from that limitation. A particular\n  implementation of the ActionProvider interface can store action\n  definitions in any suitable way, even fetching them using\n  various transport protocols like AMQP, HTTP, TCP, or anything\n  else. An action provider may also generate action definitions\n  dynamically, like creating wrappers around a set of operating\n  system commands. But for the rest of the system it won\u0027t matter\n  what happens inside action providers. All details will be\n  hidden behind a unified interface.\n* Added ActionDescriptor interface and its convenience base\n  abstract implementation. ActionDescriptor is an entity\n  representing an action before it\u0027s instantiated. It carries\n  the most important meta information about an action like name,\n  description, input parameters etc. It is also responsible for\n  validating action input parameters and instantiating a real\n  action.\n* Added PythonActionDescriptor which represents a regular action\n  written as a Python class.\n* Added CompositeActionProvider that delegates calls find() and\n  find_all() to a collection of other action providers.\n* Minor style changes.\n\nPartially implements: bp/mistral-action-providers\n\nChange-Id: Ic9108c9293731b3576081c75f2786e1156ba0ccd\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/mistral-lib/commit/653c923a3ef2b673fdfa2e3a0a9f5e3cdfea151b"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/mistral-lib/commit/653c923a3ef2b673fdfa2e3a0a9f5e3cdfea151b"}]},"branch":"refs/heads/master"},"6dd43962294c097845e14be46a19ebbb464ccb46":{"kind":"REWORK","_number":12,"created":"2020-09-03 09:20:22.000000000","uploader":{"_account_id":8731,"name":"Renat Akhmerov","email":"renat.akhmerov@gmail.com","username":"rakhmerov"},"ref":"refs/changes/21/746021/12","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/mistral-lib","ref":"refs/changes/21/746021/12","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/mistral-lib refs/changes/21/746021/12 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/mistral-lib refs/changes/21/746021/12 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/mistral-lib refs/changes/21/746021/12 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/mistral-lib refs/changes/21/746021/12"}}},"commit":{"parents":[{"commit":"301c17e7eabeb0d60b2216cd4e1919b095a5d410","subject":"Merge \"drop mock from lower-constraints\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/mistral-lib/commit/301c17e7eabeb0d60b2216cd4e1919b095a5d410"}]}],"author":{"name":"Renat Akhmerov","email":"renat.akhmerov@gmail.com","date":"2020-07-20 05:19:01.000000000","tz":420},"committer":{"name":"Renat Akhmerov","email":"renat.akhmerov@gmail.com","date":"2020-09-03 09:20:09.000000000","tz":420},"subject":"Add main entities related to action providers","message":"Add main entities related to action providers\n\n* This patch adds the base infrastructure for the new concept\n  that we call Action Providers. It will allow to refactor\n  Mistral in a way that all action management will be encapsulated\n  with action providers. For example, Mistral Engine needs to\n  schedule actions while processing a workflow. Now it has to\n  access DB itself to find an action definition (meta info about\n  what this action is, like python class, input params etc.),\n  then prepare input parameters, validate parameters and send a\n  message to an executor to run it. In many other places, Mistral\n  also directly access DB to fetch an action definition. It\u0027s\n  not flexible because we assume that definitions of Mistral\n  actions must always be stored in DB. The concept of an Action\n  Provider allows moving away from that limitation. A particular\n  implementation of the ActionProvider interface can store action\n  definitions in any suitable way, even fetching them using\n  various transport protocols like AMQP, HTTP, TCP, or anything\n  else. An action provider may also generate action definitions\n  dynamically, like creating wrappers around a set of operating\n  system commands. But for the rest of the system it won\u0027t matter\n  what happens inside action providers. All details will be\n  hidden behind a unified interface.\n* Added ActionDescriptor interface and its convenience base\n  abstract implementation. ActionDescriptor is an entity\n  representing an action before it\u0027s instantiated. It carries\n  the most important meta information about an action like name,\n  description, input parameters etc. It is also responsible for\n  validating action input parameters and instantiating a real\n  action.\n* Added PythonActionDescriptor which represents a regular action\n  written as a Python class.\n* Added CompositeActionProvider that delegates calls find() and\n  find_all() to a collection of other action providers.\n* Minor style changes.\n\nPartially implements: bp/mistral-action-providers\n\nChange-Id: Ic9108c9293731b3576081c75f2786e1156ba0ccd\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/mistral-lib/commit/6dd43962294c097845e14be46a19ebbb464ccb46"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/mistral-lib/commit/6dd43962294c097845e14be46a19ebbb464ccb46"}]},"branch":"refs/heads/master"},"6340a5d35e465a218e0b4dc2aa1f4e7b5ee27697":{"kind":"REWORK","_number":13,"created":"2020-09-03 09:35:03.000000000","uploader":{"_account_id":8731,"name":"Renat Akhmerov","email":"renat.akhmerov@gmail.com","username":"rakhmerov"},"ref":"refs/changes/21/746021/13","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/mistral-lib","ref":"refs/changes/21/746021/13","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/mistral-lib refs/changes/21/746021/13 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/mistral-lib refs/changes/21/746021/13 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/mistral-lib refs/changes/21/746021/13 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/mistral-lib refs/changes/21/746021/13"}}},"commit":{"parents":[{"commit":"301c17e7eabeb0d60b2216cd4e1919b095a5d410","subject":"Merge \"drop mock from lower-constraints\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/mistral-lib/commit/301c17e7eabeb0d60b2216cd4e1919b095a5d410"}]}],"author":{"name":"Renat Akhmerov","email":"renat.akhmerov@gmail.com","date":"2020-07-20 05:19:01.000000000","tz":420},"committer":{"name":"Renat Akhmerov","email":"renat.akhmerov@gmail.com","date":"2020-09-03 09:34:52.000000000","tz":420},"subject":"Add main entities related to action providers","message":"Add main entities related to action providers\n\n* This patch adds the base infrastructure for the new concept\n  that we call Action Providers. It will allow to refactor\n  Mistral in a way that all action management will be encapsulated\n  with action providers. For example, Mistral Engine needs to\n  schedule actions while processing a workflow. Now it has to\n  access DB itself to find an action definition (meta info about\n  what this action is, like python class, input params etc.),\n  then prepare input parameters, validate parameters and send a\n  message to an executor to run it. In many other places, Mistral\n  also directly access DB to fetch an action definition. It\u0027s\n  not flexible because we assume that definitions of Mistral\n  actions must always be stored in DB. The concept of an Action\n  Provider allows moving away from that limitation. A particular\n  implementation of the ActionProvider interface can store action\n  definitions in any suitable way, even fetching them using\n  various transport protocols like AMQP, HTTP, TCP, or anything\n  else. An action provider may also generate action definitions\n  dynamically, like creating wrappers around a set of operating\n  system commands. But for the rest of the system it won\u0027t matter\n  what happens inside action providers. All details will be\n  hidden behind a unified interface.\n* Added ActionDescriptor interface and its convenience base\n  abstract implementation. ActionDescriptor is an entity\n  representing an action before it\u0027s instantiated. It carries\n  the most important meta information about an action like name,\n  description, input parameters etc. It is also responsible for\n  validating action input parameters and instantiating a real\n  action.\n* Added PythonActionDescriptor which represents a regular action\n  written as a Python class.\n* Added CompositeActionProvider that delegates calls find() and\n  find_all() to a collection of other action providers.\n* Minor style changes.\n\nPartially implements: bp/mistral-action-providers\n\nChange-Id: Ic9108c9293731b3576081c75f2786e1156ba0ccd\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/mistral-lib/commit/6340a5d35e465a218e0b4dc2aa1f4e7b5ee27697"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/mistral-lib/commit/6340a5d35e465a218e0b4dc2aa1f4e7b5ee27697"}]},"branch":"refs/heads/master"},"9fd8924c5ce4a0788ecc3ffd6661c2efacac55a2":{"kind":"REWORK","_number":14,"created":"2020-09-03 10:15:00.000000000","uploader":{"_account_id":8731,"name":"Renat Akhmerov","email":"renat.akhmerov@gmail.com","username":"rakhmerov"},"ref":"refs/changes/21/746021/14","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/mistral-lib","ref":"refs/changes/21/746021/14","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/mistral-lib refs/changes/21/746021/14 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/mistral-lib refs/changes/21/746021/14 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/mistral-lib refs/changes/21/746021/14 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/mistral-lib refs/changes/21/746021/14"}}},"commit":{"parents":[{"commit":"301c17e7eabeb0d60b2216cd4e1919b095a5d410","subject":"Merge \"drop mock from lower-constraints\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/mistral-lib/commit/301c17e7eabeb0d60b2216cd4e1919b095a5d410"}]}],"author":{"name":"Renat Akhmerov","email":"renat.akhmerov@gmail.com","date":"2020-07-20 05:19:01.000000000","tz":420},"committer":{"name":"Renat Akhmerov","email":"renat.akhmerov@gmail.com","date":"2020-09-03 10:14:45.000000000","tz":420},"subject":"Add main entities related to action providers","message":"Add main entities related to action providers\n\n* This patch adds the base infrastructure for the new concept\n  that we call Action Providers. It will allow to refactor\n  Mistral in a way that all action management will be encapsulated\n  with action providers. For example, Mistral Engine needs to\n  schedule actions while processing a workflow. Now it has to\n  access DB itself to find an action definition (meta info about\n  what this action is, like python class, input params etc.),\n  then prepare input parameters, validate parameters and send a\n  message to an executor to run it. In many other places, Mistral\n  also directly access DB to fetch an action definition. It\u0027s\n  not flexible because we assume that definitions of Mistral\n  actions must always be stored in DB. The concept of an Action\n  Provider allows moving away from that limitation. A particular\n  implementation of the ActionProvider interface can store action\n  definitions in any suitable way, even fetching them using\n  various transport protocols like AMQP, HTTP, TCP, or anything\n  else. An action provider may also generate action definitions\n  dynamically, like creating wrappers around a set of operating\n  system commands. But for the rest of the system it won\u0027t matter\n  what happens inside action providers. All details will be\n  hidden behind a unified interface.\n* Added ActionDescriptor interface and its convenience base\n  abstract implementation. ActionDescriptor is an entity\n  representing an action before it\u0027s instantiated. It carries\n  the most important meta information about an action like name,\n  description, input parameters etc. It is also responsible for\n  validating action input parameters and instantiating a real\n  action.\n* Added PythonActionDescriptor which represents a regular action\n  written as a Python class.\n* Added CompositeActionProvider that delegates calls find() and\n  find_all() to a collection of other action providers.\n* Minor style changes.\n\nPartially implements: bp/mistral-action-providers\n\nChange-Id: Ic9108c9293731b3576081c75f2786e1156ba0ccd\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/mistral-lib/commit/9fd8924c5ce4a0788ecc3ffd6661c2efacac55a2"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/mistral-lib/commit/9fd8924c5ce4a0788ecc3ffd6661c2efacac55a2"}]},"branch":"refs/heads/master"},"f818f1f02cf51a3e5371c2b4240ab6ab38fa4883":{"kind":"REWORK","_number":15,"created":"2020-09-03 10:17:03.000000000","uploader":{"_account_id":8731,"name":"Renat Akhmerov","email":"renat.akhmerov@gmail.com","username":"rakhmerov"},"ref":"refs/changes/21/746021/15","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/mistral-lib","ref":"refs/changes/21/746021/15","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/mistral-lib refs/changes/21/746021/15 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/mistral-lib refs/changes/21/746021/15 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/mistral-lib refs/changes/21/746021/15 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/mistral-lib refs/changes/21/746021/15"}}},"commit":{"parents":[{"commit":"301c17e7eabeb0d60b2216cd4e1919b095a5d410","subject":"Merge \"drop mock from lower-constraints\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/mistral-lib/commit/301c17e7eabeb0d60b2216cd4e1919b095a5d410"}]}],"author":{"name":"Renat Akhmerov","email":"renat.akhmerov@gmail.com","date":"2020-07-20 05:19:01.000000000","tz":420},"committer":{"name":"Renat Akhmerov","email":"renat.akhmerov@gmail.com","date":"2020-09-03 10:16:50.000000000","tz":420},"subject":"Add main entities related to action providers","message":"Add main entities related to action providers\n\n* This patch adds the base infrastructure for the new concept\n  that we call Action Providers. It will allow to refactor\n  Mistral in a way that all action management will be encapsulated\n  with action providers. For example, Mistral Engine needs to\n  schedule actions while processing a workflow. Now it has to\n  access DB itself to find an action definition (meta info about\n  what this action is, like python class, input params etc.),\n  then prepare input parameters, validate parameters and send a\n  message to an executor to run it. In many other places, Mistral\n  also directly access DB to fetch an action definition. It\u0027s\n  not flexible because we assume that definitions of Mistral\n  actions must always be stored in DB. The concept of an Action\n  Provider allows moving away from that limitation. A particular\n  implementation of the ActionProvider interface can store action\n  definitions in any suitable way, even fetching them using\n  various transport protocols like AMQP, HTTP, TCP, or anything\n  else. An action provider may also generate action definitions\n  dynamically, like creating wrappers around a set of operating\n  system commands. But for the rest of the system it won\u0027t matter\n  what happens inside action providers. All details will be\n  hidden behind a unified interface.\n* Added ActionDescriptor interface and its convenience base\n  abstract implementation. ActionDescriptor is an entity\n  representing an action before it\u0027s instantiated. It carries\n  the most important meta information about an action like name,\n  description, input parameters etc. It is also responsible for\n  validating action input parameters and instantiating a real\n  action.\n* Added PythonActionDescriptor which represents a regular action\n  written as a Python class.\n* Added CompositeActionProvider that delegates calls find() and\n  find_all() to a collection of other action providers.\n* Minor style changes.\n\nPartially implements: bp/mistral-action-providers\n\nChange-Id: Ic9108c9293731b3576081c75f2786e1156ba0ccd\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/mistral-lib/commit/f818f1f02cf51a3e5371c2b4240ab6ab38fa4883"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/mistral-lib/commit/f818f1f02cf51a3e5371c2b4240ab6ab38fa4883"}]},"branch":"refs/heads/master"}},"requirements":[],"submit_records":[],"submit_requirements":[]}
