diff --git a/README.md b/README.md index 6a632deae3fd98d41498c1e941f10ad5d13641ae..5d583ff16db55ebb23f1dea87f35e9a90694e99a 100644 --- a/README.md +++ b/README.md @@ -5,10 +5,13 @@ Ansible role to install phoebus. ## Role Variables ```yaml +--- phoebus_installation_dir: /opt phoebus_installations_keep: 2 phoebus_version: 4.6.0-SNAPSHOT phoebus_archive: "http://artifactory.esss.lu.se/artifactory/libs-snapshot-local/se/europeanspallationsource/ics/ess-phoebus/{{ phoebus_version }}/ess-phoebus-{{ phoebus_version }}-bin.tar.gz" +phoebus_settings_path: "{{ phoebus_home }}/phoebus.ini" +phoebus_settings: {} ``` ## Example Playbook diff --git a/defaults/main.yml b/defaults/main.yml index 31416db695c38de1535620bb2f624c3accece59e..572a36b6f607c32fa3c58f72c0b5e71e10967636 100644 --- a/defaults/main.yml +++ b/defaults/main.yml @@ -3,3 +3,5 @@ phoebus_installation_dir: /opt phoebus_installations_keep: 2 phoebus_version: 4.6.0-SNAPSHOT phoebus_archive: "http://artifactory.esss.lu.se/artifactory/libs-snapshot-local/se/europeanspallationsource/ics/ess-phoebus/{{ phoebus_version }}/ess-phoebus-{{ phoebus_version }}-bin.tar.gz" +phoebus_settings_path: "{{ phoebus_home }}/phoebus.ini" +phoebus_settings: {} diff --git a/molecule/default/molecule.yml b/molecule/default/molecule.yml index f9e47ea1f01aca0a23b8f6b73ae75fa7e1d0181a..15713f8569255d444a5f69270de8eaf0b6cd5e5a 100644 --- a/molecule/default/molecule.yml +++ b/molecule/default/molecule.yml @@ -13,6 +13,8 @@ provisioner: inventory: group_vars: molecule_group: + phoebus_settings: + org.phoebus.pv.ca/addr_list: 127.0.0.1 scenario: name: default verifier: diff --git a/molecule/default/tests/test_default.py b/molecule/default/tests/test_default.py index 58fa58df79d99ad65c7640d7e407474b6a0dc4c4..ec9264cdd6590dec2c18bc6cbb40c653bf3e6119 100644 --- a/molecule/default/tests/test_default.py +++ b/molecule/default/tests/test_default.py @@ -19,3 +19,10 @@ def test_default(host): "| ( | ( ) || | | || ( | ( \\ \\ | | | | ) |\n" + \ "| ) | ) ( || (___) || (____/\\| )___) )| (___) |/\\____) |\n" + \ "|/ |/ \\|(_______)(_______/|/ \\___/ (_______)\\_______)" in cmd.stdout + + +def test_settings(host): + settings = host.file("/opt/ess-phoebus-{}/phoebus.ini".format(PHOEBUS_VERSION)) + assert settings.exists + assert settings.is_file + assert settings.contains("org.phoebus.pv.ca/addr_list=127.0.0.1") diff --git a/tasks/main.yml b/tasks/main.yml index 50605240b84043eb239cbf38ad96d602c81d111f..ba7c6c0c02733c3779cae1ad9dec82ca13466c9b 100644 --- a/tasks/main.yml +++ b/tasks/main.yml @@ -23,6 +23,14 @@ group: root creates: "{{ phoebus_home }}" +- name: add Phoebus settings + template: + src: phoebus.ini.j2 + dest: "{{ phoebus_settings_path }}" + owner: root + group: root + mode: 0644 + - name: add MIME types copy: src: phoebus.xml diff --git a/templates/phoebus.desktop.j2 b/templates/phoebus.desktop.j2 index e406b4aeace0ca9948e815474a89f2280b3eaee9..b5951c87ecb816b48d6eb4ae0098b2b478abd749 100644 --- a/templates/phoebus.desktop.j2 +++ b/templates/phoebus.desktop.j2 @@ -3,4 +3,4 @@ Type=Application Terminal=false Name=Phoebus Categories=ESS -Exec="{{ phoebus_home }}/phoebus.sh" -resource %f +Exec="{{ phoebus_home }}/phoebus.sh" -resource %f -settings "{{ phoebus_settings_path }}" diff --git a/templates/phoebus.ini.j2 b/templates/phoebus.ini.j2 new file mode 100644 index 0000000000000000000000000000000000000000..fbf77f431b6ce9c36df31d166dd28c70e9b7c180 --- /dev/null +++ b/templates/phoebus.ini.j2 @@ -0,0 +1,5 @@ +# {{ ansible_managed }} + +{% for key, value in phoebus_settings.items() %} +{{ key }}={{ value }} +{% endfor %}