diff --git a/ansible/README.md b/ansible/README.md index 125f89295a3baa6d76fcbfa8085b69d0fbc4d360..4600f97a9369fe832509aaaa1dce43259dbfa458 100644 --- a/ansible/README.md +++ b/ansible/README.md @@ -2,19 +2,6 @@ Old notes for LEvPRo deployment can be found in: [LEvPro Deployment Notes](https://docs.google.com/document/d/12f495FEMOi0g3bJjoZL3icZaCCr7iSjTY3jToFqA2Ns/edit#) -## Recent changes -Moving refelt config files from role to inventories - -Adding register_my_refelt to support different refelts (e.g. Ref4 on devl4, Ref5 on devl5) with different config files (from inventories) e.g. ./play-task.sh register_my_refelt devl - -Added deregister_refelts to remove registrations in Tango DB and Astor so that we can start again (but not added to site.yml) and added support to run a different .yml instead of site.yml e.g. ./play-task.sh deregsiter_refelts.yml - - -## TODO - -Get the desired inventories from ansible variables instead of loading files - - # To get going with a fresh node (Docker container): ## Run a Docker container: @@ -25,8 +12,8 @@ Obviously any changes made inside the container, e.g. software installed, will n ## Install the lmc-base-classes python modules and register TANGO devices ``` cd ~/src/lmc-base-classes/ansible -./play-task.sh install-sw ./play-task.sh generate-sw-refelt-simlib +./play-task.sh install-sw ./play-task.sh register-my-refelt local # startup can take 5 minutes! ``` @@ -34,13 +21,19 @@ Note: `register-refelt` is deprecated. ## Updating after .xmi file changes (POGO generation) ``` +cd ~/src/lmc-base-classes +./scripts/purge_xmi_tree.py cd ~/src/lmc-base-classes/ansible ./play-task.sh deregister_refelts.yml ./play-task.sh generate-sw +./play-task.sh install-sw ./play-task.sh register-my-refelt local ``` -Note: license file text may need to be updated in POGO generated files. +Notes: +- license file text may need to be updated in POGO generated files. +- The deregister_refelts.yml role removes registrations in Tango DB and Astor so that + we can start again, with nothing registered. # To get going with a fresh Ubuntu 14.04 system (not recommended!): @@ -83,9 +76,12 @@ Optional: ## Updating after .xmi file changes (POGO generation) ``` +cd ~/src/lmc-base-classes +./scripts/purge_xmi_tree.py cd ~/src/lmc-base-classes/ansible ./play-task.sh deregister_refelts.yml ./play-task.sh generate-sw +./play-task.sh install-sw ./play-task.sh register-my-refelt local ``` @@ -175,29 +171,22 @@ ansible-playbook -i hosts site.yml --limit local --tags "install-sw-skabase" ansible-playbook -i hosts site.yml --limit local --tags "install-sw-refelt" ``` - ### To regenerate POGO output -When XMI or code has been changed +When XMI has been changed ``` +cd ~/src/lmc-base-classes +./scripts/purge_xmi_tree.py cd ~/src/lmc-base-classes/ansible +./play-task.sh deregister_refelts.yml ./play-task.sh generate-sw -``` - -### To configure the RefElt TANGO facility and start its device servers -``` -./play-task.sh register-refelt -``` -or -``` -./play-task.sh register-refelt-in-tangodb -./play-task.sh register-refelt-in-astor +./play-task.sh install-sw ``` ### To configure a specific RefEltX TANGO facility and start its device servers (my_refelt) You need to add the group to lmc-base-classes/ansible/hosts e.g. ``` [devXX] -devXXlevpro +devXXlmc ``` And group vars for the group in ansible/group_vars/devXX: @@ -209,28 +198,23 @@ And group vars for the group in ansible/group_vars/devXX: id: refX ``` -and ansible/host_vars for each host in the group as appropriate, at least: -``` -ansible_ssh_host: levpro.devXXX.camlab.kat.ac.za -``` - -and ansible/host_vars/devXXlevpro for each host in the group as appropriate, at least: +and ansible/host_vars/devXXlmc for each host in the group as appropriate, at least: ``` -ansible_ssh_host: levpro.devXXX.camlab.kat.ac.za +ansible_ssh_host: lmc.devXX.domain ``` -Lastly, you need to create an inventory for devXX in ansible/inventories/devXX defining the refXXX element. +Lastly, you need to create an inventory for devXX in ansible/inventories/devXX defining the refX element. Note: this may later be templated for RefElts (as it may be a useful pattern for DSH) (If need be, deregister previous registrations with:) ``` -ansible-playbook deregister-refelts.yml +ansible-playbook deregister_refelts.yml ``` Then do ``` -ansible-playbook register-my-refelt.yml devXX +ansible-playbook register-my-refelt devXX ``` this produces the ansible command line (note the --limit): ``` @@ -275,7 +259,7 @@ To list the current task tags: ``` ./play-task.sh -kat@levpro.devXX.camlab.kat.ac.za:~/src/lmc-base-classes/ansible$ ./play-task.sh +tango-cs@95f06d131e41:~/src/lmc-base-classes/ansible$ ./play-task.sh You have to specify a roletag, and optional task-id ---------------------------<<<< ANSIBLE COMMAND LINE >>>>-------------------------------------------- @@ -298,13 +282,10 @@ playbook: site.yml play #4 (operational): refresh_sw TAGS: [] TASK TAGS: [refresh-sw, refresh-sw-lmc-base-classes] - play #5 (operational): register_refelt TAGS: [] - TASK TAGS: [register-refelt, register-refelt-in-astor, register-refelt-in-astor-ds-path, register-refelt-in-tangodb] - - play #6 (operational): register_my_refelt TAGS: [] + play #5 (operational): register_my_refelt TAGS: [] TASK TAGS: [register-my-refelt, register-myrefelt-in-astor, register-myrefelt-in-astor-ds-path, register-myrefelt-in-tangodb] - play #7 (operational): generate_sw TAGS: [] + play #6 (operational): generate_sw TAGS: [] TASK TAGS: [generate-sw, generate-sw-refelt, generate-sw-refelt-simlib, generate-sw-skabase] ``` diff --git a/ansible/group_vars/devl4 b/ansible/group_vars/dev4 similarity index 84% rename from ansible/group_vars/devl4 rename to ansible/group_vars/dev4 index 4e14756c4034512628d9d94ff409c9377b4a5e2d..f8e1e9fbfc62de3ef3dda8c215ba5280b91bdaf4 100644 --- a/ansible/group_vars/devl4 +++ b/ansible/group_vars/dev4 @@ -2,7 +2,7 @@ python_path: /usr/lib/python2.7/site-packages ## SOFTWARE BASE DIR -software_root: /home/kat/git +software_root: /home/tango-cs/src ## Element personality element_details: diff --git a/ansible/group_vars/devl5 b/ansible/group_vars/devl5 deleted file mode 100644 index 4743a014c6df0e7e58b01f0fc67e187e9fd18665..0000000000000000000000000000000000000000 --- a/ansible/group_vars/devl5 +++ /dev/null @@ -1,14 +0,0 @@ ---- -python_path: /usr/lib/python2.7/site-packages - -## SOFTWARE BASE DIR -software_root: /home/kat/src - -## Element personality -element_details: - type: refelt - name: refelt5 - id: ref5 - instance: Ref5 - -... diff --git a/ansible/host_vars/devl4levpro b/ansible/host_vars/dev4lmc similarity index 52% rename from ansible/host_vars/devl4levpro rename to ansible/host_vars/dev4lmc index 7167e111bdbde3126869c1cd1897da8af928dd81..2d4d21f6495d4ac982beca012e5672625056f95a 100644 --- a/ansible/host_vars/devl4levpro +++ b/ansible/host_vars/dev4lmc @@ -1,7 +1,7 @@ -ansible_ssh_host: levpro.devl4.camlab.kat.ac.za +ansible_ssh_host: lmc.dev4.domain special_params: - name: spec1 detail: specdet1 - name: spec2 - detail: specdet2 \ No newline at end of file + detail: specdet2 diff --git a/ansible/host_vars/devl5levpro b/ansible/host_vars/devl5levpro deleted file mode 100644 index a57c56aab191ebcbc068666a7c05b77bf5dd775d..0000000000000000000000000000000000000000 --- a/ansible/host_vars/devl5levpro +++ /dev/null @@ -1,7 +0,0 @@ -ansible_ssh_host: levpro.devl5.camlab.kat.ac.za - -special_params: - - name: spec1 - detail: specdet1 - - name: spec2 - detail: specdet2 \ No newline at end of file diff --git a/ansible/hosts b/ansible/hosts index 19cf71947b0e6b24cb39b568656642b3c674b4b9..aaa1327fd7964d84a91834c8db7140fe776641ee 100644 --- a/ansible/hosts +++ b/ansible/hosts @@ -1,18 +1,9 @@ - -[devlt] -monctl.devlt - -[devl5] -devl5levpro - -[devl4] -devl4levpro +[dev4] +dev4lmc [local] localhost ansible_connection=local [operational] -devl4levpro -devl5levpro -localhost # assume local is an operational node - +dev4lmc +localhost diff --git a/ansible/init_refelt.yml b/ansible/init_refelt.yml deleted file mode 100644 index ab0f5aff9ea81f445678cb7ee8420d6e632c6bd7..0000000000000000000000000000000000000000 --- a/ansible/init_refelt.yml +++ /dev/null @@ -1,8 +0,0 @@ ---- -# file: init_refelt.yml - -- import_playbook: deploy_tangobox.yml -- import_playbook: deploy_sw.yml -- import_playbook: generate_sw.yml -- import_playbook: install_sw.yml -- import_playbook: register_refelt.yml diff --git a/ansible/inventories/refelt/config_files/test_vars.json b/ansible/inventories/refelt/config_files/test_vars.json index df3da9ee6faf90c50f6c4314cc8ad87d47c77760..81f7e02134f72042e287e4d66b9af2dc1d2acaf7 100644 --- a/ansible/inventories/refelt/config_files/test_vars.json +++ b/ansible/inventories/refelt/config_files/test_vars.json @@ -1,40 +1,28 @@ { "queue": { "first": { - "car": "bmw", - "year": "1990", - "model": "x3", - "color": "blue" + "key1": "value11", + "key2": "value21", + "key3": "value31", + "key4": "value41" }, "second": { - "car": "bmw", - "year": "2000", - "model": "318", - "color": "red" + "key1": "value12", + "key2": "value22", + "key3": "value32", + "key4": "value42" }, "3rd": { - "car": "ref5", - "year": "2000", - "model": "ref5", - "color": "colref5" - }, - "4th": { - "car": "ref4", - "year": "2000", - "model": "ref4", - "color": "colref4" - }, - "5th": { - "car": "ref", - "year": "2000", - "model": "ref", - "color": "colref" + "key1": "value13", + "key2": "value23", + "key3": "value33", + "key4": "value43" }, "last": { - "car": "{{ my_id }}", - "year": "2000", - "model": "{{ my_name }}", - "color": "col{{my_id}}" + "key1": "{{ my_id }}", + "key2": "2000", + "key3": "{{ my_name }}", + "key4": "col{{my_id}}" } } } diff --git a/ansible/inventories/refelt4/config_files/test_vars.json b/ansible/inventories/refelt4/config_files/test_vars.json index df3da9ee6faf90c50f6c4314cc8ad87d47c77760..81f7e02134f72042e287e4d66b9af2dc1d2acaf7 100644 --- a/ansible/inventories/refelt4/config_files/test_vars.json +++ b/ansible/inventories/refelt4/config_files/test_vars.json @@ -1,40 +1,28 @@ { "queue": { "first": { - "car": "bmw", - "year": "1990", - "model": "x3", - "color": "blue" + "key1": "value11", + "key2": "value21", + "key3": "value31", + "key4": "value41" }, "second": { - "car": "bmw", - "year": "2000", - "model": "318", - "color": "red" + "key1": "value12", + "key2": "value22", + "key3": "value32", + "key4": "value42" }, "3rd": { - "car": "ref5", - "year": "2000", - "model": "ref5", - "color": "colref5" - }, - "4th": { - "car": "ref4", - "year": "2000", - "model": "ref4", - "color": "colref4" - }, - "5th": { - "car": "ref", - "year": "2000", - "model": "ref", - "color": "colref" + "key1": "value13", + "key2": "value23", + "key3": "value33", + "key4": "value43" }, "last": { - "car": "{{ my_id }}", - "year": "2000", - "model": "{{ my_name }}", - "color": "col{{my_id}}" + "key1": "{{ my_id }}", + "key2": "2000", + "key3": "{{ my_name }}", + "key4": "col{{my_id}}" } } } diff --git a/ansible/inventories/refelt5/config_files/config_db.json.j2 b/ansible/inventories/refelt5/config_files/config_db.json.j2 deleted file mode 100644 index 450395b9a634ee9c05bfa605bb7e3f79f8d98d6c..0000000000000000000000000000000000000000 --- a/ansible/inventories/refelt5/config_files/config_db.json.j2 +++ /dev/null @@ -1,402 +0,0 @@ -{ - "api_version": "v1", - "tango_servers": [ - { - "server_name": "SvrRefA", - "server_instances": [ - { - "instance_name": "1", - "device_classes": [ - { - "class_name": "RefA", - "devices": ["{{ my_id }}/a/1"] - } - ] - }, - { - "instance_name": "2", - "device_classes": [ - { - "class_name": "RefA", - "devices": ["{{ my_id }}/a/2"] - } - ] - } - ] - }, - { - "server_name": "SvrRefAchild", - "server_instances": [ - { - "instance_name": "11", - "device_classes": [ - { - "class_name": "RefAchild", - "devices": ["{{ my_id }}/achild/11"] - } - ] - }, - { - "instance_name": "12", - "device_classes": [ - { - "class_name": "RefAchild", - "devices": ["{{ my_id }}/achild/12"] - } - ] - }, - { - "instance_name": "21", - "device_classes": [ - { - "class_name": "RefAchild", - "devices": ["{{ my_id }}/achild/21"] - } - ] - }, - { - "instance_name": "22", - "device_classes": [ - { - "class_name": "RefAchild", - "devices": ["{{ my_id }}/achild/22"] - } - ] - } - ] - }, - { - "server_name": "SvrRefMaster", - "server_instances": [ - { - "instance_name": "{{ my_instance }}", - "device_classes": [ - { - "class_name": "RefMaster", - "devices": ["{{ my_id }}/elt/master"] - } - ] - } - ] - }, - { - "server_name": "SKALogger", - "server_instances": [ - { - "instance_name": "{{ my_instance }}", - "device_classes": [ - { - "class_name": "SKALogger", - "devices": ["{{ my_id }}/elt/logger"] - } - ] - }, - { - "instance_name": "Central", - "device_classes": [ - { - "class_name": "SKALogger", - "devices": ["central/logger/1"] - } - ] - } - ] - }, - { - "server_name": "SvrRefAlarmHandler", - "server_instances": [ - { - "instance_name": "{{ my_instance }}", - "device_classes": [ - { - "class_name": "RefAlarmHandler", - "devices": ["{{ my_id }}/elt/alarmhandler"] - } - ] - } - ] - }, - { - "server_name": "SvrRefTelState", - "server_instances": [ - { - "instance_name": "{{ my_instance }}", - "device_classes": [ - { - "class_name": "RefTelState", - "devices": ["{{ my_id }}/elt/telstate"] - } - ] - } - ] - }, - { - "server_name": "SvrRefSubarray", - "server_instances": [ - { - "instance_name": "1", - "device_classes": [ - { - "class_name": "RefSubarray", - "devices": ["{{ my_id }}/subarray/1"] - } - ] - }, - { - "instance_name": "2", - "device_classes": [ - { - "class_name": "RefSubarray", - "devices": ["{{ my_id }}/subarray/2"] - } - ] - }, - { - "instance_name": "3", - "device_classes": [ - { - "class_name": "RefSubarray", - "devices": ["{{ my_id }}/subarray/3"] - } - ] - }, - { - "instance_name": "4", - "device_classes": [ - { - "class_name": "RefSubarray", - "devices": ["{{ my_id }}/subarray/4"] - } - ] - } - ] - }, - { - "server_name": "SvrRefCapability", - "server_instances": [ - { - "instance_name": "1A", - "device_classes": [ - { - "class_name": "RefCapability", - "devices": ["{{ my_id }}/cap/sub1calca"] - } - ] - }, - { - "instance_name": "1B", - "device_classes": [ - { - "class_name": "RefCapability", - "devices": ["{{ my_id }}/cap/sub1calcb"] - } - ] - }, - { - "instance_name": "1C", - "device_classes": [ - { - "class_name": "RefCapability", - "devices": ["{{ my_id }}/cap/sub1procc"] - } - ] - }, - { - "instance_name": "1D", - "device_classes": [ - { - "class_name": "RefCapability", - "devices": ["{{ my_id }}/cap/sub1procd"] - } - ] - }, - { - "instance_name": "2A", - "device_classes": [ - { - "class_name": "RefCapability", - "devices": ["{{ my_id }}/cap/sub2calca"] - } - ] - }, - { - "instance_name": "2B", - "device_classes": [ - { - "class_name": "RefCapability", - "devices": ["{{ my_id }}/cap/sub2calcb"] - } - ] - }, - { - "instance_name": "2C", - "device_classes": [ - { - "class_name": "RefCapability", - "devices": ["{{ my_id }}/cap/sub2procc"] - } - ] - }, - { - "instance_name": "2D", - "device_classes": [ - { - "class_name": "RefCapability", - "devices": ["{{ my_id }}/cap/sub2procd"] - } - ] - } - ] - }, - { - "server_name": "SvrSimPdu", - "server_instances": [ - { - "instance_name": "A", - "device_classes": [ - { - "class_name": "PDU", - "devices": ["{{ my_id }}/pdu/a"] - }, - { - "class_name": "PDUSimControl", - "devices": ["sim_control/pdu/a"] - } - ] - }, - { - "instance_name": "B", - "device_classes": [ - { - "class_name": "PDU", - "devices": ["{{ my_id }}/pdu/b"] - }, - { - "class_name": "PDUSimControl", - "devices": ["sim_control/pdu/b"] - } - ] - } - ] - }, - { - "server_name": "SvrSimServer", - "server_instances": [ - { - "instance_name": "1", - "device_classes": [ - { - "class_name": "Server", - "devices": ["{{ my_id }}/server/1"] - }, - { - "class_name": "ServerSimControl", - "devices": ["sim_control/server/1"] - } - ] - }, - { - "instance_name": "2", - "device_classes": [ - { - "class_name": "Server", - "devices": ["{{ my_id }}/server/2"] - }, - { - "class_name": "ServerSimControl", - "devices": ["sim_control/server/2"] - } - ] - }, - { - "instance_name": "3", - "device_classes": [ - { - "class_name": "Server", - "devices": ["{{ my_id }}/server/3"] - }, - { - "class_name": "ServerSimControl", - "devices": ["sim_control/server/3"] - } - ] - }, - { - "instance_name": "4", - "device_classes": [ - { - "class_name": "Server", - "devices": ["{{ my_id }}/server/4"] - }, - { - "class_name": "ServerSimControl", - "devices": ["sim_control/server/4"] - } - ] - } - ] - }, - { - "server_name": "SvrSimRack", - "server_instances": [ - { - "instance_name": "A", - "device_classes": [ - { - "class_name": "Rack", - "devices": ["{{ my_id }}/rack/a"] - }, - { - "class_name": "RackSimControl", - "devices": ["sim_control/rack/a"] - } - ] - }, - { - "instance_name": "B", - "device_classes": [ - { - "class_name": "Rack", - "devices": ["{{ my_id }}/rack/b"] - }, - { - "class_name": "RackSimControl", - "devices": ["sim_control/rack/b"] - } - ] - } - ] - }, - { - "server_name": "SvrSimSwitch", - "server_instances": [ - { - "instance_name": "A", - "device_classes": [ - { - "class_name": "Switch", - "devices": ["{{ my_id }}/switch/a"] - }, - { - "class_name": "SwitchSimControl", - "devices": ["sim_control/switch/a"] - } - ] - }, - { - "instance_name": "B", - "device_classes": [ - { - "class_name": "Switch", - "devices": ["{{ my_id }}/switch/b"] - }, - { - "class_name": "SwitchSimControl", - "devices": ["sim_control/switch/b"] - } - ] - } - ] - } - ] -} diff --git a/ansible/inventories/refelt5/config_files/config_properties.json.j2 b/ansible/inventories/refelt5/config_files/config_properties.json.j2 deleted file mode 100644 index f1d3079a34584d8c1d10d388bbd3037992027cf4..0000000000000000000000000000000000000000 --- a/ansible/inventories/refelt5/config_files/config_properties.json.j2 +++ /dev/null @@ -1,101 +0,0 @@ -{ - "api_version": "v1", - "global": { - "Logging": { - "CentralLoggingTarget": "central/logger/1", - "ElementLoggingTarget": "{{ my_id }}/elt/logger", - "StorageLoggingTarget": "/dev/log", - "CentralLoggingLevelDefault": 2, - "ElementLoggingLevelDefault": 3, - "StorageLoggingLevelDefault": 4 - } - }, - "devices": { - "{{ my_id }}/a/1": { - "GroupDefinitions": - [ - {"group_name": "children", - "devices": ["{{ my_id }}/achild/11", "{{ my_id }}/achild/12"]} - ] - }, - "{{ my_id }}/a/2": { - "GroupDefinitions": - [ - {"group_name": "children", - "devices": ["{{ my_id }}/achild/21", "{{ my_id }}/achild/22"]} - ] - }, - "{{ my_id }}/elt/master": { - "NrSubarrays": 4, - "CapabilityTypes": ["calca", "calcb", "procc", "procd"], - "GroupDefinitions": - [ - {"group_name": "subarrays", - "devices": ["{{ my_id }}/subarray/1", "{{ my_id }}/subarray/2", - "{{ my_id }}/subarray/3", "{{ my_id }}/subarray/4"]}, - {"group_name": "servers", - "devices": ["{{ my_id }}/server/1", "{{ my_id }}/server/2", - "{{ my_id }}/server/3", "{{ my_id }}/server/4"]}, - {"group_name": "switches", - "devices": ["{{ my_id }}/switch/a", "{{ my_id }}/switch/b"]}, - {"group_name": "pdus", - "devices": ["{{ my_id }}/pdu/a", "{{ my_id }}/pdu/b"]}, - {"group_name": "racks", - "devices": ["{{ my_id }}/rack/a", "{{ my_id }}/rack/b"], - "subgroups": [ - {"group_name": "rackA", - "devices": ["{{ my_id }}/server/1", "{{ my_id }}/server/2", - "{{ my_id }}/switch/a", "{{ my_id }}/pdu/a"]}, - {"group_name": "rackB", - "devices": ["{{ my_id }}/server/3", "{{ my_id }}/server/4", - "{{ my_id }}/switch/b", "{{ my_id }}/pdu/b"]} - ] - } - ] - }, - "{{ my_id }}/subarray/1": { - "GroupDefinitions": - [ - {"group_name": "capabilities", - "devices": ["{{ my_id }}/cap/sub1calca", "{{ my_id }}/cap/sub1calcb", - "{{ my_id }}/cap/sub1procc", "{{ my_id }}/cap/sub1procd"]} - ] - }, - "{{ my_id }}/subarray/2": { - "GroupDefinitions": - [ - {"group_name": "capabilities", - "devices": ["{{ my_id }}/cap/sub2calca", "{{ my_id }}/cap/sub2calcb", - "{{ my_id }}/cap/sub2procc", "{{ my_id }}/cap/sub2procd"]} - ] - }, - "{{ my_id }}/subarray/3": { - "GroupDefinitions": - [ - {"group_name": "capabilities", - "devices": ["{{ my_id }}/cap/sub3calca", "{{ my_id }}/cap/sub3calcb", - "{{ my_id }}/cap/sub3procc", "{{ my_id }}/cap/sub3procd"]} - ] - }, - "{{ my_id }}/subarray/4": { - "GroupDefinitions": - [ - {"group_name": "capabilities", - "devices": ["{{ my_id }}/cap/sub4calca", "{{ my_id }}/cap/sub4calcb", - "{{ my_id }}/cap/sub4procc", "{{ my_id }}/cap/sub4procd"]} - ] - }, - "{{ my_id }}/elt/logger": { - "Config": [] - }, - "{{ my_id }}/elt/telstate": { - "TelStateConfigFile": [] - }, - "{{ my_id }}/elt/alarmhandler": { - "Config": [] - }, - "central/logger/1": { - "Config": [] - } - } -} diff --git a/ansible/inventories/refelt5/config_files/config_starter.json.j2 b/ansible/inventories/refelt5/config_files/config_starter.json.j2 deleted file mode 100644 index c1fcb64ba98c14673c5a0759bec167a0d3631df4..0000000000000000000000000000000000000000 --- a/ansible/inventories/refelt5/config_files/config_starter.json.j2 +++ /dev/null @@ -1,42 +0,0 @@ -{ - "api_version": "v1", - "tango_hosts": { - "lmc-base-classes": [ - { - "startup_level": 1, - "server_instances": ["SKALogger/{{ my_instance }}", "SKALogger/Central"] - }, - { - "startup_level": 2, - "server_instances": ["SvrRefAchild/11", "SvrRefAchild/12", - "SvrRefAchild/21", "SvrRefAchild/22", - "SvrRefCapability/1A", "SvrRefCapability/1B", - "SvrRefCapability/1C", "SvrRefCapability/1D", - "SvrRefCapability/2A", "SvrRefCapability/2B", - "SvrRefCapability/2C", "SvrRefCapability/2D", - "SvrSimPdu/A", "SvrSimPdu/B", - "SvrSimServer/1", "SvrSimServer/2", - "SvrSimServer/3", "SvrSimServer/4", - "SvrSimRack/A", "SvrSimRack/B", - "SvrSimSwitch/A", "SvrSimSwitch/B"] - }, - { - "startup_level": 3, - "server_instances": ["SvrRefA/1", "SvrRefA/2", - "SvrRefCapabilityA/1", "SvrRefCapabilityA/2", - "SvrRefCapabilityA/3", "SvrRefCapabilityA/4"] - }, - { - "startup_level": 4, - "server_instances": ["SvrRefSubarray/1", "SvrRefSubarray/2", - "SvrRefSubarray/3", "SvrRefSubarray/4"] - }, - { - "startup_level": 5, - "server_instances": ["SvrRefMaster/{{ my_instance }}", - "SvrRefAlarmHandler/{{ my_instance }}", - "SvrRefTelState/{{ my_instance }}"] - } - ] - } -} \ No newline at end of file diff --git a/ansible/inventories/refelt5/config_files/test_vars.json b/ansible/inventories/refelt5/config_files/test_vars.json deleted file mode 100644 index df3da9ee6faf90c50f6c4314cc8ad87d47c77760..0000000000000000000000000000000000000000 --- a/ansible/inventories/refelt5/config_files/test_vars.json +++ /dev/null @@ -1,40 +0,0 @@ -{ - "queue": { - "first": { - "car": "bmw", - "year": "1990", - "model": "x3", - "color": "blue" - }, - "second": { - "car": "bmw", - "year": "2000", - "model": "318", - "color": "red" - }, - "3rd": { - "car": "ref5", - "year": "2000", - "model": "ref5", - "color": "colref5" - }, - "4th": { - "car": "ref4", - "year": "2000", - "model": "ref4", - "color": "colref4" - }, - "5th": { - "car": "ref", - "year": "2000", - "model": "ref", - "color": "colref" - }, - "last": { - "car": "{{ my_id }}", - "year": "2000", - "model": "{{ my_name }}", - "color": "col{{my_id}}" - } - } -} diff --git a/ansible/inventories/refelt_template/refelt_config_db.json.j2 b/ansible/inventories/refelt_template/refelt_config_db.json.j2 deleted file mode 100644 index c67d40a2e926a26bf17c1673037c41d4000b10a1..0000000000000000000000000000000000000000 --- a/ansible/inventories/refelt_template/refelt_config_db.json.j2 +++ /dev/null @@ -1,360 +0,0 @@ -{ - "api_version": "v1", - "tango_servers": [ - { - "server_name": "SvrRefA", - "server_instances": [ - { - "instance_name": "1", - "device_classes": [ - { - "class_name": "RefA", - "devices": ["{{ my_id }}/a/1"] - } - ] - }, - { - "instance_name": "2", - "device_classes": [ - { - "class_name": "RefA", - "devices": ["{{ my_id }}/a/2"] - } - ] - } - ] - }, - { - "server_name": "SvrRefAchild", - "server_instances": [ - { - "instance_name": "1", - "device_classes": [ - { - "class_name": "RefAchild", - "devices": ["{{ my_id }}/achild/11", "{{ my_id }}/achild/12"] - } - ] - }, - { - "instance_name": "2", - "device_classes": [ - { - "class_name": "RefAchild", - "devices": ["{{ my_id }}/achild/21", "{{ my_id }}/achild/22"] - } - ] - } - ] - }, - { - "server_name": "SvrRefMaster", - "server_instances": [ - { - "instance_name": "{{ my_instance }}", - "device_classes": [ - { - "class_name": "RefMaster", - "devices": ["{{ my_id }}/elt/master"] - } - ] - } - ] - }, - { - "server_name": "SKALogger", - "server_instances": [ - { - "instance_name": "{{ my_instance }}", - "device_classes": [ - { - "class_name": "SKALogger", - "devices": ["{{ my_id }}/elt/logger"] - } - ] - }, - { - "instance_name": "Central", - "device_classes": [ - { - "class_name": "SKALogger", - "devices": ["central/logger/1"] - } - ] - } - ] - }, - { - "server_name": "SvrRefAlarmHandler", - "server_instances": [ - { - "instance_name": "{{ my_instance }}", - "device_classes": [ - { - "class_name": "RefAlarmHandler", - "devices": ["{{ my_id }}/elt/alarmhandler"] - } - ] - } - ] - }, - { - "server_name": "SvrRefTelState", - "server_instances": [ - { - "instance_name": "{{ my_instance }}", - "device_classes": [ - { - "class_name": "RefTelState", - "devices": ["{{ my_id }}/elt/telstate"] - } - ] - } - ] - }, - { - "server_name": "SvrRefSubarray", - "server_instances": [ - { - "instance_name": "1", - "device_classes": [ - { - "class_name": "RefSubarray", - "devices": ["{{ my_id }}/subarray/1"] - } - ] - }, - { - "instance_name": "2", - "device_classes": [ - { - "class_name": "RefSubarray", - "devices": ["{{ my_id }}/subarray/2"] - } - ] - }, - { - "instance_name": "3", - "device_classes": [ - { - "class_name": "RefSubarray", - "devices": ["{{ my_id }}/subarray/3"] - } - ] - }, - { - "instance_name": "4", - "device_classes": [ - { - "class_name": "RefSubarray", - "devices": ["{{ my_id }}/subarray/4"] - } - ] - } - ] - }, - { - "server_name": "SvrRefCapability", - "server_instances": [ - { - "instance_name": "1", - "device_classes": [ - { - "class_name": "RefCapability", - "devices": ["{{ my_id }}/cap/sub1calca", - "{{ my_id }}/cap/sub1calcb", - "{{ my_id }}/cap/sub1procc", - "{{ my_id }}/cap/sub1procd"] - } - ] - }, - { - "instance_name": "2", - "device_classes": [ - { - "class_name": "RefCapability", - "devices": ["{{ my_id }}/cap/sub2calca", - "{{ my_id }}/cap/sub2calcb", - "{{ my_id }}/cap/sub2procc", - "{{ my_id }}/cap/sub2procd"] - } - ] - }, - { - "instance_name": "3", - "device_classes": [ - { - "class_name": "RefCapability", - "devices": ["{{ my_id }}/cap/sub3calca", - "{{ my_id }}/cap/sub3calcb", - "{{ my_id }}/cap/sub3procc", - "{{ my_id }}/cap/sub3procd"] - } - ] - }, - { - "instance_name": "4", - "device_classes": [ - { - "class_name": "RefCapability", - "devices": ["{{ my_id }}/cap/sub4calca", - "{{ my_id }}/cap/sub4calcb", - "{{ my_id }}/cap/sub4procc", - "{{ my_id }}/cap/sub4procd"] - } - ] - } - ] - }, - { - "server_name": "SvrSimPdu", - "server_instances": [ - { - "instance_name": "A", - "device_classes": [ - { - "class_name": "PDU", - "devices": ["{{ my_id }}/pdu/a"] - }, - { - "class_name": "PDUSimControl", - "devices": ["sim_control/pdu/a"] - } - ] - }, - { - "instance_name": "B", - "device_classes": [ - { - "class_name": "PDU", - "devices": ["{{ my_id }}/pdu/b"] - }, - { - "class_name": "PDUSimControl", - "devices": ["sim_control/pdu/b"] - } - ] - } - ] - }, - { - "server_name": "SvrSimServer", - "server_instances": [ - { - "instance_name": "1", - "device_classes": [ - { - "class_name": "Server", - "devices": ["{{ my_id }}/server/1"] - }, - { - "class_name": "ServerSimControl", - "devices": ["sim_control/server/1"] - } - ] - }, - { - "instance_name": "2", - "device_classes": [ - { - "class_name": "Server", - "devices": ["{{ my_id }}/server/2"] - }, - { - "class_name": "ServerSimControl", - "devices": ["sim_control/server/2"] - } - ] - }, - { - "instance_name": "3", - "device_classes": [ - { - "class_name": "Server", - "devices": ["{{ my_id }}/server/3"] - }, - { - "class_name": "ServerSimControl", - "devices": ["sim_control/server/3"] - } - ] - }, - { - "instance_name": "4", - "device_classes": [ - { - "class_name": "Server", - "devices": ["{{ my_id }}/server/4"] - }, - { - "class_name": "ServerSimControl", - "devices": ["sim_control/server/4"] - } - ] - } - ] - }, - { - "server_name": "SvrSimRack", - "server_instances": [ - { - "instance_name": "A", - "device_classes": [ - { - "class_name": "Rack", - "devices": ["{{ my_id }}/rack/a"] - }, - { - "class_name": "RackSimControl", - "devices": ["sim_control/rack/a"] - } - ] - }, - { - "instance_name": "B", - "device_classes": [ - { - "class_name": "Rack", - "devices": ["{{ my_id }}/rack/b"] - }, - { - "class_name": "RackSimControl", - "devices": ["sim_control/rack/b"] - } - ] - } - ] - }, - { - "server_name": "SvrSimSwitch", - "server_instances": [ - { - "instance_name": "A", - "device_classes": [ - { - "class_name": "Switch", - "devices": ["{{ my_id }}/switch/a"] - }, - { - "class_name": "SwitchSimControl", - "devices": ["sim_control/switch/a"] - } - ] - }, - { - "instance_name": "B", - "device_classes": [ - { - "class_name": "Switch", - "devices": ["{{ my_id }}/switch/b"] - }, - { - "class_name": "SwitchSimControl", - "devices": ["sim_control/switch/b"] - } - ] - } - ] - } - ] -} diff --git a/ansible/inventories/refelt_template/refelt_config_starter.json.j2 b/ansible/inventories/refelt_template/refelt_config_starter.json.j2 deleted file mode 100644 index bd7a1c45f36f84a5dd847ee7aeec560c3686dc4f..0000000000000000000000000000000000000000 --- a/ansible/inventories/refelt_template/refelt_config_starter.json.j2 +++ /dev/null @@ -1,36 +0,0 @@ -{ - "api_version": "v1", - "tango_hosts": { - "lmc-base-classes": [ - { - "startup_level": 1, - "server_instances": ["SKALogger/{{ my_instance }}", "SKALogger/Central"] - }, - { - "startup_level": 2, - "server_instances": ["SvrSimPdu/A", "SvrSimPdu/B", - "SvrSimServer/1", "SvrSimServer/2", - "SvrSimServer/3", "SvrSimServer/4", - "SvrSimRack/A", "SvrSimRack/B", - "SvrSimSwitch/A", "SvrSimSwitch/B"] - }, - { - "startup_level": 3, - "server_instances": ["SvrRefAchild/11", "SvrRefAchildA/12", - "SvrRefAchild/21", "SvrRefAchildA/22", - "SvrRefCapability/1", "SvrRefCapability/2", - "SvrRefCapability/3", "SvrRefCapability/4"] - }, - { - "startup_level": 4, - "server_instances": ["SvrRefA/1", "SvrRefA/2", - "SvrRefSubarray/1", "SvrRefSubarray/2", - "SvrRefSubarray/3", "SvrRefSubarray/4"] - }, - { - "startup_level": 5, - "server_instances": ["SvrRefMaster/{{ my_instance }}", "SvrRefAlarmHandler/{{ my_instance }}", "SvrRefTelState/{{ my_instance }}"] - } - ] - } -} diff --git a/ansible/inventories/refelt_template/refelt_device_properties.json.j2 b/ansible/inventories/refelt_template/refelt_device_properties.json.j2 deleted file mode 100644 index 8aa87accc141e6812dbc85e8b1c8032dd3072971..0000000000000000000000000000000000000000 --- a/ansible/inventories/refelt_template/refelt_device_properties.json.j2 +++ /dev/null @@ -1,129 +0,0 @@ -{ - "api_version": "v1", - "global": { - "CentralLoggingTarget": "central/logger/1", - "ElementLoggingTarget": "{{ my_id }}/elt/logger", - "StorageLoggingTarget": "/dev/log", - "CentralLoggingLevelDefault": 2, - "ElementLoggingLevelDefault": 3, - "StorageLoggingLevelDefault": 3 - }, - "devices": { - "{{ my_id }}/a/1": { - "GroupDefinitions": - [ - {"group_name": "children", - "devices": ["{{ my_id }}/achild/11", "{{ my_id }}/achild/12"]} - ] - }, - "{{ my_id }}/a/2": { - "GroupDefinitions": - [ - {"group_name": "children", - "devices": ["{{ my_id }}/achild/21", "{{ my_id }}/achild/22"]} - ] - }, - "{{ my_id }}/elt/master": { - "NrSubarrays": 4, - "CapabilityTypes": ["calca", "calcb", "procc", "procd"], - "GroupDefinitions": - [ - {"group_name": "subarrays", - "devices": ["{{ my_id }}/subarray/1", "{{ my_id }}/subarray/2", - "{{ my_id }}/subarray/3", "{{ my_id }}/subarray/4"]}, - {"group_name": "servers", - "devices": ["{{ my_id }}/server/1", "{{ my_id }}/server/2", - "{{ my_id }}/server/3", "{{ my_id }}/server/4"]}, - {"group_name": "switches", - "devices": ["{{ my_id }}/switch/a", "{{ my_id }}/switch/b"]}, - {"group_name": "pdus", - "devices": ["{{ my_id }}/pdu/a", "{{ my_id }}/pdu/b"]}, - {"group_name": "racks", - "devices": ["{{ my_id }}/rack/a", "{{ my_id }}/rack/b"], - "subgroups": [ - {"group_name": "rackA", - "devices": ["{{ my_id }}/server/1", "{{ my_id }}/server/2", - "{{ my_id }}/switch/a", "{{ my_id }}/pdu/a"]}, - {"group_name": "rackB", - "devices": ["{{ my_id }}/server/3", "{{ my_id }}/server/4", - "{{ my_id }}/switch/b", "{{ my_id }}/pdu/b"]} - ] - } - ] - }, - "{{ my_id }}/subarray/1": { - "GroupDefinitions": - [ - {"group_name": "capabilities", - "devices": ["{{ my_id }}/cap/sub1calca", "{{ my_id }}/cap/sub1calcb", - "{{ my_id }}/cap/sub1procc", "{{ my_id }}/cap/sub1procd"]} - ] - }, - "{{ my_id }}/subarray/2": { - "GroupDefinitions": - [ - {"group_name": "capabilities", - "devices": ["{{ my_id }}/cap/sub2calca", "{{ my_id }}/cap/sub2calcb", - "{{ my_id }}/cap/sub2procc", "{{ my_id }}/cap/sub2procd"]} - ] - }, - "{{ my_id }}/subarray/3": { - "GroupDefinitions": - [ - {"group_name": "capabilities", - "devices": ["{{ my_id }}/cap/sub3calca", "{{ my_id }}/cap/sub3calcb", - "{{ my_id }}/cap/sub3procc", "{{ my_id }}/cap/sub3procd"]} - ] - }, - "{{ my_id }}/subarray/4": { - "GroupDefinitions": - [ - {"group_name": "capabilities", - "devices": ["{{ my_id }}/cap/sub4calca", "{{ my_id }}/cap/sub4calcb", - "{{ my_id }}/cap/sub4procc", "{{ my_id }}/cap/sub4procd"]} - ] - }, - "{{ my_id }}/elt/logger": { - "Config": [] - }, - "{{ my_id }}/elt/telstate": { - "TelStateConfigFile": [] - }, - "{{ my_id }}/elt/alarmhandler": { - "Config": [] - }, - "sim_control/pdu/A": { - "model_key": "{{ my_id }}/pdu/a" - }, - "sim_control/pdu/B": { - "model_key": "{{ my_id }}/pdu/b" - }, - "sim_control/server/1": { - "model_key": "{{ my_id }}/server/1" - }, - "sim_control/server/2": { - "model_key": "{{ my_id }}/server/2" - }, - "sim_control/server/3": { - "model_key": "{{ my_id }}/server/3" - }, - "sim_control/server/4": { - "model_key": "{{ my_id }}/server/4" - }, - "sim_control/rack/A": { - "model_key": "{{ my_id }}/rack/a" - }, - "sim_control/rack/B": { - "model_key": "{{ my_id }}/rack/b" - }, - "sim_control/switch/A": { - "model_key": "{{ my_id }}/switch/a" - }, - "sim_control/switch/B": { - "model_key": "{{ my_id }}/switch/b" - }, - "central/logger/1": { - "Config": [] - } - } -} diff --git a/ansible/inventories/refelt_template/test_vars.json b/ansible/inventories/refelt_template/test_vars.json deleted file mode 100644 index df3da9ee6faf90c50f6c4314cc8ad87d47c77760..0000000000000000000000000000000000000000 --- a/ansible/inventories/refelt_template/test_vars.json +++ /dev/null @@ -1,40 +0,0 @@ -{ - "queue": { - "first": { - "car": "bmw", - "year": "1990", - "model": "x3", - "color": "blue" - }, - "second": { - "car": "bmw", - "year": "2000", - "model": "318", - "color": "red" - }, - "3rd": { - "car": "ref5", - "year": "2000", - "model": "ref5", - "color": "colref5" - }, - "4th": { - "car": "ref4", - "year": "2000", - "model": "ref4", - "color": "colref4" - }, - "5th": { - "car": "ref", - "year": "2000", - "model": "ref", - "color": "colref" - }, - "last": { - "car": "{{ my_id }}", - "year": "2000", - "model": "{{ my_name }}", - "color": "col{{my_id}}" - } - } -} diff --git a/ansible/register_refelt.yml b/ansible/register_refelt.yml deleted file mode 100644 index 371c80bc1fcaa3ba4ade78daeb68bb9ab80ba67e..0000000000000000000000000000000000000000 --- a/ansible/register_refelt.yml +++ /dev/null @@ -1,7 +0,0 @@ - -- name: register_refelt - hosts: operational - roles: - - {role: 'register_refelt', tags: ['register-refelt']} - - diff --git a/ansible/roles/register_refelt/tasks/main.yml b/ansible/roles/register_refelt/tasks/main.yml deleted file mode 100644 index 319e1c7a0fe97bb6e5bff2f2904d12018c20ae57..0000000000000000000000000000000000000000 --- a/ansible/roles/register_refelt/tasks/main.yml +++ /dev/null @@ -1,57 +0,0 @@ ---- -# -# -# !!!!!!!! DEPRECATED - use register_my_refelt !!!!!!!!!!! -# -# - -# THIS IS SPECIFIC FOR REFELT - JUST TO GET A REFELT REGISTERED -# GENERALISATION OF CONFIG AND FOR OTHER ELEMENTS IS TBD - -########################################### -## PRINT STUFF -########################################### - -- name: Print software_root directory - debug: msg="rootdir = {{software_root}}" - - -########################################### -## Register in TANGO db -########################################### - -- block: - - name: Register RefElt servers, classes, devices - register_element: - elt_config_file: "{{software_root}}/lmc-base-classes/ansible/inventories/refelt/config_files/config_db.json" - register: the_result - - name: Register RefElt properties - register_properties: - elt_config_file: "{{software_root}}/lmc-base-classes/ansible/inventories/refelt/config_files/device_properties.json" - register: the_result - tags: - - register-refelt-in-tangodb - -########################################### -### Register in ASTOR -############################################ -- block: - - name: Set StartDsPath - set_starter_ds_path: - facility_name="refelt" - facility_config="TBD" - starter_path="/usr/local/bin/" - register: the_result - tags: - - register-refelt-in-astor - - register-refelt-in-astor-ds-path - - -- block: - - name: Register RefElt in Astor and restart with Starter - start_element: - element_config: "{{software_root}}/lmc-base-classes/ansible/inventories/refelt/config_files/config_starter.json" - register: the_result - tags: - - register-refelt-in-astor -... diff --git a/ansible/site.yml b/ansible/site.yml index b553feae7744af90af688275afa86d24121f66ec..8795261a05f2e23071a9f6235b8e84f48c608cf9 100644 --- a/ansible/site.yml +++ b/ansible/site.yml @@ -6,7 +6,6 @@ - import_playbook: generate_sw.yml - import_playbook: install_sw.yml - import_playbook: refresh_sw.yml -- import_playbook: register_refelt.yml - import_playbook: register_my_refelt.yml # Additional helper playbooks diff --git a/ansible/test_vars.yml b/ansible/test_vars.yml index f079ba287e6bc6df3084f97a563de6435c197a76..71e8da56194b4ec84b33adc4c32e1109089965ed 100644 --- a/ansible/test_vars.yml +++ b/ansible/test_vars.yml @@ -9,12 +9,12 @@ my_id: "{{ hostvars[inventory_hostname].element_details.id }}" my_instance: "{{ hostvars[inventory_hostname].element_details.instance }}" testVars: "{{ lookup('file', './inventories/{{ my_name }}/config_files/test_vars.json') | from_json }}" - configDbFile: "{{ lookup('file', './inventories/{{ my_name }}/config_files/config_db.json') | from_json }}" - configDbJson: "{{ lookup('template', './inventories/{{ my_name }}/config_files/config_db.json') }}" - configPropertiesFile: "{{ lookup('file', './inventories/{{ my_name }}/config_files/config_properties.json') | from_json }}" - configPropertiesJson: "{{ lookup('template', './inventories/{{ my_name }}/config_files/config_properties.json') }}" - configStarterFile: "{{ lookup('file', './inventories/{{ my_name }}/config_files/config_starter.json') | from_json }}" - configStarterJson: "{{ lookup('template', './inventories/{{ my_name }}/config_files/config_starter.json') }}" + configDbFile: "{{ lookup('file', './inventories/{{ my_name }}/config_files/config_db.json.j2') | from_json }}" + configDbJson: "{{ lookup('template', './inventories/{{ my_name }}/config_files/config_db.json.j2') }}" + configPropertiesFile: "{{ lookup('file', './inventories/{{ my_name }}/config_files/config_properties.json.j2') | from_json }}" + configPropertiesJson: "{{ lookup('template', './inventories/{{ my_name }}/config_files/config_properties.json.j2') }}" + configStarterFile: "{{ lookup('file', './inventories/{{ my_name }}/config_files/config_starter.json.j2') | from_json }}" + configStarterJson: "{{ lookup('template', './inventories/{{ my_name }}/config_files/config_starter.json.j2') }}" tasks: - name: Print my hostvars @@ -66,17 +66,17 @@ tags: - prints - - name: testVars find blue cars + - name: testVars find key2 22 with_dict: "{{ testVars['queue'] }}" shell: | - if echo "{{ item.value.color }}" | grep -q "blue" ; then - echo "SUCCESS - found blue at {{ item.key }}" + if echo "{{ item.value.key2 }}" | grep -q "22" ; then + echo "SUCCESS - found 22 at {{ item.key }}" fi - name: testVars find my id with_dict: "{{ testVars['queue'] }}" shell: | - if echo "{{ item.value.car }}" | grep -q "{{ my_id }}" ; then + if echo "{{ item.value.key1 }}" | grep -q "{{ my_id }}" ; then echo "SUCCESS - found {{ my_id }} at {{ item.key }}" fi