diff --git a/ansible/hosts.yml b/ansible/hosts.yml index c7dd14e..b5c4aa8 100644 --- a/ansible/hosts.yml +++ b/ansible/hosts.yml @@ -2,4 +2,6 @@ all: hosts: sls-lc: ansible_remote_tmp: /tmp/.ansible_${ansible_user}_tmp - sls-vserv-bd-hla01-dev: \ No newline at end of file + sls-vserv-bd-hla01-dev: + sls-vserv-bd-01-dev: + ansible_ssh_pipelining: true \ No newline at end of file diff --git a/ansible/plays/ioc/ioc-install.yml b/ansible/plays/ioc/ioc-install.yml index 3fc73de..d54d285 100644 --- a/ansible/plays/ioc/ioc-install.yml +++ b/ansible/plays/ioc/ioc-install.yml @@ -1,4 +1,4 @@ -- name: Install an IOC and restart it +- name: Install an IOC # TODO: dev/prod hosts: sls-lc gather_facts: false diff --git a/ansible/plays/ioc/ioc-start.yml b/ansible/plays/ioc/ioc-start.yml new file mode 100644 index 0000000..e01a972 --- /dev/null +++ b/ansible/plays/ioc/ioc-start.yml @@ -0,0 +1,22 @@ +- name: Restart an IOC + # TODO: dev/prod + hosts: sls-vserv-bd-01-dev + gather_facts: false + + tasks: + - name: Initialize isolated service directory name + ansible.builtin.set_fact: + # Uses ioc_service_dir_name if defined in vars, otherwise falls back to the CLI extra-vars + service_dir_name: "{{ ioc_service_dir_name | default(new_service_dir_name) }}" + + - name: "[{{ service_dir_name }}] Establish environment naming conventions" + ansible.builtin.set_fact: + # Example: extract MASTER from 000-master + service_name_upper: "{{ service_dir_name[4:] | upper }}" + # Set suffix to "-DEV" if dev, otherwise empty "" + env_suffix_upper: "{{ '-DEV' if agebd_env == 'dev' else '' }}" + + - name: "[{{ service_dir_name }}] Start IOC" + ansible.builtin.shell: | + sudo shellbox start {{ service_name_upper }}{{ env_suffix_upper }} + changed_when: true \ No newline at end of file diff --git a/docs/ansible.md b/docs/ansible.md index df3ffd8..e8bc19d 100644 --- a/docs/ansible.md +++ b/docs/ansible.md @@ -5,9 +5,32 @@ Set vars on command line: ``` -cd ansible ansible-playbook ansible/playbooks/add-new-service.yml \ -i ansible/hosts.yml \ - --extra-vars=""repo_root=${{ github.workspace }} agebd_env=dev new_service_dir_name=" \ + --extra-vars="repo_root=${{ github.workspace }} agebd_env=dev new_service_dir_name=" \ + -v +``` + +### Install an IOC +``` +ansible-playbook ansible/plays/ioc/ioc-install.yml \ + -i ansible/hosts.yml \ + --extra-vars="agebd_env=dev branch_name=feature/add-service-001-playground new_service_dir_name=001-playground" \ + -v +``` + +### Start an IOC +``` +ansible-playbook ansible/plays/ioc/ioc-start.yml \ + -i ansible/hosts.yml \ + --extra-vars="agebd_env=dev new_service_dir_name=001-playground" \ + -v +``` + +### Restart an IOC +``` +ansible-playbook ansible/plays/ioc/ioc-restart.yml \ + -i ansible/hosts.yml \ + --extra-vars="agebd_env=dev branch_name=feature/add-service-001-playground new_service_dir_name=001-playground" \ -v ``` \ No newline at end of file