ansible: extract getting ioc port into utils and use it in ioc-start
This commit is contained in:
@@ -1,40 +1,12 @@
|
||||
---
|
||||
- name: Clone this repository
|
||||
ansible.builtin.git:
|
||||
repo: "git@gitea.psi.ch:sls/hla_framework_bd.git"
|
||||
dest: "{{ workspace_dir }}"
|
||||
accept_hostkey: true
|
||||
version: "{{ branch_name }}"
|
||||
force: true
|
||||
- name: Clone repo and get/set ioc_port
|
||||
ansible.builtin.import_tasks: ../utils/get-ioc-port.yml
|
||||
|
||||
- name: Initialize service name
|
||||
ansible.builtin.set_fact:
|
||||
# Uses preferred_service_name_lower if defined in vars, otherwise falls back to the CLI extra-vars
|
||||
target_service_name_lower: "{{ preferred_service_name_lower | default(service_name_lower) }}"
|
||||
|
||||
- name: Initialize service name
|
||||
ansible.builtin.set_fact:
|
||||
# Uses preferred_service_name_lower if defined in vars, otherwise falls back to the CLI extra-vars
|
||||
target_service_name_lower: "{{ preferred_service_name_lower | default(service_name_lower) }}"
|
||||
|
||||
- name: Read the service registry file
|
||||
ansible.builtin.slurp:
|
||||
src: "{{ workspace_dir }}/config/services_registry.yml"
|
||||
register: remote_registry_file
|
||||
|
||||
- name: Parse the service registry YAML content into a fact
|
||||
ansible.builtin.set_fact:
|
||||
services_registry: "{{ remote_registry_file.content | b64decode | from_yaml }}"
|
||||
|
||||
- name: Extract the port from the services registry and save it as a persistent fact
|
||||
ansible.builtin.set_fact:
|
||||
ioc_port: "{{ services_registry.services | selectattr('name', 'equalto', target_service_name_lower) | map(attribute='ioc_port') | first | default(none) }}"
|
||||
|
||||
- name: Fail if the service or port wasn't found in the registry
|
||||
ansible.builtin.fail:
|
||||
msg: "Service '{{ target_service_name_lower }}' not found in services registry or port not set"
|
||||
when: ioc_port | trim == "" or ioc_port is none
|
||||
|
||||
- name: "[{{ target_service_name_lower }}] Establish environment naming conventions"
|
||||
ansible.builtin.set_fact:
|
||||
service_name_upper: "{{ target_service_name_lower | upper }}"
|
||||
|
||||
@@ -1,4 +1,7 @@
|
||||
---
|
||||
- name: Clone repo and get/set ioc_port
|
||||
ansible.builtin.import_tasks: ../utils/get-ioc-port.yml
|
||||
|
||||
- name: "[{{ ioc_port }}] Start IOC"
|
||||
ansible.builtin.shell: |
|
||||
sudo shellbox status
|
||||
|
||||
@@ -0,0 +1,26 @@
|
||||
---
|
||||
- name: Clone this repository
|
||||
ansible.builtin.git:
|
||||
repo: "git@gitea.psi.ch:sls/hla_framework_bd.git"
|
||||
dest: "{{ workspace_dir }}"
|
||||
accept_hostkey: true
|
||||
version: "{{ branch_name }}"
|
||||
force: true
|
||||
|
||||
- name: Read the service registry file
|
||||
ansible.builtin.slurp:
|
||||
src: "{{ workspace_dir }}/config/services_registry.yml"
|
||||
register: remote_registry_file
|
||||
|
||||
- name: Parse the service registry YAML content into a fact
|
||||
ansible.builtin.set_fact:
|
||||
services_registry: "{{ remote_registry_file.content | b64decode | from_yaml }}"
|
||||
|
||||
- name: Extract the port from the services registry and save it as a persistent fact
|
||||
ansible.builtin.set_fact:
|
||||
ioc_port: "{{ services_registry.services | selectattr('name', 'equalto', target_service_name_lower) | map(attribute='ioc_port') | first | default(none) }}"
|
||||
|
||||
- name: Fail if the service or port wasn't found in the registry
|
||||
ansible.builtin.fail:
|
||||
msg: "Service '{{ target_service_name_lower }}' not found in services registry or port not set"
|
||||
when: ioc_port | trim == "" or ioc_port is none
|
||||
Reference in New Issue
Block a user