From 717255df67429f237f17948b2af04110d15fb3a7 Mon Sep 17 00:00:00 2001 From: Dmitry Shulyak Date: Tue, 30 Jun 2015 12:31:50 +0300 Subject: [PATCH 1/3] Add several examples and improvements to orchestration - Added example.py converted to plan description - Added error message - Plan can be printed as dot/png graph - Added TODO --- .gitignore | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/.gitignore b/.gitignore index b221e33..ffe2a79 100644 --- a/.gitignore +++ b/.gitignore @@ -17,3 +17,8 @@ rs/ solar.log x-venv/ + +celery* + +*.dot +*.png \ No newline at end of file From 04b7e0bb067227aba7b4ad386d9278ef37f19686 Mon Sep 17 00:00:00 2001 From: Dmitry Shulyak Date: Tue, 30 Jun 2015 15:45:16 +0300 Subject: [PATCH 2/3] Add celery.yml playbook to configure celery On solar-dev setup 2 workers: 1. Listens to celery,scheduler and celery,solar-dev On solar-dev1/solar-dev2 2. Listens only to celery, --- .gitignore | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.gitignore b/.gitignore index ffe2a79..ab1b0ed 100644 --- a/.gitignore +++ b/.gitignore @@ -18,7 +18,8 @@ rs/ solar.log x-venv/ -celery* +celery*.pid +celery*.log *.dot *.png \ No newline at end of file From 1caac31ffe0b06dec8d79e1844e771e97056b545 Mon Sep 17 00:00:00 2001 From: Dmitry Shulyak Date: Wed, 1 Jul 2015 09:29:50 +0300 Subject: [PATCH 3/3] Remove unnecessary code for now with some cleanup --- examples/orch/example_py.yml | 143 ++++++++++++++++++++++++++++++ examples/orch/for_stop.yaml | 11 +++ examples/orch/multi.yaml | 63 +++++++++++++ examples/orch/simple.yaml | 10 +++ examples/orch/test_errors.yml | 34 +++++++ examples/orch/upd_test_errors.yml | 34 +++++++ 6 files changed, 295 insertions(+) create mode 100644 examples/orch/example_py.yml create mode 100644 examples/orch/for_stop.yaml create mode 100644 examples/orch/multi.yaml create mode 100644 examples/orch/simple.yaml create mode 100644 examples/orch/test_errors.yml create mode 100644 examples/orch/upd_test_errors.yml diff --git a/examples/orch/example_py.yml b/examples/orch/example_py.yml new file mode 100644 index 0000000..831ded7 --- /dev/null +++ b/examples/orch/example_py.yml @@ -0,0 +1,143 @@ +name: example_py +tasks: + - uid: rabbitmq_service1 + parameters: + type: solar_resource + args: [rabbitmq_service1, run] + - uid: openstack_vhost + parameters: + type: solar_resource + args: [openstack_vhost, run] + after: [rabbitmq_service1] + - uid: openstack_rabbitmq_user + parameters: + type: solar_resource + args: [openstack_rabbitmq_user, run] + after: [rabbitmq_service1] + + - uid: mariadb_service1 + parameters: + type: solar_resource + args: [mariadb_service1, run] + - uid: keystone_db + parameters: + type: solar_resource + args: [keystone_db, run] + after: [mariadb_service1] + - uid: keystone_db_user + parameters: + type: solar_resource + args: [keystone_db_user, run] + after: [keystone_db] + + - uid: keystone_config1 + parameters: + type: solar_resource + args: [keystone_config1, run] + - uid: keystone_config2 + parameters: + type: solar_resource + args: [keystone_config2, run] + - uid: keystone_service1 + parameters: + type: solar_resource + args: [keystone_service1, run] + after: [keystone_config1, keystone_db_user] + + - uid: keystone_service2 + parameters: + type: solar_resource + args: [keystone_service2, run] + after: [keystone_config2, keystone_db_user] + + - uid: haproxy_config + parameters: + type: solar_resource + args: [haproxy_config, run] + after: [keystone_service1, keystone_service2] + - uid: haproxy_service + parameters: + type: solar_resource + args: [haproxy_service, run] + after: [haproxy_config] + + - uid: admin_tenant + parameters: + type: solar_resource + args: [admin_tenant, run] + after: [haproxy_service] + - uid: admin_role + parameters: + type: solar_resource + args: [admin_user, run] + after: [admin_tenant] + - uid: admin_user + parameters: + type: solar_resource + args: [admin_user, run] + after: [admin_role] + - uid: keystone_service_endpoint + parameters: + type: solar_resource + args: [keystone_service_endpoint, run] + after: [admin_user] + + - uid: services_tenant + parameters: + type: solar_resource + args: [glance_keystone_tenant, run] + after: [keystone_service_endpoint] + + - uid: glance_keystone_user + parameters: + type: solar_resource + args: [glance_keystone_user, run] + after: [keystone_service_endpoint] + - uid: glance_keystone_role + parameters: + type: solar_resource + args: [glance_keystone_role, run] + after: [keystone_service_endpoint] + + - uid: glance_db + parameters: + type: solar_resource + args: [glance_db, run] + after: [mariadb_service1] + + - uid: glance_db_user + parameters: + type: solar_resource + args: [glance_db_user, run] + after: [glance_db] + + - uid: glance_config + parameters: + type: solar_resource + args: [glance_config, run] + - uid: glance_api_container + parameters: + type: solar_resource + args: [glance_api_container, run] + after: [glance_config, glance_db_user, glance_keystone_user, openstack_rabbitmq_user] + - uid: glance_registry_container + parameters: + type: solar_resource + args: [glance_registry_container, run] + after: [glance_config, glance_db_user, glance_keystone_user, openstack_rabbitmq_user] + - uid: glance_api_endpoint + parameters: + type: solar_resource + args: [glance_api_endpoint, run] + after: [glance_api_container] + + - uid: haproxy_service_update1_rem + parameters: + type: solar_resource + args: [haproxy_service, remove] + after: [glance_api_endpoint] + - uid: haproxy_service_update1_run + parameters: + type: solar_resource + args: [haproxy_service, run] + after: [haproxy_service_update1_rem] diff --git a/examples/orch/for_stop.yaml b/examples/orch/for_stop.yaml new file mode 100644 index 0000000..fe12b14 --- /dev/null +++ b/examples/orch/for_stop.yaml @@ -0,0 +1,11 @@ +name: for_stop +tasks: + - uid: sleep_some_time + parameters: + type: sleep + args: [20] + before: [sleep_again] + - uid: sleep_again + parameters: + type: sleep + args: [20] diff --git a/examples/orch/multi.yaml b/examples/orch/multi.yaml new file mode 100644 index 0000000..9c8ce99 --- /dev/null +++ b/examples/orch/multi.yaml @@ -0,0 +1,63 @@ + +name: multi +tasks: + - uid: rabbitmq_cluster1.create + parameters: + type: cmd + args: ['echo rabbitmq_cluster1.create'] + before: [amqp_cluster_configured] + + - uid: rabbitmq_cluster2.join + parameters: + type: cmd + args: ['echo rabbitmq_cluster2.join'] + after: [rabbitmq_cluster1.create] + before: [amqp_cluster_configured] + - uid: rabbitmq_cluster3.join + parameters: + type: cmd + args: ['echo rabbitmq_cluster3.join'] + after: [rabbitmq_cluster1.create] + before: [amqp_cluster_configured] + + - uid: amqp_cluster_configured + parameters: + type: fault_tolerance + args: [100] + + - uid: compute1 + parameters: + type: echo + args: [compute1] + before: [compute_ready] + after: [amqp_cluster_configured] + - uid: compute2 + parameters: + type: echo + args: [compute2] + before: [compute_ready] + after: [amqp_cluster_configured] + - uid: compute3 + parameters: + type: echo + args: [compute3] + before: [compute_ready] + after: [amqp_cluster_configured] + - uid: compute4 + parameters: + type: error + args: [compute4] + before: [compute_ready] + after: [amqp_cluster_configured] + - uid: compute5 + parameters: + type: error + args: [compute5] + before: [compute_ready] + after: [amqp_cluster_configured] + + - uid: compute_ready + parameters: + type: fault_tolerance + args: [60] + diff --git a/examples/orch/simple.yaml b/examples/orch/simple.yaml new file mode 100644 index 0000000..d643ff4 --- /dev/null +++ b/examples/orch/simple.yaml @@ -0,0 +1,10 @@ +name: simple +tasks: + - uid: echo_stuff + parameters: + type: echo + args: [10] + - uid: just_fail + parameters: + type: error + args: ['message'] diff --git a/examples/orch/test_errors.yml b/examples/orch/test_errors.yml new file mode 100644 index 0000000..fb9f331 --- /dev/null +++ b/examples/orch/test_errors.yml @@ -0,0 +1,34 @@ + +name: errors +tasks: + - uid: compute1 + parameters: + type: echo + args: [compute1] + before: [compute_ready] + - uid: compute2 + parameters: + type: echo + args: [compute2] + before: [compute_ready] + - uid: compute3 + parameters: + type: echo + args: [compute3] + before: [compute_ready] + - uid: compute4 + parameters: + type: error + args: [compute4] + before: [compute_ready] + - uid: compute5 + parameters: + type: error + args: [compute5] + before: [compute_ready] + + - uid: compute_ready + parameters: + type: fault_tolerance + args: [80] + diff --git a/examples/orch/upd_test_errors.yml b/examples/orch/upd_test_errors.yml new file mode 100644 index 0000000..35670a1 --- /dev/null +++ b/examples/orch/upd_test_errors.yml @@ -0,0 +1,34 @@ + +name: errors +tasks: + - uid: compute1 + parameters: + type: echo + args: [compute1] + before: [compute_ready] + - uid: compute2 + parameters: + type: echo + args: [compute2] + before: [compute_ready] + - uid: compute3 + parameters: + type: echo + args: [compute3] + before: [compute_ready] + - uid: compute4 + parameters: + type: echo + args: [compute4] + before: [compute_ready] + - uid: compute5 + parameters: + type: error + args: [compute5] + before: [compute_ready] + + - uid: compute_ready + parameters: + type: fault_tolerance + args: [80] +