
호스트 파일에서 그룹에 있는 첫 번째 호스트의 처음 8자를 가져올 수 있기를 원합니다. 그래서 아래 예에서는 변수를 할당하고 싶습니다 xx33sx01
. Inventory_hostname을 사용하여 호스트를 가져올 수 있다는 것을 알고 있지만 4개를 모두 반환하므로 첫 번째 호스트와 처음 8자만 필요합니다.
Ansible 인벤토리 예시(INI 스타일):
[TEST1]
xx33sx0101.domain.com
xx33sx0102.domain.com
xx33sx0103.domain.com
xx33sx0104.domain.com
ansible-playbook /local_home/scripts/test.yml -i ~/hosts -e "target=TEST1" -K
답변1
그룹에 있는 첫 번째 호스트 이름의 처음 8자를 얻으려면 다음을 시도하십시오.
- debug:
msg: "{{ groups[target_group][0][:8] }}"
vars:
target_group: TEST1
(검증되지 않은)
- 디버그 작업이 작동하도록 하려면 물론 플레이북에서 그룹을 사용할 수 있어야 합니다. 예를 들어
- hosts: all
tasks:
- debug:
msg: "{{ groups[target_group][0][:8] }}"
- 재고에 따른 주문실행선택에 영향을 줄 수 있습니다.